From 7a32882f6ef8ce9b0b264f35c483bea95ae321e9 Mon Sep 17 00:00:00 2001 From: 10atm-blue <18004849+10atm-blue@users.noreply.github.com> Date: Tue, 27 Jul 2021 13:48:13 +0200 Subject: [PATCH 01/25] OEL-309: Starting OpenEuropa Whitelabel theme scaffold. --- .drone.yml | 83 ++++++++++ .gitignore | 17 ++ LICENCE.txt | 190 ++++++++++++++++++++++ README.md | 4 +- composer.json | 74 +++++++++ config/install/oe_whitelabel.settings.yml | 17 ++ docker-compose.yml | 36 ++++ favicon.ico | Bin 0 -> 15406 bytes grumphp.yml.dist | 14 ++ logo.svg | 29 ++++ oe_whitelabel.info.yml | 6 + oe_whitelabel.libraries.yml | 0 runner.yml.dist | 43 +++++ screenshot.png | Bin 0 -> 1435 bytes whitelabel.theme | 6 + 15 files changed, 518 insertions(+), 1 deletion(-) create mode 100644 .drone.yml create mode 100644 .gitignore create mode 100644 LICENCE.txt create mode 100644 composer.json create mode 100644 config/install/oe_whitelabel.settings.yml create mode 100644 docker-compose.yml create mode 100644 favicon.ico create mode 100644 grumphp.yml.dist create mode 100644 logo.svg create mode 100644 oe_whitelabel.info.yml create mode 100644 oe_whitelabel.libraries.yml create mode 100644 runner.yml.dist create mode 100644 screenshot.png create mode 100644 whitelabel.theme diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 00000000..0ed0d2e9 --- /dev/null +++ b/.drone.yml @@ -0,0 +1,83 @@ +clone: + git: + image: registry.fpfis.eu/drone-plugins/git:next + when: + event: [ push, pull_request, tag ] + git: + image: registry.fpfis.eu/drone-plugins/git + when: + event: [ deployment ] + +workspace: + base: /test + path: drupal_module_template + +services: + web: + image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci + environment: + - DOCUMENT_ROOT=/test/drupal_module_template + mysql: + image: registry.fpfis.eu/fpfis/sql:percona-5.7 + command: --innodb-log-file-size=1G --max_allowed_packet=1G --innodb-buffer-pool-size=512M --wait_timeout=3000 --net_write_timeout=3000 --log_error_verbosity=3 + environment: + - MYSQL_ALLOW_EMPTY_PASSWORD=yes + +pipeline: + composer-install: + group: prepare + image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci + volumes: + - /cache:/cache + commands: + - composer install --ansi --no-suggest --no-progress + + composer-update-lowest: + group: post-prepare + image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci + volumes: + - /cache:/cache + commands: + # @todo remove "composer install" step once the following issue is fixed. + # @link https://webgate.ec.europa.eu/CITnet/jira/browse/OPENEUROPA-1234 + - composer update --prefer-lowest --prefer-stable --ansi --no-suggest --no-progress + when: + matrix: + COMPOSER_BOUNDARY: lowest + + site-install: + image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci + commands: + - ./vendor/bin/run drupal:site-install + + grumphp: + group: test + image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci + commands: + - ./vendor/bin/grumphp run + + phpunit: + group: test + image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci + commands: + - ./vendor/bin/phpunit + + behat: + group: test + image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci + commands: + - ./vendor/bin/behat --strict + + debug: + image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci + commands: + - ./vendor/bin/drush ws --count 500 + when: + status: failure + +matrix: + COMPOSER_BOUNDARY: + - lowest + - highest + PHP_VERSION: + - 7.3 diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..3935054c --- /dev/null +++ b/.gitignore @@ -0,0 +1,17 @@ +.DS_Store +.idea +behat.yml +build +composer.lock +docker-compose.*.yml +grumphp.yml +node_modules +bower_components +npm-debug.log +package-lock.json +phpunit.xml +runner.yml +vendor +yarn.lock +/.gitattributes +config.codekit \ No newline at end of file diff --git a/LICENCE.txt b/LICENCE.txt new file mode 100644 index 00000000..6d8cea43 --- /dev/null +++ b/LICENCE.txt @@ -0,0 +1,190 @@ +EUROPEAN UNION PUBLIC LICENCE v. 1.2 +EUPL © the European Union 2007, 2016 + +This European Union Public Licence (the ‘EUPL’) applies to the Work (as defined below) which is provided under the +terms of this Licence. Any use of the Work, other than as authorised under this Licence is prohibited (to the extent such +use is covered by a right of the copyright holder of the Work). +The Work is provided under the terms of this Licence when the Licensor (as defined below) has placed the following +notice immediately following the copyright notice for the Work: + Licensed under the EUPL +or has expressed by any other means his willingness to license under the EUPL. + +1.Definitions +In this Licence, the following terms have the following meaning: +— ‘The Licence’:this Licence. +— ‘The Original Work’:the work or software distributed or communicated by the Licensor under this Licence, available +as Source Code and also as Executable Code as the case may be. +— ‘Derivative Works’:the works or software that could be created by the Licensee, based upon the Original Work or +modifications thereof. This Licence does not define the extent of modification or dependence on the Original Work +required in order to classify a work as a Derivative Work; this extent is determined by copyright law applicable in +the country mentioned in Article 15. +— ‘The Work’:the Original Work or its Derivative Works. +— ‘The Source Code’:the human-readable form of the Work which is the most convenient for people to study and +modify. +— ‘The Executable Code’:any code which has generally been compiled and which is meant to be interpreted by +a computer as a program. +— ‘The Licensor’:the natural or legal person that distributes or communicates the Work under the Licence. +— ‘Contributor(s)’:any natural or legal person who modifies the Work under the Licence, or otherwise contributes to +the creation of a Derivative Work. +— ‘The Licensee’ or ‘You’:any natural or legal person who makes any usage of the Work under the terms of the +Licence. +— ‘Distribution’ or ‘Communication’:any act of selling, giving, lending, renting, distributing, communicating, +transmitting, or otherwise making available, online or offline, copies of the Work or providing access to its essential +functionalities at the disposal of any other natural or legal person. + +2.Scope of the rights granted by the Licence +The Licensor hereby grants You a worldwide, royalty-free, non-exclusive, sublicensable licence to do the following, for +the duration of copyright vested in the Original Work: +— use the Work in any circumstance and for all usage, +— reproduce the Work, +— modify the Work, and make Derivative Works based upon the Work, +— communicate to the public, including the right to make available or display the Work or copies thereof to the public +and perform publicly, as the case may be, the Work, +— distribute the Work or copies thereof, +— lend and rent the Work or copies thereof, +— sublicense rights in the Work or copies thereof. +Those rights can be exercised on any media, supports and formats, whether now known or later invented, as far as the +applicable law permits so. +In the countries where moral rights apply, the Licensor waives his right to exercise his moral right to the extent allowed +by law in order to make effective the licence of the economic rights here above listed. +The Licensor grants to the Licensee royalty-free, non-exclusive usage rights to any patents held by the Licensor, to the +extent necessary to make use of the rights granted on the Work under this Licence. + +3.Communication of the Source Code +The Licensor may provide the Work either in its Source Code form, or as Executable Code. If the Work is provided as +Executable Code, the Licensor provides in addition a machine-readable copy of the Source Code of the Work along with +each copy of the Work that the Licensor distributes or indicates, in a notice following the copyright notice attached to +the Work, a repository where the Source Code is easily and freely accessible for as long as the Licensor continues to +distribute or communicate the Work. + +4.Limitations on copyright +Nothing in this Licence is intended to deprive the Licensee of the benefits from any exception or limitation to the +exclusive rights of the rights owners in the Work, of the exhaustion of those rights or of other applicable limitations +thereto. + +5.Obligations of the Licensee +The grant of the rights mentioned above is subject to some restrictions and obligations imposed on the Licensee. Those +obligations are the following: + +Attribution right: The Licensee shall keep intact all copyright, patent or trademarks notices and all notices that refer to +the Licence and to the disclaimer of warranties. The Licensee must include a copy of such notices and a copy of the +Licence with every copy of the Work he/she distributes or communicates. The Licensee must cause any Derivative Work +to carry prominent notices stating that the Work has been modified and the date of modification. + +Copyleft clause: If the Licensee distributes or communicates copies of the Original Works or Derivative Works, this +Distribution or Communication will be done under the terms of this Licence or of a later version of this Licence unless +the Original Work is expressly distributed only under this version of the Licence — for example by communicating +‘EUPL v. 1.2 only’. The Licensee (becoming Licensor) cannot offer or impose any additional terms or conditions on the +Work or Derivative Work that alter or restrict the terms of the Licence. + +Compatibility clause: If the Licensee Distributes or Communicates Derivative Works or copies thereof based upon both +the Work and another work licensed under a Compatible Licence, this Distribution or Communication can be done +under the terms of this Compatible Licence. For the sake of this clause, ‘Compatible Licence’ refers to the licences listed +in the appendix attached to this Licence. Should the Licensee's obligations under the Compatible Licence conflict with +his/her obligations under this Licence, the obligations of the Compatible Licence shall prevail. + +Provision of Source Code: When distributing or communicating copies of the Work, the Licensee will provide +a machine-readable copy of the Source Code or indicate a repository where this Source will be easily and freely available +for as long as the Licensee continues to distribute or communicate the Work. +Legal Protection: This Licence does not grant permission to use the trade names, trademarks, service marks, or names +of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and +reproducing the content of the copyright notice. + +6.Chain of Authorship +The original Licensor warrants that the copyright in the Original Work granted hereunder is owned by him/her or +licensed to him/her and that he/she has the power and authority to grant the Licence. +Each Contributor warrants that the copyright in the modifications he/she brings to the Work are owned by him/her or +licensed to him/her and that he/she has the power and authority to grant the Licence. +Each time You accept the Licence, the original Licensor and subsequent Contributors grant You a licence to their contributions +to the Work, under the terms of this Licence. + +7.Disclaimer of Warranty +The Work is a work in progress, which is continuously improved by numerous Contributors. It is not a finished work +and may therefore contain defects or ‘bugs’ inherent to this type of development. +For the above reason, the Work is provided under the Licence on an ‘as is’ basis and without warranties of any kind +concerning the Work, including without limitation merchantability, fitness for a particular purpose, absence of defects or +errors, accuracy, non-infringement of intellectual property rights other than copyright as stated in Article 6 of this +Licence. +This disclaimer of warranty is an essential part of the Licence and a condition for the grant of any rights to the Work. + +8.Disclaimer of Liability +Except in the cases of wilful misconduct or damages directly caused to natural persons, the Licensor will in no event be +liable for any direct or indirect, material or moral, damages of any kind, arising out of the Licence or of the use of the +Work, including without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, loss +of data or any commercial damage, even if the Licensor has been advised of the possibility of such damage. However, +the Licensor will be liable under statutory product liability laws as far such laws apply to the Work. + +9.Additional agreements +While distributing the Work, You may choose to conclude an additional agreement, defining obligations or services +consistent with this Licence. However, if accepting obligations, You may act only on your own behalf and on your sole +responsibility, not on behalf of the original Licensor or any other Contributor, and only if You agree to indemnify, +defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against such Contributor by +the fact You have accepted any warranty or additional liability. + +10.Acceptance of the Licence +The provisions of this Licence can be accepted by clicking on an icon ‘I agree’ placed under the bottom of a window +displaying the text of this Licence or by affirming consent in any other similar way, in accordance with the rules of +applicable law. Clicking on that icon indicates your clear and irrevocable acceptance of this Licence and all of its terms +and conditions. +Similarly, you irrevocably accept this Licence and all of its terms and conditions by exercising any rights granted to You +by Article 2 of this Licence, such as the use of the Work, the creation by You of a Derivative Work or the Distribution +or Communication by You of the Work or copies thereof. + +11.Information to the public +In case of any Distribution or Communication of the Work by means of electronic communication by You (for example, +by offering to download the Work from a remote location) the distribution channel or media (for example, a website) +must at least provide to the public the information requested by the applicable law regarding the Licensor, the Licence +and the way it may be accessible, concluded, stored and reproduced by the Licensee. + +12.Termination of the Licence +The Licence and the rights granted hereunder will terminate automatically upon any breach by the Licensee of the terms +of the Licence. +Such a termination will not terminate the licences of any person who has received the Work from the Licensee under +the Licence, provided such persons remain in full compliance with the Licence. + +13.Miscellaneous +Without prejudice of Article 9 above, the Licence represents the complete agreement between the Parties as to the +Work. +If any provision of the Licence is invalid or unenforceable under applicable law, this will not affect the validity or +enforceability of the Licence as a whole. Such provision will be construed or reformed so as necessary to make it valid +and enforceable. +The European Commission may publish other linguistic versions or new versions of this Licence or updated versions of +the Appendix, so far this is required and reasonable, without reducing the scope of the rights granted by the Licence. +New versions of the Licence will be published with a unique version number. +All linguistic versions of this Licence, approved by the European Commission, have identical value. Parties can take +advantage of the linguistic version of their choice. + +14.Jurisdiction +Without prejudice to specific agreement between parties, +— any litigation resulting from the interpretation of this License, arising between the European Union institutions, +bodies, offices or agencies, as a Licensor, and any Licensee, will be subject to the jurisdiction of the Court of Justice +of the European Union, as laid down in article 272 of the Treaty on the Functioning of the European Union, +— any litigation arising between other parties and resulting from the interpretation of this License, will be subject to +the exclusive jurisdiction of the competent court where the Licensor resides or conducts its primary business. + +15.Applicable Law +Without prejudice to specific agreement between parties, +— this Licence shall be governed by the law of the European Union Member State where the Licensor has his seat, +resides or has his registered office, +— this licence shall be governed by Belgian law if the Licensor has no seat, residence or registered office inside +a European Union Member State. + + + Appendix + +‘Compatible Licences’ according to Article 5 EUPL are: +— GNU General Public License (GPL) v. 2, v. 3 +— GNU Affero General Public License (AGPL) v. 3 +— Open Software License (OSL) v. 2.1, v. 3.0 +— Eclipse Public License (EPL) v. 1.0 +— CeCILL v. 2.0, v. 2.1 +— Mozilla Public Licence (MPL) v. 2 +— GNU Lesser General Public Licence (LGPL) v. 2.1, v. 3 +— Creative Commons Attribution-ShareAlike v. 3.0 Unported (CC BY-SA 3.0) for works other than software +— European Union Public Licence (EUPL) v. 1.1, v. 1.2 +— Québec Free and Open-Source Licence — Reciprocity (LiLiQ-R) or Strong Reciprocity (LiLiQ-R+). + +The European Commission may update this Appendix to later versions of the above licences without producing +a new version of the EUPL, as long as they provide the rights granted in Article 2 of this Licence and protect the +covered Source Code from exclusive appropriation. +All other changes or additions to this Appendix require the production of a new EUPL version. diff --git a/README.md b/README.md index c626c722..d75edb50 100644 --- a/README.md +++ b/README.md @@ -1 +1,3 @@ -# oe_whitelabel +# The OpenEuropa Whitelabel theme + + diff --git a/composer.json b/composer.json new file mode 100644 index 00000000..cf1ab720 --- /dev/null +++ b/composer.json @@ -0,0 +1,74 @@ +{ + "name": "openeuropa/oe_whitelabel_theme", + "description": "OpenEuropa Drupal module template.", + "type": "drupal-module", + "license": "EUPL-1.2", + "minimum-stability": "dev", + "prefer-stable": true, + "require": { + "drupal/core": "^8.9 || ^9.1", + "php": ">=7.3" + }, + "require-dev": { + "composer/installers": "~1.11", + "drupal/core-composer-scaffold": "^8.9 || ^9.1", + "drupal/config_devel": "~1.2", + "drupal/drupal-extension": "~4.0", + "drush/drush": "^10.3", + "openeuropa/code-review": "^1.6", + "openeuropa/drupal-core-require-dev": "^8.9 || ^9.1", + "openeuropa/task-runner-drupal-project-symlink": "^1.0.0-beta3", + "phpspec/prophecy-phpunit": "^1 || ^2" + }, + "scripts": { + "drupal-scaffold": "DrupalComposer\\DrupalScaffold\\Plugin::scaffold", + "post-install-cmd": "./vendor/bin/run drupal:site-setup", + "post-update-cmd": "./vendor/bin/run drupal:site-setup" + }, + "repositories": { + "0": { + "type": "composer", + "url": "https://packages.drupal.org/8" + }, + "oe_bootstrap_theme": { + "type": "vcs", + "url": "https://github.com/openeuropa/oe_bootstrap_theme" + } + }, + "autoload": { + "psr-4": { + "Drupal\\drupal_module_template\\": "./src/" + } + }, + "autoload-dev": { + "psr-4": { + "Drupal\\Tests\\drupal_module_template\\": "./tests/src/" + } + }, + "extra": { + "composer-exit-on-patch-failure": true, + "enable-patching": true, + "drupal-scaffold": { + "locations": { + "web-root": "./build" + } + }, + "installer-paths": { + "build/core": [ + "type:drupal-core" + ], + "build/profiles/contrib/{$name}": [ + "type:drupal-profile" + ], + "build/modules/contrib/{$name}": [ + "type:drupal-module" + ], + "build/themes/contrib/{$name}": [ + "type:drupal-theme" + ] + } + }, + "config": { + "sort-packages": true + } +} diff --git a/config/install/oe_whitelabel.settings.yml b/config/install/oe_whitelabel.settings.yml new file mode 100644 index 00000000..c2375f02 --- /dev/null +++ b/config/install/oe_whitelabel.settings.yml @@ -0,0 +1,17 @@ +# Default settings should not be located here. This file is only used to +# initially install a theme's "settings". +# +# Instead, the Drupal Bootstrap base theme uses the @BootstrapSetting +# annotated plugin discovery process. This ensures that sub-theme settings are +# inherited from base themes themes properly and to determine when a setting +# should be saved to config as "overridden". +# +# @see \Drupal\bootstrap\Plugin\SettingBase +# @see \Drupal\bootstrap\Plugin\SettingInterface +# @see \Drupal\bootstrap\Plugin\SettingManager +# @see \Drupal\bootstrap\Plugin\Form\SystemThemeSettings +# @see \Drupal\bootstrap\ThemeSettings + +# This file cannot be empty, so install an initial empty array for "schemas". +# @see https://www.drupal.org/node/2813829 +schemas: [] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 00000000..5876338e --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,36 @@ +version: '2' +services: + web: + image: fpfis/httpd-php-dev:7.3 + working_dir: /var/www/html + ports: + - 8080:8080 + volumes: + - .:/var/www/html # Non Mac users. + # - nfsmount:/var/www/html # Mac Users with the nfsmount volume. + environment: + XDEBUG_CONFIG: "client_host=172.17.0.1" # Non-Mac users. + # XDEBUG_CONFIG: "client_host=host.docker.internal" # Mac users. + XDEBUG_MODE: "develop, debug" + PHP_IDE_CONFIG: "serverName=Docker" + # Enable step debugging for all PHP request. See ./README.md#step-debugging for more information. + # XDEBUG_SESSION: 1 + mysql: + image: percona/percona-server:5.7 + command: --innodb-log-file-size=1G --max_allowed_packet=1G --innodb-buffer-pool-size=512M --wait_timeout=3000 --net_write_timeout=3000 --log_error_verbosity=3 + environment: + MYSQL_ALLOW_EMPTY_PASSWORD: "yes" + # ports: + # - 3306:3306 + +#### Mac users: uncomment the "volumes" key to enable the NFS file sharing. You can find more information about Docker for Mac here: https://github.com/openeuropa/openeuropa/blob/master/docs/starting/tooling.md#using-docker-on-macos + +#volumes: +# nfsmount: +# driver: local +# driver_opts: +# type: nfs +# o: addr=host.docker.internal,rw,nolock,hard,nointr,nfsvers=3 +# device: ":${PWD}/" + +#### End Mac users. diff --git a/favicon.ico b/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..7363265571ef331cbce67200ba572cc5bb8f16ec GIT binary patch literal 15406 zcmeI2%S%*I9LK+!5%j_q(I#T3DCq%$WeYc>cgAuN)ql_;!=ML3t!y#S1ENB6W_%D- zxb9_CSS^CAHnk|o9%O=nMM1Q%S}11U-^`r2<lO5V$C-N$dEw`|-g|!M`?=?y=kE?s zf_W$}2h$Lm%7AJBp-}q&ie<nhUaPFk++PPgT@F+*4_)YyzRtw=NI2+9MDUa8FJDXN z>2epA+>W*MozyY$QDt=2p<2f`mA4k#lz%*m8eM<!QU3JZrRy&~%0FI*7G3{%1TEqp zi=i|T#S2}3=6{*;ji7f1zUg=6;1+%J^3RuF>L8!`6MsHKe(x{O_LFb>&A0!g>LA^J zN7=4^_!;YJRQkI3%*G+(Oo$ey$@rA((cXZiWa*)OrG1+vld^iG?CCg|?<P%a%+ko; z>!;sYk4?!4eruGc#VKX84Q%#e;CQpIP}-{8_6Qn1^&K2m`3jZB9USq}XZ;*3l&&h5 z^?%4qpZA(ozCxvZ#%3>l-qW71X25yeOP^)6&Y(Q4J|G&N`VOuaT%Q^~`fm%aAHln9 z`fUzYP<x^X`V*q{F9X+IO-0aFZRLPlzk4SZQhTt7`h%h=4DEGTL*2e2YO6Zv%V^8o zsIC<|mH9nT{h;e#+CY%)PxR#ovj2&G(BqFVaQz$D_?yuWcK!)?{tbHlVZiz;(Df(V zf1vB{p!Xj^@4r%GK!E#C(f_;ucJP^V^Osq%bXhs=zlGs{IwVfQ5H0r7bmAn;o;qSc zX@`T=NeAaRe#-ncO#4_Q8%}9Pab6gNB~6w4-;P?WCu={g7<&(|^{r_4$HS@cc<%6g zW%RqsaVtpn^fQrx^Vc=Pm*n~Y7wS>PF~4B(Cf1EteP_Q;7Oq3L<jT*scT!tJmq|Cj zgHsy(H%#Ma8}f}&x}S}C@0rHW_I%&X=yy)`JErj`qqytG?7qkLf7>*EsZ%$j-?_Xi z)A$)5e&EOKx>v&be`FdzdHTsX?Huqhj56kZW*onR=iOD9@2cmlr^zrDll_fx{A4;) zgC$v^T^HLTSVi_B1Nn!9&4rrvROV@p|DR0b7beD%wq}KPUF3RoH`%|N#-Cz}Vvh@T z%IPHgH=pw;^NtzFKgMr-$AobTc;>>{dMx68<+6e7YAt=Ghm2nQtzm@7{@Pf6vbFB; z{^-tmtC8&E2J?@zf9}s#{}&sulH4N(v#Y($h_I?>U|eNEmxB%5D?YY>UG;+}iCSzF zb~2x!4bXz$>*l^E6V?IN`DvyfXzJbAmP$Owc7ChdkL~?ejYGDMpNd~no98d#w|)I! z`})oH^|Q1goA)omZ~Oky<o$bh4*Pf8<0rPquh<2wjvq=Nwmg0->j=B!=azrJu>JcH z+mF@X@5pcU_fy-yU&|c8eZ956ACNh~^51VD=KB2%<3z9cKHeA8I0j05YR12xk#{h6 K%+<hjHSh->gfU_O literal 0 HcmV?d00001 diff --git a/grumphp.yml.dist b/grumphp.yml.dist new file mode 100644 index 00000000..ec725bc3 --- /dev/null +++ b/grumphp.yml.dist @@ -0,0 +1,14 @@ +imports: + - { resource: vendor/openeuropa/code-review/dist/drupal-conventions.yml } +parameters: + tasks.phpcs.ignore_patterns: + - build/ + - node_modules/ + - vendor/ + tasks.phpcs.triggered_by: + - inc + - install + - module + - php + - theme + - yml diff --git a/logo.svg b/logo.svg new file mode 100644 index 00000000..353059c3 --- /dev/null +++ b/logo.svg @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg width="33px" height="27px" viewBox="0 0 33 27" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <title>logo</title> + <desc>Created with Sketch.</desc> + <defs> + <polygon id="path-1" points="0 0 33 0 33 27 0 27"></polygon> + <linearGradient x1="14.8591797%" y1="18.3005955%" x2="102.242188%" y2="76.5709468%" id="linearGradient-3"> + <stop stop-color="#9013FE" offset="0%"></stop> + <stop stop-color="#6610F2" offset="99.5%"></stop> + </linearGradient> + <linearGradient x1="27.7655748%" y1="6.58202765%" x2="61.0063612%" y2="84.5230415%" id="linearGradient-4"> + <stop stop-color="#FFFFFF" offset="0%"></stop> + <stop stop-color="#F1E5FC" offset="100%"></stop> + </linearGradient> + </defs> + <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> + <g id="logo"> + <mask id="mask-2" fill="white"> + <use xlink:href="#path-1"></use> + </mask> + <g id="Path"></g> + <g id="Group" mask="url(#mask-2)"> + <path d="M3.64037695,3.52852941 C3.57811523,1.69279412 4.97114063,0 6.85407422,0 L26.1483105,0 C28.0312441,0 29.4242695,1.69279412 29.3620078,3.52852941 C29.3021953,5.29193382 29.3798613,7.57621324 29.9397656,9.43875 C30.5014746,11.3070441 31.4486777,12.4879632 33,12.6397059 L33,14.3602941 C31.4486777,14.5120368 30.5014746,15.6929559 29.9397656,17.56125 C29.3798613,19.4237868 29.3021953,21.7080662 29.3620078,23.4715368 C29.4242695,25.3072059 28.0312441,27 26.1483105,27 L6.85407422,27 C4.97114063,27 3.57811523,25.3072059 3.64044141,23.4715368 C3.70018945,21.7080662 3.62252344,19.4237868 3.06255469,17.56125 C2.50091016,15.6929559 1.55138672,14.5120368 0,14.3602941 L0,12.6397059 C1.55132227,12.4879632 2.50091016,11.3070441 3.06255469,9.43875 C3.62252344,7.57621324 3.70018945,5.29193382 3.64037695,3.52852941 Z" id="Path" fill="url(#linearGradient-3)"></path> + <path d="M17.215623,20.6773015 C20.2640625,20.6773015 22.101041,19.1447868 22.101041,16.6170441 C22.101041,14.7063309 20.7903223,13.3230441 18.8440957,13.1040662 L18.8440957,13.0244559 C20.2739883,12.785625 21.3960527,11.4222574 21.3960527,9.89966912 C21.3960527,7.73020588 19.727877,6.31700735 17.1858457,6.31700735 L11.4662754,6.31700735 L11.4662754,20.6773015 L17.215623,20.6773015 Z M13.6905527,8.13818382 L16.6496602,8.13818382 C18.2582813,8.13818382 19.1717754,8.87459559 19.1717754,10.2081176 C19.1717754,11.6312426 18.1093301,12.4273456 16.1829551,12.4273456 L13.6905527,12.4273456 L13.6905527,8.13818382 L13.6905527,8.13818382 Z M13.6905527,18.8561912 L13.6905527,14.1291397 L16.6297441,14.1291397 C18.7348477,14.1291397 19.8271348,14.9252426 19.8271348,16.4777426 C19.8271348,18.0301765 18.7646895,18.8561912 16.7588438,18.8561912 L13.6905527,18.8561912 L13.6905527,18.8561912 Z" id="Shape" fill="url(#linearGradient-4)" fill-rule="nonzero"></path> + <path d="M18.7796426,13.1634265 L18.7796426,12.9682059 L18.8337832,12.9591397 C20.2317715,12.7256029 21.3315996,11.3904926 21.3315996,9.89966912 C21.3315996,8.83383088 20.9225156,7.957125 20.2030898,7.34578676 C19.4825039,6.73338971 18.4457109,6.38318382 17.1858457,6.38318382 L11.5307285,6.38318382 L11.5307285,20.611125 L17.215623,20.611125 C18.7301426,20.611125 19.9354805,20.2304118 20.7609316,19.5436324 C21.5846426,18.8583088 22.0365879,17.8629485 22.0365879,16.6170441 C22.0365879,14.7439191 20.7544863,13.3855809 18.8370703,13.1698456 L18.7796426,13.1634265 Z M11.4662754,20.6773015 L11.4662754,6.31700735 L17.1858457,6.31700735 C19.727877,6.31700735 21.3960527,7.73020588 21.3960527,9.89966912 C21.3960527,11.4222574 20.2739883,12.785625 18.8440957,13.0244559 L18.8440957,13.1040662 C20.7903223,13.3230441 22.101041,14.7063309 22.101041,16.6170441 C22.101041,19.1447868 20.2640625,20.6773015 17.215623,20.6773015 L11.4662754,20.6773015 Z M13.6260996,8.07200735 L16.6496602,8.07200735 C17.4623496,8.07200735 18.1091367,8.25789706 18.5540566,8.62133824 C19.0012324,8.98656618 19.2362285,9.52444853 19.2362285,10.2081176 C19.2362285,10.9388382 18.9623027,11.5144412 18.4375898,11.9050147 C17.9159063,12.2932721 17.1532969,12.4935221 16.1829551,12.4935221 L13.6260996,12.4935221 L13.6260996,8.07200735 Z M13.6260996,18.9223676 L13.6260996,14.0629632 L16.6297441,14.0629632 C17.6884512,14.0629632 18.5034609,14.2628162 19.0553086,14.6673529 C19.610959,15.0747353 19.8915879,15.6834265 19.8915879,16.4777426 C19.8915879,17.2711324 19.6190801,17.8868382 19.0840547,18.3018971 C18.5519941,18.7146397 17.7688242,18.9223676 16.7588438,18.9223676 L13.6260996,18.9223676 L13.6260996,18.9223676 Z M13.6905527,8.13818382 L13.6905527,12.4273456 L16.1829551,12.4273456 C18.1093301,12.4273456 19.1717754,11.6312426 19.1717754,10.2081176 C19.1717754,8.87459559 18.2582813,8.13818382 16.6496602,8.13818382 L13.6905527,8.13818382 Z M13.6905527,18.8561912 L16.7588438,18.8561912 C18.7646895,18.8561912 19.8271348,18.0301765 19.8271348,16.4777426 C19.8271348,14.9252426 18.7348477,14.1291397 16.6297441,14.1291397 L13.6905527,14.1291397 L13.6905527,18.8561912 L13.6905527,18.8561912 Z" id="Shape" fill="#FFFFFF"></path> + </g> + </g> + </g> +</svg> \ No newline at end of file diff --git a/oe_whitelabel.info.yml b/oe_whitelabel.info.yml new file mode 100644 index 00000000..bc9727b9 --- /dev/null +++ b/oe_whitelabel.info.yml @@ -0,0 +1,6 @@ +name: OpenEuropa Whitelabel Theme +description: The OpenEuropa Whitelabel theme. +screenshot: screenshot.png +type: theme +base theme: false +core_version_requirement: ^8.9 || ^9.1 \ No newline at end of file diff --git a/oe_whitelabel.libraries.yml b/oe_whitelabel.libraries.yml new file mode 100644 index 00000000..e69de29b diff --git a/runner.yml.dist b/runner.yml.dist new file mode 100644 index 00000000..3ad4f8f8 --- /dev/null +++ b/runner.yml.dist @@ -0,0 +1,43 @@ +drupal: + root: "build" + base_url: "http://web:8080/build" + site: + name: "OpenEuropa" + profile: "minimal" + database: + host: "mysql" + port: "3306" + name: "oe_whitelabel_theme" + user: "root" + password: "" + post_install: + # Prepare the instance. + - "./vendor/bin/drush en toolbar -y" + - "./vendor/bin/drush theme:enable oe_whitelabel -y" + - "./vendor/bin/drush theme:enable seven -y" + - "./vendor/bin/drush config-set system.theme default oe_whitelabel -y" + - "./vendor/bin/drush config-set system.theme admin seven -y" + - "./vendor/bin/drush config-set node.settings use_admin_theme 1 -y" + # Enable the modules. + - "./vendor/bin/drush en config_devel -y" + - "./vendor/bin/drush en drupal_module_template -y" + - "./vendor/bin/drush cr" + settings: + settings: + file_scan_ignore_directories: + - "node_modules" + - "bower_components" + - "vendor" + - "${drupal.root}" + +commands: + drupal:site-setup: + - { task: "run", command: "drupal:symlink-project" } + - { task: "run", command: "drupal:drush-setup" } + - { task: "run", command: "drupal:settings-setup" } + - { task: "run", command: "setup:phpunit" } + - { task: "run", command: "setup:behat" } + setup:phpunit: + - { task: "process", source: "phpunit.xml.dist", destination: "phpunit.xml" } + setup:behat: + - { task: "process", source: "behat.yml.dist", destination: "behat.yml" } diff --git a/screenshot.png b/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..8f9bc2b2627d1ec1f6f13e3c859d30e8216b4ac2 GIT binary patch literal 1435 zcmeAS@N?(olHy`uVBq!ia0y~yV2WU1U_8XZ1QgjLs9?;%z?$Ug;uunK>+MxTMg|5J z2FDcPzy#HtcS?UgN!l_p#7|{mkWd_?$c=+xu%ZS*roo94S{Mc`8oUWjgK;#ak&&K9 eQyMTy$3z8tu*B5*{tE*Zx(uGKelF{r5}E+|w(M*G literal 0 HcmV?d00001 diff --git a/whitelabel.theme b/whitelabel.theme new file mode 100644 index 00000000..8f05f7f0 --- /dev/null +++ b/whitelabel.theme @@ -0,0 +1,6 @@ +<?php + +/** + * @file + * The oe_whitelabel_theme hooks. + */ \ No newline at end of file -- GitLab From 24087ec3e52ab37a4d41a7fda0eae0a2841a6bff Mon Sep 17 00:00:00 2001 From: 10atm-blue <18004849+10atm-blue@users.noreply.github.com> Date: Wed, 28 Jul 2021 09:58:17 +0200 Subject: [PATCH 02/25] OEL-309: OpenEuropa Whitelabel with base theme. --- composer.json | 13 ++++++------- oe_whitelabel.info.yml | 2 +- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/composer.json b/composer.json index cf1ab720..b6d29c6b 100644 --- a/composer.json +++ b/composer.json @@ -1,7 +1,7 @@ { "name": "openeuropa/oe_whitelabel_theme", - "description": "OpenEuropa Drupal module template.", - "type": "drupal-module", + "description": "OpenEuropa Whitelabel theme.", + "type": "drupal-theme", "license": "EUPL-1.2", "minimum-stability": "dev", "prefer-stable": true, @@ -10,18 +10,17 @@ "php": ">=7.3" }, "require-dev": { - "composer/installers": "~1.11", + "composer/installers": "^1.11", "drupal/core-composer-scaffold": "^8.9 || ^9.1", "drupal/config_devel": "~1.2", - "drupal/drupal-extension": "~4.0", + "drupal/drupal-extension": "~4.1", "drush/drush": "^10.3", - "openeuropa/code-review": "^1.6", + "openeuropa/code-review": "1.6", "openeuropa/drupal-core-require-dev": "^8.9 || ^9.1", - "openeuropa/task-runner-drupal-project-symlink": "^1.0.0-beta3", + "openeuropa/task-runner-drupal-project-symlink": "^1.0", "phpspec/prophecy-phpunit": "^1 || ^2" }, "scripts": { - "drupal-scaffold": "DrupalComposer\\DrupalScaffold\\Plugin::scaffold", "post-install-cmd": "./vendor/bin/run drupal:site-setup", "post-update-cmd": "./vendor/bin/run drupal:site-setup" }, diff --git a/oe_whitelabel.info.yml b/oe_whitelabel.info.yml index bc9727b9..0ee65783 100644 --- a/oe_whitelabel.info.yml +++ b/oe_whitelabel.info.yml @@ -2,5 +2,5 @@ name: OpenEuropa Whitelabel Theme description: The OpenEuropa Whitelabel theme. screenshot: screenshot.png type: theme -base theme: false +base theme: oe_bootstrap_theme core_version_requirement: ^8.9 || ^9.1 \ No newline at end of file -- GitLab From c2491e3c3883db6d2dea2fc5518dc746663fe233 Mon Sep 17 00:00:00 2001 From: 10atm-blue <18004849+10atm-blue@users.noreply.github.com> Date: Thu, 29 Jul 2021 08:49:04 +0200 Subject: [PATCH 03/25] OEL-309: OpenEuropa Whitelabel with base theme files. --- .drone.yml | 4 ++-- .gitignore | 3 ++- .phpunit.result.cache | 1 + behat.yml.dist | 25 ++++++++++++++++++++++ composer.json | 10 --------- oe_whitelabel.info.yml | 2 +- phpunit.xml.dist | 15 +++++++++++++ runner.yml.dist | 1 - tests/features/bootstrap/DrupalContext.php | 13 +++++++++++ tests/features/default.feature | 5 +++++ whitelabel.theme | 2 +- 11 files changed, 65 insertions(+), 16 deletions(-) create mode 100644 .phpunit.result.cache create mode 100644 behat.yml.dist create mode 100644 phpunit.xml.dist create mode 100644 tests/features/bootstrap/DrupalContext.php create mode 100644 tests/features/default.feature diff --git a/.drone.yml b/.drone.yml index 0ed0d2e9..c2f1cba2 100644 --- a/.drone.yml +++ b/.drone.yml @@ -10,13 +10,13 @@ clone: workspace: base: /test - path: drupal_module_template + path: oe_whitelabel_theme services: web: image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci environment: - - DOCUMENT_ROOT=/test/drupal_module_template + - DOCUMENT_ROOT=/test/oe_whitelabel_theme mysql: image: registry.fpfis.eu/fpfis/sql:percona-5.7 command: --innodb-log-file-size=1G --max_allowed_packet=1G --innodb-buffer-pool-size=512M --wait_timeout=3000 --net_write_timeout=3000 --log_error_verbosity=3 diff --git a/.gitignore b/.gitignore index 3935054c..9014e00b 100644 --- a/.gitignore +++ b/.gitignore @@ -14,4 +14,5 @@ runner.yml vendor yarn.lock /.gitattributes -config.codekit \ No newline at end of file +config.codekit +/.editorconfig \ No newline at end of file diff --git a/.phpunit.result.cache b/.phpunit.result.cache new file mode 100644 index 00000000..2de2a6da --- /dev/null +++ b/.phpunit.result.cache @@ -0,0 +1 @@ +{"version":1,"defects":[],"times":[]} \ No newline at end of file diff --git a/behat.yml.dist b/behat.yml.dist new file mode 100644 index 00000000..a0e3856e --- /dev/null +++ b/behat.yml.dist @@ -0,0 +1,25 @@ +default: + suites: + default: + paths: + - "%paths.base%/tests/features" + contexts: + - Drupal\DrupalExtension\Context\MinkContext + - Drupal\DrupalExtension\Context\DrupalContext + extensions: + Drupal\MinkExtension: + goutte: ~ + ajax_timeout: 10 + browser_name: 'chrome' + javascript_session: 'selenium2' + selenium2: + wd_host: '${selenium.host}:${selenium.port}/wd/hub' + capabilities: { "browser": "chrome", "version": "*" } + base_url: "${drupal.base_url}" + files_path: "%paths.base%/tests/fixtures/" + Drupal\DrupalExtension: + api_driver: "drupal" + drupal: + drupal_root: "${drupal.root}" + formatters: + progress: ~ diff --git a/composer.json b/composer.json index b6d29c6b..874845ea 100644 --- a/composer.json +++ b/composer.json @@ -34,16 +34,6 @@ "url": "https://github.com/openeuropa/oe_bootstrap_theme" } }, - "autoload": { - "psr-4": { - "Drupal\\drupal_module_template\\": "./src/" - } - }, - "autoload-dev": { - "psr-4": { - "Drupal\\Tests\\drupal_module_template\\": "./tests/src/" - } - }, "extra": { "composer-exit-on-patch-failure": true, "enable-patching": true, diff --git a/oe_whitelabel.info.yml b/oe_whitelabel.info.yml index 0ee65783..376f0e10 100644 --- a/oe_whitelabel.info.yml +++ b/oe_whitelabel.info.yml @@ -3,4 +3,4 @@ description: The OpenEuropa Whitelabel theme. screenshot: screenshot.png type: theme base theme: oe_bootstrap_theme -core_version_requirement: ^8.9 || ^9.1 \ No newline at end of file +core_version_requirement: ^8.9 || ^9.1 diff --git a/phpunit.xml.dist b/phpunit.xml.dist new file mode 100644 index 00000000..9e556d89 --- /dev/null +++ b/phpunit.xml.dist @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<phpunit bootstrap="${drupal.root}/core/tests/bootstrap.php" backupGlobals="true" colors="true" > + <php> + <ini name="error_reporting" value="32767"/> + <ini name="memory_limit" value="-1"/> + <env name="SIMPLETEST_IGNORE_DIRECTORIES" value="${drupal.root}"/> + <env name="SIMPLETEST_BASE_URL" value="${drupal.base_url}"/> + <env name="SIMPLETEST_DB" value="mysql://${drupal.database.user}:${drupal.database.password}@${drupal.database.host}:${drupal.database.port}/${drupal.database.name}"/> + </php> + <testsuites> + <testsuite name="OpenEuropa Whitelabel Theme"> + <directory>./tests/</directory> + </testsuite> + </testsuites> +</phpunit> diff --git a/runner.yml.dist b/runner.yml.dist index 3ad4f8f8..aba3d87f 100644 --- a/runner.yml.dist +++ b/runner.yml.dist @@ -20,7 +20,6 @@ drupal: - "./vendor/bin/drush config-set node.settings use_admin_theme 1 -y" # Enable the modules. - "./vendor/bin/drush en config_devel -y" - - "./vendor/bin/drush en drupal_module_template -y" - "./vendor/bin/drush cr" settings: settings: diff --git a/tests/features/bootstrap/DrupalContext.php b/tests/features/bootstrap/DrupalContext.php new file mode 100644 index 00000000..091a9752 --- /dev/null +++ b/tests/features/bootstrap/DrupalContext.php @@ -0,0 +1,13 @@ +<?php + +declare(strict_types = 1); + +namespace Drupal\Tests\oe_whitelabel_theme\Behat; + +use Drupal\DrupalExtension\Context\RawDrupalContext; + +/** + * Defines step definitions that are generally useful in this project. + */ +class DrupalContext extends RawDrupalContext { +} diff --git a/tests/features/default.feature b/tests/features/default.feature new file mode 100644 index 00000000..6c2062bf --- /dev/null +++ b/tests/features/default.feature @@ -0,0 +1,5 @@ +Feature: Test Behat testing itself + + Scenario: Check that Behat testing works + When I go to homepage + Then the response status code should be 200 diff --git a/whitelabel.theme b/whitelabel.theme index 8f05f7f0..5ecfd45c 100644 --- a/whitelabel.theme +++ b/whitelabel.theme @@ -3,4 +3,4 @@ /** * @file * The oe_whitelabel_theme hooks. - */ \ No newline at end of file + */ -- GitLab From 6c63bf41422a59c5ba704778a2c0331198c4d1e4 Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Fri, 30 Jul 2021 13:28:06 +0300 Subject: [PATCH 04/25] OEL-309: Add oe_bootstrap_theme subtheme setup. --- .drone.yml | 13 +- README.md | 28 + assets/css/oe-bcl-default.css | 11634 ++++++++++++++++ assets/css/oe-bcl-default.css.map | 1 + assets/css/oe-bcl-default.min.css | 2 + assets/css/oe-bcl-default.min.css.map | 1 + assets/css/oe_bootstrap_theme.style.min.css | 2 + .../css/oe_bootstrap_theme.style.min.css.map | 1 + assets/icons/bootstrap-icons.svg | 1 + assets/js/oe-bcl-default.bundle.js | 6743 +++++++++ assets/js/oe-bcl-default.bundle.js.map | 1 + assets/js/oe-bcl-default.bundle.min.js | 2 + assets/js/oe-bcl-default.bundle.min.js.map | 1 + assets/js/oe-bcl-default.esm.js | 4962 +++++++ assets/js/oe-bcl-default.esm.js.map | 1 + assets/js/oe-bcl-default.esm.min.js | 2 + assets/js/oe-bcl-default.esm.min.js.map | 1 + assets/js/oe-bcl-default.umd.js | 6914 +++++++++ assets/js/oe-bcl-default.umd.js.map | 1 + assets/js/oe-bcl-default.umd.min.js | 2 + assets/js/oe-bcl-default.umd.min.js.map | 1 + assets/js/progress.js | 74 + bcl-builder.config.js | 38 + composer.json | 1 + config/schema/oe_whitelabel.schema.yml | 5 + docker-compose.yml | 29 + includes/block.inc | 6 + includes/comment.inc | 6 + includes/content.inc | 6 + includes/field.inc | 6 + includes/form.inc | 6 + includes/menu.inc | 6 + includes/theme.inc | 6 + includes/user.inc | 6 + includes/view.inc | 6 + oe_whitelabel.breakpoints.yml | 36 + oe_whitelabel.info.yml | 23 + oe_whitelabel.libraries.yml | 6 + oe_whitelabel.theme | 14 + package.json | 25 + resources/sass/block/_block.scss | 0 resources/sass/components/_my.component.scss | 5 + resources/sass/content/_node.article.scss | 11 + resources/sass/content/_node.page.scss | 2 + resources/sass/default.style.scss | 15 + resources/sass/layout/_page.content.scss | 5 + resources/sass/layout/_page.footer.scss | 5 + resources/sass/layout/_page.header.scss | 5 + runner.yml.dist | 11 +- screenshot.png | Bin 1435 -> 17450 bytes templates/README.txt | 2 + templates/layouts/README.txt | 1 + templates/overrides/README.txt | 2 + templates/paragraphs/README.txt | 1 + templates/patterns/README.txt | 1 + whitelabel.theme | 6 - 56 files changed, 30679 insertions(+), 12 deletions(-) create mode 100644 assets/css/oe-bcl-default.css create mode 100644 assets/css/oe-bcl-default.css.map create mode 100644 assets/css/oe-bcl-default.min.css create mode 100644 assets/css/oe-bcl-default.min.css.map create mode 100644 assets/css/oe_bootstrap_theme.style.min.css create mode 100644 assets/css/oe_bootstrap_theme.style.min.css.map create mode 100644 assets/icons/bootstrap-icons.svg create mode 100644 assets/js/oe-bcl-default.bundle.js create mode 100644 assets/js/oe-bcl-default.bundle.js.map create mode 100644 assets/js/oe-bcl-default.bundle.min.js create mode 100644 assets/js/oe-bcl-default.bundle.min.js.map create mode 100644 assets/js/oe-bcl-default.esm.js create mode 100644 assets/js/oe-bcl-default.esm.js.map create mode 100644 assets/js/oe-bcl-default.esm.min.js create mode 100644 assets/js/oe-bcl-default.esm.min.js.map create mode 100644 assets/js/oe-bcl-default.umd.js create mode 100644 assets/js/oe-bcl-default.umd.js.map create mode 100644 assets/js/oe-bcl-default.umd.min.js create mode 100644 assets/js/oe-bcl-default.umd.min.js.map create mode 100644 assets/js/progress.js create mode 100644 bcl-builder.config.js create mode 100644 config/schema/oe_whitelabel.schema.yml create mode 100644 includes/block.inc create mode 100644 includes/comment.inc create mode 100644 includes/content.inc create mode 100644 includes/field.inc create mode 100644 includes/form.inc create mode 100644 includes/menu.inc create mode 100644 includes/theme.inc create mode 100644 includes/user.inc create mode 100644 includes/view.inc create mode 100644 oe_whitelabel.breakpoints.yml create mode 100644 oe_whitelabel.theme create mode 100644 package.json create mode 100644 resources/sass/block/_block.scss create mode 100644 resources/sass/components/_my.component.scss create mode 100644 resources/sass/content/_node.article.scss create mode 100644 resources/sass/content/_node.page.scss create mode 100644 resources/sass/default.style.scss create mode 100644 resources/sass/layout/_page.content.scss create mode 100644 resources/sass/layout/_page.footer.scss create mode 100644 resources/sass/layout/_page.header.scss create mode 100644 templates/README.txt create mode 100644 templates/layouts/README.txt create mode 100644 templates/overrides/README.txt create mode 100644 templates/paragraphs/README.txt create mode 100644 templates/patterns/README.txt delete mode 100644 whitelabel.theme diff --git a/.drone.yml b/.drone.yml index c2f1cba2..92a0b755 100644 --- a/.drone.yml +++ b/.drone.yml @@ -24,6 +24,13 @@ services: - MYSQL_ALLOW_EMPTY_PASSWORD=yes pipeline: + npm-build: + group: prepare + image: registry.fpfis.eu/fpfis/node:12.21.0 + commands: + - npm install --unsafe-perm + - NODE_ENV=production npm run build + - composer-install: group: prepare image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci @@ -38,10 +45,10 @@ pipeline: volumes: - /cache:/cache commands: - # @todo remove "composer install" step once the following issue is fixed. - # @link https://webgate.ec.europa.eu/CITnet/jira/browse/OPENEUROPA-1234 - - composer update --prefer-lowest --prefer-stable --ansi --no-suggest --no-progress + - composer update --prefer-lowest --ansi --no-suggest --no-progress when: + event: + exclude: tag matrix: COMPOSER_BOUNDARY: lowest diff --git a/README.md b/README.md index d75edb50..d48b1e46 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,31 @@ # The OpenEuropa Whitelabel theme +## Requirements + +This depends on the following software: + +* [PHP 7.3](http://php.net/) + +## Installation + +OpenEuropa Whitelabel theme uses [Webpack](https://webpack.js.org) to compile and bundle SASS and JS. + +#### Step 1 +Make sure you have Node and npm installed. +You can read a guide on how to install node here: https://docs.npmjs.com/getting-started/installing-node + +If you prefer to use [Yarn](https://yarnpkg.com) instead of npm, install Yarn by following the guide [here](https://yarnpkg.com/docs/install). + +#### Step 2 +Go to the root of OpenEuropa Whitelabel theme and run the following commands: `npm install` or `yarn install`. + +#### Step 3 +Run the following command to compile Sass and watch for changes: `npm run watch` or `yarn watch`. + +*Important:* `style` and `copy` tasks are defined in the bcl-builder config file. You can change or improve them based on your needs. [bcl-builder.config.js](bcl-builder.config.js) + +## Overriding inherited templates +Add template file with the same name in your sub-theme folder to have it override the template from the parent theme. +[layout](layout), [overrides](overrides), [paragraphs](paragraphs), [patterns](patterns) folders are there for this purpose. + diff --git a/assets/css/oe-bcl-default.css b/assets/css/oe-bcl-default.css new file mode 100644 index 00000000..42cb3a32 --- /dev/null +++ b/assets/css/oe-bcl-default.css @@ -0,0 +1,11634 @@ +@charset "UTF-8"; +:root { + --bs-blue: #0d6efd; + --bs-indigo: #6610f2; + --bs-purple: #6f42c1; + --bs-pink: #d63384; + --bs-red: #dc3545; + --bs-orange: #fd7e14; + --bs-yellow: #ffc107; + --bs-green: #198754; + --bs-teal: #20c997; + --bs-cyan: #0dcaf0; + --bs-white: #fff; + --bs-gray: #6c757d; + --bs-gray-dark: #343a40; + --bs-primary: #0d6efd; + --bs-secondary: #6c757d; + --bs-success: #198754; + --bs-info: #0dcaf0; + --bs-warning: #ffc107; + --bs-danger: #dc3545; + --bs-light: #f8f9fa; + --bs-dark: #212529; + --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)); +} + +*, +*::before, +*::after { + box-sizing: border-box; +} + +@media (prefers-reduced-motion: no-preference) { + :root { + scroll-behavior: smooth; + } +} + +body { + margin: 0; + font-family: var(--bs-font-sans-serif); + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + background-color: #fff; + -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: 0.25; +} + +hr:not([size]) { + height: 1px; +} + +h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 { + margin-top: 0; + margin-bottom: 0.5rem; + font-weight: 500; + line-height: 1.2; +} + +h1, .h1 { + font-size: calc(1.375rem + 1.5vw); +} +@media (min-width: 1200px) { + h1, .h1 { + font-size: 2.5rem; + } +} + +h2, .h2 { + font-size: calc(1.325rem + 0.9vw); +} +@media (min-width: 1200px) { + h2, .h2 { + font-size: 2rem; + } +} + +h3, .h3 { + font-size: calc(1.3rem + 0.6vw); +} +@media (min-width: 1200px) { + h3, .h3 { + font-size: 1.75rem; + } +} + +h4, .h4 { + font-size: calc(1.275rem + 0.3vw); +} +@media (min-width: 1200px) { + h4, .h4 { + font-size: 1.5rem; + } +} + +h5, .h5 { + font-size: 1.25rem; +} + +h6, .h6 { + font-size: 1rem; +} + +p { + margin-top: 0; + margin-bottom: 1rem; +} + +abbr[title], +abbr[data-bs-original-title] { + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; + cursor: help; + -webkit-text-decoration-skip-ink: none; + 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: 0.5rem; + margin-left: 0; +} + +blockquote { + margin: 0 0 1rem; +} + +b, +strong { + font-weight: bolder; +} + +small, .small { + font-size: 0.875em; +} + +mark, .mark { + padding: 0.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: #0d6efd; + text-decoration: underline; +} +a:hover { + color: #0a58ca; +} + +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; +} +pre code { + font-size: inherit; + color: inherit; + word-break: normal; +} + +code { + font-size: 0.875em; + color: #d63384; + word-wrap: break-word; +} +a > code { + color: inherit; +} + +kbd { + padding: 0.2rem 0.4rem; + font-size: 0.875em; + color: #fff; + background-color: #212529; + border-radius: 0.2rem; +} +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: 0.5rem; + padding-bottom: 0.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: 0.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; +} + +/* rtl:raw: +[type="tel"], +[type="url"], +[type="email"], +[type="number"] { + direction: ltr; +} +*/ +::-webkit-search-decoration { + -webkit-appearance: none; +} + +::-webkit-color-swatch-wrapper { + padding: 0; +} + +::-webkit-file-upload-button { + font: inherit; +} + +::file-selector-button { + font: inherit; +} + +::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: 0.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: 0.25rem; + background-color: #fff; + border: 1px solid #dee2e6; + border-radius: 0.25rem; + max-width: 100%; + height: auto; +} + +.figure { + display: inline-block; +} + +.figure-img { + margin-bottom: 0.5rem; + line-height: 1; +} + +.figure-caption { + font-size: 0.875em; + color: #6c757d; +} + +.container, +.container-fluid, +.container-xxl, +.container-xl, +.container-lg, +.container-md, +.container-sm { + width: 100%; + padding-right: var(--bs-gutter-x, 0.75rem); + padding-left: var(--bs-gutter-x, 0.75rem); + margin-right: auto; + margin-left: auto; +} + +@media (min-width: 576px) { + .container-sm, .container { + max-width: 540px; + } +} +@media (min-width: 768px) { + .container-md, .container-sm, .container { + max-width: 720px; + } +} +@media (min-width: 992px) { + .container-lg, .container-md, .container-sm, .container { + max-width: 960px; + } +} +@media (min-width: 1200px) { + .container-xl, .container-lg, .container-md, .container-sm, .container { + max-width: 1140px; + } +} +@media (min-width: 1400px) { + .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container { + max-width: 1320px; + } +} +.row { + --bs-gutter-x: 1.5rem; + --bs-gutter-y: 0; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + margin-top: calc(var(--bs-gutter-y) * -1); + margin-right: calc(var(--bs-gutter-x) * -.5); + margin-left: calc(var(--bs-gutter-x) * -.5); +} +.row > * { + -ms-flex-negative: 0; + flex-shrink: 0; + width: 100%; + max-width: 100%; + padding-right: calc(var(--bs-gutter-x) * .5); + padding-left: calc(var(--bs-gutter-x) * .5); + margin-top: var(--bs-gutter-y); +} + +.col { + -ms-flex: 1 0 0%; + flex: 1 0 0%; +} + +.row-cols-auto > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; +} + +.row-cols-1 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; +} + +.row-cols-2 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; +} + +.row-cols-3 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.3333333333%; +} + +.row-cols-4 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; +} + +.row-cols-5 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 20%; +} + +.row-cols-6 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.6666666667%; +} + +@media (min-width: 576px) { + .col-sm { + -ms-flex: 1 0 0%; + flex: 1 0 0%; + } + + .row-cols-sm-auto > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + + .row-cols-sm-1 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + + .row-cols-sm-2 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + + .row-cols-sm-3 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-sm-4 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + + .row-cols-sm-5 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 20%; + } + + .row-cols-sm-6 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.6666666667%; + } +} +@media (min-width: 768px) { + .col-md { + -ms-flex: 1 0 0%; + flex: 1 0 0%; + } + + .row-cols-md-auto > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + + .row-cols-md-1 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + + .row-cols-md-2 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + + .row-cols-md-3 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-md-4 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + + .row-cols-md-5 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 20%; + } + + .row-cols-md-6 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.6666666667%; + } +} +@media (min-width: 992px) { + .col-lg { + -ms-flex: 1 0 0%; + flex: 1 0 0%; + } + + .row-cols-lg-auto > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + + .row-cols-lg-1 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + + .row-cols-lg-2 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + + .row-cols-lg-3 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-lg-4 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + + .row-cols-lg-5 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 20%; + } + + .row-cols-lg-6 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.6666666667%; + } +} +@media (min-width: 1200px) { + .col-xl { + -ms-flex: 1 0 0%; + flex: 1 0 0%; + } + + .row-cols-xl-auto > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + + .row-cols-xl-1 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + + .row-cols-xl-2 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + + .row-cols-xl-3 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-xl-4 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + + .row-cols-xl-5 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 20%; + } + + .row-cols-xl-6 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.6666666667%; + } +} +@media (min-width: 1400px) { + .col-xxl { + -ms-flex: 1 0 0%; + flex: 1 0 0%; + } + + .row-cols-xxl-auto > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + + .row-cols-xxl-1 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + + .row-cols-xxl-2 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + + .row-cols-xxl-3 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-xxl-4 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + + .row-cols-xxl-5 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 20%; + } + + .row-cols-xxl-6 > * { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.6666666667%; + } +} +.col-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; +} + +.col-1 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 8.33333333%; +} + +.col-2 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.66666667%; +} + +.col-3 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; +} + +.col-4 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.33333333%; +} + +.col-5 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 41.66666667%; +} + +.col-6 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; +} + +.col-7 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 58.33333333%; +} + +.col-8 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 66.66666667%; +} + +.col-9 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 75%; +} + +.col-10 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 83.33333333%; +} + +.col-11 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 91.66666667%; +} + +.col-12 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; +} + +.offset-1 { + margin-left: 8.33333333%; +} + +.offset-2 { + margin-left: 16.66666667%; +} + +.offset-3 { + margin-left: 25%; +} + +.offset-4 { + margin-left: 33.33333333%; +} + +.offset-5 { + margin-left: 41.66666667%; +} + +.offset-6 { + margin-left: 50%; +} + +.offset-7 { + margin-left: 58.33333333%; +} + +.offset-8 { + margin-left: 66.66666667%; +} + +.offset-9 { + margin-left: 75%; +} + +.offset-10 { + margin-left: 83.33333333%; +} + +.offset-11 { + margin-left: 91.66666667%; +} + +.g-0, +.gx-0 { + --bs-gutter-x: 0; +} + +.g-0, +.gy-0 { + --bs-gutter-y: 0; +} + +.g-1, +.gx-1 { + --bs-gutter-x: 0.25rem; +} + +.g-1, +.gy-1 { + --bs-gutter-y: 0.25rem; +} + +.g-2, +.gx-2 { + --bs-gutter-x: 0.5rem; +} + +.g-2, +.gy-2 { + --bs-gutter-y: 0.5rem; +} + +.g-3, +.gx-3 { + --bs-gutter-x: 1rem; +} + +.g-3, +.gy-3 { + --bs-gutter-y: 1rem; +} + +.g-4, +.gx-4 { + --bs-gutter-x: 1.5rem; +} + +.g-4, +.gy-4 { + --bs-gutter-y: 1.5rem; +} + +.g-5, +.gx-5 { + --bs-gutter-x: 3rem; +} + +.g-5, +.gy-5 { + --bs-gutter-y: 3rem; +} + +@media (min-width: 576px) { + .col-sm-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + + .col-sm-1 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 8.33333333%; + } + + .col-sm-2 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.66666667%; + } + + .col-sm-3 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + + .col-sm-4 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.33333333%; + } + + .col-sm-5 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 41.66666667%; + } + + .col-sm-6 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + + .col-sm-7 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 58.33333333%; + } + + .col-sm-8 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 66.66666667%; + } + + .col-sm-9 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 75%; + } + + .col-sm-10 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 83.33333333%; + } + + .col-sm-11 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 91.66666667%; + } + + .col-sm-12 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + + .offset-sm-0 { + margin-left: 0; + } + + .offset-sm-1 { + margin-left: 8.33333333%; + } + + .offset-sm-2 { + margin-left: 16.66666667%; + } + + .offset-sm-3 { + margin-left: 25%; + } + + .offset-sm-4 { + margin-left: 33.33333333%; + } + + .offset-sm-5 { + margin-left: 41.66666667%; + } + + .offset-sm-6 { + margin-left: 50%; + } + + .offset-sm-7 { + margin-left: 58.33333333%; + } + + .offset-sm-8 { + margin-left: 66.66666667%; + } + + .offset-sm-9 { + margin-left: 75%; + } + + .offset-sm-10 { + margin-left: 83.33333333%; + } + + .offset-sm-11 { + margin-left: 91.66666667%; + } + + .g-sm-0, +.gx-sm-0 { + --bs-gutter-x: 0; + } + + .g-sm-0, +.gy-sm-0 { + --bs-gutter-y: 0; + } + + .g-sm-1, +.gx-sm-1 { + --bs-gutter-x: 0.25rem; + } + + .g-sm-1, +.gy-sm-1 { + --bs-gutter-y: 0.25rem; + } + + .g-sm-2, +.gx-sm-2 { + --bs-gutter-x: 0.5rem; + } + + .g-sm-2, +.gy-sm-2 { + --bs-gutter-y: 0.5rem; + } + + .g-sm-3, +.gx-sm-3 { + --bs-gutter-x: 1rem; + } + + .g-sm-3, +.gy-sm-3 { + --bs-gutter-y: 1rem; + } + + .g-sm-4, +.gx-sm-4 { + --bs-gutter-x: 1.5rem; + } + + .g-sm-4, +.gy-sm-4 { + --bs-gutter-y: 1.5rem; + } + + .g-sm-5, +.gx-sm-5 { + --bs-gutter-x: 3rem; + } + + .g-sm-5, +.gy-sm-5 { + --bs-gutter-y: 3rem; + } +} +@media (min-width: 768px) { + .col-md-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + + .col-md-1 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 8.33333333%; + } + + .col-md-2 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.66666667%; + } + + .col-md-3 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + + .col-md-4 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.33333333%; + } + + .col-md-5 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 41.66666667%; + } + + .col-md-6 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + + .col-md-7 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 58.33333333%; + } + + .col-md-8 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 66.66666667%; + } + + .col-md-9 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 75%; + } + + .col-md-10 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 83.33333333%; + } + + .col-md-11 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 91.66666667%; + } + + .col-md-12 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + + .offset-md-0 { + margin-left: 0; + } + + .offset-md-1 { + margin-left: 8.33333333%; + } + + .offset-md-2 { + margin-left: 16.66666667%; + } + + .offset-md-3 { + margin-left: 25%; + } + + .offset-md-4 { + margin-left: 33.33333333%; + } + + .offset-md-5 { + margin-left: 41.66666667%; + } + + .offset-md-6 { + margin-left: 50%; + } + + .offset-md-7 { + margin-left: 58.33333333%; + } + + .offset-md-8 { + margin-left: 66.66666667%; + } + + .offset-md-9 { + margin-left: 75%; + } + + .offset-md-10 { + margin-left: 83.33333333%; + } + + .offset-md-11 { + margin-left: 91.66666667%; + } + + .g-md-0, +.gx-md-0 { + --bs-gutter-x: 0; + } + + .g-md-0, +.gy-md-0 { + --bs-gutter-y: 0; + } + + .g-md-1, +.gx-md-1 { + --bs-gutter-x: 0.25rem; + } + + .g-md-1, +.gy-md-1 { + --bs-gutter-y: 0.25rem; + } + + .g-md-2, +.gx-md-2 { + --bs-gutter-x: 0.5rem; + } + + .g-md-2, +.gy-md-2 { + --bs-gutter-y: 0.5rem; + } + + .g-md-3, +.gx-md-3 { + --bs-gutter-x: 1rem; + } + + .g-md-3, +.gy-md-3 { + --bs-gutter-y: 1rem; + } + + .g-md-4, +.gx-md-4 { + --bs-gutter-x: 1.5rem; + } + + .g-md-4, +.gy-md-4 { + --bs-gutter-y: 1.5rem; + } + + .g-md-5, +.gx-md-5 { + --bs-gutter-x: 3rem; + } + + .g-md-5, +.gy-md-5 { + --bs-gutter-y: 3rem; + } +} +@media (min-width: 992px) { + .col-lg-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + + .col-lg-1 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 8.33333333%; + } + + .col-lg-2 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.66666667%; + } + + .col-lg-3 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + + .col-lg-4 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.33333333%; + } + + .col-lg-5 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 41.66666667%; + } + + .col-lg-6 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + + .col-lg-7 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 58.33333333%; + } + + .col-lg-8 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 66.66666667%; + } + + .col-lg-9 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 75%; + } + + .col-lg-10 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 83.33333333%; + } + + .col-lg-11 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 91.66666667%; + } + + .col-lg-12 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + + .offset-lg-0 { + margin-left: 0; + } + + .offset-lg-1 { + margin-left: 8.33333333%; + } + + .offset-lg-2 { + margin-left: 16.66666667%; + } + + .offset-lg-3 { + margin-left: 25%; + } + + .offset-lg-4 { + margin-left: 33.33333333%; + } + + .offset-lg-5 { + margin-left: 41.66666667%; + } + + .offset-lg-6 { + margin-left: 50%; + } + + .offset-lg-7 { + margin-left: 58.33333333%; + } + + .offset-lg-8 { + margin-left: 66.66666667%; + } + + .offset-lg-9 { + margin-left: 75%; + } + + .offset-lg-10 { + margin-left: 83.33333333%; + } + + .offset-lg-11 { + margin-left: 91.66666667%; + } + + .g-lg-0, +.gx-lg-0 { + --bs-gutter-x: 0; + } + + .g-lg-0, +.gy-lg-0 { + --bs-gutter-y: 0; + } + + .g-lg-1, +.gx-lg-1 { + --bs-gutter-x: 0.25rem; + } + + .g-lg-1, +.gy-lg-1 { + --bs-gutter-y: 0.25rem; + } + + .g-lg-2, +.gx-lg-2 { + --bs-gutter-x: 0.5rem; + } + + .g-lg-2, +.gy-lg-2 { + --bs-gutter-y: 0.5rem; + } + + .g-lg-3, +.gx-lg-3 { + --bs-gutter-x: 1rem; + } + + .g-lg-3, +.gy-lg-3 { + --bs-gutter-y: 1rem; + } + + .g-lg-4, +.gx-lg-4 { + --bs-gutter-x: 1.5rem; + } + + .g-lg-4, +.gy-lg-4 { + --bs-gutter-y: 1.5rem; + } + + .g-lg-5, +.gx-lg-5 { + --bs-gutter-x: 3rem; + } + + .g-lg-5, +.gy-lg-5 { + --bs-gutter-y: 3rem; + } +} +@media (min-width: 1200px) { + .col-xl-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + + .col-xl-1 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 8.33333333%; + } + + .col-xl-2 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.66666667%; + } + + .col-xl-3 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + + .col-xl-4 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.33333333%; + } + + .col-xl-5 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 41.66666667%; + } + + .col-xl-6 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + + .col-xl-7 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 58.33333333%; + } + + .col-xl-8 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 66.66666667%; + } + + .col-xl-9 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 75%; + } + + .col-xl-10 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 83.33333333%; + } + + .col-xl-11 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 91.66666667%; + } + + .col-xl-12 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + + .offset-xl-0 { + margin-left: 0; + } + + .offset-xl-1 { + margin-left: 8.33333333%; + } + + .offset-xl-2 { + margin-left: 16.66666667%; + } + + .offset-xl-3 { + margin-left: 25%; + } + + .offset-xl-4 { + margin-left: 33.33333333%; + } + + .offset-xl-5 { + margin-left: 41.66666667%; + } + + .offset-xl-6 { + margin-left: 50%; + } + + .offset-xl-7 { + margin-left: 58.33333333%; + } + + .offset-xl-8 { + margin-left: 66.66666667%; + } + + .offset-xl-9 { + margin-left: 75%; + } + + .offset-xl-10 { + margin-left: 83.33333333%; + } + + .offset-xl-11 { + margin-left: 91.66666667%; + } + + .g-xl-0, +.gx-xl-0 { + --bs-gutter-x: 0; + } + + .g-xl-0, +.gy-xl-0 { + --bs-gutter-y: 0; + } + + .g-xl-1, +.gx-xl-1 { + --bs-gutter-x: 0.25rem; + } + + .g-xl-1, +.gy-xl-1 { + --bs-gutter-y: 0.25rem; + } + + .g-xl-2, +.gx-xl-2 { + --bs-gutter-x: 0.5rem; + } + + .g-xl-2, +.gy-xl-2 { + --bs-gutter-y: 0.5rem; + } + + .g-xl-3, +.gx-xl-3 { + --bs-gutter-x: 1rem; + } + + .g-xl-3, +.gy-xl-3 { + --bs-gutter-y: 1rem; + } + + .g-xl-4, +.gx-xl-4 { + --bs-gutter-x: 1.5rem; + } + + .g-xl-4, +.gy-xl-4 { + --bs-gutter-y: 1.5rem; + } + + .g-xl-5, +.gx-xl-5 { + --bs-gutter-x: 3rem; + } + + .g-xl-5, +.gy-xl-5 { + --bs-gutter-y: 3rem; + } +} +@media (min-width: 1400px) { + .col-xxl-auto { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + + .col-xxl-1 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 8.33333333%; + } + + .col-xxl-2 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.66666667%; + } + + .col-xxl-3 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + + .col-xxl-4 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.33333333%; + } + + .col-xxl-5 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 41.66666667%; + } + + .col-xxl-6 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + + .col-xxl-7 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 58.33333333%; + } + + .col-xxl-8 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 66.66666667%; + } + + .col-xxl-9 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 75%; + } + + .col-xxl-10 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 83.33333333%; + } + + .col-xxl-11 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 91.66666667%; + } + + .col-xxl-12 { + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + + .offset-xxl-0 { + margin-left: 0; + } + + .offset-xxl-1 { + margin-left: 8.33333333%; + } + + .offset-xxl-2 { + margin-left: 16.66666667%; + } + + .offset-xxl-3 { + margin-left: 25%; + } + + .offset-xxl-4 { + margin-left: 33.33333333%; + } + + .offset-xxl-5 { + margin-left: 41.66666667%; + } + + .offset-xxl-6 { + margin-left: 50%; + } + + .offset-xxl-7 { + margin-left: 58.33333333%; + } + + .offset-xxl-8 { + margin-left: 66.66666667%; + } + + .offset-xxl-9 { + margin-left: 75%; + } + + .offset-xxl-10 { + margin-left: 83.33333333%; + } + + .offset-xxl-11 { + margin-left: 91.66666667%; + } + + .g-xxl-0, +.gx-xxl-0 { + --bs-gutter-x: 0; + } + + .g-xxl-0, +.gy-xxl-0 { + --bs-gutter-y: 0; + } + + .g-xxl-1, +.gx-xxl-1 { + --bs-gutter-x: 0.25rem; + } + + .g-xxl-1, +.gy-xxl-1 { + --bs-gutter-y: 0.25rem; + } + + .g-xxl-2, +.gx-xxl-2 { + --bs-gutter-x: 0.5rem; + } + + .g-xxl-2, +.gy-xxl-2 { + --bs-gutter-y: 0.5rem; + } + + .g-xxl-3, +.gx-xxl-3 { + --bs-gutter-x: 1rem; + } + + .g-xxl-3, +.gy-xxl-3 { + --bs-gutter-y: 1rem; + } + + .g-xxl-4, +.gx-xxl-4 { + --bs-gutter-x: 1.5rem; + } + + .g-xxl-4, +.gy-xxl-4 { + --bs-gutter-y: 1.5rem; + } + + .g-xxl-5, +.gx-xxl-5 { + --bs-gutter-x: 3rem; + } + + .g-xxl-5, +.gy-xxl-5 { + --bs-gutter-y: 3rem; + } +} +.table { + --bs-table-bg: transparent; + --bs-table-accent-bg: transparent; + --bs-table-striped-color: #212529; + --bs-table-striped-bg: rgba(0, 0, 0, 0.05); + --bs-table-active-color: #212529; + --bs-table-active-bg: rgba(0, 0, 0, 0.1); + --bs-table-hover-color: #212529; + --bs-table-hover-bg: rgba(0, 0, 0, 0.075); + width: 100%; + margin-bottom: 1rem; + color: #212529; + vertical-align: top; + border-color: #dee2e6; +} +.table > :not(caption) > * > * { + padding: 0.5rem 0.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(:last-child) > :last-child > * { + border-bottom-color: currentColor; +} + +.caption-top { + caption-side: top; +} + +.table-sm > :not(caption) > * > * { + padding: 0.25rem 0.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-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: #cfe2ff; + --bs-table-striped-bg: #c5d7f2; + --bs-table-striped-color: #000; + --bs-table-active-bg: #bacbe6; + --bs-table-active-color: #000; + --bs-table-hover-bg: #bfd1ec; + --bs-table-hover-color: #000; + color: #000; + border-color: #bacbe6; +} + +.table-secondary { + --bs-table-bg: #e2e3e5; + --bs-table-striped-bg: #d7d8da; + --bs-table-striped-color: #000; + --bs-table-active-bg: #cbccce; + --bs-table-active-color: #000; + --bs-table-hover-bg: #d1d2d4; + --bs-table-hover-color: #000; + color: #000; + border-color: #cbccce; +} + +.table-success { + --bs-table-bg: #d1e7dd; + --bs-table-striped-bg: #c7dbd2; + --bs-table-striped-color: #000; + --bs-table-active-bg: #bcd0c7; + --bs-table-active-color: #000; + --bs-table-hover-bg: #c1d6cc; + --bs-table-hover-color: #000; + color: #000; + border-color: #bcd0c7; +} + +.table-info { + --bs-table-bg: #cff4fc; + --bs-table-striped-bg: #c5e8ef; + --bs-table-striped-color: #000; + --bs-table-active-bg: #badce3; + --bs-table-active-color: #000; + --bs-table-hover-bg: #bfe2e9; + --bs-table-hover-color: #000; + color: #000; + border-color: #badce3; +} + +.table-warning { + --bs-table-bg: #fff3cd; + --bs-table-striped-bg: #f2e7c3; + --bs-table-striped-color: #000; + --bs-table-active-bg: #e6dbb9; + --bs-table-active-color: #000; + --bs-table-hover-bg: #ece1be; + --bs-table-hover-color: #000; + color: #000; + border-color: #e6dbb9; +} + +.table-danger { + --bs-table-bg: #f8d7da; + --bs-table-striped-bg: #eccccf; + --bs-table-striped-color: #000; + --bs-table-active-bg: #dfc2c4; + --bs-table-active-color: #000; + --bs-table-hover-bg: #e5c7ca; + --bs-table-hover-color: #000; + color: #000; + border-color: #dfc2c4; +} + +.table-light { + --bs-table-bg: #f8f9fa; + --bs-table-striped-bg: #ecedee; + --bs-table-striped-color: #000; + --bs-table-active-bg: #dfe0e1; + --bs-table-active-color: #000; + --bs-table-hover-bg: #e5e6e7; + --bs-table-hover-color: #000; + color: #000; + border-color: #dfe0e1; +} + +.table-dark { + --bs-table-bg: #212529; + --bs-table-striped-bg: #2c3034; + --bs-table-striped-color: #fff; + --bs-table-active-bg: #373b3e; + --bs-table-active-color: #fff; + --bs-table-hover-bg: #323539; + --bs-table-hover-color: #fff; + color: #fff; + border-color: #373b3e; +} + +.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 { + margin-bottom: 0.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: 0.25rem; + font-size: 0.875em; + color: #6c757d; +} + +.form-control { + display: block; + width: 100%; + padding: 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + background-color: #fff; + background-clip: padding-box; + border: 1px solid #ced4da; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + border-radius: 0.25rem; + transition: border-color 0.15s ease-in-out, box-shadow 0.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: #212529; + background-color: #fff; + border-color: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} +.form-control::-webkit-date-and-time-value { + height: 1.5em; +} +.form-control::-webkit-input-placeholder { + color: #6c757d; + opacity: 1; +} +.form-control::-moz-placeholder { + color: #6c757d; + opacity: 1; +} +.form-control:-ms-input-placeholder { + color: #6c757d; + opacity: 1; +} +.form-control::-ms-input-placeholder { + color: #6c757d; + opacity: 1; +} +.form-control::placeholder { + color: #6c757d; + opacity: 1; +} +.form-control:disabled, .form-control[readonly] { + background-color: #e9ecef; + opacity: 1; +} +.form-control::-webkit-file-upload-button { + padding: 0.375rem 0.75rem; + margin: -0.375rem -0.75rem; + -webkit-margin-end: 0.75rem; + margin-inline-end: 0.75rem; + color: #212529; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +.form-control::file-selector-button { + padding: 0.375rem 0.75rem; + margin: -0.375rem -0.75rem; + -webkit-margin-end: 0.75rem; + -moz-margin-end: 0.75rem; + margin-inline-end: 0.75rem; + color: #212529; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +.form-control::file-selector-button { + padding: 0.375rem 0.75rem; + margin: -0.375rem -0.75rem; + -webkit-margin-end: 0.75rem; + -moz-margin-end: 0.75rem; + margin-inline-end: 0.75rem; + color: #212529; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-control::-webkit-file-upload-button { + -webkit-transition: none; + transition: none; + } + .form-control::file-selector-button { + transition: none; + } + .form-control::file-selector-button { + transition: none; + } +} +.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button { + background-color: #dde0e3; +} +.form-control:hover:not(:disabled):not([readonly])::file-selector-button { + background-color: #dde0e3; +} +.form-control:hover:not(:disabled):not([readonly])::file-selector-button { + background-color: #dde0e3; +} +.form-control::-webkit-file-upload-button { + padding: 0.375rem 0.75rem; + margin: -0.375rem -0.75rem; + -webkit-margin-end: 0.75rem; + margin-inline-end: 0.75rem; + color: #212529; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-control::-webkit-file-upload-button { + -webkit-transition: none; + transition: none; + } +} +.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button { + background-color: #dde0e3; +} + +.form-control-plaintext { + display: block; + width: 100%; + padding: 0.375rem 0; + margin-bottom: 0; + line-height: 1.5; + color: #212529; + 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: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; +} +.form-control-sm::-webkit-file-upload-button { + padding: 0.25rem 0.5rem; + margin: -0.25rem -0.5rem; + -webkit-margin-end: 0.5rem; + margin-inline-end: 0.5rem; +} +.form-control-sm::file-selector-button { + padding: 0.25rem 0.5rem; + margin: -0.25rem -0.5rem; + -webkit-margin-end: 0.5rem; + -moz-margin-end: 0.5rem; + margin-inline-end: 0.5rem; +} +.form-control-sm::file-selector-button { + padding: 0.25rem 0.5rem; + margin: -0.25rem -0.5rem; + -webkit-margin-end: 0.5rem; + -moz-margin-end: 0.5rem; + margin-inline-end: 0.5rem; +} +.form-control-sm::-webkit-file-upload-button { + padding: 0.25rem 0.5rem; + margin: -0.25rem -0.5rem; + -webkit-margin-end: 0.5rem; + margin-inline-end: 0.5rem; +} + +.form-control-lg { + min-height: calc(1.5em + (1rem + 2px)); + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; +} +.form-control-lg::-webkit-file-upload-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 1rem; + margin-inline-end: 1rem; +} +.form-control-lg::file-selector-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 1rem; + -moz-margin-end: 1rem; + margin-inline-end: 1rem; +} +.form-control-lg::file-selector-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 1rem; + -moz-margin-end: 1rem; + margin-inline-end: 1rem; +} +.form-control-lg::-webkit-file-upload-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 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 { + max-width: 3rem; + height: auto; + padding: 0.375rem; +} +.form-control-color:not(:disabled):not([readonly]) { + cursor: pointer; +} +.form-control-color::-moz-color-swatch { + height: 1.5em; + border-radius: 0.25rem; +} +.form-control-color::-webkit-color-swatch { + height: 1.5em; + border-radius: 0.25rem; +} + +.form-select { + display: block; + width: 100%; + padding: 0.375rem 2.25rem 0.375rem 0.75rem; + -moz-padding-start: calc(0.75rem - 3px); + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + 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 0.75rem center; + background-size: 16px 12px; + border: 1px solid #ced4da; + border-radius: 0.25rem; + transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} +@media (prefers-reduced-motion: reduce) { + .form-select { + transition: none; + } +} +.form-select:focus { + border-color: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} +.form-select[multiple], .form-select[size]:not([size="1"]) { + padding-right: 0.75rem; + background-image: none; +} +.form-select:disabled { + background-color: #e9ecef; +} +.form-select:-moz-focusring { + color: transparent; + text-shadow: 0 0 0 #212529; +} + +.form-select-sm { + padding-top: 0.25rem; + padding-bottom: 0.25rem; + padding-left: 0.5rem; + font-size: 0.875rem; +} + +.form-select-lg { + padding-top: 0.5rem; + padding-bottom: 0.5rem; + padding-left: 1rem; + font-size: 1.25rem; +} + +.form-check { + display: block; + min-height: 1.5rem; + padding-left: 1.5em; + margin-bottom: 0.125rem; +} +.form-check .form-check-input { + float: left; + margin-left: -1.5em; +} + +.form-check-input { + width: 1em; + height: 1em; + margin-top: 0.25em; + vertical-align: top; + background-color: #fff; + background-repeat: no-repeat; + background-position: center; + background-size: contain; + border: 1px solid rgba(0, 0, 0, 0.25); + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + -webkit-print-color-adjust: exact; + color-adjust: exact; +} +.form-check-input[type=checkbox] { + border-radius: 0.25em; +} +.form-check-input[type=radio] { + border-radius: 50%; +} +.form-check-input:active { + -webkit-filter: brightness(90%); + filter: brightness(90%); +} +.form-check-input:focus { + border-color: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} +.form-check-input:checked { + background-color: #0d6efd; + border-color: #0d6efd; +} +.form-check-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] { + 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 { + background-color: #0d6efd; + border-color: #0d6efd; + 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 { + pointer-events: none; + -webkit-filter: none; + filter: none; + opacity: 0.5; +} +.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label { + opacity: 0.5; +} + +.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; + border-radius: 2em; + transition: background-position 0.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='%2386b7fe'/%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 { + 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; + -webkit-filter: none; + filter: none; + opacity: 0.65; +} + +.form-range { + width: 100%; + height: 1.5rem; + padding: 0; + background-color: transparent; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} +.form-range:focus { + outline: 0; +} +.form-range:focus::-webkit-slider-thumb { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} +.form-range:focus::-moz-range-thumb { + box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} +.form-range::-moz-focus-outer { + border: 0; +} +.form-range::-webkit-slider-thumb { + width: 1rem; + height: 1rem; + margin-top: -0.25rem; + background-color: #0d6efd; + border: 0; + border-radius: 1rem; + -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -webkit-appearance: none; + appearance: none; +} +@media (prefers-reduced-motion: reduce) { + .form-range::-webkit-slider-thumb { + -webkit-transition: none; + transition: none; + } +} +.form-range::-webkit-slider-thumb:active { + background-color: #b6d4fe; +} +.form-range::-webkit-slider-runnable-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; +} +.form-range::-moz-range-thumb { + width: 1rem; + height: 1rem; + background-color: #0d6efd; + border: 0; + border-radius: 1rem; + -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -moz-appearance: none; + appearance: none; +} +@media (prefers-reduced-motion: reduce) { + .form-range::-moz-range-thumb { + -moz-transition: none; + transition: none; + } +} +.form-range::-moz-range-thumb:active { + background-color: #b6d4fe; +} +.form-range::-moz-range-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; +} +.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 0.75rem; + pointer-events: none; + border: 1px solid transparent; + -webkit-transform-origin: 0 0; + transform-origin: 0 0; + transition: opacity 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out; + transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out; + transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-floating > label { + transition: none; + } +} +.form-floating > .form-control { + padding: 1rem 0.75rem; +} +.form-floating > .form-control::-webkit-input-placeholder { + color: transparent; +} +.form-floating > .form-control::-moz-placeholder { + color: transparent; +} +.form-floating > .form-control:-ms-input-placeholder { + color: transparent; +} +.form-floating > .form-control::-ms-input-placeholder { + color: transparent; +} +.form-floating > .form-control::placeholder { + color: transparent; +} +.form-floating > .form-control:not(:-moz-placeholder-shown) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:not(:-ms-input-placeholder) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:-webkit-autofill { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-select { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} +.form-floating > .form-control:not(:-ms-input-placeholder) ~ label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} +.form-floating > .form-control:focus ~ label, +.form-floating > .form-control:not(:placeholder-shown) ~ label, +.form-floating > .form-select ~ label { + opacity: 0.65; + -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} +.form-floating > .form-control:-webkit-autofill ~ label { + opacity: 0.65; + -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} + +.input-group { + position: relative; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -ms-flex-align: stretch; + align-items: stretch; + width: 100%; +} +.input-group > .form-control, +.input-group > .form-select { + position: relative; + -ms-flex: 1 1 auto; + 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: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + padding: 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + text-align: center; + white-space: nowrap; + background-color: #e9ecef; + border: 1px solid #ced4da; + border-radius: 0.25rem; +} + +.input-group-lg > .form-control, +.input-group-lg > .form-select, +.input-group-lg > .input-group-text, +.input-group-lg > .btn { + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; +} + +.input-group-sm > .form-control, +.input-group-sm > .form-select, +.input-group-sm > .input-group-text, +.input-group-sm > .btn { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; +} + +.input-group-lg > .form-select, +.input-group-sm > .form-select { + padding-right: 3rem; +} + +.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu), +.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu), +.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) { + margin-left: -1px; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.valid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 0.875em; + color: #198754; +} + +.valid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: 0.1rem; + font-size: 0.875rem; + color: #fff; + background-color: rgba(25, 135, 84, 0.9); + border-radius: 0.25rem; +} + +.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: #198754; + 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='%23198754' 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: #198754; + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.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: #198754; +} +.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='%23198754' 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 0.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: #198754; + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); +} + +.was-validated .form-check-input:valid, .form-check-input.is-valid { + border-color: #198754; +} +.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked { + background-color: #198754; +} +.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus { + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); +} +.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label { + color: #198754; +} + +.form-check-inline .form-check-input ~ .valid-feedback { + margin-left: 0.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: 0.25rem; + font-size: 0.875em; + color: #dc3545; +} + +.invalid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: 0.1rem; + font-size: 0.875rem; + color: #fff; + background-color: rgba(220, 53, 69, 0.9); + border-radius: 0.25rem; +} + +.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: #dc3545; + 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='%23dc3545'%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='%23dc3545' 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: #dc3545; + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.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: #dc3545; +} +.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='%23dc3545'%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='%23dc3545' stroke='none'/%3e%3c/svg%3e"); + background-position: right 0.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: #dc3545; + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); +} + +.was-validated .form-check-input:invalid, .form-check-input.is-invalid { + border-color: #dc3545; +} +.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked { + background-color: #dc3545; +} +.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus { + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); +} +.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label { + color: #dc3545; +} + +.form-check-inline .form-check-input ~ .invalid-feedback { + margin-left: 0.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: #212529; + text-align: center; + text-decoration: none; + vertical-align: middle; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-color: transparent; + border: 1px solid transparent; + padding: 0.375rem 0.75rem; + font-size: 1rem; + border-radius: 0.25rem; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .btn { + transition: none; + } +} +.btn:hover { + color: #212529; +} +.btn-check:focus + .btn, .btn:focus { + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} +.btn:disabled, .btn.disabled, fieldset:disabled .btn { + pointer-events: none; + opacity: 0.65; +} + +.btn-primary { + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} +.btn-primary:hover { + color: #fff; + background-color: #0b5ed7; + border-color: #0a58ca; +} +.btn-check:focus + .btn-primary, .btn-primary:focus { + color: #fff; + background-color: #0b5ed7; + border-color: #0a58ca; + box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.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: #0a58ca; + border-color: #0a53be; +} +.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 0.25rem rgba(49, 132, 253, 0.5); +} +.btn-primary:disabled, .btn-primary.disabled { + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} + +.btn-secondary { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} +.btn-secondary:hover { + color: #fff; + background-color: #5c636a; + border-color: #565e64; +} +.btn-check:focus + .btn-secondary, .btn-secondary:focus { + color: #fff; + background-color: #5c636a; + border-color: #565e64; + box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.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: #565e64; + border-color: #51585e; +} +.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 0.25rem rgba(130, 138, 145, 0.5); +} +.btn-secondary:disabled, .btn-secondary.disabled { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} + +.btn-success { + color: #fff; + background-color: #198754; + border-color: #198754; +} +.btn-success:hover { + color: #fff; + background-color: #157347; + border-color: #146c43; +} +.btn-check:focus + .btn-success, .btn-success:focus { + color: #fff; + background-color: #157347; + border-color: #146c43; + box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.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: #146c43; + border-color: #13653f; +} +.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 0.25rem rgba(60, 153, 110, 0.5); +} +.btn-success:disabled, .btn-success.disabled { + color: #fff; + background-color: #198754; + border-color: #198754; +} + +.btn-info { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} +.btn-info:hover { + color: #000; + background-color: #31d2f2; + border-color: #25cff2; +} +.btn-check:focus + .btn-info, .btn-info:focus { + color: #000; + background-color: #31d2f2; + border-color: #25cff2; + box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5); +} +.btn-check:checked + .btn-info, .btn-check:active + .btn-info, .btn-info:active, .btn-info.active, .show > .btn-info.dropdown-toggle { + color: #000; + background-color: #3dd5f3; + border-color: #25cff2; +} +.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 0.25rem rgba(11, 172, 204, 0.5); +} +.btn-info:disabled, .btn-info.disabled { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} + +.btn-warning { + color: #000; + background-color: #ffc107; + border-color: #ffc107; +} +.btn-warning:hover { + color: #000; + background-color: #ffca2c; + border-color: #ffc720; +} +.btn-check:focus + .btn-warning, .btn-warning:focus { + color: #000; + background-color: #ffca2c; + border-color: #ffc720; + box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5); +} +.btn-check:checked + .btn-warning, .btn-check:active + .btn-warning, .btn-warning:active, .btn-warning.active, .show > .btn-warning.dropdown-toggle { + color: #000; + background-color: #ffcd39; + border-color: #ffc720; +} +.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 0.25rem rgba(217, 164, 6, 0.5); +} +.btn-warning:disabled, .btn-warning.disabled { + color: #000; + background-color: #ffc107; + border-color: #ffc107; +} + +.btn-danger { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} +.btn-danger:hover { + color: #fff; + background-color: #bb2d3b; + border-color: #b02a37; +} +.btn-check:focus + .btn-danger, .btn-danger:focus { + color: #fff; + background-color: #bb2d3b; + border-color: #b02a37; + box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.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: #b02a37; + border-color: #a52834; +} +.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 0.25rem rgba(225, 83, 97, 0.5); +} +.btn-danger:disabled, .btn-danger.disabled { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} + +.btn-light { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} +.btn-light:hover { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; +} +.btn-check:focus + .btn-light, .btn-light:focus { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; + box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.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: #f9fafb; + border-color: #f9fafb; +} +.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 0.25rem rgba(211, 212, 213, 0.5); +} +.btn-light:disabled, .btn-light.disabled { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-dark { + color: #fff; + background-color: #212529; + border-color: #212529; +} +.btn-dark:hover { + color: #fff; + background-color: #1c1f23; + border-color: #1a1e21; +} +.btn-check:focus + .btn-dark, .btn-dark:focus { + color: #fff; + background-color: #1c1f23; + border-color: #1a1e21; + box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.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: #1a1e21; + border-color: #191c1f; +} +.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 0.25rem rgba(66, 70, 73, 0.5); +} +.btn-dark:disabled, .btn-dark.disabled { + color: #fff; + background-color: #212529; + border-color: #212529; +} + +.btn-outline-primary { + color: #0d6efd; + border-color: #0d6efd; +} +.btn-outline-primary:hover { + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} +.btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus { + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.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: #0d6efd; + border-color: #0d6efd; +} +.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 0.25rem rgba(13, 110, 253, 0.5); +} +.btn-outline-primary:disabled, .btn-outline-primary.disabled { + color: #0d6efd; + background-color: transparent; +} + +.btn-outline-secondary { + color: #6c757d; + border-color: #6c757d; +} +.btn-outline-secondary:hover { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} +.btn-check:focus + .btn-outline-secondary, .btn-outline-secondary:focus { + box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.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: #6c757d; + border-color: #6c757d; +} +.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 0.25rem rgba(108, 117, 125, 0.5); +} +.btn-outline-secondary:disabled, .btn-outline-secondary.disabled { + color: #6c757d; + background-color: transparent; +} + +.btn-outline-success { + color: #198754; + border-color: #198754; +} +.btn-outline-success:hover { + color: #fff; + background-color: #198754; + border-color: #198754; +} +.btn-check:focus + .btn-outline-success, .btn-outline-success:focus { + box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.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: #198754; + border-color: #198754; +} +.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 0.25rem rgba(25, 135, 84, 0.5); +} +.btn-outline-success:disabled, .btn-outline-success.disabled { + color: #198754; + background-color: transparent; +} + +.btn-outline-info { + color: #0dcaf0; + border-color: #0dcaf0; +} +.btn-outline-info:hover { + color: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} +.btn-check:focus + .btn-outline-info, .btn-outline-info:focus { + box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.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: #000; + background-color: #0dcaf0; + border-color: #0dcaf0; +} +.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 0.25rem rgba(13, 202, 240, 0.5); +} +.btn-outline-info:disabled, .btn-outline-info.disabled { + color: #0dcaf0; + background-color: transparent; +} + +.btn-outline-warning { + color: #ffc107; + border-color: #ffc107; +} +.btn-outline-warning:hover { + color: #000; + background-color: #ffc107; + border-color: #ffc107; +} +.btn-check:focus + .btn-outline-warning, .btn-outline-warning:focus { + box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.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: #000; + background-color: #ffc107; + border-color: #ffc107; +} +.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 0.25rem rgba(255, 193, 7, 0.5); +} +.btn-outline-warning:disabled, .btn-outline-warning.disabled { + color: #ffc107; + background-color: transparent; +} + +.btn-outline-danger { + color: #dc3545; + border-color: #dc3545; +} +.btn-outline-danger:hover { + color: #fff; + background-color: #dc3545; + border-color: #dc3545; +} +.btn-check:focus + .btn-outline-danger, .btn-outline-danger:focus { + box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.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: #dc3545; + border-color: #dc3545; +} +.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 0.25rem rgba(220, 53, 69, 0.5); +} +.btn-outline-danger:disabled, .btn-outline-danger.disabled { + color: #dc3545; + background-color: transparent; +} + +.btn-outline-light { + color: #f8f9fa; + border-color: #f8f9fa; +} +.btn-outline-light:hover { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} +.btn-check:focus + .btn-outline-light, .btn-outline-light:focus { + box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.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: #f8f9fa; + border-color: #f8f9fa; +} +.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 0.25rem rgba(248, 249, 250, 0.5); +} +.btn-outline-light:disabled, .btn-outline-light.disabled { + color: #f8f9fa; + background-color: transparent; +} + +.btn-outline-dark { + color: #212529; + border-color: #212529; +} +.btn-outline-dark:hover { + color: #fff; + background-color: #212529; + border-color: #212529; +} +.btn-check:focus + .btn-outline-dark, .btn-outline-dark:focus { + box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.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: #212529; + border-color: #212529; +} +.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 0.25rem rgba(33, 37, 41, 0.5); +} +.btn-outline-dark:disabled, .btn-outline-dark.disabled { + color: #212529; + background-color: transparent; +} + +.btn-link { + font-weight: 400; + color: #0d6efd; + text-decoration: underline; +} +.btn-link:hover { + color: #0a58ca; +} +.btn-link:disabled, .btn-link.disabled { + color: #6c757d; +} + +.btn-lg, .btn-group-lg > .btn { + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; +} + +.btn-sm, .btn-group-sm > .btn { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; +} + +.fade { + transition: opacity 0.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 0.35s ease; +} +@media (prefers-reduced-motion: reduce) { + .collapsing { + transition: none; + } +} + +.dropup, +.dropend, +.dropdown, +.dropstart { + position: relative; +} + +.dropdown-toggle { + white-space: nowrap; +} +.dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid; + border-right: 0.3em solid transparent; + border-bottom: 0; + border-left: 0.3em solid transparent; +} +.dropdown-toggle:empty::after { + margin-left: 0; +} + +.dropdown-menu { + position: absolute; + z-index: 1000; + display: none; + min-width: 10rem; + padding: 0.5rem 0; + margin: 0; + font-size: 1rem; + color: #212529; + text-align: left; + list-style: none; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.15); + border-radius: 0.25rem; +} +.dropdown-menu[data-bs-popper] { + top: 100%; + left: 0; + margin-top: 0.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: 0.125rem; +} +.dropup .dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0; + border-right: 0.3em solid transparent; + border-bottom: 0.3em solid; + border-left: 0.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: 0.125rem; +} +.dropend .dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid transparent; + border-right: 0; + border-bottom: 0.3em solid transparent; + border-left: 0.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: 0.125rem; +} +.dropstart .dropdown-toggle::after { + display: inline-block; + margin-left: 0.255em; + vertical-align: 0.255em; + content: ""; +} +.dropstart .dropdown-toggle::after { + display: none; +} +.dropstart .dropdown-toggle::before { + display: inline-block; + margin-right: 0.255em; + vertical-align: 0.255em; + content: ""; + border-top: 0.3em solid transparent; + border-right: 0.3em solid; + border-bottom: 0.3em solid transparent; +} +.dropstart .dropdown-toggle:empty::after { + margin-left: 0; +} +.dropstart .dropdown-toggle::before { + vertical-align: 0; +} + +.dropdown-divider { + height: 0; + margin: 0.5rem 0; + overflow: hidden; + border-top: 1px solid rgba(0, 0, 0, 0.15); +} + +.dropdown-item { + display: block; + width: 100%; + padding: 0.25rem 1rem; + clear: both; + font-weight: 400; + color: #212529; + text-align: inherit; + text-decoration: none; + white-space: nowrap; + background-color: transparent; + border: 0; +} +.dropdown-item:hover, .dropdown-item:focus { + color: #1e2125; + background-color: #e9ecef; +} +.dropdown-item.active, .dropdown-item:active { + color: #fff; + text-decoration: none; + background-color: #0d6efd; +} +.dropdown-item.disabled, .dropdown-item:disabled { + color: #adb5bd; + pointer-events: none; + background-color: transparent; +} + +.dropdown-menu.show { + display: block; +} + +.dropdown-header { + display: block; + padding: 0.5rem 1rem; + margin-bottom: 0; + font-size: 0.875rem; + color: #6c757d; + white-space: nowrap; +} + +.dropdown-item-text { + display: block; + padding: 0.25rem 1rem; + color: #212529; +} + +.dropdown-menu-dark { + color: #dee2e6; + background-color: #343a40; + border-color: rgba(0, 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, 0.15); +} +.dropdown-menu-dark .dropdown-item.active, .dropdown-menu-dark .dropdown-item:active { + color: #fff; + background-color: #0d6efd; +} +.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, 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: -ms-inline-flexbox; + display: inline-flex; + vertical-align: middle; +} +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + -ms-flex: 1 1 auto; + 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: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -ms-flex-pack: start; + 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; +} +.btn-group > .btn:not(:last-child):not(.dropdown-toggle), +.btn-group > .btn-group:not(:last-child) > .btn { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn:nth-child(n+3), +.btn-group > :not(.btn-check) + .btn, +.btn-group > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.dropdown-toggle-split { + padding-right: 0.5625rem; + padding-left: 0.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: 0.375rem; + padding-left: 0.375rem; +} + +.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split { + padding-right: 0.75rem; + padding-left: 0.75rem; +} + +.btn-group-vertical { + -ms-flex-direction: column; + flex-direction: column; + -ms-flex-align: start; + align-items: flex-start; + -ms-flex-pack: center; + 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; +} +.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle), +.btn-group-vertical > .btn-group:not(:last-child) > .btn { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn ~ .btn, +.btn-group-vertical > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.nav { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + padding-left: 0; + margin-bottom: 0; + list-style: none; +} + +.nav-link { + display: block; + padding: 0.5rem 1rem; + color: #0d6efd; + text-decoration: none; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .nav-link { + transition: none; + } +} +.nav-link:hover, .nav-link:focus { + color: #0a58ca; +} +.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; + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} +.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus { + border-color: #e9ecef #e9ecef #dee2e6; + 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: #495057; + background-color: #fff; + border-color: #dee2e6 #dee2e6 #fff; +} +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.nav-pills .nav-link { + background: none; + border: 0; + border-radius: 0.25rem; +} +.nav-pills .nav-link.active, +.nav-pills .show > .nav-link { + color: #fff; + background-color: #0d6efd; +} + +.nav-fill > .nav-link, +.nav-fill .nav-item { + -ms-flex: 1 1 auto; + flex: 1 1 auto; + text-align: center; +} + +.nav-justified > .nav-link, +.nav-justified .nav-item { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -ms-flex-positive: 1; + 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: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: justify; + justify-content: space-between; + padding-top: 0.5rem; + padding-bottom: 0.5rem; +} +.navbar > .container, +.navbar > .container-fluid, +.navbar > .container-sm, +.navbar > .container-md, +.navbar > .container-lg, +.navbar > .container-xl, +.navbar > .container-xxl { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: inherit; + flex-wrap: inherit; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: justify; + justify-content: space-between; +} +.navbar-brand { + padding-top: 0.3125rem; + padding-bottom: 0.3125rem; + margin-right: 1rem; + font-size: 1.25rem; + text-decoration: none; + white-space: nowrap; +} +.navbar-nav { + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + 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: 0.5rem; + padding-bottom: 0.5rem; +} + +.navbar-collapse { + -ms-flex-preferred-size: 100%; + flex-basis: 100%; + -ms-flex-positive: 1; + flex-grow: 1; + -ms-flex-align: center; + align-items: center; +} + +.navbar-toggler { + padding: 0.25rem 0.75rem; + font-size: 1.25rem; + line-height: 1; + background-color: transparent; + border: 1px solid transparent; + border-radius: 0.25rem; + transition: box-shadow 0.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 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 { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-sm .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-sm .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-sm .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-sm .navbar-nav-scroll { + overflow: visible; + } + .navbar-expand-sm .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-sm .navbar-toggler { + display: none; + } +} +@media (min-width: 768px) { + .navbar-expand-md { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-md .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-md .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-md .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-md .navbar-nav-scroll { + overflow: visible; + } + .navbar-expand-md .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-md .navbar-toggler { + display: none; + } +} +@media (min-width: 992px) { + .navbar-expand-lg { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-lg .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-lg .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-lg .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-lg .navbar-nav-scroll { + overflow: visible; + } + .navbar-expand-lg .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-lg .navbar-toggler { + display: none; + } +} +@media (min-width: 1200px) { + .navbar-expand-xl { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-xl .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-xl .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-xl .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-xl .navbar-nav-scroll { + overflow: visible; + } + .navbar-expand-xl .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-xl .navbar-toggler { + display: none; + } +} +@media (min-width: 1400px) { + .navbar-expand-xxl { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-xxl .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-xxl .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-xxl .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-xxl .navbar-nav-scroll { + overflow: visible; + } + .navbar-expand-xxl .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-xxl .navbar-toggler { + display: none; + } +} +.navbar-expand { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + -ms-flex-pack: start; + justify-content: flex-start; +} +.navbar-expand .navbar-nav { + -ms-flex-direction: row; + flex-direction: row; +} +.navbar-expand .navbar-nav .dropdown-menu { + position: absolute; +} +.navbar-expand .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; +} +.navbar-expand .navbar-nav-scroll { + overflow: visible; +} +.navbar-expand .navbar-collapse { + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; +} +.navbar-expand .navbar-toggler { + display: none; +} + +.navbar-light .navbar-brand { + color: rgba(0, 0, 0, 0.9); +} +.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus { + color: rgba(0, 0, 0, 0.9); +} +.navbar-light .navbar-nav .nav-link { + color: rgba(0, 0, 0, 0.55); +} +.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus { + color: rgba(0, 0, 0, 0.7); +} +.navbar-light .navbar-nav .nav-link.disabled { + color: rgba(0, 0, 0, 0.3); +} +.navbar-light .navbar-nav .show > .nav-link, +.navbar-light .navbar-nav .nav-link.active { + color: rgba(0, 0, 0, 0.9); +} +.navbar-light .navbar-toggler { + color: rgba(0, 0, 0, 0.55); + border-color: rgba(0, 0, 0, 0.1); +} +.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%280, 0, 0, 0.55%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(0, 0, 0, 0.55); +} +.navbar-light .navbar-text a, +.navbar-light .navbar-text a:hover, +.navbar-light .navbar-text a:focus { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-dark .navbar-brand { + color: #fff; +} +.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus { + color: #fff; +} +.navbar-dark .navbar-nav .nav-link { + color: rgba(255, 255, 255, 0.55); +} +.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus { + color: rgba(255, 255, 255, 0.75); +} +.navbar-dark .navbar-nav .nav-link.disabled { + color: rgba(255, 255, 255, 0.25); +} +.navbar-dark .navbar-nav .show > .nav-link, +.navbar-dark .navbar-nav .nav-link.active { + color: #fff; +} +.navbar-dark .navbar-toggler { + color: rgba(255, 255, 255, 0.55); + border-color: rgba(255, 255, 255, 0.1); +} +.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.55%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, 0.55); +} +.navbar-dark .navbar-text a, +.navbar-dark .navbar-text a:hover, +.navbar-dark .navbar-text a:focus { + color: #fff; +} + +.card { + position: relative; + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + min-width: 0; + word-wrap: break-word; + background-color: #fff; + background-clip: border-box; + border: 1px solid rgba(0, 0, 0, 0.125); + border-radius: 0.25rem; +} +.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; + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} +.card > .list-group:last-child { + border-bottom-width: 0; + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} +.card > .card-header + .list-group, +.card > .list-group + .card-footer { + border-top: 0; +} + +.card-body { + -ms-flex: 1 1 auto; + flex: 1 1 auto; + padding: 1rem 1rem; +} + +.card-title { + margin-bottom: 0.5rem; +} + +.card-subtitle { + margin-top: -0.25rem; + margin-bottom: 0; +} + +.card-text:last-child { + margin-bottom: 0; +} + +.card-link:hover { + text-decoration: none; +} +.card-link + .card-link { + margin-left: 1rem; +} + +.card-header { + padding: 0.5rem 1rem; + margin-bottom: 0; + background-color: rgba(0, 0, 0, 0.03); + border-bottom: 1px solid rgba(0, 0, 0, 0.125); +} +.card-header:first-child { + border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; +} + +.card-footer { + padding: 0.5rem 1rem; + background-color: rgba(0, 0, 0, 0.03); + border-top: 1px solid rgba(0, 0, 0, 0.125); +} +.card-footer:last-child { + border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px); +} + +.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; + border-radius: calc(0.25rem - 1px); +} + +.card-img, +.card-img-top, +.card-img-bottom { + width: 100%; +} + +.card-img, +.card-img-top { + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} + +.card-img, +.card-img-bottom { + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} + +.card-group > .card { + margin-bottom: 0.75rem; +} +@media (min-width: 576px) { + .card-group { + display: -ms-flexbox; + display: flex; + -ms-flex-flow: row wrap; + flex-flow: row wrap; + } + .card-group > .card { + -ms-flex: 1 0 0%; + flex: 1 0 0%; + margin-bottom: 0; + } + .card-group > .card + .card { + margin-left: 0; + border-left: 0; + } + .card-group > .card:not(:last-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + .card-group > .card:not(:last-child) .card-img-top, +.card-group > .card:not(:last-child) .card-header { + border-top-right-radius: 0; + } + .card-group > .card:not(:last-child) .card-img-bottom, +.card-group > .card:not(:last-child) .card-footer { + border-bottom-right-radius: 0; + } + .card-group > .card:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } + .card-group > .card:not(:first-child) .card-img-top, +.card-group > .card:not(:first-child) .card-header { + border-top-left-radius: 0; + } + .card-group > .card:not(:first-child) .card-img-bottom, +.card-group > .card:not(:first-child) .card-footer { + border-bottom-left-radius: 0; + } +} + +.accordion-button { + position: relative; + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + width: 100%; + padding: 1rem 1.25rem; + font-size: 1rem; + color: #212529; + text-align: left; + background-color: #fff; + border: 0; + border-radius: 0; + overflow-anchor: none; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease; +} +@media (prefers-reduced-motion: reduce) { + .accordion-button { + transition: none; + } +} +.accordion-button:not(.collapsed) { + color: #0c63e4; + background-color: #e7f1ff; + box-shadow: inset 0 -1px 0 rgba(0, 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='%230c63e4'%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"); + -webkit-transform: rotate(-180deg); + transform: rotate(-180deg); +} +.accordion-button::after { + -ms-flex-negative: 0; + 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='%23212529'%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: -webkit-transform 0.2s ease-in-out; + transition: transform 0.2s ease-in-out; + transition: transform 0.2s ease-in-out, -webkit-transform 0.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: #86b7fe; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.accordion-header { + margin-bottom: 0; +} + +.accordion-item { + background-color: #fff; + border: 1px solid rgba(0, 0, 0, 0.125); +} +.accordion-item:first-of-type { + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} +.accordion-item:first-of-type .accordion-button { + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} +.accordion-item:not(:first-of-type) { + border-top: 0; +} +.accordion-item:last-of-type { + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} +.accordion-item:last-of-type .accordion-button.collapsed { + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} +.accordion-item:last-of-type .accordion-collapse { + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.accordion-body { + padding: 1rem 1.25rem; +} + +.accordion-flush .accordion-collapse { + border-width: 0; +} +.accordion-flush .accordion-item { + border-right: 0; + border-left: 0; + border-radius: 0; +} +.accordion-flush .accordion-item:first-child { + border-top: 0; +} +.accordion-flush .accordion-item:last-child { + border-bottom: 0; +} +.accordion-flush .accordion-item .accordion-button { + border-radius: 0; +} + +.breadcrumb { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + padding: 0 0; + margin-bottom: 1rem; + list-style: none; +} + +.breadcrumb-item + .breadcrumb-item { + padding-left: 0.5rem; +} +.breadcrumb-item + .breadcrumb-item::before { + float: left; + padding-right: 0.5rem; + color: #6c757d; + content: var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */; +} +.breadcrumb-item.active { + color: #6c757d; +} + +.pagination { + display: -ms-flexbox; + display: flex; + padding-left: 0; + list-style: none; +} + +.page-link { + position: relative; + display: block; + color: #0d6efd; + text-decoration: none; + background-color: #fff; + border: 1px solid #dee2e6; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .page-link { + transition: none; + } +} +.page-link:hover { + z-index: 2; + color: #0a58ca; + background-color: #e9ecef; + border-color: #dee2e6; +} +.page-link:focus { + z-index: 3; + color: #0a58ca; + background-color: #e9ecef; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +.page-item:not(:first-child) .page-link { + margin-left: -1px; +} +.page-item.active .page-link { + z-index: 3; + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} +.page-item.disabled .page-link { + color: #6c757d; + pointer-events: none; + background-color: #fff; + border-color: #dee2e6; +} + +.page-link { + padding: 0.375rem 0.75rem; +} + +.page-item:first-child .page-link { + border-top-left-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} +.page-item:last-child .page-link { + border-top-right-radius: 0.25rem; + border-bottom-right-radius: 0.25rem; +} + +.pagination-lg .page-link { + padding: 0.75rem 1.5rem; + font-size: 1.25rem; +} +.pagination-lg .page-item:first-child .page-link { + border-top-left-radius: 0.3rem; + border-bottom-left-radius: 0.3rem; +} +.pagination-lg .page-item:last-child .page-link { + border-top-right-radius: 0.3rem; + border-bottom-right-radius: 0.3rem; +} + +.pagination-sm .page-link { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; +} +.pagination-sm .page-item:first-child .page-link { + border-top-left-radius: 0.2rem; + border-bottom-left-radius: 0.2rem; +} +.pagination-sm .page-item:last-child .page-link { + border-top-right-radius: 0.2rem; + border-bottom-right-radius: 0.2rem; +} + +.badge { + display: inline-block; + padding: 0.35em 0.65em; + font-size: 0.75em; + font-weight: 700; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: 0.25rem; +} +.badge:empty { + display: none; +} + +.btn .badge { + position: relative; + top: -1px; +} + +.alert { + position: relative; + padding: 1rem 1rem; + margin-bottom: 1rem; + border: 1px solid transparent; + border-radius: 0.25rem; +} + +.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-primary { + color: #084298; + background-color: #cfe2ff; + border-color: #b6d4fe; +} +.alert-primary .alert-link { + color: #06357a; +} + +.alert-secondary { + color: #41464b; + background-color: #e2e3e5; + border-color: #d3d6d8; +} +.alert-secondary .alert-link { + color: #34383c; +} + +.alert-success { + color: #0f5132; + background-color: #d1e7dd; + border-color: #badbcc; +} +.alert-success .alert-link { + color: #0c4128; +} + +.alert-info { + color: #055160; + background-color: #cff4fc; + border-color: #b6effb; +} +.alert-info .alert-link { + color: #04414d; +} + +.alert-warning { + color: #664d03; + background-color: #fff3cd; + border-color: #ffecb5; +} +.alert-warning .alert-link { + color: #523e02; +} + +.alert-danger { + color: #842029; + background-color: #f8d7da; + border-color: #f5c2c7; +} +.alert-danger .alert-link { + color: #6a1a21; +} + +.alert-light { + color: #636464; + background-color: #fefefe; + border-color: #fdfdfe; +} +.alert-light .alert-link { + color: #4f5050; +} + +.alert-dark { + color: #141619; + background-color: #d3d3d4; + border-color: #bcbebf; +} +.alert-dark .alert-link { + color: #101214; +} + +@-webkit-keyframes progress-bar-stripes { + 0% { + background-position-x: 1rem; + } +} + +@keyframes progress-bar-stripes { + 0% { + background-position-x: 1rem; + } +} +.progress { + display: -ms-flexbox; + display: flex; + height: 1rem; + overflow: hidden; + font-size: 0.75rem; + background-color: #e9ecef; + border-radius: 0.25rem; +} + +.progress-bar { + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + -ms-flex-pack: center; + justify-content: center; + overflow: hidden; + color: #fff; + text-align: center; + white-space: nowrap; + background-color: #0d6efd; + transition: width 0.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 { + -webkit-animation: 1s linear infinite progress-bar-stripes; + animation: 1s linear infinite progress-bar-stripes; +} +@media (prefers-reduced-motion: reduce) { + .progress-bar-animated { + -webkit-animation: none; + animation: none; + } +} + +.list-group { + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; + border-radius: 0.25rem; +} + +.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: #495057; + text-align: inherit; +} +.list-group-item-action:hover, .list-group-item-action:focus { + z-index: 1; + color: #495057; + text-decoration: none; + background-color: #f8f9fa; +} +.list-group-item-action:active { + color: #212529; + background-color: #e9ecef; +} + +.list-group-item { + position: relative; + display: block; + padding: 0.5rem 1rem; + color: #212529; + text-decoration: none; + background-color: #fff; + border: 1px solid rgba(0, 0, 0, 0.125); +} +.list-group-item:first-child { + border-top-left-radius: inherit; + border-top-right-radius: inherit; +} +.list-group-item:last-child { + border-bottom-right-radius: inherit; + border-bottom-left-radius: inherit; +} +.list-group-item.disabled, .list-group-item:disabled { + color: #6c757d; + pointer-events: none; + background-color: #fff; +} +.list-group-item.active { + z-index: 2; + color: #fff; + background-color: #0d6efd; + border-color: #0d6efd; +} +.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 { + -ms-flex-direction: row; + flex-direction: row; +} +.list-group-horizontal > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; +} +.list-group-horizontal > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; +} +.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 { + -ms-flex-direction: row; + flex-direction: row; + } + .list-group-horizontal-sm > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-sm > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + .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 { + -ms-flex-direction: row; + flex-direction: row; + } + .list-group-horizontal-md > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-md > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + .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 { + -ms-flex-direction: row; + flex-direction: row; + } + .list-group-horizontal-lg > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-lg > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + .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 { + -ms-flex-direction: row; + flex-direction: row; + } + .list-group-horizontal-xl > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-xl > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + .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 { + -ms-flex-direction: row; + flex-direction: row; + } + .list-group-horizontal-xxl > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-xxl > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + .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 { + border-radius: 0; +} +.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-primary { + color: #084298; + background-color: #cfe2ff; +} +.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus { + color: #084298; + background-color: #bacbe6; +} +.list-group-item-primary.list-group-item-action.active { + color: #fff; + background-color: #084298; + border-color: #084298; +} + +.list-group-item-secondary { + color: #41464b; + background-color: #e2e3e5; +} +.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus { + color: #41464b; + background-color: #cbccce; +} +.list-group-item-secondary.list-group-item-action.active { + color: #fff; + background-color: #41464b; + border-color: #41464b; +} + +.list-group-item-success { + color: #0f5132; + background-color: #d1e7dd; +} +.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus { + color: #0f5132; + background-color: #bcd0c7; +} +.list-group-item-success.list-group-item-action.active { + color: #fff; + background-color: #0f5132; + border-color: #0f5132; +} + +.list-group-item-info { + color: #055160; + background-color: #cff4fc; +} +.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus { + color: #055160; + background-color: #badce3; +} +.list-group-item-info.list-group-item-action.active { + color: #fff; + background-color: #055160; + border-color: #055160; +} + +.list-group-item-warning { + color: #664d03; + background-color: #fff3cd; +} +.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus { + color: #664d03; + background-color: #e6dbb9; +} +.list-group-item-warning.list-group-item-action.active { + color: #fff; + background-color: #664d03; + border-color: #664d03; +} + +.list-group-item-danger { + color: #842029; + background-color: #f8d7da; +} +.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus { + color: #842029; + background-color: #dfc2c4; +} +.list-group-item-danger.list-group-item-action.active { + color: #fff; + background-color: #842029; + border-color: #842029; +} + +.list-group-item-light { + color: #636464; + background-color: #fefefe; +} +.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus { + color: #636464; + background-color: #e5e5e5; +} +.list-group-item-light.list-group-item-action.active { + color: #fff; + background-color: #636464; + border-color: #636464; +} + +.list-group-item-dark { + color: #141619; + background-color: #d3d3d4; +} +.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus { + color: #141619; + background-color: #bebebf; +} +.list-group-item-dark.list-group-item-action.active { + color: #fff; + background-color: #141619; + border-color: #141619; +} + +.btn-close { + box-sizing: content-box; + width: 1em; + height: 1em; + padding: 0.25em 0.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; + border-radius: 0.25rem; + opacity: 0.5; +} +.btn-close:hover { + color: #000; + text-decoration: none; + opacity: 0.75; +} +.btn-close:focus { + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); + opacity: 1; +} +.btn-close:disabled, .btn-close.disabled { + pointer-events: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + opacity: 0.25; +} + +.btn-close-white { + -webkit-filter: invert(1) grayscale(100%) brightness(200%); + 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, 0.85); + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.1); + box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); + border-radius: 0.25rem; +} +.toast:not(.showing):not(.show) { + opacity: 0; +} +.toast.hide { + display: none; +} + +.toast-container { + width: -webkit-max-content; + width: -moz-max-content; + width: max-content; + max-width: 100%; + pointer-events: none; +} +.toast-container > :not(:last-child) { + margin-bottom: 0.75rem; +} + +.toast-header { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + padding: 0.5rem 0.75rem; + color: #6c757d; + background-color: rgba(255, 255, 255, 0.85); + background-clip: padding-box; + border-bottom: 1px solid rgba(0, 0, 0, 0.05); + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} +.toast-header .btn-close { + margin-right: -0.375rem; + margin-left: 0.75rem; +} + +.toast-body { + padding: 0.75rem; + word-wrap: break-word; +} + +.modal { + position: fixed; + top: 0; + left: 0; + z-index: 1060; + display: none; + width: 100%; + height: 100%; + overflow-x: hidden; + overflow-y: auto; + outline: 0; +} + +.modal-dialog { + position: relative; + width: auto; + margin: 0.5rem; + pointer-events: none; +} +.modal.fade .modal-dialog { + transition: -webkit-transform 0.3s ease-out; + transition: transform 0.3s ease-out; + transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out; + -webkit-transform: translate(0, -50px); + transform: translate(0, -50px); +} +@media (prefers-reduced-motion: reduce) { + .modal.fade .modal-dialog { + transition: none; + } +} +.modal.show .modal-dialog { + -webkit-transform: none; + transform: none; +} +.modal.modal-static .modal-dialog { + -webkit-transform: scale(1.02); + 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: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + min-height: calc(100% - 1rem); +} + +.modal-content { + position: relative; + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + width: 100%; + pointer-events: auto; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0.3rem; + outline: 0; +} + +.modal-backdrop { + position: fixed; + top: 0; + left: 0; + z-index: 1040; + width: 100vw; + height: 100vh; + background-color: #000; +} +.modal-backdrop.fade { + opacity: 0; +} +.modal-backdrop.show { + opacity: 0.5; +} + +.modal-header { + display: -ms-flexbox; + display: flex; + -ms-flex-negative: 0; + flex-shrink: 0; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: justify; + justify-content: space-between; + padding: 1rem 1rem; + border-bottom: 1px solid #dee2e6; + border-top-left-radius: calc(0.3rem - 1px); + border-top-right-radius: calc(0.3rem - 1px); +} +.modal-header .btn-close { + padding: 0.5rem 0.5rem; + margin: -0.5rem -0.5rem -0.5rem auto; +} + +.modal-title { + margin-bottom: 0; + line-height: 1.5; +} + +.modal-body { + position: relative; + -ms-flex: 1 1 auto; + flex: 1 1 auto; + padding: 1rem; +} + +.modal-footer { + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -ms-flex-negative: 0; + flex-shrink: 0; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: end; + justify-content: flex-end; + padding: 0.75rem; + border-top: 1px solid #dee2e6; + border-bottom-right-radius: calc(0.3rem - 1px); + border-bottom-left-radius: calc(0.3rem - 1px); +} +.modal-footer > * { + margin: 0.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; + border-radius: 0; +} +.modal-fullscreen .modal-header { + border-radius: 0; +} +.modal-fullscreen .modal-body { + overflow-y: auto; +} +.modal-fullscreen .modal-footer { + border-radius: 0; +} + +@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; + border-radius: 0; + } + .modal-fullscreen-sm-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-sm-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-sm-down .modal-footer { + border-radius: 0; + } +} +@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; + border-radius: 0; + } + .modal-fullscreen-md-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-md-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-md-down .modal-footer { + border-radius: 0; + } +} +@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; + border-radius: 0; + } + .modal-fullscreen-lg-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-lg-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-lg-down .modal-footer { + border-radius: 0; + } +} +@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; + border-radius: 0; + } + .modal-fullscreen-xl-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-xl-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-xl-down .modal-footer { + border-radius: 0; + } +} +@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; + border-radius: 0; + } + .modal-fullscreen-xxl-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-xxl-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-xxl-down .modal-footer { + border-radius: 0; + } +} +.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: 0.9; +} +.tooltip .tooltip-arrow { + position: absolute; + display: block; + width: 0.8rem; + height: 0.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: 0.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: 0.4rem 0.4rem 0; + border-top-color: #000; +} + +.bs-tooltip-end, .bs-tooltip-auto[data-popper-placement^=right] { + padding: 0 0.4rem; +} +.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow { + left: 0; + width: 0.4rem; + height: 0.8rem; +} +.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before { + right: -1px; + border-width: 0.4rem 0.4rem 0.4rem 0; + border-right-color: #000; +} + +.bs-tooltip-bottom, .bs-tooltip-auto[data-popper-placement^=bottom] { + padding: 0.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 0.4rem 0.4rem; + border-bottom-color: #000; +} + +.bs-tooltip-start, .bs-tooltip-auto[data-popper-placement^=left] { + padding: 0 0.4rem; +} +.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow { + right: 0; + width: 0.4rem; + height: 0.8rem; +} +.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before { + left: -1px; + border-width: 0.4rem 0 0.4rem 0.4rem; + border-left-color: #000; +} + +.tooltip-inner { + max-width: 200px; + padding: 0.25rem 0.5rem; + color: #fff; + text-align: center; + background-color: #000; + border-radius: 0.25rem; +} + +.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, 0.2); + border-radius: 0.3rem; +} +.popover .popover-arrow { + position: absolute; + display: block; + width: 1rem; + height: 0.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: 0.5rem 0.5rem 0; + border-top-color: rgba(0, 0, 0, 0.25); +} +.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after { + bottom: 1px; + border-width: 0.5rem 0.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: 0.5rem; + height: 1rem; +} +.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before { + left: 0; + border-width: 0.5rem 0.5rem 0.5rem 0; + border-right-color: rgba(0, 0, 0, 0.25); +} +.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after { + left: 1px; + border-width: 0.5rem 0.5rem 0.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 0.5rem 0.5rem 0.5rem; + border-bottom-color: rgba(0, 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 0.5rem 0.5rem 0.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: 0.5rem; + height: 1rem; +} +.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before { + right: 0; + border-width: 0.5rem 0 0.5rem 0.5rem; + border-left-color: rgba(0, 0, 0, 0.25); +} +.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after { + right: 1px; + border-width: 0.5rem 0 0.5rem 0.5rem; + border-left-color: #fff; +} + +.popover-header { + padding: 0.5rem 1rem; + margin-bottom: 0; + font-size: 1rem; + background-color: #f0f0f0; + border-bottom: 1px solid rgba(0, 0, 0, 0.2); + border-top-left-radius: calc(0.3rem - 1px); + border-top-right-radius: calc(0.3rem - 1px); +} +.popover-header:empty { + display: none; +} + +.popover-body { + padding: 1rem 1rem; + color: #212529; +} + +.carousel { + position: relative; +} + +.carousel.pointer-event { + -ms-touch-action: pan-y; + 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%; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + transition: -webkit-transform 0.6s ease-in-out; + transition: transform 0.6s ease-in-out; + transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .carousel-item { + transition: none; + } +} + +.carousel-item.active, +.carousel-item-next, +.carousel-item-prev { + display: block; +} + +/* rtl:begin:ignore */ +.carousel-item-next:not(.carousel-item-start), +.active.carousel-item-end { + -webkit-transform: translateX(100%); + transform: translateX(100%); +} + +.carousel-item-prev:not(.carousel-item-end), +.active.carousel-item-start { + -webkit-transform: translateX(-100%); + transform: translateX(-100%); +} + +/* rtl:end:ignore */ +.carousel-fade .carousel-item { + opacity: 0; + transition-property: opacity; + -webkit-transform: none; + 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 0.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: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: center; + justify-content: center; + width: 15%; + padding: 0; + color: #fff; + text-align: center; + background: none; + border: 0; + opacity: 0.5; + transition: opacity 0.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: 0.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%; +} + +/* rtl:options: { + "autoRename": true, + "stringMap":[ { + "name" : "prev-next", + "search" : "prev", + "replace" : "next" + } ] +} */ +.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: -ms-flexbox; + display: flex; + -ms-flex-pack: center; + 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; + -ms-flex: 0 1 auto; + 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: 0.5; + transition: opacity 0.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 { + -webkit-filter: invert(1) grayscale(100); + filter: invert(1) grayscale(100); +} +.carousel-dark .carousel-indicators [data-bs-target] { + background-color: #000; +} +.carousel-dark .carousel-caption { + color: #000; +} + +@-webkit-keyframes spinner-border { + to { + -webkit-transform: rotate(360deg) /* rtl:ignore */; + transform: rotate(360deg) /* rtl:ignore */; + } +} + +@keyframes spinner-border { + to { + -webkit-transform: rotate(360deg) /* rtl:ignore */; + transform: rotate(360deg) /* rtl:ignore */; + } +} +.spinner-border { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: -0.125em; + border: 0.25em solid currentColor; + border-right-color: transparent; + border-radius: 50%; + -webkit-animation: 0.75s linear infinite spinner-border; + animation: 0.75s linear infinite spinner-border; +} + +.spinner-border-sm { + width: 1rem; + height: 1rem; + border-width: 0.2em; +} + +@-webkit-keyframes spinner-grow { + 0% { + -webkit-transform: scale(0); + transform: scale(0); + } + 50% { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +@keyframes spinner-grow { + 0% { + -webkit-transform: scale(0); + transform: scale(0); + } + 50% { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} +.spinner-grow { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: -0.125em; + background-color: currentColor; + border-radius: 50%; + opacity: 0; + -webkit-animation: 0.75s linear infinite spinner-grow; + animation: 0.75s linear infinite spinner-grow; +} + +.spinner-grow-sm { + width: 1rem; + height: 1rem; +} + +@media (prefers-reduced-motion: reduce) { + .spinner-border, +.spinner-grow { + -webkit-animation-duration: 1.5s; + animation-duration: 1.5s; + } +} +.offcanvas { + position: fixed; + bottom: 0; + z-index: 1050; + display: -ms-flexbox; + display: flex; + -ms-flex-direction: column; + flex-direction: column; + max-width: 100%; + visibility: hidden; + background-color: #fff; + background-clip: padding-box; + outline: 0; + transition: -webkit-transform 0.3s ease-in-out; + transition: transform 0.3s ease-in-out; + transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .offcanvas { + transition: none; + } +} + +.offcanvas-header { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: justify; + justify-content: space-between; + padding: 1rem 1rem; +} +.offcanvas-header .btn-close { + padding: 0.5rem 0.5rem; + margin-top: -0.5rem; + margin-right: -0.5rem; + margin-bottom: -0.5rem; +} + +.offcanvas-title { + margin-bottom: 0; + line-height: 1.5; +} + +.offcanvas-body { + -ms-flex-positive: 1; + 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, 0.2); + -webkit-transform: translateX(-100%); + transform: translateX(-100%); +} + +.offcanvas-end { + top: 0; + right: 0; + width: 400px; + border-left: 1px solid rgba(0, 0, 0, 0.2); + -webkit-transform: translateX(100%); + transform: translateX(100%); +} + +.offcanvas-top { + top: 0; + right: 0; + left: 0; + height: 30vh; + max-height: 100%; + border-bottom: 1px solid rgba(0, 0, 0, 0.2); + -webkit-transform: translateY(-100%); + transform: translateY(-100%); +} + +.offcanvas-bottom { + right: 0; + left: 0; + height: 30vh; + max-height: 100%; + border-top: 1px solid rgba(0, 0, 0, 0.2); + -webkit-transform: translateY(100%); + transform: translateY(100%); +} + +.offcanvas.show { + -webkit-transform: none; + transform: none; +} + +.clearfix::after { + display: block; + clear: both; + content: ""; +} + +.link-primary { + color: #0d6efd; +} +.link-primary:hover, .link-primary:focus { + color: #0a58ca; +} + +.link-secondary { + color: #6c757d; +} +.link-secondary:hover, .link-secondary:focus { + color: #565e64; +} + +.link-success { + color: #198754; +} +.link-success:hover, .link-success:focus { + color: #146c43; +} + +.link-info { + color: #0dcaf0; +} +.link-info:hover, .link-info:focus { + color: #3dd5f3; +} + +.link-warning { + color: #ffc107; +} +.link-warning:hover, .link-warning:focus { + color: #ffcd39; +} + +.link-danger { + color: #dc3545; +} +.link-danger:hover, .link-danger:focus { + color: #b02a37; +} + +.link-light { + color: #f8f9fa; +} +.link-light:hover, .link-light:focus { + color: #f9fafb; +} + +.link-dark { + color: #212529; +} +.link-dark:hover, .link-dark:focus { + color: #1a1e21; +} + +.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: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; +} + +@media (min-width: 576px) { + .sticky-sm-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} +@media (min-width: 768px) { + .sticky-md-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} +@media (min-width: 992px) { + .sticky-lg-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} +@media (min-width: 1200px) { + .sticky-xl-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} +@media (min-width: 1400px) { + .sticky-xxl-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} +.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; +} + +.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; +} + +.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: -ms-grid !important; + 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: -ms-flexbox !important; + display: flex !important; +} + +.d-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; +} + +.d-none { + display: none !important; +} + +.shadow { + box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; +} + +.shadow-sm { + box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; +} + +.shadow-lg { + box-shadow: 0 1rem 3rem rgba(0, 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: -webkit-sticky !important; + 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 { + -webkit-transform: translate(-50%, -50%) !important; + transform: translate(-50%, -50%) !important; +} + +.translate-middle-x { + -webkit-transform: translateX(-50%) !important; + transform: translateX(-50%) !important; +} + +.translate-middle-y { + -webkit-transform: translateY(-50%) !important; + 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-primary { + border-color: #0d6efd !important; +} + +.border-secondary { + border-color: #6c757d !important; +} + +.border-success { + border-color: #198754 !important; +} + +.border-info { + border-color: #0dcaf0 !important; +} + +.border-warning { + border-color: #ffc107 !important; +} + +.border-danger { + border-color: #dc3545 !important; +} + +.border-light { + border-color: #f8f9fa !important; +} + +.border-dark { + border-color: #212529 !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 { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; +} + +.flex-row { + -ms-flex-direction: row !important; + flex-direction: row !important; +} + +.flex-column { + -ms-flex-direction: column !important; + flex-direction: column !important; +} + +.flex-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; +} + +.flex-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; +} + +.flex-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; +} + +.flex-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; +} + +.flex-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; +} + +.flex-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; +} + +.flex-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; +} + +.flex-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; +} + +.flex-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; +} + +.gap-0 { + gap: 0 !important; +} + +.gap-1 { + gap: 0.25rem !important; +} + +.gap-2 { + gap: 0.5rem !important; +} + +.gap-3 { + gap: 1rem !important; +} + +.gap-4 { + gap: 1.5rem !important; +} + +.gap-5 { + gap: 3rem !important; +} + +.justify-content-start { + -ms-flex-pack: start !important; + justify-content: flex-start !important; +} + +.justify-content-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; +} + +.justify-content-center { + -ms-flex-pack: center !important; + justify-content: center !important; +} + +.justify-content-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; +} + +.justify-content-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; +} + +.justify-content-evenly { + -ms-flex-pack: space-evenly !important; + justify-content: space-evenly !important; +} + +.align-items-start { + -ms-flex-align: start !important; + align-items: flex-start !important; +} + +.align-items-end { + -ms-flex-align: end !important; + align-items: flex-end !important; +} + +.align-items-center { + -ms-flex-align: center !important; + align-items: center !important; +} + +.align-items-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; +} + +.align-items-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; +} + +.align-content-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; +} + +.align-content-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; +} + +.align-content-center { + -ms-flex-line-pack: center !important; + align-content: center !important; +} + +.align-content-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; +} + +.align-content-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; +} + +.align-content-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; +} + +.align-self-auto { + -ms-flex-item-align: auto !important; + -ms-grid-row-align: auto !important; + align-self: auto !important; +} + +.align-self-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; +} + +.align-self-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; +} + +.align-self-center { + -ms-flex-item-align: center !important; + -ms-grid-row-align: center !important; + align-self: center !important; +} + +.align-self-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; +} + +.align-self-stretch { + -ms-flex-item-align: stretch !important; + -ms-grid-row-align: stretch !important; + align-self: stretch !important; +} + +.order-first { + -ms-flex-order: -1 !important; + order: -1 !important; +} + +.order-0 { + -ms-flex-order: 0 !important; + order: 0 !important; +} + +.order-1 { + -ms-flex-order: 1 !important; + order: 1 !important; +} + +.order-2 { + -ms-flex-order: 2 !important; + order: 2 !important; +} + +.order-3 { + -ms-flex-order: 3 !important; + order: 3 !important; +} + +.order-4 { + -ms-flex-order: 4 !important; + order: 4 !important; +} + +.order-5 { + -ms-flex-order: 5 !important; + order: 5 !important; +} + +.order-last { + -ms-flex-order: 6 !important; + order: 6 !important; +} + +.m-0 { + margin: 0 !important; +} + +.m-1 { + margin: 0.25rem !important; +} + +.m-2 { + margin: 0.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: 0.25rem !important; + margin-left: 0.25rem !important; +} + +.mx-2 { + margin-right: 0.5rem !important; + margin-left: 0.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: 0.25rem !important; + margin-bottom: 0.25rem !important; +} + +.my-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.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: 0.25rem !important; +} + +.mt-2 { + margin-top: 0.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: 0.25rem !important; +} + +.me-2 { + margin-right: 0.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: 0.25rem !important; +} + +.mb-2 { + margin-bottom: 0.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: 0.25rem !important; +} + +.ms-2 { + margin-left: 0.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: 0.25rem !important; +} + +.p-2 { + padding: 0.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: 0.25rem !important; + padding-left: 0.25rem !important; +} + +.px-2 { + padding-right: 0.5rem !important; + padding-left: 0.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: 0.25rem !important; + padding-bottom: 0.25rem !important; +} + +.py-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.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: 0.25rem !important; +} + +.pt-2 { + padding-top: 0.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: 0.25rem !important; +} + +.pe-2 { + padding-right: 0.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: 0.25rem !important; +} + +.pb-2 { + padding-bottom: 0.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: 0.25rem !important; +} + +.ps-2 { + padding-left: 0.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.375rem + 1.5vw) !important; +} + +.fs-2 { + font-size: calc(1.325rem + 0.9vw) !important; +} + +.fs-3 { + font-size: calc(1.3rem + 0.6vw) !important; +} + +.fs-4 { + font-size: calc(1.275rem + 0.3vw) !important; +} + +.fs-5 { + font-size: 1.25rem !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; +} + +/* rtl:begin:remove */ +.text-break { + word-wrap: break-word !important; + word-break: break-word !important; +} + +/* rtl:end:remove */ +.text-primary { + color: #0d6efd !important; +} + +.text-secondary { + color: #6c757d !important; +} + +.text-success { + color: #198754 !important; +} + +.text-info { + color: #0dcaf0 !important; +} + +.text-warning { + color: #ffc107 !important; +} + +.text-danger { + color: #dc3545 !important; +} + +.text-light { + color: #f8f9fa !important; +} + +.text-dark { + color: #212529 !important; +} + +.text-white { + color: #fff !important; +} + +.text-body { + color: #212529 !important; +} + +.text-muted { + color: #6c757d !important; +} + +.text-black-50 { + color: rgba(0, 0, 0, 0.5) !important; +} + +.text-white-50 { + color: rgba(255, 255, 255, 0.5) !important; +} + +.text-reset { + color: inherit !important; +} + +.bg-primary { + background-color: #0d6efd !important; +} + +.bg-secondary { + background-color: #6c757d !important; +} + +.bg-success { + background-color: #198754 !important; +} + +.bg-info { + background-color: #0dcaf0 !important; +} + +.bg-warning { + background-color: #ffc107 !important; +} + +.bg-danger { + background-color: #dc3545 !important; +} + +.bg-light { + background-color: #f8f9fa !important; +} + +.bg-dark { + background-color: #212529 !important; +} + +.bg-body { + background-color: #fff !important; +} + +.bg-white { + background-color: #fff !important; +} + +.bg-transparent { + background-color: transparent !important; +} + +.bg-gradient { + background-image: var(--bs-gradient) !important; +} + +.user-select-all { + -webkit-user-select: all !important; + -moz-user-select: all !important; + user-select: all !important; +} + +.user-select-auto { + -webkit-user-select: auto !important; + -moz-user-select: auto !important; + -ms-user-select: auto !important; + user-select: auto !important; +} + +.user-select-none { + -webkit-user-select: none !important; + -moz-user-select: none !important; + -ms-user-select: none !important; + user-select: none !important; +} + +.pe-none { + pointer-events: none !important; +} + +.pe-auto { + pointer-events: auto !important; +} + +.rounded { + border-radius: 0.25rem !important; +} + +.rounded-0 { + border-radius: 0 !important; +} + +.rounded-1 { + border-radius: 0.2rem !important; +} + +.rounded-2 { + border-radius: 0.25rem !important; +} + +.rounded-3 { + border-radius: 0.3rem !important; +} + +.rounded-circle { + border-radius: 50% !important; +} + +.rounded-pill { + border-radius: 50rem !important; +} + +.rounded-top { + border-top-left-radius: 0.25rem !important; + border-top-right-radius: 0.25rem !important; +} + +.rounded-end { + border-top-right-radius: 0.25rem !important; + border-bottom-right-radius: 0.25rem !important; +} + +.rounded-bottom { + border-bottom-right-radius: 0.25rem !important; + border-bottom-left-radius: 0.25rem !important; +} + +.rounded-start { + border-bottom-left-radius: 0.25rem !important; + border-top-left-radius: 0.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: -ms-grid !important; + 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: -ms-flexbox !important; + display: flex !important; + } + + .d-sm-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } + + .d-sm-none { + display: none !important; + } + + .flex-sm-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + + .flex-sm-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + + .flex-sm-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + + .flex-sm-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + + .flex-sm-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + + .flex-sm-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + + .flex-sm-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + + .flex-sm-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + + .flex-sm-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + + .flex-sm-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + + .flex-sm-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + + .flex-sm-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + + .gap-sm-0 { + gap: 0 !important; + } + + .gap-sm-1 { + gap: 0.25rem !important; + } + + .gap-sm-2 { + gap: 0.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 { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + + .justify-content-sm-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + + .justify-content-sm-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + + .justify-content-sm-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + + .justify-content-sm-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + + .justify-content-sm-evenly { + -ms-flex-pack: space-evenly !important; + justify-content: space-evenly !important; + } + + .align-items-sm-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + + .align-items-sm-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + + .align-items-sm-center { + -ms-flex-align: center !important; + align-items: center !important; + } + + .align-items-sm-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + + .align-items-sm-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + + .align-content-sm-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + + .align-content-sm-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + + .align-content-sm-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + + .align-content-sm-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + + .align-content-sm-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + + .align-content-sm-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + + .align-self-sm-auto { + -ms-flex-item-align: auto !important; + -ms-grid-row-align: auto !important; + align-self: auto !important; + } + + .align-self-sm-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + + .align-self-sm-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + + .align-self-sm-center { + -ms-flex-item-align: center !important; + -ms-grid-row-align: center !important; + align-self: center !important; + } + + .align-self-sm-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + + .align-self-sm-stretch { + -ms-flex-item-align: stretch !important; + -ms-grid-row-align: stretch !important; + align-self: stretch !important; + } + + .order-sm-first { + -ms-flex-order: -1 !important; + order: -1 !important; + } + + .order-sm-0 { + -ms-flex-order: 0 !important; + order: 0 !important; + } + + .order-sm-1 { + -ms-flex-order: 1 !important; + order: 1 !important; + } + + .order-sm-2 { + -ms-flex-order: 2 !important; + order: 2 !important; + } + + .order-sm-3 { + -ms-flex-order: 3 !important; + order: 3 !important; + } + + .order-sm-4 { + -ms-flex-order: 4 !important; + order: 4 !important; + } + + .order-sm-5 { + -ms-flex-order: 5 !important; + order: 5 !important; + } + + .order-sm-last { + -ms-flex-order: 6 !important; + order: 6 !important; + } + + .m-sm-0 { + margin: 0 !important; + } + + .m-sm-1 { + margin: 0.25rem !important; + } + + .m-sm-2 { + margin: 0.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: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-sm-2 { + margin-right: 0.5rem !important; + margin-left: 0.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: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-sm-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.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: 0.25rem !important; + } + + .mt-sm-2 { + margin-top: 0.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: 0.25rem !important; + } + + .me-sm-2 { + margin-right: 0.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: 0.25rem !important; + } + + .mb-sm-2 { + margin-bottom: 0.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: 0.25rem !important; + } + + .ms-sm-2 { + margin-left: 0.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: 0.25rem !important; + } + + .p-sm-2 { + padding: 0.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: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-sm-2 { + padding-right: 0.5rem !important; + padding-left: 0.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: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-sm-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.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: 0.25rem !important; + } + + .pt-sm-2 { + padding-top: 0.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: 0.25rem !important; + } + + .pe-sm-2 { + padding-right: 0.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: 0.25rem !important; + } + + .pb-sm-2 { + padding-bottom: 0.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: 0.25rem !important; + } + + .ps-sm-2 { + padding-left: 0.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: -ms-grid !important; + 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: -ms-flexbox !important; + display: flex !important; + } + + .d-md-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } + + .d-md-none { + display: none !important; + } + + .flex-md-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + + .flex-md-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + + .flex-md-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + + .flex-md-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + + .flex-md-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + + .flex-md-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + + .flex-md-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + + .flex-md-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + + .flex-md-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + + .flex-md-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + + .flex-md-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + + .flex-md-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + + .gap-md-0 { + gap: 0 !important; + } + + .gap-md-1 { + gap: 0.25rem !important; + } + + .gap-md-2 { + gap: 0.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 { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + + .justify-content-md-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + + .justify-content-md-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + + .justify-content-md-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + + .justify-content-md-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + + .justify-content-md-evenly { + -ms-flex-pack: space-evenly !important; + justify-content: space-evenly !important; + } + + .align-items-md-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + + .align-items-md-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + + .align-items-md-center { + -ms-flex-align: center !important; + align-items: center !important; + } + + .align-items-md-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + + .align-items-md-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + + .align-content-md-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + + .align-content-md-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + + .align-content-md-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + + .align-content-md-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + + .align-content-md-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + + .align-content-md-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + + .align-self-md-auto { + -ms-flex-item-align: auto !important; + -ms-grid-row-align: auto !important; + align-self: auto !important; + } + + .align-self-md-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + + .align-self-md-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + + .align-self-md-center { + -ms-flex-item-align: center !important; + -ms-grid-row-align: center !important; + align-self: center !important; + } + + .align-self-md-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + + .align-self-md-stretch { + -ms-flex-item-align: stretch !important; + -ms-grid-row-align: stretch !important; + align-self: stretch !important; + } + + .order-md-first { + -ms-flex-order: -1 !important; + order: -1 !important; + } + + .order-md-0 { + -ms-flex-order: 0 !important; + order: 0 !important; + } + + .order-md-1 { + -ms-flex-order: 1 !important; + order: 1 !important; + } + + .order-md-2 { + -ms-flex-order: 2 !important; + order: 2 !important; + } + + .order-md-3 { + -ms-flex-order: 3 !important; + order: 3 !important; + } + + .order-md-4 { + -ms-flex-order: 4 !important; + order: 4 !important; + } + + .order-md-5 { + -ms-flex-order: 5 !important; + order: 5 !important; + } + + .order-md-last { + -ms-flex-order: 6 !important; + order: 6 !important; + } + + .m-md-0 { + margin: 0 !important; + } + + .m-md-1 { + margin: 0.25rem !important; + } + + .m-md-2 { + margin: 0.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: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-md-2 { + margin-right: 0.5rem !important; + margin-left: 0.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: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-md-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.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: 0.25rem !important; + } + + .mt-md-2 { + margin-top: 0.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: 0.25rem !important; + } + + .me-md-2 { + margin-right: 0.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: 0.25rem !important; + } + + .mb-md-2 { + margin-bottom: 0.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: 0.25rem !important; + } + + .ms-md-2 { + margin-left: 0.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: 0.25rem !important; + } + + .p-md-2 { + padding: 0.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: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-md-2 { + padding-right: 0.5rem !important; + padding-left: 0.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: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-md-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.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: 0.25rem !important; + } + + .pt-md-2 { + padding-top: 0.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: 0.25rem !important; + } + + .pe-md-2 { + padding-right: 0.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: 0.25rem !important; + } + + .pb-md-2 { + padding-bottom: 0.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: 0.25rem !important; + } + + .ps-md-2 { + padding-left: 0.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: -ms-grid !important; + 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: -ms-flexbox !important; + display: flex !important; + } + + .d-lg-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } + + .d-lg-none { + display: none !important; + } + + .flex-lg-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + + .flex-lg-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + + .flex-lg-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + + .flex-lg-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + + .flex-lg-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + + .flex-lg-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + + .flex-lg-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + + .flex-lg-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + + .flex-lg-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + + .flex-lg-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + + .flex-lg-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + + .flex-lg-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + + .gap-lg-0 { + gap: 0 !important; + } + + .gap-lg-1 { + gap: 0.25rem !important; + } + + .gap-lg-2 { + gap: 0.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 { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + + .justify-content-lg-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + + .justify-content-lg-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + + .justify-content-lg-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + + .justify-content-lg-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + + .justify-content-lg-evenly { + -ms-flex-pack: space-evenly !important; + justify-content: space-evenly !important; + } + + .align-items-lg-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + + .align-items-lg-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + + .align-items-lg-center { + -ms-flex-align: center !important; + align-items: center !important; + } + + .align-items-lg-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + + .align-items-lg-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + + .align-content-lg-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + + .align-content-lg-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + + .align-content-lg-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + + .align-content-lg-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + + .align-content-lg-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + + .align-content-lg-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + + .align-self-lg-auto { + -ms-flex-item-align: auto !important; + -ms-grid-row-align: auto !important; + align-self: auto !important; + } + + .align-self-lg-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + + .align-self-lg-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + + .align-self-lg-center { + -ms-flex-item-align: center !important; + -ms-grid-row-align: center !important; + align-self: center !important; + } + + .align-self-lg-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + + .align-self-lg-stretch { + -ms-flex-item-align: stretch !important; + -ms-grid-row-align: stretch !important; + align-self: stretch !important; + } + + .order-lg-first { + -ms-flex-order: -1 !important; + order: -1 !important; + } + + .order-lg-0 { + -ms-flex-order: 0 !important; + order: 0 !important; + } + + .order-lg-1 { + -ms-flex-order: 1 !important; + order: 1 !important; + } + + .order-lg-2 { + -ms-flex-order: 2 !important; + order: 2 !important; + } + + .order-lg-3 { + -ms-flex-order: 3 !important; + order: 3 !important; + } + + .order-lg-4 { + -ms-flex-order: 4 !important; + order: 4 !important; + } + + .order-lg-5 { + -ms-flex-order: 5 !important; + order: 5 !important; + } + + .order-lg-last { + -ms-flex-order: 6 !important; + order: 6 !important; + } + + .m-lg-0 { + margin: 0 !important; + } + + .m-lg-1 { + margin: 0.25rem !important; + } + + .m-lg-2 { + margin: 0.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: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-lg-2 { + margin-right: 0.5rem !important; + margin-left: 0.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: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-lg-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.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: 0.25rem !important; + } + + .mt-lg-2 { + margin-top: 0.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: 0.25rem !important; + } + + .me-lg-2 { + margin-right: 0.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: 0.25rem !important; + } + + .mb-lg-2 { + margin-bottom: 0.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: 0.25rem !important; + } + + .ms-lg-2 { + margin-left: 0.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: 0.25rem !important; + } + + .p-lg-2 { + padding: 0.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: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-lg-2 { + padding-right: 0.5rem !important; + padding-left: 0.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: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-lg-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.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: 0.25rem !important; + } + + .pt-lg-2 { + padding-top: 0.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: 0.25rem !important; + } + + .pe-lg-2 { + padding-right: 0.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: 0.25rem !important; + } + + .pb-lg-2 { + padding-bottom: 0.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: 0.25rem !important; + } + + .ps-lg-2 { + padding-left: 0.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: -ms-grid !important; + 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: -ms-flexbox !important; + display: flex !important; + } + + .d-xl-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } + + .d-xl-none { + display: none !important; + } + + .flex-xl-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + + .flex-xl-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + + .flex-xl-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + + .flex-xl-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + + .flex-xl-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + + .flex-xl-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + + .flex-xl-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + + .flex-xl-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + + .flex-xl-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + + .flex-xl-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + + .flex-xl-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + + .flex-xl-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + + .gap-xl-0 { + gap: 0 !important; + } + + .gap-xl-1 { + gap: 0.25rem !important; + } + + .gap-xl-2 { + gap: 0.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 { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + + .justify-content-xl-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + + .justify-content-xl-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + + .justify-content-xl-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + + .justify-content-xl-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + + .justify-content-xl-evenly { + -ms-flex-pack: space-evenly !important; + justify-content: space-evenly !important; + } + + .align-items-xl-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + + .align-items-xl-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + + .align-items-xl-center { + -ms-flex-align: center !important; + align-items: center !important; + } + + .align-items-xl-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + + .align-items-xl-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + + .align-content-xl-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + + .align-content-xl-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + + .align-content-xl-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + + .align-content-xl-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + + .align-content-xl-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + + .align-content-xl-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + + .align-self-xl-auto { + -ms-flex-item-align: auto !important; + -ms-grid-row-align: auto !important; + align-self: auto !important; + } + + .align-self-xl-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + + .align-self-xl-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + + .align-self-xl-center { + -ms-flex-item-align: center !important; + -ms-grid-row-align: center !important; + align-self: center !important; + } + + .align-self-xl-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + + .align-self-xl-stretch { + -ms-flex-item-align: stretch !important; + -ms-grid-row-align: stretch !important; + align-self: stretch !important; + } + + .order-xl-first { + -ms-flex-order: -1 !important; + order: -1 !important; + } + + .order-xl-0 { + -ms-flex-order: 0 !important; + order: 0 !important; + } + + .order-xl-1 { + -ms-flex-order: 1 !important; + order: 1 !important; + } + + .order-xl-2 { + -ms-flex-order: 2 !important; + order: 2 !important; + } + + .order-xl-3 { + -ms-flex-order: 3 !important; + order: 3 !important; + } + + .order-xl-4 { + -ms-flex-order: 4 !important; + order: 4 !important; + } + + .order-xl-5 { + -ms-flex-order: 5 !important; + order: 5 !important; + } + + .order-xl-last { + -ms-flex-order: 6 !important; + order: 6 !important; + } + + .m-xl-0 { + margin: 0 !important; + } + + .m-xl-1 { + margin: 0.25rem !important; + } + + .m-xl-2 { + margin: 0.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: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-xl-2 { + margin-right: 0.5rem !important; + margin-left: 0.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: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-xl-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.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: 0.25rem !important; + } + + .mt-xl-2 { + margin-top: 0.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: 0.25rem !important; + } + + .me-xl-2 { + margin-right: 0.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: 0.25rem !important; + } + + .mb-xl-2 { + margin-bottom: 0.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: 0.25rem !important; + } + + .ms-xl-2 { + margin-left: 0.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: 0.25rem !important; + } + + .p-xl-2 { + padding: 0.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: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-xl-2 { + padding-right: 0.5rem !important; + padding-left: 0.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: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-xl-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.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: 0.25rem !important; + } + + .pt-xl-2 { + padding-top: 0.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: 0.25rem !important; + } + + .pe-xl-2 { + padding-right: 0.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: 0.25rem !important; + } + + .pb-xl-2 { + padding-bottom: 0.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: 0.25rem !important; + } + + .ps-xl-2 { + padding-left: 0.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: -ms-grid !important; + 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: -ms-flexbox !important; + display: flex !important; + } + + .d-xxl-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } + + .d-xxl-none { + display: none !important; + } + + .flex-xxl-fill { + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + + .flex-xxl-row { + -ms-flex-direction: row !important; + flex-direction: row !important; + } + + .flex-xxl-column { + -ms-flex-direction: column !important; + flex-direction: column !important; + } + + .flex-xxl-row-reverse { + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + + .flex-xxl-column-reverse { + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + + .flex-xxl-grow-0 { + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + + .flex-xxl-grow-1 { + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + + .flex-xxl-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + + .flex-xxl-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + + .flex-xxl-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + + .flex-xxl-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + + .flex-xxl-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + + .gap-xxl-0 { + gap: 0 !important; + } + + .gap-xxl-1 { + gap: 0.25rem !important; + } + + .gap-xxl-2 { + gap: 0.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 { + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + + .justify-content-xxl-end { + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + + .justify-content-xxl-center { + -ms-flex-pack: center !important; + justify-content: center !important; + } + + .justify-content-xxl-between { + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + + .justify-content-xxl-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + + .justify-content-xxl-evenly { + -ms-flex-pack: space-evenly !important; + justify-content: space-evenly !important; + } + + .align-items-xxl-start { + -ms-flex-align: start !important; + align-items: flex-start !important; + } + + .align-items-xxl-end { + -ms-flex-align: end !important; + align-items: flex-end !important; + } + + .align-items-xxl-center { + -ms-flex-align: center !important; + align-items: center !important; + } + + .align-items-xxl-baseline { + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + + .align-items-xxl-stretch { + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + + .align-content-xxl-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + + .align-content-xxl-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + + .align-content-xxl-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + + .align-content-xxl-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + + .align-content-xxl-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + + .align-content-xxl-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + + .align-self-xxl-auto { + -ms-flex-item-align: auto !important; + -ms-grid-row-align: auto !important; + align-self: auto !important; + } + + .align-self-xxl-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + + .align-self-xxl-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + + .align-self-xxl-center { + -ms-flex-item-align: center !important; + -ms-grid-row-align: center !important; + align-self: center !important; + } + + .align-self-xxl-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + + .align-self-xxl-stretch { + -ms-flex-item-align: stretch !important; + -ms-grid-row-align: stretch !important; + align-self: stretch !important; + } + + .order-xxl-first { + -ms-flex-order: -1 !important; + order: -1 !important; + } + + .order-xxl-0 { + -ms-flex-order: 0 !important; + order: 0 !important; + } + + .order-xxl-1 { + -ms-flex-order: 1 !important; + order: 1 !important; + } + + .order-xxl-2 { + -ms-flex-order: 2 !important; + order: 2 !important; + } + + .order-xxl-3 { + -ms-flex-order: 3 !important; + order: 3 !important; + } + + .order-xxl-4 { + -ms-flex-order: 4 !important; + order: 4 !important; + } + + .order-xxl-5 { + -ms-flex-order: 5 !important; + order: 5 !important; + } + + .order-xxl-last { + -ms-flex-order: 6 !important; + order: 6 !important; + } + + .m-xxl-0 { + margin: 0 !important; + } + + .m-xxl-1 { + margin: 0.25rem !important; + } + + .m-xxl-2 { + margin: 0.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: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-xxl-2 { + margin-right: 0.5rem !important; + margin-left: 0.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: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-xxl-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.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: 0.25rem !important; + } + + .mt-xxl-2 { + margin-top: 0.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: 0.25rem !important; + } + + .me-xxl-2 { + margin-right: 0.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: 0.25rem !important; + } + + .mb-xxl-2 { + margin-bottom: 0.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: 0.25rem !important; + } + + .ms-xxl-2 { + margin-left: 0.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: 0.25rem !important; + } + + .p-xxl-2 { + padding: 0.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: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-xxl-2 { + padding-right: 0.5rem !important; + padding-left: 0.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: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-xxl-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.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: 0.25rem !important; + } + + .pt-xxl-2 { + padding-top: 0.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: 0.25rem !important; + } + + .pe-xxl-2 { + padding-right: 0.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: 0.25rem !important; + } + + .pb-xxl-2 { + padding-bottom: 0.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: 0.25rem !important; + } + + .ps-xxl-2 { + padding-left: 0.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; + } +} +@media (min-width: 1200px) { + .fs-1 { + font-size: 2.5rem !important; + } + + .fs-2 { + font-size: 2rem !important; + } + + .fs-3 { + font-size: 1.75rem !important; + } + + .fs-4 { + 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: -ms-grid !important; + 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: -ms-flexbox !important; + display: flex !important; + } + + .d-print-inline-flex { + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } + + .d-print-none { + display: none !important; + } +} +.oe-header { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + -ms-flex-pack: justify; + justify-content: space-between; + margin: 0.5rem; +} + +.oe-language .modal-content { + color: #212529; + background-color: #f8f9fa; +} + +.oe-language__list { + display: -ms-grid; + display: grid; + gap: 1rem; + margin-bottom: 1rem; +} + +.oe-language__item { + color: #0d6efd; + background-color: transparent; +} +.oe-language__item:hover, .oe-language__item:focus { + color: #0a58ca; + background-color: transparent; +} + +.oe-header__navbar { + background-color: transparent; +} + +.oe-header__navbar .nav-link.active { + background-color: transparent; +} + +.icon--2xs { + width: 0.75rem; + height: 0.75rem; +} + +.icon--xs { + width: 1rem; + height: 1rem; +} + +.icon--s { + width: 1.25rem; + height: 1.25rem; +} + +.icon--m { + width: 1.5rem; + height: 1.5rem; +} + +.icon--l { + width: 2rem; + height: 2rem; +} + +.icon--xl { + width: 2.5rem; + height: 2.5rem; +} + +.icon--2xl { + width: 3rem; + height: 3rem; +} + +.icon--fluid { + width: 1em; + height: 1em; +} + +.icon--rotate-90 { + -webkit-transform: rotateZ(90deg); + transform: rotateZ(90deg); +} + +.icon--rotate-180 { + -webkit-transform: rotateZ(180deg); + transform: rotateZ(180deg); +} + +.icon--rotate-270 { + -webkit-transform: rotateZ(270deg); + transform: rotateZ(270deg); +} + +.icon--flip-horizontal { + -webkit-transform: scaleX(-1); + transform: scaleX(-1); +} + +.icon--flip-vertical { + -webkit-transform: scaleY(-1); + transform: scaleY(-1); +} + +a .bi, +.btn .bi { + margin: 0 0.2rem; + vertical-align: middle; +} +/*# sourceMappingURL=oe-bcl-default.css.map */ \ No newline at end of file diff --git a/assets/css/oe-bcl-default.css.map b/assets/css/oe-bcl-default.css.map new file mode 100644 index 00000000..ff368cd9 --- /dev/null +++ b/assets/css/oe-bcl-default.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["../oe-bcl-default.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_root.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_reboot.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_variables.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/vendor/_rfs.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_border-radius.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_type.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_lists.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_images.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_image.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_containers.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_container.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_breakpoints.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_grid.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_grid.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_tables.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_table-variants.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_labels.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-text.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-control.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_transition.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_gradients.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-select.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-check.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-range.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_floating-labels.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_input-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_forms.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_buttons.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_buttons.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_transitions.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_dropdown.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_caret.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_button-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_nav.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_navbar.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_card.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_accordion.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_breadcrumb.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_pagination.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_pagination.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_badge.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_alert.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_alert.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_progress.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_list-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_list-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_close.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_toasts.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_modal.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_tooltip.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_reset-text.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_popover.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_carousel.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_clearfix.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_spinners.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_offcanvas.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_colored-links.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_ratio.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_position.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_visually-hidden.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_visually-hidden.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_stretched-link.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_text-truncation.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_text-truncate.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_utilities.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/utilities/_api.scss","../../../../../node_modules/@openeuropa/bcl-theme-default/scss/_header.scss","../../../../../node_modules/@openeuropa/bcl-theme-default/scss/_icon.scss"],"names":[],"mappings":"AAAA,gBAAgB;ACAhB;EAGI,kBAAA;EAAA,oBAAA;EAAA,oBAAA;EAAA,kBAAA;EAAA,iBAAA;EAAA,oBAAA;EAAA,oBAAA;EAAA,mBAAA;EAAA,kBAAA;EAAA,kBAAA;EAAA,gBAAA;EAAA,kBAAA;EAAA,uBAAA;EAIA,qBAAA;EAAA,uBAAA;EAAA,qBAAA;EAAA,kBAAA;EAAA,qBAAA;EAAA,oBAAA;EAAA,mBAAA;EAAA,kBAAA;EAKF,qNAAA;EACA,yGAAA;EACA,yFAAA;ADYF;;AEXA;;;EAGE,sBAAA;AFcF;;AEDI;EAJJ;IAKM,uBAAA;EFKJ;AACF;;AEOA;EACE,SAAA;EACA,sCCsX4B;EChIxB,eALI;EF/OR,gBCgY4B;ED/X5B,gBCqY4B;EDpY5B,cClCS;EDoCT,sBC7CS;ED8CT,8BAAA;EACA,6CAAA;AFLF;;AEcA;EACE,cAAA;EACA,cCqb4B;EDpb5B,8BAAA;EACA,SAAA;EACA,aCob4B;AH/b9B;;AEcA;EACE,WC+R4B;AH1S9B;;AEqBA;EACE,aAAA;EACA,qBC0X4B;EDvX5B,gBC0X4B;EDzX5B,gBC0X4B;AH9Y9B;;AEwBA;EE4MQ,iCAAA;AJhOR;AI8DI;EF1CJ;IEmNQ,iBAAA;EJnON;AACF;;AEoBA;EEuMQ,iCAAA;AJvNR;AIqDI;EFrCJ;IE8MQ,eAAA;EJ1NN;AACF;;AEgBA;EEkMQ,+BAAA;AJ9MR;AI4CI;EFhCJ;IEyMQ,kBAAA;EJjNN;AACF;;AEYA;EE6LQ,iCAAA;AJrMR;AImCI;EF3BJ;IEoMQ,iBAAA;EJxMN;AACF;;AEQA;EEoLM,kBALI;AJnLV;;AESA;EE+KM,eALI;AJ/KV;;AEgBA;EACE,aAAA;EACA,mBCyK0B;AHtL5B;;AEwBA;;EAEE,yCAAA;UAAA,iCAAA;EACA,YAAA;EACA,sCAAA;UAAA,8BAAA;AFrBF;;AE2BA;EACE,mBAAA;EACA,kBAAA;EACA,oBAAA;AFxBF;;AE8BA;;EAEE,kBAAA;AF3BF;;AE8BA;;;EAGE,aAAA;EACA,mBAAA;AF3BF;;AE8BA;;;;EAIE,gBAAA;AF3BF;;AE8BA;EACE,gBC6P4B;AHxR9B;;AEgCA;EACE,qBAAA;EACA,cAAA;AF7BF;;AEmCA;EACE,gBAAA;AFhCF;;AEwCA;;EAEE,mBCsO4B;AH3Q9B;;AE6CA;EEgFM,kBALI;AJpHV;;AEgDA;EACE,cCkS4B;EDjS5B,yBCyS4B;AHtV9B;;AEsDA;;EAEE,kBAAA;EE4DI,iBALI;EFrDR,cAAA;EACA,wBAAA;AFnDF;;AEsDA;EAAM,eAAA;AFlDN;;AEmDA;EAAM,WAAA;AF/CN;;AEoDA;EACE,cChNQ;EDiNR,0BCyCwC;AH1F1C;AEmDE;EACE,cCwCsC;AHzF1C;;AE4DE;EAEE,cAAA;EACA,qBAAA;AF1DJ;;AEiEA;;;;EAIE,qCCmJ4B;ECjIxB,cALI;EFXR,+BAAA;EACA,2BAAA;AF9DF;;AEqEA;EACE,cAAA;EACA,aAAA;EACA,mBAAA;EACA,cAAA;EEII,kBALI;AJhEV;AEsEE;EEDI,kBALI;EFQN,cAAA;EACA,kBAAA;AFpEJ;;AEwEA;EERM,kBALI;EFeR,cCtQQ;EDuQR,qBAAA;AFrEF;AEwEE;EACE,cAAA;AFtEJ;;AE0EA;EACE,sBAAA;EEpBI,kBALI;EF2BR,WCnTS;EDoTT,yBC3SS;EEEP,qBAAA;ALmOJ;AEyEE;EACE,UAAA;EE3BE,cALI;EFkCN,gBCgH0B;AHvL9B;;AEgFA;EACE,gBAAA;AF7EF;;AEmFA;;EAEE,sBAAA;AFhFF;;AEwFA;EACE,oBAAA;EACA,yBAAA;AFrFF;;AEwFA;EACE,mBC8K4B;ED7K5B,sBC6K4B;ED5K5B,cCtVS;EDuVT,gBAAA;AFrFF;;AE4FA;EAEE,mBAAA;EACA,gCAAA;AF1FF;;AE6FA;;;;;;EAME,qBAAA;EACA,mBAAA;EACA,eAAA;AF1FF;;AEkGA;EACE,qBAAA;AF/FF;;AEqGA;EAEE,gBAAA;AFnGF;;AE2GA;EACE,UAAA;AFxGF;;AE6GA;;;;;EAKE,SAAA;EACA,oBAAA;EE1HI,kBALI;EFiIR,oBAAA;AF1GF;;AE8GA;;EAEE,oBAAA;AF3GF;;AEgHA;EACE,eAAA;AF7GF;;AEgHA;EAGE,iBAAA;AF/GF;AEkHE;EACE,UAAA;AFhHJ;;AEuHA;EACE,aAAA;AFpHF;;AE4HA;;;;EAIE,0BAAA;AFzHF;AE4HI;;;;EACE,eAAA;AFvHN;;AE8HA;EACE,UAAA;EACA,kBAAA;AF3HF;;AEgIA;EACE,gBAAA;AF7HF;;AEuIA;EACE,YAAA;EACA,UAAA;EACA,SAAA;EACA,SAAA;AFpIF;;AE4IA;EACE,WAAA;EACA,WAAA;EACA,UAAA;EACA,qBCG4B;EClNtB,iCAAA;EFkNN,oBAAA;AF1IF;AI1OI;EF6WJ;IEpMQ,iBAAA;EJqEN;AACF;AEuIE;EACE,WAAA;AFrIJ;;AE4IA;;;;;;;EAOE,UAAA;AFzIF;;AE4IA;EACE,YAAA;AFzIF;;AEkJA;EACE,oBAAA;EACA,6BAAA;AF/IF;;AEuJA;;;;;;;CAAA;AAWA;EACE,wBAAA;AFvJF;;AE4JA;EACE,UAAA;AFzJF;;AE+JA;EACE,aAAA;AF5JF;;AE2JA;EACE,aAAA;AF5JF;;AE2JA;EACE,aAAA;AF5JF;;AEkKA;EACE,aAAA;EACA,0BAAA;AF/JF;;AEoKA;EACE,qBAAA;AFjKF;;AEsKA;EACE,SAAA;AFnKF;;AE0KA;EACE,kBAAA;EACA,eAAA;AFvKF;;AE+KA;EACE,wBAAA;AF5KF;;AEoLA;EACE,wBAAA;AFjLF;;AM9ZA;EFyQM,kBALI;EElQR,gBHyc4B;AHxC9B;;AM5ZE;EFsQM,iCAAA;EEpQJ,gBH4bkB;EG3blB,gBH6a0B;AHd9B;AI9TI;EEpGF;IF6QM,eAAA;EJyJN;AACF;;AMvaE;EFsQM,iCAAA;EEpQJ,gBH4bkB;EG3blB,gBH6a0B;AHH9B;AIzUI;EEpGF;IF6QM,iBAAA;EJoKN;AACF;;AMlbE;EFsQM,iCAAA;EEpQJ,gBH4bkB;EG3blB,gBH6a0B;AHQ9B;AIpVI;EEpGF;IF6QM,eAAA;EJ+KN;AACF;;AM7bE;EFsQM,iCAAA;EEpQJ,gBH4bkB;EG3blB,gBH6a0B;AHmB9B;AI/VI;EEpGF;IF6QM,iBAAA;EJ0LN;AACF;;AMxcE;EFsQM,iCAAA;EEpQJ,gBH4bkB;EG3blB,gBH6a0B;AH8B9B;AI1WI;EEpGF;IF6QM,eAAA;EJqMN;AACF;;AMndE;EFsQM,iCAAA;EEpQJ,gBH4bkB;EG3blB,gBH6a0B;AHyC9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A;EAKE,kDhByiB0B;AH6iDhC;AmB/kEE;EAEE,aAAA;AnBglEJ;AmB5kEE;EACE,chB1CO;EgB4CP,UAAA;AnB6kEJ;AmBhlEE;EACE,chB1CO;EgB4CP,UAAA;AnB6kEJ;AmBhlEE;EACE,chB1CO;EgB4CP,UAAA;AnB6kEJ;AmBhlEE;EACE,chB1CO;EgB4CP,UAAA;AnB6kEJ;AmBhlEE;EACE,chB1CO;EgB4CP,UAAA;AnB6kEJ;AmBrkEE;EAEE,yBhB1DO;EgB6DP,UAAA;AnBokEJ;AmBhkEE;EACE,yBAAA;EACA,0BAAA;EACA,2BhB4f0B;UgB5f1B,0BhB4f0B;EgB3f1B,chB9DO;EkBbT,yBlBMS;EgBuEP,oBAAA;EACA,qBAAA;EACA,mBAAA;EACA,eAAA;EACA,4BhBmR0B;EgBlR1B,gBAAA;ECtEE,6IDuEF;ECvEE,qIDuEF;AnBkkEJ;AmB9kEE;EACE,yBAAA;EACA,0BAAA;EACA,2BhB4f0B;KgB5f1B,wBhB4f0B;UgB5f1B,0BhB4f0B;EgB3f1B,chB9DO;EkBbT,yBlBMS;EgBuEP,oBAAA;EACA,qBAAA;EACA,mBAAA;EACA,eAAA;EACA,4BhBmR0B;EgBlR1B,gBAAA;ECtEE,qIDuEF;AnBkkEJ;AmB9kEE;EACE,yBAAA;EACA,0BAAA;EACA,2BhB4f0B;KgB5f1B,wBhB4f0B;UgB5f1B,0BhB4f0B;EgB3f1B,chB9DO;EkBbT,yBlBMS;EgBuEP,oBAAA;EACA,qBAAA;EACA,mBAAA;EACA,eAAA;EACA,4BhBmR0B;EgBlR1B,gBAAA;ECtEE,qIDuEF;AnBkkEJ;AoBroEM;EDuDJ;ICtDM,wBAAA;IAAA,gBAAA;EpBwoEN;EmBllEA;ICtDM,gBAAA;EpBwoEN;EmBllEA;ICtDM,gBAAA;EpBwoEN;AACF;AmBpkEE;EACE,yBhB6vB8B;AHy0ClC;AmBvkEE;EACE,yBhB6vB8B;AHy0ClC;AmBvkEE;EACE,yBhB6vB8B;AHy0ClC;AmBnkEE;EACE,yBAAA;EACA,0BAAA;EACA,2BhBye0B;UgBze1B,0BhBye0B;EgBxe1B,chBjFO;EkBbT,yBlBMS;EgB0FP,oBAAA;EACA,qBAAA;EACA,mBAAA;EACA,eAAA;EACA,4BhBgQ0B;EgB/P1B,gBAAA;ECzFE,6ID0FF;EC1FE,qID0FF;AnBqkEJ;AoB3pEM;ED0EJ;ICzEM,wBAAA;IAAA,gBAAA;EpB8pEN;AACF;AmBvkEE;EACE,yBhB0uB8B;AH+1ClC;;AmBhkEA;EACE,cAAA;EACA,WAAA;EACA,mBAAA;EACA,gBAAA;EACA,gBhB2T4B;EgB1T5B,chB5GS;EgB6GT,6BAAA;EACA,yBAAA;EACA,mBAAA;AnBmkEF;AmBjkEE;EAEE,gBAAA;EACA,eAAA;AnBkkEJ;;AmBvjEA;EACE,wChBkkBsC;EgBjkBtC,uBAAA;EfmJI,mBALI;EC7QN,qBAAA;AL2rEJ;AmBxjEE;EACE,uBAAA;EACA,wBAAA;EACA,0BhB6b0B;UgB7b1B,yBhB6b0B;AH6nD9B;AmB7jEE;EACE,uBAAA;EACA,wBAAA;EACA,0BhB6b0B;KgB7b1B,uBhB6b0B;UgB7b1B,yBhB6b0B;AH6nD9B;AmB7jEE;EACE,uBAAA;EACA,wBAAA;EACA,0BhB6b0B;KgB7b1B,uBhB6b0B;UgB7b1B,yBhB6b0B;AH6nD9B;AmBvjEE;EACE,uBAAA;EACA,wBAAA;EACA,0BhBub0B;UgBvb1B,yBhBub0B;AHkoD9B;;AmBrjEA;EACE,sChBgjBsC;EgB/iBtC,oBAAA;EfgII,kBALI;EC7QN,qBAAA;AL4sEJ;AmBtjEE;EACE,oBAAA;EACA,qBAAA;EACA,wBhB8a0B;UgB9a1B,uBhB8a0B;AH0oD9B;AmB3jEE;EACE,oBAAA;EACA,qBAAA;EACA,wBhB8a0B;KgB9a1B,qBhB8a0B;UgB9a1B,uBhB8a0B;AH0oD9B;AmB3jEE;EACE,oBAAA;EACA,qBAAA;EACA,wBhB8a0B;KgB9a1B,qBhB8a0B;UgB9a1B,uBhB8a0B;AH0oD9B;AmBrjEE;EACE,oBAAA;EACA,qBAAA;EACA,wBhBwa0B;UgBxa1B,uBhBwa0B;AH+oD9B;;AmB/iEE;EACE,yChBuhBoC;AH2hDxC;AmB/iEE;EACE,wChBohBoC;AH6hDxC;AmB9iEE;EACE,sChBihBoC;AH+hDxC;;AmB3iEA;EACE,eAAA;EACA,YAAA;EACA,iBhB8X4B;AHgrD9B;AmB5iEE;EACE,eAAA;AnB8iEJ;AmB3iEE;EACE,aAAA;Ed/LA,sBAAA;AL6uEJ;AmB1iEE;EACE,aAAA;EdpMA,sBAAA;ALivEJ;;AsB/vEA;EACE,cAAA;EACA,WAAA;EACA,0CAAA;EAEA,uCAAA;ElB2RI,eALI;EkBnRR,gBnBoa4B;EmBna5B,gBnBya4B;EmBxa5B,cnBES;EmBDT,sBnBRS;EmBST,iPAAA;EACA,4BAAA;EACA,yCnBgxBkC;EmB/wBlC,0BnBgxBkC;EmB/wBlC,yBAAA;EjBFE,sBAAA;EeHE,wEEQJ;EACA,wBAAA;KAAA,qBAAA;UAAA,gBAAA;AtB+vEF;AoBpwEM;EEfN;IFgBQ,gBAAA;EpBuwEN;AACF;AsBlwEE;EACE,qBnBwqBoC;EmBvqBpC,UAAA;EAKE,kDnBixB4B;AH++ClC;AsB5vEE;EAEE,sBnBkiB0B;EmBjiB1B,sBAAA;AtB6vEJ;AsB1vEE;EAEE,yBnBpCO;AH+xEX;AsBtvEE;EACE,kBAAA;EACA,0BAAA;AtBwvEJ;;AsBpvEA;EACE,oBnB2hB4B;EmB1hB5B,uBnB0hB4B;EmBzhB5B,oBnB0hB4B;ECjTxB,mBALI;AJohEV;;AsBpvEA;EACE,mBnBwhB4B;EmBvhB5B,sBnBuhB4B;EmBthB5B,kBnBuhB4B;ECrTxB,kBALI;AJ2hEV;;AuBvzEA;EACE,cAAA;EACA,kBpBqtBwC;EoBptBxC,mBpBqtBwC;EoBptBxC,uBpBqtBwC;AHqmD1C;AuBxzEE;EACE,WAAA;EACA,mBAAA;AvB0zEJ;;AuBtzEA;EACE,UpBysBwC;EoBxsBxC,WpBwsBwC;EoBvsBxC,kBAAA;EACA,mBAAA;EACA,sBpBbS;EoBcT,4BAAA;EACA,2BAAA;EACA,wBAAA;EACA,qCpB4sBwC;EoB3sBxC,wBAAA;KAAA,qBAAA;UAAA,gBAAA;EACA,iCAAA;UAAA,mBAAA;AvByzEF;AuBtzEE;ElBXE,qBAAA;ALo0EJ;AuBrzEE;EAEE,kBpBmsBsC;AHmnD1C;AuBnzEE;EACE,+BpB0rBsC;UoB1rBtC,uBpB0rBsC;AH2nD1C;AuBlzEE;EACE,qBpBwpBoC;EoBvpBpC,UAAA;EACA,kDpBqiB4B;AH+wDhC;AuBjzEE;EACE,yBpBZM;EoBaN,qBpBbM;AHg0EV;AuBjzEI;EAII,+OAAA;AvBgzER;AuB5yEI;EAII,uJAAA;AvB2yER;AuBtyEE;EACE,yBpBjCM;EoBkCN,qBpBlCM;EoBuCJ,yOAAA;AvBoyEN;AuBhyEE;EACE,oBAAA;EACA,oBAAA;UAAA,YAAA;EACA,YpBkqBuC;AHgoD3C;AuB3xEI;EACE,YpB0pBqC;AHmoD3C;;AuB/wEA;EACE,mBpBqpBgC;AH6nDlC;AuBhxEE;EACE,UpBipB8B;EoBhpB9B,mBAAA;EACA,wKAAA;EACA,gCAAA;ElB9FA,kBAAA;EeHE,iDGmGF;AvBkxEJ;AoBj3EM;EGyFJ;IHxFM,gBAAA;EpBo3EN;AACF;AuBrxEI;EACE,0JAAA;AvBuxEN;AuBpxEI;EACE,iCpBgpB4B;EoB3oB1B,uJAAA;AvBkxER;;AuB5wEA;EACE,qBAAA;EACA,kBpBmnBgC;AH4pDlC;;AuB5wEA;EACE,kBAAA;EACA,sBAAA;EACA,oBAAA;AvB+wEF;AuB3wEI;EACE,oBAAA;EACA,oBAAA;UAAA,YAAA;EACA,apBuewB;AHsyD9B;;AwB35EA;EACE,WAAA;EACA,cAAA;EACA,UAAA;EACA,6BAAA;EACA,wBAAA;KAAA,qBAAA;UAAA,gBAAA;AxB85EF;AwB55EE;EACE,UAAA;AxB85EJ;AwB15EI;EAA0B,kErB4zBa;AHimD3C;AwB55EI;EAA0B,kErB2zBa;AHomD3C;AwB55EE;EACE,SAAA;AxB85EJ;AwB35EE;EACE,WrB6yBuC;EqB5yBvC,YrB4yBuC;EqB3yBvC,oBAAA;EHzBF,yBlBkCQ;EqBPN,SrB4yBuC;EExzBvC,mBAAA;EeHE,oHIkBF;EJlBE,4GIkBF;EACA,wBAAA;UAAA,gBAAA;AxB45EJ;AoB36EM;EIMJ;IJLM,wBAAA;IAAA,gBAAA;EpB86EN;AACF;AwB/5EI;EHjCF,yBlB40ByC;AHunD3C;AwB75EE;EACE,WrBsxB8B;EqBrxB9B,crBsxB8B;EqBrxB9B,kBAAA;EACA,erBqxB8B;EqBpxB9B,yBrBpCO;EqBqCP,yBAAA;EnB7BA,mBAAA;AL67EJ;AwB35EE;EACE,WrBkxBuC;EqBjxBvC,YrBixBuC;EkBp0BzC,yBlBkCQ;EqBmBN,SrBkxBuC;EExzBvC,mBAAA;EeHE,iHI4CF;EJ5CE,4GI4CF;EACA,qBAAA;OAAA,gBAAA;AxB45EJ;AoBr8EM;EIiCJ;IJhCM,qBAAA;IAAA,gBAAA;EpBw8EN;AACF;AwB/5EI;EH3DF,yBlB40ByC;AHipD3C;AwB75EE;EACE,WrB4vB8B;EqB3vB9B,crB4vB8B;EqB3vB9B,kBAAA;EACA,erB2vB8B;EqB1vB9B,yBrB9DO;EqB+DP,yBAAA;EnBvDA,mBAAA;ALu9EJ;AwB35EE;EACE,oBAAA;AxB65EJ;AwB35EI;EACE,yBrBtEK;AHm+EX;AwB15EI;EACE,yBrB1EK;AHs+EX;;AyBn/EA;EACE,kBAAA;AzBs/EF;AyBp/EE;;EAEE,0BtBu1B8B;EsBt1B9B,iBtBu1B8B;AH+pDlC;AyBn/EE;EACE,kBAAA;EACA,MAAA;EACA,OAAA;EACA,YAAA;EACA,qBAAA;EACA,oBAAA;EACA,6BAAA;EACA,6BAAA;UAAA,qBAAA;ELDE,wEKEF;ELFE,gEKEF;ELFE,oGKEF;AzBq/EJ;AoBn/EM;EKXJ;ILYM,gBAAA;EpBs/EN;AACF;AyBt/EE;EACE,qBAAA;AzBw/EJ;AyBt/EI;EACE,kBAAA;AzBw/EN;AyBz/EI;EACE,kBAAA;AzBw/EN;AyBz/EI;EACE,kBAAA;AzBw/EN;AyBz/EI;EACE,kBAAA;AzBw/EN;AyBz/EI;EACE,kBAAA;AzBw/EN;AyBr/EI;EAEE,qBtBi0B4B;EsBh0B5B,wBtBi0B4B;AHqrDlC;AyBz/EI;EAEE,qBtBi0B4B;EsBh0B5B,wBtBi0B4B;AHqrDlC;AyBz/EI;EAEE,qBtBi0B4B;EsBh0B5B,wBtBi0B4B;AHqrDlC;AyBn/EI;EACE,qBtB4zB4B;EsB3zB5B,wBtB4zB4B;AHyrDlC;AyBj/EE;EACE,qBtBszB8B;EsBrzB9B,wBtBszB8B;AH6rDlC;AyB7+EI;EACE,atBgzB4B;EsB/yB5B,8DtBgzB4B;AHisDlC;AyBn/EI;EACE,atBgzB4B;EsB/yB5B,8DtBgzB4B;AHisDlC;AyBn/EI;;;EACE,atBgzB4B;EsB/yB5B,sEtBgzB4B;UsBhzB5B,8DtBgzB4B;AHisDlC;AyB5+EI;EACE,atByyB4B;EsBxyB5B,sEtByyB4B;UsBzyB5B,8DtByyB4B;AHqsDlC;;A0BpiFA;EACE,kBAAA;EACA,oBAAA;EAAA,aAAA;EACA,mBAAA;MAAA,eAAA;EACA,uBAAA;MAAA,oBAAA;EACA,WAAA;A1BuiFF;A0BriFE;;EAEE,kBAAA;EACA,kBAAA;MAAA,cAAA;EACA,SAAA;EACA,YAAA;A1BuiFJ;A0BniFE;;EAEE,UAAA;A1BqiFJ;A0B/hFE;EACE,kBAAA;EACA,UAAA;A1BiiFJ;A0B/hFI;EACE,UAAA;A1BiiFN;;A0BthFA;EACE,oBAAA;EAAA,aAAA;EACA,sBAAA;MAAA,mBAAA;EACA,yBAAA;EtBsPI,eALI;EsB/OR,gBvBgY4B;EuB/X5B,gBvBqY4B;EuBpY5B,cvBlCS;EuBmCT,kBAAA;EACA,mBAAA;EACA,yBvB5CS;EuB6CT,yBAAA;ErBpCE,sBAAA;AL8jFJ;;A0BhhFA;;;;EAIE,oBAAA;EtBgOI,kBALI;EC7QN,qBAAA;ALukFJ;;A0BhhFA;;;;EAIE,uBAAA;EtBuNI,mBALI;EC7QN,qBAAA;ALglFJ;;A0BhhFA;;EAEE,mBAAA;A1BmhFF;;A0BtgFI;;ErB/DA,0BAAA;EACA,6BAAA;AL0kFJ;A0BrgFI;;ErBtEA,0BAAA;EACA,6BAAA;AL+kFJ;A0B//EE;EACE,iBAAA;ErBpEA,yBAAA;EACA,4BAAA;ALskFJ;;A2B/lFE;EACE,aAAA;EACA,WAAA;EACA,mBxB2nBoC;EClXlC,kBALI;EuBjQN,cxBw1BqB;AHywDzB;;A2B9lFE;EACE,kBAAA;EACA,SAAA;EACA,UAAA;EACA,aAAA;EACA,eAAA;EACA,uBAAA;EACA,kBAAA;EvB4PE,mBALI;EuBpPN,WAvBc;EAwBd,wCAvBiB;EtBHjB,sBAAA;AL2nFJ;;A2B5lFI;;;;EAEE,cAAA;A3BimFN;;A2B/oFI;EAoDE,qBxB6zBmB;EwB1zBjB,oCxBipBgC;EwBhpBhC,4PAAA;EACA,4BAAA;EACA,2DAAA;EACA,gEAAA;A3B6lFR;A2B1lFM;EACE,qBxBkzBiB;EwBjzBjB,iDA/Ca;A3B2oFrB;;A2B5pFI;EAyEI,oCxB+nBgC;EwB9nBhC,kFAAA;A3BulFR;;A2BjqFI;EAiFE,qBxBgyBmB;AHozDzB;A2BjlFQ;EAEE,uBxB4sB8B;EwB3sB9B,6dAAA;EACA,+DAAA;EACA,2EAAA;A3BklFV;A2B9kFM;EACE,qBxBmxBiB;EwBlxBjB,iDA9Ea;A3B8pFrB;;A2B/qFI;EAsGE,qBxB2wBmB;AHk0DzB;A2B3kFM;EACE,yBxBwwBiB;AHq0DzB;A2B1kFM;EACE,iDA5Fa;A3BwqFrB;A2BzkFM;EACE,cxBgwBiB;AH20DzB;;A2BtkFI;EACE,kBAAA;A3BykFN;;A2BhsFI;;;EA+HI,UAAA;A3BukFR;A2BnkFM;;;EACE,UAAA;A3BukFR;;A2BxrFE;EACE,aAAA;EACA,WAAA;EACA,mBxB2nBoC;EClXlC,kBALI;EuBjQN,cxBw1BqB;AHk2DzB;;A2BvrFE;EACE,kBAAA;EACA,SAAA;EACA,UAAA;EACA,aAAA;EACA,eAAA;EACA,uBAAA;EACA,kBAAA;EvB4PE,mBALI;EuBpPN,WAvBc;EAwBd,wCAvBiB;EtBHjB,sBAAA;ALotFJ;;A2BrrFI;;;;EAEE,cAAA;A3B0rFN;;A2BxuFI;EAoDE,qBxB6zBmB;EwB1zBjB,oCxBipBgC;EwBhpBhC,4UAAA;EACA,4BAAA;EACA,2DAAA;EACA,gEAAA;A3BsrFR;A2BnrFM;EACE,qBxBkzBiB;EwBjzBjB,iDA/Ca;A3BouFrB;;A2BrvFI;EAyEI,oCxB+nBgC;EwB9nBhC,kFAAA;A3BgrFR;;A2B1vFI;EAiFE,qBxBgyBmB;AH64DzB;A2B1qFQ;EAEE,uBxB4sB8B;EwB3sB9B,6iBAAA;EACA,+DAAA;EACA,2EAAA;A3B2qFV;A2BvqFM;EACE,qBxBmxBiB;EwBlxBjB,iDA9Ea;A3BuvFrB;;A2BxwFI;EAsGE,qBxB2wBmB;AH25DzB;A2BpqFM;EACE,yBxBwwBiB;AH85DzB;A2BnqFM;EACE,iDA5Fa;A3BiwFrB;A2BlqFM;EACE,cxBgwBiB;AHo6DzB;;A2B/pFI;EACE,kBAAA;A3BkqFN;;A2BzxFI;;;EAiII,UAAA;A3B8pFR;A2B5pFM;;;EACE,UAAA;A3BgqFR;;A4BtyFA;EACE,qBAAA;EAEA,gBzB0a4B;EyBza5B,gBzB+a4B;EyB9a5B,czBQS;EyBPT,kBAAA;EACA,qBAAA;EAEA,sBAAA;EACA,eAAA;EACA,yBAAA;KAAA,sBAAA;MAAA,qBAAA;UAAA,iBAAA;EACA,6BAAA;EACA,6BAAA;EC8GA,yBAAA;EzBsKI,eALI;EC7QN,sBAAA;EeHE,qIQGJ;A5ByyFF;AoBxyFM;EQhBN;IRiBQ,gBAAA;EpB2yFN;AACF;A4B5yFE;EACE,czBLO;AHmzFX;A4B1yFE;EAEE,UAAA;EACA,kDzBsjB4B;AHqvEhC;A4B7xFE;EAGE,oBAAA;EACA,azB4kB0B;AHitE9B;;A4BjxFE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AHkwFf;A6BzzFE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7B40FjB;A6BxzFE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,iDAAA;A7BqzFN;A6BjzFE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7Bo1FlB;A6B3yFI;EAKI,iDAAA;A7ByyFR;A6BpyFE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AH0xFf;;A4B/yFE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AHgyFf;A6Bv1FE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7B02FjB;A6Bt1FE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,kDAAA;A7Bm1FN;A6B/0FE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7Bk3FlB;A6Bz0FI;EAKI,kDAAA;A7Bu0FR;A6Bl0FE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AHwzFf;;A4B70FE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AH8zFf;A6Br3FE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7Bw4FjB;A6Bp3FE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,iDAAA;A7Bi3FN;A6B72FE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7Bg5FlB;A6Bv2FI;EAKI,iDAAA;A7Bq2FR;A6Bh2FE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AHs1Ff;;A4B32FE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AH41Ff;A6Bn5FE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7Bs6FjB;A6Bl5FE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,iDAAA;A7B+4FN;A6B34FE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7B86FlB;A6Br4FI;EAKI,iDAAA;A7Bm4FR;A6B93FE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AHo3Ff;;A4Bz4FE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AH03Ff;A6Bj7FE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7Bo8FjB;A6Bh7FE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,gDAAA;A7B66FN;A6Bz6FE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7B48FlB;A6Bn6FI;EAKI,gDAAA;A7Bi6FR;A6B55FE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AHk5Ff;;A4Bv6FE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AHw5Ff;A6B/8FE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7Bk+FjB;A6B98FE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,gDAAA;A7B28FN;A6Bv8FE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7B0+FlB;A6Bj8FI;EAKI,gDAAA;A7B+7FR;A6B17FE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AHg7Ff;;A4Br8FE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AHs7Ff;A6B7+FE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7BggGjB;A6B5+FE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,kDAAA;A7By+FN;A6Br+FE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7BwgGlB;A6B/9FI;EAKI,kDAAA;A7B69FR;A6Bx9FE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AH88Ff;;A4Bn+FE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AHo9Ff;A6B3gGE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7B8hGjB;A6B1gGE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,+CAAA;A7BugGN;A6BngGE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7BsiGlB;A6B7/FI;EAKI,+CAAA;A7B2/FR;A6Bt/FE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AH4+Ff;;A4B3/FE;ECmBA,c1BJa;E0BKb,qB1BLa;AHi/Ff;A6B1+FE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AHs/Ff;A6Bz+FE;EAEE,iDAAA;A7B0+FJ;A6Bv+FE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AH8/Ff;A6Bn+FI;EAKI,iDAAA;A7Bi+FR;A6B59FE;EAEE,c1BvCW;E0BwCX,6BAAA;A7B69FJ;;A4BphGE;ECmBA,c1BJa;E0BKb,qB1BLa;AH0gGf;A6BngGE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AH+gGf;A6BlgGE;EAEE,kDAAA;A7BmgGJ;A6BhgGE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AHuhGf;A6B5/FI;EAKI,kDAAA;A7B0/FR;A6Br/FE;EAEE,c1BvCW;E0BwCX,6BAAA;A7Bs/FJ;;A4B7iGE;ECmBA,c1BJa;E0BKb,qB1BLa;AHmiGf;A6B5hGE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AHwiGf;A6B3hGE;EAEE,gDAAA;A7B4hGJ;A6BzhGE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AHgjGf;A6BrhGI;EAKI,gDAAA;A7BmhGR;A6B9gGE;EAEE,c1BvCW;E0BwCX,6BAAA;A7B+gGJ;;A4BtkGE;ECmBA,c1BJa;E0BKb,qB1BLa;AH4jGf;A6BrjGE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AHikGf;A6BpjGE;EAEE,iDAAA;A7BqjGJ;A6BljGE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AHykGf;A6B9iGI;EAKI,iDAAA;A7B4iGR;A6BviGE;EAEE,c1BvCW;E0BwCX,6BAAA;A7BwiGJ;;A4B/lGE;ECmBA,c1BJa;E0BKb,qB1BLa;AHqlGf;A6B9kGE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AH0lGf;A6B7kGE;EAEE,gDAAA;A7B8kGJ;A6B3kGE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AHkmGf;A6BvkGI;EAKI,gDAAA;A7BqkGR;A6BhkGE;EAEE,c1BvCW;E0BwCX,6BAAA;A7BikGJ;;A4BxnGE;ECmBA,c1BJa;E0BKb,qB1BLa;AH8mGf;A6BvmGE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AHmnGf;A6BtmGE;EAEE,gDAAA;A7BumGJ;A6BpmGE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AH2nGf;A6BhmGI;EAKI,gDAAA;A7B8lGR;A6BzlGE;EAEE,c1BvCW;E0BwCX,6BAAA;A7B0lGJ;;A4BjpGE;ECmBA,c1BJa;E0BKb,qB1BLa;AHuoGf;A6BhoGE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AH4oGf;A6B/nGE;EAEE,kDAAA;A7BgoGJ;A6B7nGE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AHopGf;A6BznGI;EAKI,kDAAA;A7BunGR;A6BlnGE;EAEE,c1BvCW;E0BwCX,6BAAA;A7BmnGJ;;A4B1qGE;ECmBA,c1BJa;E0BKb,qB1BLa;AHgqGf;A6BzpGE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AHqqGf;A6BxpGE;EAEE,+CAAA;A7BypGJ;A6BtpGE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AH6qGf;A6BlpGI;EAKI,+CAAA;A7BgpGR;A6B3oGE;EAEE,c1BvCW;E0BwCX,6BAAA;A7B4oGJ;;A4BvrGA;EACE,gBzBmW4B;EyBlW5B,czBzCQ;EyB0CR,0BzBgNwC;AH0+F1C;A4BxrGE;EACE,czB+MsC;AH2+F1C;A4BlrGE;EAEE,czB/EO;AHkwGX;;A4BxqGA;ECuBE,oBAAA;EzBsKI,kBALI;EC7QN,qBAAA;ALmwGJ;;A4B1qGA;ECmBE,uBAAA;EzBsKI,mBALI;EC7QN,qBAAA;ALywGJ;;A8B5xGA;EVgBM,gCUfJ;A9B+xGF;AoB5wGM;EUpBN;IVqBQ,gBAAA;EpB+wGN;AACF;A8BlyGE;EACE,UAAA;A9BoyGJ;;A8B9xGE;EACE,aAAA;A9BiyGJ;;A8B7xGA;EACE,SAAA;EACA,gBAAA;EVDI,6BUEJ;A9BgyGF;AoB9xGM;EULN;IVMQ,gBAAA;EpBiyGN;AACF;;A+BtzGA;;;;EAIE,kBAAA;A/ByzGF;;A+BtzGA;EACE,mBAAA;A/ByzGF;AgCpyGI;EACE,qBAAA;EACA,oB7BwWwB;E6BvWxB,uB7BsWwB;E6BrWxB,WAAA;EAhCJ,uBAAA;EACA,qCAAA;EACA,gBAAA;EACA,oCAAA;AhCu0GF;AgClxGI;EACE,cAAA;AhCoxGN;;A+B/zGA;EACE,kBAAA;EACA,a5Bu3BkC;E4Bt3BlC,aAAA;EACA,gB5B48BkC;E4B38BlC,iBAAA;EACA,SAAA;E3B+QI,eALI;E2BxQR,c5BPS;E4BQT,gBAAA;EACA,gBAAA;EACA,sB5BnBS;E4BoBT,4BAAA;EACA,qCAAA;E1BVE,sBAAA;AL60GJ;A+B/zGE;EACE,SAAA;EACA,OAAA;EACA,oB5B+7BgC;AHk4EpC;;A+BrzGI;EACE,oBAAA;A/BwzGN;A+BtzGM;EACE,WAAA;EACA,OAAA;A/BwzGR;;A+BpzGI;EACE,kBAAA;A/BuzGN;A+BrzGM;EACE,QAAA;EACA,UAAA;A/BuzGR;;AYtzGI;EmBfA;IACE,oBAAA;E/By0GJ;E+Bv0GI;IACE,WAAA;IACA,OAAA;E/By0GN;;E+Br0GE;IACE,kBAAA;E/Bw0GJ;E+Bt0GI;IACE,QAAA;IACA,UA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AAA,iBAAA;IACA,oBAAA;QAAA,2BAAA;EnC40HN;EmC10HM;IACE,uBAAA;QAAA,mBAAA;EnC40HR;EmC10HQ;IACE,kBAAA;EnC40HV;EmCz0HQ;IACE,qBhCkwBwB;IgCjwBxB,oBhCiwBwB;EH0kGlC;EmCv0HM;IACE,iBAAA;EnCy0HR;EmCt0HM;IACE,+BAAA;IAAA,wBAAA;IACA,6BAAA;QAAA,gBAAA;EnCw0HR;EmCr0HM;IACE,aAAA;EnCu0HR;AACF;AmCp2HI;EAEI,qBAAA;MAAA,iBAAA;EACA,oBAAA;MAAA,2BAAA;AnCq2HR;AmCn2HQ;EACE,uBAAA;MAAA,mBAAA;AnCq2HV;AmCn2HU;EACE,kBAAA;AnCq2HZ;AmCl2HU;EACE,qBhCkwBwB;EgCjwBxB,oBhCiwBwB;AHmmGpC;AmCh2HQ;EACE,iBAAA;AnCk2HV;AmC/1HQ;EACE,+BAAA;EAAA,wBAAA;EACA,6BAAA;MAAA,gBAAA;AnCi2HV;AmC91HQ;EACE,aAAA;AnCg2HV;;AmCj1HE;EACE,yBhC8vBgC;AHslGpC;AmCl1HI;EAEE,yBhC0vB8B;AHylGpC;AmC90HI;EACE,0BhCkvB8B;AH8lGpC;AmC90HM;EAEE,yBhC+uB4B;AHgmGpC;AmC50HM;EACE,yBhC6uB4B;AHimGpC;AmC10HI;;EAEE,yBhCsuB8B;AHsmGpC;AmCx0HE;EACE,0BhC+tBgC;EgC9tBhC,gChCmuBgC;AHumGpC;AmCv0HE;EACE,6PAAA;AnCy0HJ;AmCt0HE;EACE,0BhCstBgC;AHknGpC;AmCt0HI;;;EAGE,yBhCmtB8B;AHqnGpC;;AmCj0HE;EACE,WhC5PO;AHgkIX;AmCl0HI;EAEE,WhChQK;AHmkIX;AmC9zHI;EACE,gChCwrB8B;AHwoGpC;AmC9zHM;EAEE,gChCqrB4B;AH0oGpC;AmC5zHM;EACE,gChCmrB4B;AH2oGpC;AmC1zHI;;EAEE,WhCpRK;AHglIX;AmCxzHE;EACE,gChCqqBgC;EgCpqBhC,sChCyqBgC;AHipGpC;AmCvzHE;EACE,mQAAA;AnCyzHJ;AmCtzHE;EACE,gChC4pBgC;AH4pGpC;AmCvzHI;;;EAGE,WhCtSK;AH+lIX;;AoCnmIA;EACE,kBAAA;EACA,oBAAA;EAAA,aAAA;EACA,0BAAA;MAAA,sBAAA;EACA,YAAA;EAEA,qBAAA;EACA,sBjCHS;EiCIT,2BAAA;EACA,sCAAA;E/BME,sBAAA;ALgmIJ;AoCnmIE;EACE,eAAA;EACA,cAAA;ApCqmIJ;AoClmIE;EACE,mBAAA;EACA,sBAAA;ApComIJ;AoClmII;EACE,mBAAA;E/BEF,2CAAA;EACA,4CAAA;ALmmIJ;AoClmII;EACE,sBAAA;E/BWF,+CAAA;EACA,8CAAA;AL0lIJ;AoC/lIE;;EAEE,aAAA;ApCimIJ;;AoC7lIA;EAGE,kBAAA;MAAA,cAAA;EACA,kBAAA;ApC8lIF;;AoC1lIA;EACE,qBjCwgCkC;AHqlGpC;;AoC1lIA;EACE,oBAAA;EACA,gBAAA;ApC6lIF;;AoC1lIA;EACE,gBAAA;ApC6lIF;;AoCzlIE;EACE,qBAAA;ApC4lIJ;AoCzlIE;EACE,iBjCkLK;AHy6HT;;AoCnlIA;EACE,oBAAA;EACA,gBAAA;EAEA,qCjCi/BkC;EiCh/BlC,6CAAA;ApCqlIF;AoCnlIE;E/BnEE,0DAAA;ALypIJ;;AoCjlIA;EACE,oBAAA;EAEA,qCjCs+BkC;EiCr+BlC,0CAAA;ApCmlIF;AoCjlIE;E/B9EE,0DAAA;ALkqIJ;;AoC1kIA;EACE,qBAAA;EACA,sBAAA;EACA,oBAAA;EACA,gBAAA;ApC6kIF;;AoCnkIA;EACE,qBAAA;EACA,oBAAA;ApCskIF;;AoClkIA;EACE,kBAAA;EACA,MAAA;EACA,QAAA;EACA,SAAA;EACA,OAAA;EACA,ajCoHO;EEtOL,kCAAA;ALwrIJ;;AoClkIA;;;EAGE,WAAA;ApCqkIF;;AoClkIA;;E/BnHI,2CAAA;EACA,4CAAA;AL0rIJ;;AoCnkIA;;E/B1GI,+CAAA;EACA,8CAAA;ALkrIJ;;AoC5jIE;EACE,sBjCw6BgC;AHupGpC;AYlqII;EwB+FJ;IAQI,oBAAA;IAAA,aAAA;IACA,uBAAA;QAAA,mBAAA;EpC+jIF;EoC5jIE;IAEE,gBAAA;QAAA,YAAA;IACA,gBAAA;EpC6jIJ;EoC3jII;IACE,cAAA;IACA,cAAA;EpC6jIN;EoCxjIM;I/BnJJ,0BAAA;IACA,6BAAA;EL8sIF;EoCzjIQ;;IAGE,0BAAA;EpC0jIV;EoCxjIQ;;IAGE,6BAAA;EpCyjIV;EoCrjIM;I/BpJJ,yBAAA;IACA,4BAAA;EL4sIF;EoCtjIQ;;IAGE,yBAAA;EpCujIV;EoCrjIQ;;IAGE,4BAAA;EpCsjIV;AACF;;AqCnwIA;EACE,kBAAA;EACA,oBAAA;EAAA,aAAA;EACA,sBAAA;MAAA,mBAAA;EACA,WAAA;EACA,qBAAA;EjC4RI,eALI;EiCrRR,clCMS;EkCLT,gBAAA;EACA,sBlCLS;EkCMT,SAAA;EhCKE,gBAAA;EgCHF,qBAAA;EjBAI,+JiBCJ;ArCswIF;AoBnwIM;EiBhBN;IjBiBQ,gBAAA;EpBswIN;AACF;AqCzwIE;EACE,clC8kCsC;EkC7kCtC,yBlC4kCsC;EkC3kCtC,+CAAA;ArC2wIJ;AqCzwII;EACE,iSAAA;EACA,kClCilCoC;UkCjlCpC,0BlCilCoC;AH0rG1C;AqCtwIE;EACE,oBAAA;MAAA,cAAA;EACA,clCskCsC;EkCrkCtC,elCqkCsC;EkCpkCtC,iBAAA;EACA,WAAA;EACA,iSAAA;EACA,4BAAA;EACA,wBlCgkCsC;EiBvlCpC,8CiBwBF;EjBxBE,sCiBwBF;EjBxBE,0EiBwBF;ArCwwIJ;AoB5xIM;EiBWJ;IjBVM,gBAAA;EpB+xIN;AACF;AqC1wIE;EACE,UAAA;ArC4wIJ;AqCzwIE;EACE,UAAA;EACA,qBlCmpBoC;EkClpBpC,UAAA;EACA,kDlCgiB4B;AH2uHhC;;AqCvwIA;EACE,gBAAA;ArC0wIF;;AqCvwIA;EACE,sBlCpDS;EkCqDT,sCAAA;ArC0wIF;AqCxwIE;EhCnCE,+BAAA;EACA,gCAAA;AL8yIJ;AqCzwII;EhCtCA,2CAAA;EACA,4CAAA;ALkzIJ;AqCxwIE;EACE,aAAA;ArC0wIJ;AqCtwIE;EhClCE,mCAAA;EACA,kCAAA;AL2yIJ;AqCtwIM;EhCtCF,+CAAA;EACA,8CAAA;AL+yIJ;AqCrwII;EhC3CA,mCAAA;EACA,kCAAA;ALmzIJ;;AqCnwIA;EACE,qBAAA;ArCswIF;;AqC7vIE;EACE,eAAA;ArCgwIJ;AqC7vIE;EACE,eAAA;EACA,cAAA;EhCxFA,gBAAA;ALw1IJ;AqC7vII;EAAgB,aAAA;ArCgwIpB;AqC/vII;EAAe,gBAAA;ArCkwInB;AqChwII;EhC9FA,gBAAA;ALi2IJ;;AsCp3IA;EACE,oBAAA;EAAA,aAAA;EACA,mBAAA;MAAA,eAAA;EACA,YAAA;EACA,mBnC60CkC;EmC30ClC,gBAAA;AtCs3IF;;AsC/2IE;EACE,oBnCk0CgC;AHgjGpC;AsCh3II;EACE,WAAA;EACA,qBnC8zC8B;EmC7zC9B,cnCLK;EmCML,uFAAA;AtCk3IN;AsC92IE;EACE,cnCXO;AH23IX;;AuCz4IA;EACE,oBAAA;EAAA,aAAA;EhCGA,eAAA;EACA,gBAAA;AP04IF;;AuC14IA;EACE,kBAAA;EACA,cAAA;EACA,cpC8BQ;EoC7BR,qBAAA;EACA,sBpCFS;EoCGT,yBAAA;EnBKI,qImBJJ;AvC64IF;AoBr4IM;EmBfN;InBgBQ,gBAAA;EpBw4IN;AACF;AuCh5IE;EACE,UAAA;EACA,cpCkRsC;EoChRtC,yBpCRO;EoCSP,qBpCRO;AHy5IX;AuC94IE;EACE,UAAA;EACA,cpC0QsC;EoCzQtC,yBpCfO;EoCgBP,UpCygCgC;EoCxgChC,kDpCwjB4B;AHw1HhC;;AuC34IE;EACE,iBpC4/BgC;AHk5GpC;AuC34IE;EACE,UAAA;EACA,WpC9BO;EkBJT,yBlBkCQ;EoCEN,qBpCFM;AH+4IV;AuC14IE;EACE,cpC9BO;EoC+BP,oBAAA;EACA,sBpCtCO;EoCuCP,qBpCpCO;AHg7IX;;AwCv7IE;EACE,yBAAA;AxC07IJ;;AwCn7IQ;EnCqCJ,+BAAA;EACA,kCAAA;ALk5IJ;AwCl7IQ;EnCiBJ,gCAAA;EACA,mCAAA;ALo6IJ;;AwCp8IE;EACE,uBAAA;EpCgSE,kBALI;AJ6qIV;AwCj8IQ;EnCqCJ,8BAAA;EACA,iCAAA;AL+5IJ;AwC/7IQ;EnCiBJ,+BAAA;EACA,kCAAA;ALi7IJ;;AwCj9IE;EACE,uBAAA;EpCgSE,mBALI;AJ0rIV;AwC98IQ;EnCqCJ,8BAAA;EACA,iCAAA;AL46IJ;AwC58IQ;EnCiBJ,+BAAA;EACA,kCAAA;AL87IJ;;AyC79IA;EACE,qBAAA;EACA,sBAAA;ErC8RI,iBALI;EqCvRR,gBtCya4B;EsCxa5B,cAAA;EACA,WtCHS;EsCIT,kBAAA;EACA,mBAAA;EACA,wBAAA;EpCKE,sBAAA;AL49IJ;AyC59IE;EACE,aAAA;AzC89IJ;;AyCz9IA;EACE,kBAAA;EACA,SAAA;AzC49IF;;A0Cn/IA;EACE,kBAAA;EACA,kBAAA;EACA,mBvCuvC8B;EuCtvC9B,6BAAA;ErCWE,sBAAA;AL4+IJ;;A0Cl/IA;EAEE,cAAA;A1Co/IF;;A0Ch/IA;EACE,gBvC8Z4B;AHqlI9B;;A0C3+IA;EACE,mBvCwuC8B;AHswGhC;A0C3+IE;EACE,kBAAA;EACA,MAAA;EACA,QAAA;EACA,UAAA;EACA,qBAAA;A1C6+IJ;;A0C99IE;EClDA,cD8Cc;ErB5Cd,yBqB0CmB;EC1CnB,qBD2Ce;A1Cy+IjB;A2ClhJE;EACE,cAAA;A3CohJJ;;A0Cv+IE;EClDA,cD8Cc;ErB5Cd,yBqB0CmB;EC1CnB,qBD2Ce;A1Ck/IjB;A2C3hJE;EACE,cAAA;A3C6hJJ;;A0Ch/IE;EClDA,cD8Cc;ErB5Cd,yBqB0CmB;EC1CnB,qBD2Ce;A1C2/IjB;A2CpiJE;EACE,cAAA;A3CsiJJ;;A0Cz/IE;EClDA,cDgDgB;ErB9ChB,yBqB0CmB;EC1CnB,qBD2Ce;A1CogJjB;A2C7iJE;EACE,cAAA;A3C+iJJ;;A0ClgJE;EClDA,cDgDgB;ErB9ChB,yBqB0CmB;EC1CnB,qBD2Ce;A1C6gJjB;A2CtjJE;EACE,cAAA;A3CwjJJ;;A0C3gJE;EClDA,cD8Cc;ErB5Cd,yBqB0CmB;EC1CnB,qBD2Ce;A1CshJjB;A2C/jJE;EACE,cAAA;A3CikJJ;;A0CphJE;EClDA,cDgDgB;ErB9ChB,yBqB0CmB;EC1CnB,qBD2Ce;A1C+hJjB;A2CxkJE;EACE,cAAA;A3C0kJJ;;A0C7hJE;EClDA,cD8Cc;ErB5Cd,yBqB0CmB;EC1CnB,qBD2Ce;A1CwiJjB;A2CjlJE;EACE,cAAA;A3CmlJJ;;A4CtlJE;EACE;IAAK,2BzCuwC2B;EHm1GlC;AACF;;A4C5lJE;EACE;IAAK,2BzCuwC2B;EHm1GlC;AACF;A4CtlJA;EACE,oBAAA;EAAA,aAAA;EACA,YzCgwCkC;EyC/vClC,gBAAA;ExCwRI,kBALI;EwCjRR,yBzCLS;EESP,sBAAA;ALqlJJ;;A4CplJA;EACE,oBAAA;EAAA,aAAA;EACA,0BAAA;MAAA,sBAAA;EACA,qBAAA;MAAA,uBAAA;EACA,gBAAA;EACA,WzCjBS;EyCkBT,kBAAA;EACA,mBAAA;EACA,yBzCUQ;EiBtBJ,2BwBaJ;A5CulJF;AoBhmJM;EwBAN;IxBCQ,gBAAA;EpBmmJN;AACF;;A4CzlJA;EvBYE,qMAAA;EuBVA,0BAAA;A5C4lJF;;A4CxlJE;EACE,0DAAA;UAAA,kDAAA;A5C2lJJ;A4CxlJM;EAJJ;IAKM,uBAAA;YAAA,eAAA;E5C2lJN;AACF;;A6CnoJA;EACE,oBAAA;EAAA,aAAA;EACA,0BAAA;MAAA,sBAAA;EAGA,eAAA;EACA,gBAAA;ExCSE,sBAAA;AL4nJJ;;A6CjoJA;EACE,qBAAA;EACA,sBAAA;A7CooJF;A6CloJE;EAEE,oCAAA;EACA,0BAAA;A7CmoJJ;;A6CznJA;EACE,WAAA;EACA,c1ClBS;E0CmBT,mBAAA;A7C4nJF;A6CznJE;EAEE,UAAA;EACA,c1CzBO;E0C0BP,qBAAA;EACA,yB1CjCO;AH2pJX;A6CvnJE;EACE,c1C7BO;E0C8BP,yB1CrCO;AH8pJX;;A6ChnJA;EACE,kBAAA;EACA,cAAA;EACA,oBAAA;EACA,c1C3CS;E0C4CT,qBAAA;EACA,sB1CtDS;E0CuDT,sCAAA;A7CmnJF;A6CjnJE;ExCrCE,+BAAA;EACA,gCAAA;ALypJJ;A6CjnJE;ExC3BE,mCAAA;EACA,kCAAA;AL+oJJ;A6CjnJE;EAEE,c1C7DO;E0C8DP,oBAAA;EACA,sB1CrEO;AHurJX;A6C9mJE;EACE,UAAA;EACA,W1C3EO;E0C4EP,yB1C9CM;E0C+CN,qB1C/CM;AH+pJV;A6C7mJE;EACE,mBAAA;A7C+mJJ;A6C7mJI;EACE,gBAAA;EACA,qB1C2QwB;AHo2I9B;;A6CjmJI;EACE,uBAAA;MAAA,mBAAA;A7ComJN;A6CjmJQ;ExCrCJ,kCAAA;EAZA,0BAAA;ALspJJ;A6ChmJQ;ExCtDJ,gCAAA;EAYA,4BAAA;AL8oJJ;A6C/lJQ;EACE,aAAA;A7CimJV;A6C9lJQ;EACE,qB1C0OoB;E0CzOpB,oBAAA;A7CgmJV;A6C9lJU;EACE,iBAAA;EACA,sB1CqOkB;AH23I9B;;AYpqJI;EiC4CA;IACE,uBAAA;QAAA,mBAAA;E7C4nJJ;E6CznJM;IxCrCJ,kCAAA;IAZA,0BAAA;EL8qJF;E6CxnJM;IxCtDJ,gCAAA;IAYA,4BAAA;ELsqJF;E6CvnJM;IACE,aAAA;E7CynJR;E6CtnJM;IACE,qB1C0OoB;I0CzOpB,oBAAA;E7CwnJR;E6CtnJQ;IACE,iBAAA;IACA,sB1CqOkB;EHm5I5B;AACF;AY7rJI;EiC4CA;IACE,uBAAA;QAAA,mBAAA;E7CopJJ;E6CjpJM;IxCrCJ,kCAAA;IAZA,0BAAA;ELssJF;E6ChpJM;IxCtDJ,gCAAA;IAYA,4BAAA;EL8rJF;E6C/oJM;IACE,aAAA;E7CipJR;E6C9oJM;IACE,qB1C0OoB;I0CzOpB,oBAAA;E7CgpJR;E6C9oJQ;IACE,iBAAA;IACA,sB1CqOkB;EH26I5B;AACF;AYrtJI;EiC4CA;IACE,uBAAA;QAAA,mBAAA;E7C4qJJ;E6CzqJM;IxCrCJ,kCAAA;IAZA,0BAAA;EL8tJF;E6CxqJM;IxCtDJ,gCAAA;IAYA,4BAAA;ELstJF;E6CvqJM;IACE,aAAA;E7CyqJR;E6CtqJM;IACE,qB1C0OoB;I0CzOpB,oBAAA;E7CwqJR;E6CtqJQ;IACE,iBAAA;IACA,sB1CqOkB;EHm8I5B;AACF;AY7uJI;EiC4CA;IACE,uBAAA;QAAA,mBAAA;E7CosJJ;E6CjsJM;IxCrCJ,kCAAA;IAZA,0BAAA;ELsvJF;E6ChsJM;IxCtDJ,gCAAA;IAYA,4BAAA;EL8uJF;E6C/rJM;IACE,aAAA;E7CisJR;E6C9rJM;IACE,qB1C0OoB;I0CzOpB,oBAAA;E7CgsJR;E6C9rJQ;IACE,iBAAA;IACA,sB1CqOkB;EH29I5B;AACF;AYrwJI;EiC4CA;IACE,uBAAA;QAAA,mBAAA;E7C4tJJ;E6CztJM;IxCrCJ,kCAAA;IAZA,0BAAA;EL8wJF;E6CxtJM;IxCtDJ,gCAAA;IAYA,4BAAA;ELswJF;E6CvtJM;IACE,aAAA;E7CytJR;E6CttJM;IACE,qB1C0OoB;I0CzOpB,oBAAA;E7CwtJR;E6CttJQ;IACE,iBAAA;IACA,sB1CqOkB;EHm/I5B;AACF;A6C3sJA;ExC9HI,gBAAA;AL40JJ;A6C3sJE;EACE,qBAAA;A7C6sJJ;A6C3sJI;EACE,sBAAA;A7C6sJN;;A8Cj2JE;EACE,cDiKyB;EChKzB,yBD+JsB;A7CqsJ1B;A8Cj2JM;EAEE,cD2JqB;EC1JrB,yBAAA;A9Ck2JR;A8C/1JM;EACE,W3CRG;E2CSH,yBDqJqB;ECpJrB,qBDoJqB;A7C6sJ7B;;A8C/2JE;EACE,cDiKyB;EChKzB,yBD+JsB;A7CmtJ1B;A8C/2JM;EAEE,cD2JqB;EC1JrB,yBAAA;A9Cg3JR;A8C72JM;EACE,W3CRG;E2CSH,yBDqJqB;ECpJrB,qBDoJqB;A7C2tJ7B;;A8C73JE;EACE,cDiKyB;EChKzB,yBD+JsB;A7CiuJ1B;A8C73JM;EAEE,cD2JqB;EC1JrB,yBAAA;A9C83JR;A8C33JM;EACE,W3CRG;E2CSH,yBDqJqB;ECpJrB,qBDoJqB;A7CyuJ7B;;A8C34JE;EACE,cDmK2B;EClK3B,yBD+JsB;A7C+uJ1B;A8C34JM;EAEE,cD6JuB;EC5JvB,yBAAA;A9C44JR;A8Cz4JM;EACE,W3CRG;E2CSH,yBDuJuB;ECtJvB,qBDsJuB;A7CqvJ/B;;A8Cz5JE;EACE,cDmK2B;EClK3B,yBD+JsB;A7C6vJ1B;A8Cz5JM;EAEE,cD6JuB;EC5JvB,yBAAA;A9C05JR;A8Cv5JM;EACE,W3CRG;E2CSH,yBDuJuB;ECtJvB,qBDsJuB;A7CmwJ/B;;A8Cv6JE;EACE,cDiKyB;EChKzB,yBD+JsB;A7C2wJ1B;A8Cv6JM;EAEE,cD2JqB;EC1JrB,yBAAA;A9Cw6JR;A8Cr6JM;EACE,W3CRG;E2CSH,yBDqJqB;ECpJrB,qBDoJqB;A7CmxJ7B;;A8Cr7JE;EACE,cDmK2B;EClK3B,yBD+JsB;A7CyxJ1B;A8Cr7JM;EAEE,cD6JuB;EC5Jv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A;AjEi0NV;;AiEn0NM;EAEI,yBAAA;AjEq0NV;;AiEv0NM;EAEI,+BAAA;AjEy0NV;;AiE30NM;EAEI,8BAAA;AjE60NV;;AiE/0NM;EAEI,4BAAA;AjEi1NV;;AiEn1NM;EAEI,8BAAA;AjEq1NV;;AiEv1NM;EAEI,4BAAA;AjEy1NV;;AiE31NM;EAEI,2BAAA;AjE61NV;;AiE/1NM;EAEI,iCAAA;AjEi2NV;;AiEn2NM;EAEI,gCAAA;AjEq2NV;;AiEv2NM;EAEI,8BAAA;AjEy2NV;;AiE32NM;EAEI,gCAAA;AjE62NV;;AiE/2NM;EAEI,8BAAA;AjEi3NV;;AiEn3NM;EAEI,4BAAA;AjEq3NV;;AiEv3NM;EAEI,kCAAA;AjEy3NV;;AiE33NM;EAEI,iCAAA;AjE63NV;;AiE/3NM;EAEI,+BAAA;AjEi4NV;;AiEn4NM;EAEI,iCAAA;AjEq4NV;;AiEv4NM;EAEI,+BAAA;AjEy4NV;;AiE34NM;EAEI,0BAAA;AjE64NV;;AiE/4NM;EAEI,gCAAA;AjEi5NV;;AiEn5NM;EAEI,+BAAA;AjEq5NV;;AiEv5NM;EAEI,6BAAA;AjEy5NV;;AiE35NM;EAEI,+BAAA;AjE65NV;;AiE/5NM;EAEI,6BAAA;AjEi6NV;;AiEn6NM;EAEI,gDAAA;AjEq6NV;;AiEv6NM;EAEI,4CAAA;AjEy6NV;;AiE36NM;EAEI,4CAAA;AjE66NV;;AiE/6NM;EAEI,0CAAA;AjEi7NV;;AiEn7NM;EAEI,4CAAA;AjEq7NV;;AiEv7NM;EAEI,6BAAA;AjEy7NV;;AiE37NM;EAEI,0BAAA;AjE67NV;;AiE/7NM;EAEI,6BAAA;AjEi8NV;;AiEn8NM;EAEI,6BAAA;AjEq8NV;;AiEv8NM;EAEI,2BAAA;AjEy8NV;;AiE38NM;EAEI,+BAAA;AjE68NV;;AiE/8NM;EAEI,2BAAA;AjEi9NV;;AiEn9NM;EAEI,2BAAA;AjEq9NV;;AiEv9NM;EAEI,8BAAA;AjEy9NV;;AiE39NM;EAEI,yBAAA;AjE69NV;;AiE/9NM;EAEI,4BAAA;AjEi+NV;;AiEn+NM;EAEI,2BAAA;AjEq+NV;;AiEv+NM;EAEI,yBAAA;AjEy+NV;;AiE3+NM;EAEI,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","file":"oe-bcl-default.css"} \ No newline at end of file diff --git a/assets/css/oe-bcl-default.min.css b/assets/css/oe-bcl-default.min.css new file mode 100644 index 00000000..232592a7 --- /dev/null +++ b/assets/css/oe-bcl-default.min.css @@ -0,0 +1,2 @@ +@charset "UTF-8";:root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--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,hsla(0,0%,100%,0.15),hsla(0,0%,100%,0))}*,:after,:before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0);background-color:#fff;color:#212529;font-family:var(--bs-font-sans-serif);font-size:1rem;font-weight:400;line-height:1.5;margin:0}hr{background-color:currentColor;border:0;color:inherit;margin:1rem 0;opacity:.25}hr:not([size]){height:1px}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-weight:500;line-height:1.2;margin-bottom:.5rem;margin-top:0}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-bottom:1rem;margin-top:0}abbr[data-bs-original-title],abbr[title]{cursor:help;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{font-style:normal;line-height:inherit;margin-bottom:1rem}ol,ul{padding-left:2rem}dl,ol,ul{margin-bottom:1rem;margin-top:0}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}.small,small{font-size:.875em}.mark,mark{background-color:#fcf8e3;padding:.2em}sub,sup{font-size:.75em;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0d6efd;text-decoration:underline}a:hover{color:#0a58ca}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{direction:ltr;font-family:var(--bs-font-monospace);font-size:1em;unicode-bidi:bidi-override}pre{display:block;font-size:.875em;margin-bottom:1rem;margin-top:0;overflow:auto}pre code{color:inherit;font-size:inherit;word-break:normal}code{word-wrap:break-word;color:#d63384;font-size:.875em}a>code{color:inherit}kbd{background-color:#212529;border-radius:.2rem;color:#fff;font-size:.875em;padding:.2rem .4rem}kbd kbd{font-size:1em;font-weight:700;padding:0}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{border-collapse:collapse;caption-side:bottom}caption{color:#6c757d;padding-bottom:.5rem;padding-top:.5rem;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border:0 solid;border-color:inherit}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit;margin:0}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]::-webkit-calendar-picker-indicator{display:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{border-style:none;padding:0}textarea{resize:vertical}fieldset{border:0;margin:0;min-width:0;padding:0}legend{float:left;font-size:calc(1.275rem + .3vw);line-height:inherit;margin-bottom:.5rem;padding:0;width:100%}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}output{display:inline-block}iframe{border:0}summary{cursor:pointer;display:list-item}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-inline,.list-unstyled{list-style:none;padding-left:0}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{font-size:1.25rem;margin-bottom:1rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{color:#6c757d;font-size:.875em;margin-bottom:1rem;margin-top:-1rem}.blockquote-footer:before{content:"— "}.img-fluid,.img-thumbnail{height:auto;max-width:100%}.img-thumbnail{background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;padding:.25rem}.figure{display:inline-block}.figure-img{line-height:1;margin-bottom:.5rem}.figure-caption{color:#6c757d;font-size:.875em}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{margin-left:auto;margin-right:auto;padding-left:var(--bs-gutter-x,.75rem);padding-right:var(--bs-gutter-x,.75rem);width:100%}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}@media (min-width:1400px){.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{max-width:1320px}}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:calc(var(--bs-gutter-x)*-.5);margin-right:calc(var(--bs-gutter-x)*-.5);margin-top:calc(var(--bs-gutter-y)*-1)}.row>*{-ms-flex-negative:0;flex-shrink:0;margin-top:var(--bs-gutter-y);max-width:100%;padding-left:calc(var(--bs-gutter-x)*.5);padding-right:calc(var(--bs-gutter-x)*.5);width:100%}.col{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-auto>*{width:auto}.row-cols-1>*,.row-cols-auto>*{-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-1>*{width:100%}.row-cols-2>*{width:50%}.row-cols-2>*,.row-cols-3>*{-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-3>*{width:33.3333333333%}.row-cols-4>*{width:25%}.row-cols-4>*,.row-cols-5>*{-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-5>*{width:20%}.row-cols-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}@media (min-width:576px){.col-sm{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-sm-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-sm-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-sm-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-sm-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-sm-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-sm-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-sm-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}}@media (min-width:768px){.col-md{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-md-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-md-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-md-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-md-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-md-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-md-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}}@media (min-width:992px){.col-lg{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-lg-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-lg-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-lg-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-lg-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-lg-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-lg-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}}@media (min-width:1200px){.col-xl{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-xl-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-xl-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-xl-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-xl-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-xl-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-xl-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}}@media (min-width:1400px){.col-xxl{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-xxl-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-xxl-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-xxl-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-xxl-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-xxl-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-xxl-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-xxl-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}}.col-auto{width:auto}.col-1,.col-auto{-ms-flex:0 0 auto;flex:0 0 auto}.col-1{width:8.33333333%}.col-2{width:16.66666667%}.col-2,.col-3{-ms-flex:0 0 auto;flex:0 0 auto}.col-3{width:25%}.col-4{width:33.33333333%}.col-4,.col-5{-ms-flex:0 0 auto;flex:0 0 auto}.col-5{width:41.66666667%}.col-6{width:50%}.col-6,.col-7{-ms-flex:0 0 auto;flex:0 0 auto}.col-7{width:58.33333333%}.col-8{width:66.66666667%}.col-8,.col-9{-ms-flex:0 0 auto;flex:0 0 auto}.col-9{width:75%}.col-10{width:83.33333333%}.col-10,.col-11{-ms-flex:0 0 auto;flex:0 0 auto}.col-11{width:91.66666667%}.col-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:0.25rem}.g-1,.gy-1{--bs-gutter-y:0.25rem}.g-2,.gx-2{--bs-gutter-x:0.5rem}.g-2,.gy-2{--bs-gutter-y:0.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}@media (min-width:576px){.col-sm-auto{width:auto}.col-sm-1,.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-1{width:8.33333333%}.col-sm-2{width:16.66666667%}.col-sm-2,.col-sm-3{-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-3{width:25%}.col-sm-4{width:33.33333333%}.col-sm-4,.col-sm-5{-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-5{width:41.66666667%}.col-sm-6{width:50%}.col-sm-6,.col-sm-7{-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-7{width:58.33333333%}.col-sm-8{width:66.66666667%}.col-sm-8,.col-sm-9{-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-9{width:75%}.col-sm-10{width:83.33333333%}.col-sm-10,.col-sm-11{-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-11{width:91.66666667%}.col-sm-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x:0}.g-sm-0,.gy-sm-0{--bs-gutter-y:0}.g-sm-1,.gx-sm-1{--bs-gutter-x:0.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y:0.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x:0.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y:0.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y:1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y:1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y:3rem}}@media (min-width:768px){.col-md-auto{width:auto}.col-md-1,.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto}.col-md-1{width:8.33333333%}.col-md-2{width:16.66666667%}.col-md-2,.col-md-3{-ms-flex:0 0 auto;flex:0 0 auto}.col-md-3{width:25%}.col-md-4{width:33.33333333%}.col-md-4,.col-md-5{-ms-flex:0 0 auto;flex:0 0 auto}.col-md-5{width:41.66666667%}.col-md-6{width:50%}.col-md-6,.col-md-7{-ms-flex:0 0 auto;flex:0 0 auto}.col-md-7{width:58.33333333%}.col-md-8{width:66.66666667%}.col-md-8,.col-md-9{-ms-flex:0 0 auto;flex:0 0 auto}.col-md-9{width:75%}.col-md-10{width:83.33333333%}.col-md-10,.col-md-11{-ms-flex:0 0 auto;flex:0 0 auto}.col-md-11{width:91.66666667%}.col-md-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x:0}.g-md-0,.gy-md-0{--bs-gutter-y:0}.g-md-1,.gx-md-1{--bs-gutter-x:0.25rem}.g-md-1,.gy-md-1{--bs-gutter-y:0.25rem}.g-md-2,.gx-md-2{--bs-gutter-x:0.5rem}.g-md-2,.gy-md-2{--bs-gutter-y:0.5rem}.g-md-3,.gx-md-3{--bs-gutter-x:1rem}.g-md-3,.gy-md-3{--bs-gutter-y:1rem}.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y:1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x:3rem}.g-md-5,.gy-md-5{--bs-gutter-y:3rem}}@media (min-width:992px){.col-lg-auto{width:auto}.col-lg-1,.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-1{width:8.33333333%}.col-lg-2{width:16.66666667%}.col-lg-2,.col-lg-3{-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-3{width:25%}.col-lg-4{width:33.33333333%}.col-lg-4,.col-lg-5{-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-5{width:41.66666667%}.col-lg-6{width:50%}.col-lg-6,.col-lg-7{-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-7{width:58.33333333%}.col-lg-8{width:66.66666667%}.col-lg-8,.col-lg-9{-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-9{width:75%}.col-lg-10{width:83.33333333%}.col-lg-10,.col-lg-11{-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-11{width:91.66666667%}.col-lg-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x:0}.g-lg-0,.gy-lg-0{--bs-gutter-y:0}.g-lg-1,.gx-lg-1{--bs-gutter-x:0.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y:0.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x:0.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y:0.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y:1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y:1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y:3rem}}@media (min-width:1200px){.col-xl-auto{width:auto}.col-xl-1,.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-1{width:8.33333333%}.col-xl-2{width:16.66666667%}.col-xl-2,.col-xl-3{-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-3{width:25%}.col-xl-4{width:33.33333333%}.col-xl-4,.col-xl-5{-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-5{width:41.66666667%}.col-xl-6{width:50%}.col-xl-6,.col-xl-7{-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-7{width:58.33333333%}.col-xl-8{width:66.66666667%}.col-xl-8,.col-xl-9{-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-9{width:75%}.col-xl-10{width:83.33333333%}.col-xl-10,.col-xl-11{-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-11{width:91.66666667%}.col-xl-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x:0}.g-xl-0,.gy-xl-0{--bs-gutter-y:0}.g-xl-1,.gx-xl-1{--bs-gutter-x:0.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y:0.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x:0.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y:0.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y:1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y:1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y:3rem}}@media (min-width:1400px){.col-xxl-auto{width:auto}.col-xxl-1,.col-xxl-auto{-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-1{width:8.33333333%}.col-xxl-2{width:16.66666667%}.col-xxl-2,.col-xxl-3{-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-3{width:25%}.col-xxl-4{width:33.33333333%}.col-xxl-4,.col-xxl-5{-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-5{width:41.66666667%}.col-xxl-6{width:50%}.col-xxl-6,.col-xxl-7{-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-7{width:58.33333333%}.col-xxl-8{width:66.66666667%}.col-xxl-8,.col-xxl-9{-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-9{width:75%}.col-xxl-10{width:83.33333333%}.col-xxl-10,.col-xxl-11{-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-11{width:91.66666667%}.col-xxl-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y:0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x:0.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y:0.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x:0.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y:0.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y:1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y:1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y:3rem}}.table{--bs-table-bg:transparent;--bs-table-accent-bg:transparent;--bs-table-striped-color:#212529;--bs-table-striped-bg:rgba(0,0,0,0.05);--bs-table-active-color:#212529;--bs-table-active-bg:rgba(0,0,0,0.1);--bs-table-hover-color:#212529;--bs-table-hover-bg:rgba(0,0,0,0.075);border-color:#dee2e6;color:#212529;margin-bottom:1rem;vertical-align:top;width:100%}.table>:not(caption)>*>*{background-color:var(--bs-table-bg);border-bottom-width:1px;box-shadow:inset 0 0 0 9999px var(--bs-table-accent-bg);padding:.5rem}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table>:not(:last-child)>:last-child>*{border-bottom-color:currentColor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.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-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:#cfe2ff;--bs-table-striped-bg:#c5d7f2;--bs-table-striped-color:#000;--bs-table-active-bg:#bacbe6;--bs-table-active-color:#000;--bs-table-hover-bg:#bfd1ec;--bs-table-hover-color:#000;border-color:#bacbe6;color:#000}.table-secondary{--bs-table-bg:#e2e3e5;--bs-table-striped-bg:#d7d8da;--bs-table-striped-color:#000;--bs-table-active-bg:#cbccce;--bs-table-active-color:#000;--bs-table-hover-bg:#d1d2d4;--bs-table-hover-color:#000;border-color:#cbccce;color:#000}.table-success{--bs-table-bg:#d1e7dd;--bs-table-striped-bg:#c7dbd2;--bs-table-striped-color:#000;--bs-table-active-bg:#bcd0c7;--bs-table-active-color:#000;--bs-table-hover-bg:#c1d6cc;--bs-table-hover-color:#000;border-color:#bcd0c7;color:#000}.table-info{--bs-table-bg:#cff4fc;--bs-table-striped-bg:#c5e8ef;--bs-table-striped-color:#000;--bs-table-active-bg:#badce3;--bs-table-active-color:#000;--bs-table-hover-bg:#bfe2e9;--bs-table-hover-color:#000;border-color:#badce3;color:#000}.table-warning{--bs-table-bg:#fff3cd;--bs-table-striped-bg:#f2e7c3;--bs-table-striped-color:#000;--bs-table-active-bg:#e6dbb9;--bs-table-active-color:#000;--bs-table-hover-bg:#ece1be;--bs-table-hover-color:#000;border-color:#e6dbb9;color:#000}.table-danger{--bs-table-bg:#f8d7da;--bs-table-striped-bg:#eccccf;--bs-table-striped-color:#000;--bs-table-active-bg:#dfc2c4;--bs-table-active-color:#000;--bs-table-hover-bg:#e5c7ca;--bs-table-hover-color:#000;border-color:#dfc2c4;color:#000}.table-light{--bs-table-bg:#f8f9fa;--bs-table-striped-bg:#ecedee;--bs-table-striped-color:#000;--bs-table-active-bg:#dfe0e1;--bs-table-active-color:#000;--bs-table-hover-bg:#e5e6e7;--bs-table-hover-color:#000;border-color:#dfe0e1;color:#000}.table-dark{--bs-table-bg:#212529;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff;border-color:#373b3e;color:#fff}.table-responsive{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (max-width:575.98px){.table-responsive-sm{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:767.98px){.table-responsive-md{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:991.98px){.table-responsive-lg{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:1199.98px){.table-responsive-xl{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:1399.98px){.table-responsive-xxl{-webkit-overflow-scrolling:touch;overflow-x:auto}}.form-label{margin-bottom:.5rem}.col-form-label{font-size:inherit;line-height:1.5;margin-bottom:0;padding-bottom:calc(.375rem + 1px);padding-top:calc(.375rem + 1px)}.col-form-label-lg{font-size:1.25rem;padding-bottom:calc(.5rem + 1px);padding-top:calc(.5rem + 1px)}.col-form-label-sm{font-size:.875rem;padding-bottom:calc(.25rem + 1px);padding-top:calc(.25rem + 1px)}.form-text{color:#6c757d;font-size:.875em;margin-top:.25rem}.form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-clip:padding-box;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem;color:#212529;display:block;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem .75rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:100%}@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{background-color:#fff;border-color:#86b7fe;box-shadow:0 0 0 .25rem rgba(13,110,253,.25);color:#212529;outline:0}.form-control::-webkit-date-and-time-value{height:1.5em}.form-control::-webkit-input-placeholder{color:#6c757d;opacity:1}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control:-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}.form-control::file-selector-button{-webkit-margin-end:.75rem;-moz-margin-end:.75rem;background-color:#e9ecef;border:0 solid;border-color:inherit;border-inline-end-width:1px;border-radius:0;color:#212529;margin:-.375rem -.75rem;margin-inline-end:.75rem;padding:.375rem .75rem;pointer-events: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}@media (prefers-reduced-motion:reduce){.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:#dde0e3}.form-control::-webkit-file-upload-button{-webkit-margin-end:.75rem;background-color:#e9ecef;border:0 solid;border-color:inherit;border-inline-end-width:1px;border-radius:0;color:#212529;margin:-.375rem -.75rem;margin-inline-end:.75rem;padding:.375rem .75rem;pointer-events:none;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;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{-webkit-transition:none;transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:#dde0e3}.form-control-plaintext{background-color:transparent;border:solid transparent;border-width:1px 0;color:#212529;display:block;line-height:1.5;margin-bottom:0;padding:.375rem 0;width:100%}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-left:0;padding-right:0}.form-control-sm{border-radius:.2rem;font-size:.875rem;min-height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem}.form-control-sm::file-selector-button{-webkit-margin-end:.5rem;-moz-margin-end:.5rem;margin:-.25rem -.5rem;margin-inline-end:.5rem;padding:.25rem .5rem}.form-control-sm::-webkit-file-upload-button{-webkit-margin-end:.5rem;margin:-.25rem -.5rem;margin-inline-end:.5rem;padding:.25rem .5rem}.form-control-lg{border-radius:.3rem;font-size:1.25rem;min-height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem}.form-control-lg::file-selector-button{-webkit-margin-end:1rem;-moz-margin-end:1rem;margin:-.5rem -1rem;margin-inline-end:1rem;padding:.5rem 1rem}.form-control-lg::-webkit-file-upload-button{-webkit-margin-end:1rem;margin:-.5rem -1rem;margin-inline-end:1rem;padding:.5rem 1rem}textarea.form-control{min-height:calc(1.5em + .75rem + 2px)}textarea.form-control-sm{min-height:calc(1.5em + .5rem + 2px)}textarea.form-control-lg{min-height:calc(1.5em + 1rem + 2px)}.form-control-color{height:auto;max-width:3rem;padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border-radius:.25rem;height:1.5em}.form-control-color::-webkit-color-swatch{border-radius:.25rem;height:1.5em}.form-select{-moz-padding-start:calc(.75rem - 3px);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%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 5 6 6 6-6'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:16px 12px;border:1px solid #ced4da;border-radius:.25rem;color:#212529;display:block;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem 2.25rem .375rem .75rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:100%}@media (prefers-reduced-motion:reduce){.form-select{transition:none}}.form-select:focus{border-color:#86b7fe;box-shadow:0 0 0 .25rem rgba(13,110,253,.25);outline:0}.form-select[multiple],.form-select[size]:not([size="1"]){background-image:none;padding-right:.75rem}.form-select:disabled{background-color:#e9ecef}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #212529}.form-select-sm{font-size:.875rem;padding-bottom:.25rem;padding-left:.5rem;padding-top:.25rem}.form-select-lg{font-size:1.25rem;padding-bottom:.5rem;padding-left:1rem;padding-top:.5rem}.form-check{display:block;margin-bottom:.125rem;min-height:1.5rem;padding-left:1.5em}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-input{-webkit-print-color-adjust:exact;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-position:50%;background-repeat:no-repeat;background-size:contain;border:1px solid rgba(0,0,0,.25);color-adjust:exact;height:1em;margin-top:.25em;vertical-align:top;width:1em}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{-webkit-filter:brightness(90%);filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;box-shadow:0 0 0 .25rem rgba(13,110,253,.25);outline:0}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{background-image:url("data:image/svg+xml;charset=utf-8,%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 10 3 3 6-6'/%3E%3C/svg%3E")}.form-check-input:checked[type=radio]{background-image:url("data:image/svg+xml;charset=utf-8,%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{background-color:#0d6efd;background-image:url("data:image/svg+xml;charset=utf-8,%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");border-color:#0d6efd}.form-check-input:disabled{-webkit-filter:none;filter:none;opacity:.5;pointer-events:none}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(0, 0, 0, 0.25)'/%3E%3C/svg%3E");background-position:0;border-radius:2em;margin-left:-2.5em;transition:background-position .15s ease-in-out;width:2em}@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;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%2386b7fe'/%3E%3C/svg%3E")}.form-switch .form-check-input:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E");background-position:100%}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{clip:rect(0,0,0,0);pointer-events:none;position:absolute}.btn-check:disabled+.btn,.btn-check[disabled]+.btn{-webkit-filter:none;filter:none;opacity:.65;pointer-events:none}.form-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;height:1.5rem;padding:0;width:100%}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background-color:#0d6efd;border:0;border-radius:1rem;height:1rem;margin-top:-.25rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:1rem}@media (prefers-reduced-motion:reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{background-color:#dee2e6;border-color:transparent;border-radius:1rem;color:transparent;cursor:pointer;height:.5rem;width:100%}.form-range::-moz-range-thumb{-moz-appearance:none;appearance:none;background-color:#0d6efd;border:0;border-radius:1rem;height:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:1rem}@media (prefers-reduced-motion:reduce){.form-range::-moz-range-thumb{-moz-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{background-color:#dee2e6;border-color:transparent;border-radius:1rem;color:transparent;cursor:pointer;height:.5rem;width:100%}.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{border:1px solid transparent;height:100%;left:0;padding:1rem .75rem;pointer-events:none;position:absolute;top:0;-webkit-transform-origin:0 0;transform-origin:0 0;transition:opacity .1s ease-in-out,-webkit-transform .1s ease-in-out;transition:opacity .1s ease-in-out,transform .1s ease-in-out;transition:opacity .1s ease-in-out,transform .1s ease-in-out,-webkit-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::-webkit-input-placeholder{color:transparent}.form-floating>.form-control::-moz-placeholder{color:transparent}.form-floating>.form-control:-ms-input-placeholder{color:transparent}.form-floating>.form-control::-ms-input-placeholder{color:transparent}.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control:not(:-moz-placeholder-shown){padding-bottom:.625rem;padding-top:1.625rem}.form-floating>.form-control:not(:-ms-input-placeholder){padding-bottom:.625rem;padding-top:1.625rem}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-bottom:.625rem;padding-top:1.625rem}.form-floating>.form-control:-webkit-autofill{padding-bottom:.625rem;padding-top:1.625rem}.form-floating>.form-select{padding-bottom:.625rem;padding-top:1.625rem}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:not(:-ms-input-placeholder)~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{opacity:.65;-webkit-transform:scale(.85) translateY(-.5rem) translateX(.15rem);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:-webkit-autofill~label{opacity:.65;-webkit-transform:scale(.85) translateY(-.5rem) translateX(.15rem);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.input-group{-ms-flex-align:stretch;align-items:stretch;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;position:relative;width:100%}.input-group>.form-control,.input-group>.form-select{-ms-flex:1 1 auto;flex:1 1 auto;min-width:0;position:relative;width:1%}.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{-ms-flex-align:center;align-items:center;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem;color:#212529;display:-ms-flexbox;display:flex;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem .75rem;text-align:center;white-space:nowrap}.input-group-lg>.btn,.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text{border-radius:.3rem;font-size:1.25rem;padding:.5rem 1rem}.input-group-sm>.btn,.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text{border-radius:.2rem;font-size:.875rem;padding:.25rem .5rem}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu){border-bottom-right-radius:0;border-top-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-1px}.valid-feedback{color:#198754;display:none;font-size:.875em;margin-top:.25rem;width:100%}.valid-tooltip{background-color:rgba(25,135,84,.9);border-radius:.25rem;color:#fff;display:none;font-size:.875rem;margin-top:.1rem;max-width:100%;padding:.25rem .5rem;position:absolute;top:100%;z-index:5}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23198754' d='M2.3 6.73.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 calc(.375em + .1875rem) center;background-repeat:no-repeat;background-size:calc(.75em + .375rem) calc(.75em + .375rem);border-color:#198754;padding-right:calc(1.5em + .75rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem);padding-right:calc(1.5em + .75rem)}.form-select.is-valid,.was-validated .form-select:valid{border-color:#198754}.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"],.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"]{background-image:url("data:image/svg+xml;charset=utf-8,%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 5 6 6 6-6'/%3E%3C/svg%3E"),url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23198754' d='M2.3 6.73.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(.75em + .375rem) calc(.75em + .375rem);padding-right:4.125rem}.form-select.is-valid:focus,.was-validated .form-select:valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.form-check-input.is-valid,.was-validated .form-check-input:valid{border-color:#198754}.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked{background-color:#198754}.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#198754}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.input-group .form-control.is-valid,.input-group .form-select.is-valid,.was-validated .input-group .form-control:valid,.was-validated .input-group .form-select:valid{z-index:1}.input-group .form-control.is-valid:focus,.input-group .form-select.is-valid:focus,.was-validated .input-group .form-control:valid:focus,.was-validated .input-group .form-select:valid:focus{z-index:3}.invalid-feedback{color:#dc3545;display:none;font-size:.875em;margin-top:.25rem;width:100%}.invalid-tooltip{background-color:rgba(220,53,69,.9);border-radius:.25rem;color:#fff;display:none;font-size:.875rem;margin-top:.1rem;max-width:100%;padding:.25rem .5rem;position:absolute;top:100%;z-index:5}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%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='%23dc3545' stroke='none'/%3E%3C/svg%3E");background-position:right calc(.375em + .1875rem) center;background-repeat:no-repeat;background-size:calc(.75em + .375rem) calc(.75em + .375rem);border-color:#dc3545;padding-right:calc(1.5em + .75rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem);padding-right:calc(1.5em + .75rem)}.form-select.is-invalid,.was-validated .form-select:invalid{border-color:#dc3545}.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"],.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"]{background-image:url("data:image/svg+xml;charset=utf-8,%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 5 6 6 6-6'/%3E%3C/svg%3E"),url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%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='%23dc3545' stroke='none'/%3E%3C/svg%3E");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem);padding-right:4.125rem}.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.form-check-input.is-invalid,.was-validated .form-check-input:invalid{border-color:#dc3545}.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked{background-color:#dc3545}.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.input-group .form-control.is-invalid,.input-group .form-select.is-invalid,.was-validated .input-group .form-control:invalid,.was-validated .input-group .form-select:invalid{z-index:2}.input-group .form-control.is-invalid:focus,.input-group .form-select.is-invalid:focus,.was-validated .input-group .form-control:invalid:focus,.was-validated .input-group .form-select:invalid:focus{z-index:3}.btn{background-color:transparent;border:1px solid transparent;border-radius:.25rem;color:#212529;cursor:pointer;display:inline-block;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem .75rem;text-align:center;text-decoration: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;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529}.btn-check:focus+.btn,.btn:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.25);outline:0}.btn.disabled,.btn:disabled,fieldset:disabled .btn{opacity:.65;pointer-events:none}.btn-primary{background-color:#0d6efd;border-color:#0d6efd;color:#fff}.btn-check:focus+.btn-primary,.btn-primary:focus,.btn-primary:hover{background-color:#0b5ed7;border-color:#0a58ca;color:#fff}.btn-check:focus+.btn-primary,.btn-primary:focus{box-shadow:0 0 0 .25rem rgba(49,132,253,.5)}.btn-check:active+.btn-primary,.btn-check:checked+.btn-primary,.btn-primary.active,.btn-primary:active,.show>.btn-primary.dropdown-toggle{background-color:#0a58ca;border-color:#0a53be;color:#fff}.btn-check:active+.btn-primary:focus,.btn-check:checked+.btn-primary:focus,.btn-primary.active:focus,.btn-primary:active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(49,132,253,.5)}.btn-primary.disabled,.btn-primary:disabled{background-color:#0d6efd;border-color:#0d6efd;color:#fff}.btn-secondary{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-check:focus+.btn-secondary,.btn-secondary:focus,.btn-secondary:hover{background-color:#5c636a;border-color:#565e64;color:#fff}.btn-check:focus+.btn-secondary,.btn-secondary:focus{box-shadow:0 0 0 .25rem hsla(208,6%,54%,.5)}.btn-check:active+.btn-secondary,.btn-check:checked+.btn-secondary,.btn-secondary.active,.btn-secondary:active,.show>.btn-secondary.dropdown-toggle{background-color:#565e64;border-color:#51585e;color:#fff}.btn-check:active+.btn-secondary:focus,.btn-check:checked+.btn-secondary:focus,.btn-secondary.active:focus,.btn-secondary:active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem hsla(208,6%,54%,.5)}.btn-secondary.disabled,.btn-secondary:disabled{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-success{background-color:#198754;border-color:#198754;color:#fff}.btn-check:focus+.btn-success,.btn-success:focus,.btn-success:hover{background-color:#157347;border-color:#146c43;color:#fff}.btn-check:focus+.btn-success,.btn-success:focus{box-shadow:0 0 0 .25rem rgba(60,153,110,.5)}.btn-check:active+.btn-success,.btn-check:checked+.btn-success,.btn-success.active,.btn-success:active,.show>.btn-success.dropdown-toggle{background-color:#146c43;border-color:#13653f;color:#fff}.btn-check:active+.btn-success:focus,.btn-check:checked+.btn-success:focus,.btn-success.active:focus,.btn-success:active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(60,153,110,.5)}.btn-success.disabled,.btn-success:disabled{background-color:#198754;border-color:#198754;color:#fff}.btn-info{background-color:#0dcaf0;border-color:#0dcaf0;color:#000}.btn-check:focus+.btn-info,.btn-info:focus,.btn-info:hover{background-color:#31d2f2;border-color:#25cff2;color:#000}.btn-check:focus+.btn-info,.btn-info:focus{box-shadow:0 0 0 .25rem rgba(11,172,204,.5)}.btn-check:active+.btn-info,.btn-check:checked+.btn-info,.btn-info.active,.btn-info:active,.show>.btn-info.dropdown-toggle{background-color:#3dd5f3;border-color:#25cff2;color:#000}.btn-check:active+.btn-info:focus,.btn-check:checked+.btn-info:focus,.btn-info.active:focus,.btn-info:active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(11,172,204,.5)}.btn-info.disabled,.btn-info:disabled{background-color:#0dcaf0;border-color:#0dcaf0;color:#000}.btn-warning{background-color:#ffc107;border-color:#ffc107;color:#000}.btn-check:focus+.btn-warning,.btn-warning:focus,.btn-warning:hover{background-color:#ffca2c;border-color:#ffc720;color:#000}.btn-check:focus+.btn-warning,.btn-warning:focus{box-shadow:0 0 0 .25rem rgba(217,164,6,.5)}.btn-check:active+.btn-warning,.btn-check:checked+.btn-warning,.btn-warning.active,.btn-warning:active,.show>.btn-warning.dropdown-toggle{background-color:#ffcd39;border-color:#ffc720;color:#000}.btn-check:active+.btn-warning:focus,.btn-check:checked+.btn-warning:focus,.btn-warning.active:focus,.btn-warning:active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(217,164,6,.5)}.btn-warning.disabled,.btn-warning:disabled{background-color:#ffc107;border-color:#ffc107;color:#000}.btn-danger{background-color:#dc3545;border-color:#dc3545;color:#fff}.btn-check:focus+.btn-danger,.btn-danger:focus,.btn-danger:hover{background-color:#bb2d3b;border-color:#b02a37;color:#fff}.btn-check:focus+.btn-danger,.btn-danger:focus{box-shadow:0 0 0 .25rem rgba(225,83,97,.5)}.btn-check:active+.btn-danger,.btn-check:checked+.btn-danger,.btn-danger.active,.btn-danger:active,.show>.btn-danger.dropdown-toggle{background-color:#b02a37;border-color:#a52834;color:#fff}.btn-check:active+.btn-danger:focus,.btn-check:checked+.btn-danger:focus,.btn-danger.active:focus,.btn-danger:active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{background-color:#dc3545;border-color:#dc3545;color:#fff}.btn-light{background-color:#f8f9fa;border-color:#f8f9fa;color:#000}.btn-check:focus+.btn-light,.btn-light:focus,.btn-light:hover{background-color:#f9fafb;border-color:#f9fafb;color:#000}.btn-check:focus+.btn-light,.btn-light:focus{box-shadow:0 0 0 .25rem hsla(210,2%,83%,.5)}.btn-check:active+.btn-light,.btn-check:checked+.btn-light,.btn-light.active,.btn-light:active,.show>.btn-light.dropdown-toggle{background-color:#f9fafb;border-color:#f9fafb;color:#000}.btn-check:active+.btn-light:focus,.btn-check:checked+.btn-light:focus,.btn-light.active:focus,.btn-light:active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .25rem hsla(210,2%,83%,.5)}.btn-light.disabled,.btn-light:disabled{background-color:#f8f9fa;border-color:#f8f9fa;color:#000}.btn-dark{background-color:#212529;border-color:#212529;color:#fff}.btn-check:focus+.btn-dark,.btn-dark:focus,.btn-dark:hover{background-color:#1c1f23;border-color:#1a1e21;color:#fff}.btn-check:focus+.btn-dark,.btn-dark:focus{box-shadow:0 0 0 .25rem rgba(66,70,73,.5)}.btn-check:active+.btn-dark,.btn-check:checked+.btn-dark,.btn-dark.active,.btn-dark:active,.show>.btn-dark.dropdown-toggle{background-color:#1a1e21;border-color:#191c1f;color:#fff}.btn-check:active+.btn-dark:focus,.btn-check:checked+.btn-dark:focus,.btn-dark.active:focus,.btn-dark:active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(66,70,73,.5)}.btn-dark.disabled,.btn-dark:disabled{background-color:#212529;border-color:#212529;color:#fff}.btn-outline-primary{border-color:#0d6efd;color:#0d6efd}.btn-outline-primary:hover{background-color:#0d6efd;border-color:#0d6efd;color:#fff}.btn-check:focus+.btn-outline-primary,.btn-outline-primary:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.5)}.btn-check:active+.btn-outline-primary,.btn-check:checked+.btn-outline-primary,.btn-outline-primary.active,.btn-outline-primary.dropdown-toggle.show,.btn-outline-primary:active{background-color:#0d6efd;border-color:#0d6efd;color:#fff}.btn-check:active+.btn-outline-primary:focus,.btn-check:checked+.btn-outline-primary:focus,.btn-outline-primary.active:focus,.btn-outline-primary.dropdown-toggle.show:focus,.btn-outline-primary:active:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{background-color:transparent;color:#0d6efd}.btn-outline-secondary{border-color:#6c757d;color:#6c757d}.btn-outline-secondary:hover{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-check:focus+.btn-outline-secondary,.btn-outline-secondary:focus{box-shadow:0 0 0 .25rem hsla(208,7%,46%,.5)}.btn-check:active+.btn-outline-secondary,.btn-check:checked+.btn-outline-secondary,.btn-outline-secondary.active,.btn-outline-secondary.dropdown-toggle.show,.btn-outline-secondary:active{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-check:active+.btn-outline-secondary:focus,.btn-check:checked+.btn-outline-secondary:focus,.btn-outline-secondary.active:focus,.btn-outline-secondary.dropdown-toggle.show:focus,.btn-outline-secondary:active:focus{box-shadow:0 0 0 .25rem hsla(208,7%,46%,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{background-color:transparent;color:#6c757d}.btn-outline-success{border-color:#198754;color:#198754}.btn-outline-success:hover{background-color:#198754;border-color:#198754;color:#fff}.btn-check:focus+.btn-outline-success,.btn-outline-success:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}.btn-check:active+.btn-outline-success,.btn-check:checked+.btn-outline-success,.btn-outline-success.active,.btn-outline-success.dropdown-toggle.show,.btn-outline-success:active{background-color:#198754;border-color:#198754;color:#fff}.btn-check:active+.btn-outline-success:focus,.btn-check:checked+.btn-outline-success:focus,.btn-outline-success.active:focus,.btn-outline-success.dropdown-toggle.show:focus,.btn-outline-success:active:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{background-color:transparent;color:#198754}.btn-outline-info{border-color:#0dcaf0;color:#0dcaf0}.btn-outline-info:hover{background-color:#0dcaf0;border-color:#0dcaf0;color:#000}.btn-check:focus+.btn-outline-info,.btn-outline-info:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}.btn-check:active+.btn-outline-info,.btn-check:checked+.btn-outline-info,.btn-outline-info.active,.btn-outline-info.dropdown-toggle.show,.btn-outline-info:active{background-color:#0dcaf0;border-color:#0dcaf0;color:#000}.btn-check:active+.btn-outline-info:focus,.btn-check:checked+.btn-outline-info:focus,.btn-outline-info.active:focus,.btn-outline-info.dropdown-toggle.show:focus,.btn-outline-info:active:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{background-color:transparent;color:#0dcaf0}.btn-outline-warning{border-color:#ffc107;color:#ffc107}.btn-outline-warning:hover{background-color:#ffc107;border-color:#ffc107;color:#000}.btn-check:focus+.btn-outline-warning,.btn-outline-warning:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}.btn-check:active+.btn-outline-warning,.btn-check:checked+.btn-outline-warning,.btn-outline-warning.active,.btn-outline-warning.dropdown-toggle.show,.btn-outline-warning:active{background-color:#ffc107;border-color:#ffc107;color:#000}.btn-check:active+.btn-outline-warning:focus,.btn-check:checked+.btn-outline-warning:focus,.btn-outline-warning.active:focus,.btn-outline-warning.dropdown-toggle.show:focus,.btn-outline-warning:active:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{background-color:transparent;color:#ffc107}.btn-outline-danger{border-color:#dc3545;color:#dc3545}.btn-outline-danger:hover{background-color:#dc3545;border-color:#dc3545;color:#fff}.btn-check:focus+.btn-outline-danger,.btn-outline-danger:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}.btn-check:active+.btn-outline-danger,.btn-check:checked+.btn-outline-danger,.btn-outline-danger.active,.btn-outline-danger.dropdown-toggle.show,.btn-outline-danger:active{background-color:#dc3545;border-color:#dc3545;color:#fff}.btn-check:active+.btn-outline-danger:focus,.btn-check:checked+.btn-outline-danger:focus,.btn-outline-danger.active:focus,.btn-outline-danger.dropdown-toggle.show:focus,.btn-outline-danger:active:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{background-color:transparent;color:#dc3545}.btn-outline-light{border-color:#f8f9fa;color:#f8f9fa}.btn-outline-light:hover{background-color:#f8f9fa;border-color:#f8f9fa;color:#000}.btn-check:focus+.btn-outline-light,.btn-outline-light:focus{box-shadow:0 0 0 .25rem rgba(248,249,250,.5)}.btn-check:active+.btn-outline-light,.btn-check:checked+.btn-outline-light,.btn-outline-light.active,.btn-outline-light.dropdown-toggle.show,.btn-outline-light:active{background-color:#f8f9fa;border-color:#f8f9fa;color:#000}.btn-check:active+.btn-outline-light:focus,.btn-check:checked+.btn-outline-light:focus,.btn-outline-light.active:focus,.btn-outline-light.dropdown-toggle.show:focus,.btn-outline-light:active:focus{box-shadow:0 0 0 .25rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{background-color:transparent;color:#f8f9fa}.btn-outline-dark{border-color:#212529;color:#212529}.btn-outline-dark:hover{background-color:#212529;border-color:#212529;color:#fff}.btn-check:focus+.btn-outline-dark,.btn-outline-dark:focus{box-shadow:0 0 0 .25rem rgba(33,37,41,.5)}.btn-check:active+.btn-outline-dark,.btn-check:checked+.btn-outline-dark,.btn-outline-dark.active,.btn-outline-dark.dropdown-toggle.show,.btn-outline-dark:active{background-color:#212529;border-color:#212529;color:#fff}.btn-check:active+.btn-outline-dark:focus,.btn-check:checked+.btn-outline-dark:focus,.btn-outline-dark.active:focus,.btn-outline-dark.dropdown-toggle.show:focus,.btn-outline-dark:active:focus{box-shadow:0 0 0 .25rem rgba(33,37,41,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{background-color:transparent;color:#212529}.btn-link{color:#0d6efd;font-weight:400;text-decoration:underline}.btn-link:hover{color:#0a58ca}.btn-link.disabled,.btn-link:disabled{color:#6c757d}.btn-group-lg>.btn,.btn-lg{border-radius:.3rem;font-size:1.25rem;padding:.5rem 1rem}.btn-group-sm>.btn,.btn-sm{border-radius:.2rem;font-size:.875rem;padding:.25rem .5rem}.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 .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropend,.dropstart,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{border-bottom:0;border-left:.3em solid transparent;border-right:.3em solid transparent;border-top:.3em solid;content:"";display:inline-block;margin-left:.255em;vertical-align:.255em}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{background-clip:padding-box;background-color:#fff;border:1px solid rgba(0,0,0,.15);border-radius:.25rem;color:#212529;display:none;font-size:1rem;list-style:none;margin:0;min-width:10rem;padding:.5rem 0;position:absolute;text-align:left;z-index:1000}.dropdown-menu[data-bs-popper]{left:0;margin-top:.125rem;top:100%}.dropdown-menu-start{--bs-position:start}.dropdown-menu-start[data-bs-popper]{left:0;right:auto}.dropdown-menu-end{--bs-position:end}.dropdown-menu-end[data-bs-popper]{left:auto;right:0}@media (min-width:576px){.dropdown-menu-sm-start{--bs-position:start}.dropdown-menu-sm-start[data-bs-popper]{left:0;right:auto}.dropdown-menu-sm-end{--bs-position:end}.dropdown-menu-sm-end[data-bs-popper]{left:auto;right:0}}@media (min-width:768px){.dropdown-menu-md-start{--bs-position:start}.dropdown-menu-md-start[data-bs-popper]{left:0;right:auto}.dropdown-menu-md-end{--bs-position:end}.dropdown-menu-md-end[data-bs-popper]{left:auto;right:0}}@media (min-width:992px){.dropdown-menu-lg-start{--bs-position:start}.dropdown-menu-lg-start[data-bs-popper]{left:0;right:auto}.dropdown-menu-lg-end{--bs-position:end}.dropdown-menu-lg-end[data-bs-popper]{left:auto;right:0}}@media (min-width:1200px){.dropdown-menu-xl-start{--bs-position:start}.dropdown-menu-xl-start[data-bs-popper]{left:0;right:auto}.dropdown-menu-xl-end{--bs-position:end}.dropdown-menu-xl-end[data-bs-popper]{left:auto;right:0}}@media (min-width:1400px){.dropdown-menu-xxl-start{--bs-position:start}.dropdown-menu-xxl-start[data-bs-popper]{left:0;right:auto}.dropdown-menu-xxl-end{--bs-position:end}.dropdown-menu-xxl-end[data-bs-popper]{left:auto;right:0}}.dropup .dropdown-menu[data-bs-popper]{bottom:100%;margin-bottom:.125rem;margin-top:0;top:auto}.dropup .dropdown-toggle:after{border-bottom:.3em solid;border-left:.3em solid transparent;border-right:.3em solid transparent;border-top:0;content:"";display:inline-block;margin-left:.255em;vertical-align:.255em}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{left:100%;margin-left:.125rem;margin-top:0;right:auto;top:0}.dropend .dropdown-toggle:after{border-bottom:.3em solid transparent;border-left:.3em solid;border-right:0;border-top:.3em solid transparent;content:"";display:inline-block;margin-left:.255em;vertical-align:.255em}.dropend .dropdown-toggle:empty:after{margin-left:0}.dropend .dropdown-toggle:after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{left:auto;margin-right:.125rem;margin-top:0;right:100%;top:0}.dropstart .dropdown-toggle:after{content:"";display:inline-block;display:none;margin-left:.255em;vertical-align:.255em}.dropstart .dropdown-toggle:before{border-bottom:.3em solid transparent;border-right:.3em solid;border-top:.3em solid transparent;content:"";display:inline-block;margin-right:.255em;vertical-align:.255em}.dropstart .dropdown-toggle:empty:after{margin-left:0}.dropstart .dropdown-toggle:before{vertical-align:0}.dropdown-divider{border-top:1px solid rgba(0,0,0,.15);height:0;margin:.5rem 0;overflow:hidden}.dropdown-item{background-color:transparent;border:0;clear:both;color:#212529;display:block;font-weight:400;padding:.25rem 1rem;text-align:inherit;text-decoration:none;white-space:nowrap;width:100%}.dropdown-item:focus,.dropdown-item:hover{background-color:#e9ecef;color:#1e2125}.dropdown-item.active,.dropdown-item:active{background-color:#0d6efd;color:#fff;text-decoration:none}.dropdown-item.disabled,.dropdown-item:disabled{background-color:transparent;color:#adb5bd;pointer-events:none}.dropdown-menu.show{display:block}.dropdown-header{color:#6c757d;display:block;font-size:.875rem;margin-bottom:0;padding:.5rem 1rem;white-space:nowrap}.dropdown-item-text{color:#212529;display:block;padding:.25rem 1rem}.dropdown-menu-dark{background-color:#343a40;border-color:rgba(0,0,0,.15);color:#dee2e6}.dropdown-menu-dark .dropdown-item{color:#dee2e6}.dropdown-menu-dark .dropdown-item:focus,.dropdown-menu-dark .dropdown-item:hover{background-color:hsla(0,0%,100%,.15);color:#fff}.dropdown-menu-dark .dropdown-item.active,.dropdown-menu-dark .dropdown-item:active{background-color:#0d6efd;color:#fff}.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{display:-ms-inline-flexbox;display:inline-flex;position:relative;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{-ms-flex:1 1 auto;flex:1 1 auto;position:relative}.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{-ms-flex-pack:start;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn{border-bottom-left-radius:0;border-top-left-radius:0}.dropdown-toggle-split{padding-left:.5625rem;padding-right:.5625rem}.dropdown-toggle-split:after,.dropend .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropstart .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-left:.375rem;padding-right:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-left:.75rem;padding-right:.75rem}.btn-group-vertical{-ms-flex-align:start;-ms-flex-pack:center;align-items:flex-start;-ms-flex-direction:column;flex-direction:column;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-left-radius:0;border-bottom-right-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn~.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;list-style:none;margin-bottom:0;padding-left:0}.nav-link{color:#0d6efd;display:block;padding:.5rem 1rem;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:focus,.nav-link:hover{color:#0a58ca}.nav-link.disabled{color:#6c757d;cursor:default;pointer-events:none}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-link{background:none;border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem;margin-bottom:-1px}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6;isolation:isolate}.nav-tabs .nav-link.disabled{background-color:transparent;border-color:transparent;color:#6c757d}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{background-color:#fff;border-color:#dee2e6 #dee2e6 #fff;color:#495057}.nav-tabs .dropdown-menu{border-top-left-radius:0;border-top-right-radius:0;margin-top:-1px}.nav-pills .nav-link{background:none;border:0;border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{background-color:#0d6efd;color:#fff}.nav-fill .nav-item,.nav-fill>.nav-link{-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{-ms-flex-preferred-size:0;-ms-flex-positive:1;flex-basis:0;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{-ms-flex-align:center;-ms-flex-pack:justify;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;justify-content:space-between;padding-bottom:.5rem;padding-top:.5rem;position:relative}.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container-xl,.navbar>.container-xxl{-ms-flex-align:center;-ms-flex-pack:justify;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:inherit;flex-wrap:inherit;justify-content:space-between}.navbar-brand{font-size:1.25rem;margin-right:1rem;padding-bottom:.3125rem;padding-top:.3125rem;text-decoration:none;white-space:nowrap}.navbar-nav{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;list-style:none;margin-bottom:0;padding-left:0}.navbar-nav .nav-link{padding-left:0;padding-right:0}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-bottom:.5rem;padding-top:.5rem}.navbar-collapse{-ms-flex-preferred-size:100%;-ms-flex-positive:1;-ms-flex-align:center;align-items:center;flex-basis:100%;flex-grow:1}.navbar-toggler{background-color:transparent;border:1px solid transparent;border-radius:.25rem;font-size:1.25rem;line-height:1;padding:.25rem .75rem;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{box-shadow:0 0 0 .25rem;outline:0;text-decoration:none}.navbar-toggler-icon{background-position:50%;background-repeat:no-repeat;background-size:100%;display:inline-block;height:1.5em;vertical-align:middle;width:1.5em}.navbar-nav-scroll{max-height:var(--bs-scroll-height,75vh);overflow-y:auto}@media (min-width:576px){.navbar-expand-sm{-ms-flex-pack:start;-ms-flex-wrap:nowrap;flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{-ms-flex-preferred-size:auto;display:-ms-flexbox!important;display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (min-width:768px){.navbar-expand-md{-ms-flex-pack:start;-ms-flex-wrap:nowrap;flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{-ms-flex-preferred-size:auto;display:-ms-flexbox!important;display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (min-width:992px){.navbar-expand-lg{-ms-flex-pack:start;-ms-flex-wrap:nowrap;flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{-ms-flex-preferred-size:auto;display:-ms-flexbox!important;display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (min-width:1200px){.navbar-expand-xl{-ms-flex-pack:start;-ms-flex-wrap:nowrap;flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{-ms-flex-preferred-size:auto;display:-ms-flexbox!important;display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}@media (min-width:1400px){.navbar-expand-xxl{-ms-flex-pack:start;-ms-flex-wrap:nowrap;flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{-ms-flex-preferred-size:auto;display:-ms-flexbox!important;display:flex!important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}}.navbar-expand{-ms-flex-pack:start;-ms-flex-wrap:nowrap;flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{-ms-flex-preferred-size:auto;display:-ms-flexbox!important;display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.55)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{border-color:rgba(0,0,0,.1);color:rgba(0,0,0,.55)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(0, 0, 0, 0.55)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-light .navbar-text{color:rgba(0,0,0,.55)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.55)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{border-color:hsla(0,0%,100%,.1);color:hsla(0,0%,100%,.55)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(255, 255, 255, 0.55)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.55)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{word-wrap:break-word;background-clip:border-box;background-color:#fff;border:1px solid rgba(0,0,0,.125);border-radius:.25rem;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:0;position:relative}.card>hr{margin-left:0;margin-right:0}.card>.list-group{border-bottom:inherit;border-top:inherit}.card>.list-group:first-child{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px);border-top-width:0}.card>.list-group:last-child{border-bottom-left-radius:calc(.25rem - 1px);border-bottom-right-radius:calc(.25rem - 1px);border-bottom-width:0}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem}.card-title{margin-bottom:.5rem}.card-subtitle{margin-top:-.25rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1rem}.card-header{background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125);margin-bottom:0;padding:.5rem 1rem}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-footer{background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125);padding:.5rem 1rem}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{border-bottom:0;margin-bottom:-.5rem}.card-header-pills,.card-header-tabs{margin-left:-.5rem;margin-right:-.5rem}.card-img-overlay{border-radius:calc(.25rem - 1px);bottom:0;left:0;padding:1rem;position:absolute;right:0;top:0}.card-img,.card-img-bottom,.card-img-top{width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-left-radius:calc(.25rem - 1px);border-bottom-right-radius:calc(.25rem - 1px)}.card-group>.card{margin-bottom:.75rem}@media (min-width:576px){.card-group{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-ms-flex:1 0 0%;flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{border-left:0;margin-left:0}.card-group>.card:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.accordion-button{-ms-flex-align:center;align-items:center;background-color:#fff;border:0;border-radius:0;color:#212529;display:-ms-flexbox;display:flex;font-size:1rem;overflow-anchor:none;padding:1rem 1.25rem;position:relative;text-align:left;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;width:100%}@media (prefers-reduced-motion:reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){background-color:#e7f1ff;box-shadow:inset 0 -1px 0 rgba(0,0,0,.125);color:#0c63e4}.accordion-button:not(.collapsed):after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%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");-webkit-transform:rotate(-180deg);transform:rotate(-180deg)}.accordion-button:after{-ms-flex-negative:0;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%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;content:"";flex-shrink:0;height:1.25rem;margin-left:auto;transition:-webkit-transform .2s ease-in-out;transition:transform .2s ease-in-out;transition:transform .2s ease-in-out,-webkit-transform .2s ease-in-out;width:1.25rem}@media (prefers-reduced-motion:reduce){.accordion-button:after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{border-color:#86b7fe;box-shadow:0 0 0 .25rem rgba(13,110,253,.25);outline:0;z-index:3}.accordion-header{margin-bottom:0}.accordion-item{background-color:#fff;border:1px solid rgba(0,0,0,.125)}.accordion-item:first-of-type{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.accordion-item:first-of-type .accordion-button{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-left-radius:calc(.25rem - 1px);border-bottom-right-radius:calc(.25rem - 1px)}.accordion-item:last-of-type .accordion-collapse{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.accordion-body{padding:1rem 1.25rem}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-left:0;border-radius:0;border-right:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button{border-radius:0}.breadcrumb{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;list-style:none;margin-bottom:1rem;padding:0}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{color:#6c757d;content:var(--bs-breadcrumb-divider,"/");float:left;padding-right:.5rem}.breadcrumb-item.active{color:#6c757d}.pagination{display:-ms-flexbox;display:flex;list-style:none;padding-left:0}.page-link{background-color:#fff;border:1px solid #dee2e6;color:#0d6efd;display:block;position:relative;text-decoration: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}@media (prefers-reduced-motion:reduce){.page-link{transition:none}}.page-link:hover{border-color:#dee2e6;z-index:2}.page-link:focus,.page-link:hover{background-color:#e9ecef;color:#0a58ca}.page-link:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.25);outline:0;z-index:3}.page-item:not(:first-child) .page-link{margin-left:-1px}.page-item.active .page-link{background-color:#0d6efd;border-color:#0d6efd;color:#fff;z-index:3}.page-item.disabled .page-link{background-color:#fff;border-color:#dee2e6;color:#6c757d;pointer-events:none}.page-link{padding:.375rem .75rem}.page-item:first-child .page-link{border-bottom-left-radius:.25rem;border-top-left-radius:.25rem}.page-item:last-child .page-link{border-bottom-right-radius:.25rem;border-top-right-radius:.25rem}.pagination-lg .page-link{font-size:1.25rem;padding:.75rem 1.5rem}.pagination-lg .page-item:first-child .page-link{border-bottom-left-radius:.3rem;border-top-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-bottom-right-radius:.3rem;border-top-right-radius:.3rem}.pagination-sm .page-link{font-size:.875rem;padding:.25rem .5rem}.pagination-sm .page-item:first-child .page-link{border-bottom-left-radius:.2rem;border-top-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-bottom-right-radius:.2rem;border-top-right-radius:.2rem}.badge{border-radius:.25rem;color:#fff;display:inline-block;font-size:.75em;font-weight:700;line-height:1;padding:.35em .65em;text-align:center;vertical-align:baseline;white-space:nowrap}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{border:1px solid transparent;border-radius:.25rem;margin-bottom:1rem;padding:1rem;position:relative}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{padding:1.25rem 1rem;position:absolute;right:0;top:0;z-index:2}.alert-primary{background-color:#cfe2ff;border-color:#b6d4fe;color:#084298}.alert-primary .alert-link{color:#06357a}.alert-secondary{background-color:#e2e3e5;border-color:#d3d6d8;color:#41464b}.alert-secondary .alert-link{color:#34383c}.alert-success{background-color:#d1e7dd;border-color:#badbcc;color:#0f5132}.alert-success .alert-link{color:#0c4128}.alert-info{background-color:#cff4fc;border-color:#b6effb;color:#055160}.alert-info .alert-link{color:#04414d}.alert-warning{background-color:#fff3cd;border-color:#ffecb5;color:#664d03}.alert-warning .alert-link{color:#523e02}.alert-danger{background-color:#f8d7da;border-color:#f5c2c7;color:#842029}.alert-danger .alert-link{color:#6a1a21}.alert-light{background-color:#fefefe;border-color:#fdfdfe;color:#636464}.alert-light .alert-link{color:#4f5050}.alert-dark{background-color:#d3d3d4;border-color:#bcbebf;color:#141619}.alert-dark .alert-link{color:#101214}@-webkit-keyframes progress-bar-stripes{0%{background-position-x:1rem}}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress{background-color:#e9ecef;border-radius:.25rem;font-size:.75rem;height:1rem}.progress,.progress-bar{display:-ms-flexbox;display:flex;overflow:hidden}.progress-bar{-ms-flex-pack:center;background-color:#0d6efd;color:#fff;-ms-flex-direction:column;flex-direction:column;justify-content:center;text-align:center;transition:width .6s ease;white-space:nowrap}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.list-group{border-radius:.25rem;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin-bottom:0;padding-left:0}.list-group-numbered{counter-reset:section;list-style-type:none}.list-group-numbered>li:before{content:counters(section,".") ". ";counter-increment:section}.list-group-item-action{color:#495057;text-align:inherit;width:100%}.list-group-item-action:focus,.list-group-item-action:hover{background-color:#f8f9fa;color:#495057;text-decoration:none;z-index:1}.list-group-item-action:active{background-color:#e9ecef;color:#212529}.list-group-item{background-color:#fff;border:1px solid rgba(0,0,0,.125);color:#212529;display:block;padding:.5rem 1rem;position:relative;text-decoration:none}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{background-color:#fff;color:#6c757d;pointer-events:none}.list-group-item.active{background-color:#0d6efd;border-color:#0d6efd;color:#fff;z-index:2}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{border-top-width:1px;margin-top:-1px}.list-group-horizontal{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}@media (min-width:576px){.list-group-horizontal-sm{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:768px){.list-group-horizontal-md{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-md>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:992px){.list-group-horizontal-lg{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:1200px){.list-group-horizontal-xl{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:1400px){.list-group-horizontal-xxl{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}.list-group-flush{border-radius:0}.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-primary{background-color:#cfe2ff;color:#084298}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{background-color:#bacbe6;color:#084298}.list-group-item-primary.list-group-item-action.active{background-color:#084298;border-color:#084298;color:#fff}.list-group-item-secondary{background-color:#e2e3e5;color:#41464b}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{background-color:#cbccce;color:#41464b}.list-group-item-secondary.list-group-item-action.active{background-color:#41464b;border-color:#41464b;color:#fff}.list-group-item-success{background-color:#d1e7dd;color:#0f5132}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{background-color:#bcd0c7;color:#0f5132}.list-group-item-success.list-group-item-action.active{background-color:#0f5132;border-color:#0f5132;color:#fff}.list-group-item-info{background-color:#cff4fc;color:#055160}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{background-color:#badce3;color:#055160}.list-group-item-info.list-group-item-action.active{background-color:#055160;border-color:#055160;color:#fff}.list-group-item-warning{background-color:#fff3cd;color:#664d03}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{background-color:#e6dbb9;color:#664d03}.list-group-item-warning.list-group-item-action.active{background-color:#664d03;border-color:#664d03;color:#fff}.list-group-item-danger{background-color:#f8d7da;color:#842029}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{background-color:#dfc2c4;color:#842029}.list-group-item-danger.list-group-item-action.active{background-color:#842029;border-color:#842029;color:#fff}.list-group-item-light{background-color:#fefefe;color:#636464}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{background-color:#e5e5e5;color:#636464}.list-group-item-light.list-group-item-action.active{background-color:#636464;border-color:#636464;color:#fff}.list-group-item-dark{background-color:#d3d3d4;color:#141619}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{background-color:#bebebf;color:#141619}.list-group-item-dark.list-group-item-action.active{background-color:#141619;border-color:#141619;color:#fff}.btn-close{background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3E%3C/svg%3E") 50%/1em auto no-repeat;border:0;border-radius:.25rem;box-sizing:content-box;color:#000;height:1em;opacity:.5;padding:.25em;width:1em}.btn-close:hover{color:#000;opacity:.75;text-decoration:none}.btn-close:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.25);opacity:1;outline:0}.btn-close.disabled,.btn-close:disabled{opacity:.25;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn-close-white{-webkit-filter:invert(1) grayscale(100%) brightness(200%);filter:invert(1) grayscale(100%) brightness(200%)}.toast{background-clip:padding-box;background-color:hsla(0,0%,100%,.85);border:1px solid rgba(0,0,0,.1);border-radius:.25rem;box-shadow:0 .5rem 1rem rgba(0,0,0,.15);font-size:.875rem;max-width:100%;pointer-events:auto;width:350px}.toast:not(.showing):not(.show){opacity:0}.toast.hide{display:none}.toast-container{max-width:100%;pointer-events:none;width:-webkit-max-content;width:-moz-max-content;width:max-content}.toast-container>:not(:last-child){margin-bottom:.75rem}.toast-header{-ms-flex-align:center;align-items:center;background-clip:padding-box;background-color:hsla(0,0%,100%,.85);border-bottom:1px solid rgba(0,0,0,.05);border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px);color:#6c757d;display:-ms-flexbox;display:flex;padding:.5rem .75rem}.toast-header .btn-close{margin-left:.75rem;margin-right:-.375rem}.toast-body{word-wrap:break-word;padding:.75rem}.modal{display:none;height:100%;left:0;outline:0;overflow-x:hidden;overflow-y:auto;position:fixed;top:0;width:100%;z-index:1060}.modal-dialog{margin:.5rem;pointer-events:none;position:relative;width:auto}.modal.fade .modal-dialog{-webkit-transform:translateY(-50px);transform:translateY(-50px);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{-webkit-transform:none;transform:none}.modal.modal-static .modal-dialog{-webkit-transform:scale(1.02);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{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;min-height:calc(100% - 1rem)}.modal-content{background-clip:padding-box;background-color:#fff;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;outline:0;pointer-events:auto;position:relative;width:100%}.modal-backdrop{background-color:#000;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:1040}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{-ms-flex-negative:0;-ms-flex-align:center;-ms-flex-pack:justify;align-items:center;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px);display:-ms-flexbox;display:flex;flex-shrink:0;justify-content:space-between;padding:1rem}.modal-header .btn-close{margin:-.5rem -.5rem -.5rem auto;padding:.5rem}.modal-title{line-height:1.5;margin-bottom:0}.modal-body{-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem;position:relative}.modal-footer{-ms-flex-negative:0;-ms-flex-align:center;-ms-flex-pack:end;align-items:center;border-bottom-left-radius:calc(.3rem - 1px);border-bottom-right-radius:calc(.3rem - 1px);border-top:1px solid #dee2e6;display:-ms-flexbox;display:flex;flex-shrink:0;-ms-flex-wrap:wrap;flex-wrap:wrap;justify-content:flex-end;padding:.75rem}.modal-footer>*{margin:.25rem}@media (min-width:576px){.modal-dialog{margin:1.75rem auto;max-width:500px}.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{height:100%;margin:0;max-width:none;width:100vw}.modal-fullscreen .modal-content{border:0;border-radius:0;height:100%}.modal-fullscreen .modal-header{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}.modal-fullscreen .modal-footer{border-radius:0}@media (max-width:575.98px){.modal-fullscreen-sm-down{height:100%;margin:0;max-width:none;width:100vw}.modal-fullscreen-sm-down .modal-content{border:0;border-radius:0;height:100%}.modal-fullscreen-sm-down .modal-header{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}.modal-fullscreen-sm-down .modal-footer{border-radius:0}}@media (max-width:767.98px){.modal-fullscreen-md-down{height:100%;margin:0;max-width:none;width:100vw}.modal-fullscreen-md-down .modal-content{border:0;border-radius:0;height:100%}.modal-fullscreen-md-down .modal-header{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}.modal-fullscreen-md-down .modal-footer{border-radius:0}}@media (max-width:991.98px){.modal-fullscreen-lg-down{height:100%;margin:0;max-width:none;width:100vw}.modal-fullscreen-lg-down .modal-content{border:0;border-radius:0;height:100%}.modal-fullscreen-lg-down .modal-header{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}.modal-fullscreen-lg-down .modal-footer{border-radius:0}}@media (max-width:1199.98px){.modal-fullscreen-xl-down{height:100%;margin:0;max-width:none;width:100vw}.modal-fullscreen-xl-down .modal-content{border:0;border-radius:0;height:100%}.modal-fullscreen-xl-down .modal-header{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}.modal-fullscreen-xl-down .modal-footer{border-radius:0}}@media (max-width:1399.98px){.modal-fullscreen-xxl-down{height:100%;margin:0;max-width:none;width:100vw}.modal-fullscreen-xxl-down .modal-content{border:0;border-radius:0;height:100%}.modal-fullscreen-xxl-down .modal-header{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}.modal-fullscreen-xxl-down .modal-footer{border-radius:0}}.tooltip{word-wrap:break-word;display:block;font-family:var(--bs-font-sans-serif);font-size:.875rem;font-style:normal;font-weight:400;letter-spacing:normal;line-break:auto;line-height:1.5;margin:0;opacity:0;position:absolute;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;z-index:1080}.tooltip.show{opacity:.9}.tooltip .tooltip-arrow{display:block;height:.4rem;position:absolute;width:.8rem}.tooltip .tooltip-arrow:before{border-color:transparent;border-style:solid;content:"";position:absolute}.bs-tooltip-auto[data-popper-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow,.bs-tooltip-top .tooltip-arrow{bottom:0}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before,.bs-tooltip-top .tooltip-arrow:before{border-top-color:#000;border-width:.4rem .4rem 0;top:-1px}.bs-tooltip-auto[data-popper-placement^=right],.bs-tooltip-end{padding:0 .4rem}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow,.bs-tooltip-end .tooltip-arrow{height:.8rem;left:0;width:.4rem}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before,.bs-tooltip-end .tooltip-arrow:before{border-right-color:#000;border-width:.4rem .4rem .4rem 0;right:-1px}.bs-tooltip-auto[data-popper-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow,.bs-tooltip-bottom .tooltip-arrow{top:0}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before,.bs-tooltip-bottom .tooltip-arrow:before{border-bottom-color:#000;border-width:0 .4rem .4rem;bottom:-1px}.bs-tooltip-auto[data-popper-placement^=left],.bs-tooltip-start{padding:0 .4rem}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow,.bs-tooltip-start .tooltip-arrow{height:.8rem;right:0;width:.4rem}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before,.bs-tooltip-start .tooltip-arrow:before{border-left-color:#000;border-width:.4rem 0 .4rem .4rem;left:-1px}.tooltip-inner{background-color:#000;border-radius:.25rem;color:#fff;max-width:200px;padding:.25rem .5rem;text-align:center}.popover{word-wrap:break-word;background-clip:padding-box;background-color:#fff;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;display:block;font-family:var(--bs-font-sans-serif);font-size:.875rem;font-style:normal;font-weight:400;left:0;letter-spacing:normal;line-break:auto;line-height:1.5;max-width:276px;position:absolute;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;top:0;white-space:normal;word-break:normal;word-spacing:normal;z-index:1070}.popover .popover-arrow{display:block;height:.5rem;position:absolute;width:1rem}.popover .popover-arrow:after,.popover .popover-arrow:before{border-color:transparent;border-style:solid;content:"";display:block;position:absolute}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow,.bs-popover-top>.popover-arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:before,.bs-popover-top>.popover-arrow:before{border-top-color:rgba(0,0,0,.25);border-width:.5rem .5rem 0;bottom:0}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:after,.bs-popover-top>.popover-arrow:after{border-top-color:#fff;border-width:.5rem .5rem 0;bottom:1px}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow,.bs-popover-end>.popover-arrow{height:1rem;left:calc(-.5rem - 1px);width:.5rem}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:before,.bs-popover-end>.popover-arrow:before{border-right-color:rgba(0,0,0,.25);border-width:.5rem .5rem .5rem 0;left:0}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:after,.bs-popover-end>.popover-arrow:after{border-right-color:#fff;border-width:.5rem .5rem .5rem 0;left:1px}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow,.bs-popover-bottom>.popover-arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:before,.bs-popover-bottom>.popover-arrow:before{border-bottom-color:rgba(0,0,0,.25);border-width:0 .5rem .5rem;top:0}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:after,.bs-popover-bottom>.popover-arrow:after{border-bottom-color:#fff;border-width:0 .5rem .5rem;top:1px}.bs-popover-auto[data-popper-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{border-bottom:1px solid #f0f0f0;content:"";display:block;left:50%;margin-left:-.5rem;position:absolute;top:0;width:1rem}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow,.bs-popover-start>.popover-arrow{height:1rem;right:calc(-.5rem - 1px);width:.5rem}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:before,.bs-popover-start>.popover-arrow:before{border-left-color:rgba(0,0,0,.25);border-width:.5rem 0 .5rem .5rem;right:0}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:after,.bs-popover-start>.popover-arrow:after{border-left-color:#fff;border-width:.5rem 0 .5rem .5rem;right:1px}.popover-header{background-color:#f0f0f0;border-bottom:1px solid rgba(0,0,0,.2);border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px);font-size:1rem;margin-bottom:0;padding:.5rem 1rem}.popover-header:empty{display:none}.popover-body{color:#212529;padding:1rem}.carousel{position:relative}.carousel.pointer-event{-ms-touch-action:pan-y;touch-action:pan-y}.carousel-inner{overflow:hidden;position:relative;width:100%}.carousel-inner:after{clear:both;content:"";display:block}.carousel-item{-webkit-backface-visibility:hidden;backface-visibility:hidden;display:none;float:left;margin-right:-100%;position:relative;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out;width:100%}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start){-webkit-transform:translateX(100%);transform:translateX(100%)}.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end){-webkit-transform:translateX(-100%);transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;-webkit-transform:none;transform:none;transition-property:opacity}.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end,.carousel-fade .carousel-item.active{opacity:1;z-index:1}.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{opacity:0;transition:opacity 0s .6s;z-index:0}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{transition:none}}.carousel-control-next,.carousel-control-prev{-ms-flex-align:center;-ms-flex-pack:center;align-items:center;background:none;border:0;bottom:0;color:#fff;display:-ms-flexbox;display:flex;justify-content:center;opacity:.5;padding:0;position:absolute;text-align:center;top:0;transition:opacity .15s ease;width:15%;z-index:1}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;opacity:.9;outline:0;text-decoration:none}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{background-position:50%;background-repeat:no-repeat;background-size:100% 100%;display:inline-block;height:2rem;width:2rem}.carousel-control-prev-icon{background-image:url("data:image/svg+xml;charset=utf-8,%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;charset=utf-8,%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{-ms-flex-pack:center;bottom:0;display:-ms-flexbox;display:flex;justify-content:center;left:0;list-style:none;margin-bottom:1rem;margin-left:15%;margin-right:15%;padding:0;position:absolute;right:0;z-index:2}.carousel-indicators [data-bs-target]{background-clip:padding-box;background-color:#fff;border:0;border-bottom:10px solid transparent;border-top:10px solid transparent;box-sizing:content-box;cursor:pointer;-ms-flex:0 1 auto;flex:0 1 auto;height:3px;margin-left:3px;margin-right:3px;opacity:.5;padding:0;text-indent:-999px;transition:opacity .6s ease;width:30px}@media (prefers-reduced-motion:reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{bottom:1.25rem;color:#fff;left:15%;padding-bottom:1.25rem;padding-top:1.25rem;position:absolute;right:15%;text-align:center}.carousel-dark .carousel-control-next-icon,.carousel-dark .carousel-control-prev-icon{-webkit-filter:invert(1) grayscale(100);filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}@-webkit-keyframes spinner-border{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spinner-border{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.spinner-border{-webkit-animation:spinner-border .75s linear infinite;animation:spinner-border .75s linear infinite;border:.25em solid;border-radius:50%;border-right:.25em solid transparent;display:inline-block;height:2rem;vertical-align:-.125em;width:2rem}.spinner-border-sm{border-width:.2em;height:1rem;width:1rem}@-webkit-keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}@keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}.spinner-grow{-webkit-animation:spinner-grow .75s linear infinite;animation:spinner-grow .75s linear infinite;background-color:currentColor;border-radius:50%;display:inline-block;height:2rem;opacity:0;vertical-align:-.125em;width:2rem}.spinner-grow-sm{height:1rem;width:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{-webkit-animation-duration:1.5s;animation-duration:1.5s}}.offcanvas{background-clip:padding-box;background-color:#fff;bottom:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;max-width:100%;outline:0;position:fixed;transition:-webkit-transform .3s ease-in-out;transition:transform .3s ease-in-out;transition:transform .3s ease-in-out,-webkit-transform .3s ease-in-out;visibility:hidden;z-index:1050}@media (prefers-reduced-motion:reduce){.offcanvas{transition:none}}.offcanvas-header{-ms-flex-align:center;-ms-flex-pack:justify;align-items:center;display:-ms-flexbox;display:flex;justify-content:space-between;padding:1rem}.offcanvas-header .btn-close{margin-bottom:-.5rem;margin-right:-.5rem;margin-top:-.5rem;padding:.5rem}.offcanvas-title{line-height:1.5;margin-bottom:0}.offcanvas-body{-ms-flex-positive:1;flex-grow:1;overflow-y:auto;padding:1rem}.offcanvas-start{border-right:1px solid rgba(0,0,0,.2);left:0;top:0;-webkit-transform:translateX(-100%);transform:translateX(-100%);width:400px}.offcanvas-end{border-left:1px solid rgba(0,0,0,.2);right:0;top:0;-webkit-transform:translateX(100%);transform:translateX(100%);width:400px}.offcanvas-top{border-bottom:1px solid rgba(0,0,0,.2);top:0;-webkit-transform:translateY(-100%);transform:translateY(-100%)}.offcanvas-bottom,.offcanvas-top{height:30vh;left:0;max-height:100%;right:0}.offcanvas-bottom{border-top:1px solid rgba(0,0,0,.2);-webkit-transform:translateY(100%);transform:translateY(100%)}.offcanvas.show{-webkit-transform:none;transform:none}.clearfix:after{clear:both;content:"";display:block}.link-primary{color:#0d6efd}.link-primary:focus,.link-primary:hover{color:#0a58ca}.link-secondary{color:#6c757d}.link-secondary:focus,.link-secondary:hover{color:#565e64}.link-success{color:#198754}.link-success:focus,.link-success:hover{color:#146c43}.link-info{color:#0dcaf0}.link-info:focus,.link-info:hover{color:#3dd5f3}.link-warning{color:#ffc107}.link-warning:focus,.link-warning:hover{color:#ffcd39}.link-danger{color:#dc3545}.link-danger:focus,.link-danger:hover{color:#b02a37}.link-light{color:#f8f9fa}.link-light:focus,.link-light:hover{color:#f9fafb}.link-dark{color:#212529}.link-dark:focus,.link-dark:hover{color:#1a1e21}.ratio{position:relative;width:100%}.ratio:before{content:"";display:block;padding-top:var(--bs-aspect-ratio)}.ratio>*{height:100%;left:0;position:absolute;top:0;width:100%}.ratio-1x1{--bs-aspect-ratio:100%}.ratio-4x3{--bs-aspect-ratio:75%}.ratio-16x9{--bs-aspect-ratio:56.25%}.ratio-21x9{--bs-aspect-ratio:42.85714%}.fixed-top{top:0}.fixed-bottom,.fixed-top{left:0;position:fixed;right:0;z-index:1030}.fixed-bottom{bottom:0}.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}@media (min-width:576px){.sticky-sm-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:768px){.sticky-md-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:992px){.sticky-lg-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:1200px){.sticky-xl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:1400px){.sticky-xxl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}.stretched-link:after{bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.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}.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:-ms-grid!important;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:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-ms-inline-flexbox!important;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:-webkit-sticky!important;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{-webkit-transform:translate(-50%,-50%)!important;transform:translate(-50%,-50%)!important}.translate-middle-x{-webkit-transform:translateX(-50%)!important;transform:translateX(-50%)!important}.translate-middle-y{-webkit-transform:translateY(-50%)!important;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-primary{border-color:#0d6efd!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#198754!important}.border-info{border-color:#0dcaf0!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#212529!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{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;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{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-evenly{-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;-ms-grid-row-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;-ms-grid-row-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;-ms-grid-row-align:stretch!important;align-self:stretch!important}.order-first{-ms-flex-order:-1!important;order:-1!important}.order-0{-ms-flex-order:0!important;order:0!important}.order-1{-ms-flex-order:1!important;order:1!important}.order-2{-ms-flex-order:2!important;order:2!important}.order-3{-ms-flex-order:3!important;order:3!important}.order-4{-ms-flex-order:4!important;order:4!important}.order-5{-ms-flex-order:5!important;order:5!important}.order-last{-ms-flex-order:6!important;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-left:0!important;margin-right:0!important}.mx-1{margin-left:.25rem!important;margin-right:.25rem!important}.mx-2{margin-left:.5rem!important;margin-right:.5rem!important}.mx-3{margin-left:1rem!important;margin-right:1rem!important}.mx-4{margin-left:1.5rem!important;margin-right:1.5rem!important}.mx-5{margin-left:3rem!important;margin-right:3rem!important}.mx-auto{margin-left:auto!important;margin-right:auto!important}.my-0{margin-bottom:0!important;margin-top:0!important}.my-1{margin-bottom:.25rem!important;margin-top:.25rem!important}.my-2{margin-bottom:.5rem!important;margin-top:.5rem!important}.my-3{margin-bottom:1rem!important;margin-top:1rem!important}.my-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}.my-5{margin-bottom:3rem!important;margin-top:3rem!important}.my-auto{margin-bottom:auto!important;margin-top: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-left:0!important;padding-right:0!important}.px-1{padding-left:.25rem!important;padding-right:.25rem!important}.px-2{padding-left:.5rem!important;padding-right:.5rem!important}.px-3{padding-left:1rem!important;padding-right:1rem!important}.px-4{padding-left:1.5rem!important;padding-right:1.5rem!important}.px-5{padding-left:3rem!important;padding-right:3rem!important}.py-0{padding-bottom:0!important;padding-top:0!important}.py-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.py-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.py-3{padding-bottom:1rem!important;padding-top:1rem!important}.py-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}.py-5{padding-bottom:3rem!important;padding-top: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.375rem + 1.5vw)!important}.fs-2{font-size:calc(1.325rem + .9vw)!important}.fs-3{font-size:calc(1.3rem + .6vw)!important}.fs-4{font-size:calc(1.275rem + .3vw)!important}.fs-5{font-size:1.25rem!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-primary{color:#0d6efd!important}.text-secondary{color:#6c757d!important}.text-success{color:#198754!important}.text-info{color:#0dcaf0!important}.text-warning{color:#ffc107!important}.text-danger{color:#dc3545!important}.text-light{color:#f8f9fa!important}.text-dark{color:#212529!important}.text-white{color:#fff!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-reset{color:inherit!important}.bg-primary{background-color:#0d6efd!important}.bg-secondary{background-color:#6c757d!important}.bg-success{background-color:#198754!important}.bg-info{background-color:#0dcaf0!important}.bg-warning{background-color:#ffc107!important}.bg-danger{background-color:#dc3545!important}.bg-light{background-color:#f8f9fa!important}.bg-dark{background-color:#212529!important}.bg-body,.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;-ms-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;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:.2rem!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}.rounded-end,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-end{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-start{border-bottom-left-radius:.25rem!important}.rounded-start{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:-ms-grid!important;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:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}.d-sm-none{display:none!important}.flex-sm-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;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{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-sm-evenly{-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-sm-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;-ms-grid-row-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;-ms-grid-row-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;-ms-grid-row-align:stretch!important;align-self:stretch!important}.order-sm-first{-ms-flex-order:-1!important;order:-1!important}.order-sm-0{-ms-flex-order:0!important;order:0!important}.order-sm-1{-ms-flex-order:1!important;order:1!important}.order-sm-2{-ms-flex-order:2!important;order:2!important}.order-sm-3{-ms-flex-order:3!important;order:3!important}.order-sm-4{-ms-flex-order:4!important;order:4!important}.order-sm-5{-ms-flex-order:5!important;order:5!important}.order-sm-last{-ms-flex-order:6!important;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-left:0!important;margin-right:0!important}.mx-sm-1{margin-left:.25rem!important;margin-right:.25rem!important}.mx-sm-2{margin-left:.5rem!important;margin-right:.5rem!important}.mx-sm-3{margin-left:1rem!important;margin-right:1rem!important}.mx-sm-4{margin-left:1.5rem!important;margin-right:1.5rem!important}.mx-sm-5{margin-left:3rem!important;margin-right:3rem!important}.mx-sm-auto{margin-left:auto!important;margin-right:auto!important}.my-sm-0{margin-bottom:0!important;margin-top:0!important}.my-sm-1{margin-bottom:.25rem!important;margin-top:.25rem!important}.my-sm-2{margin-bottom:.5rem!important;margin-top:.5rem!important}.my-sm-3{margin-bottom:1rem!important;margin-top:1rem!important}.my-sm-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}.my-sm-5{margin-bottom:3rem!important;margin-top:3rem!important}.my-sm-auto{margin-bottom:auto!important;margin-top: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-left:0!important;padding-right:0!important}.px-sm-1{padding-left:.25rem!important;padding-right:.25rem!important}.px-sm-2{padding-left:.5rem!important;padding-right:.5rem!important}.px-sm-3{padding-left:1rem!important;padding-right:1rem!important}.px-sm-4{padding-left:1.5rem!important;padding-right:1.5rem!important}.px-sm-5{padding-left:3rem!important;padding-right:3rem!important}.py-sm-0{padding-bottom:0!important;padding-top:0!important}.py-sm-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.py-sm-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.py-sm-3{padding-bottom:1rem!important;padding-top:1rem!important}.py-sm-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}.py-sm-5{padding-bottom:3rem!important;padding-top: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:-ms-grid!important;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:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}.d-md-none{display:none!important}.flex-md-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;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{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-md-evenly{-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-md-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;-ms-grid-row-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;-ms-grid-row-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;-ms-grid-row-align:stretch!important;align-self:stretch!important}.order-md-first{-ms-flex-order:-1!important;order:-1!important}.order-md-0{-ms-flex-order:0!important;order:0!important}.order-md-1{-ms-flex-order:1!important;order:1!important}.order-md-2{-ms-flex-order:2!important;order:2!important}.order-md-3{-ms-flex-order:3!important;order:3!important}.order-md-4{-ms-flex-order:4!important;order:4!important}.order-md-5{-ms-flex-order:5!important;order:5!important}.order-md-last{-ms-flex-order:6!important;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-left:0!important;margin-right:0!important}.mx-md-1{margin-left:.25rem!important;margin-right:.25rem!important}.mx-md-2{margin-left:.5rem!important;margin-right:.5rem!important}.mx-md-3{margin-left:1rem!important;margin-right:1rem!important}.mx-md-4{margin-left:1.5rem!important;margin-right:1.5rem!important}.mx-md-5{margin-left:3rem!important;margin-right:3rem!important}.mx-md-auto{margin-left:auto!important;margin-right:auto!important}.my-md-0{margin-bottom:0!important;margin-top:0!important}.my-md-1{margin-bottom:.25rem!important;margin-top:.25rem!important}.my-md-2{margin-bottom:.5rem!important;margin-top:.5rem!important}.my-md-3{margin-bottom:1rem!important;margin-top:1rem!important}.my-md-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}.my-md-5{margin-bottom:3rem!important;margin-top:3rem!important}.my-md-auto{margin-bottom:auto!important;margin-top: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-left:0!important;padding-right:0!important}.px-md-1{padding-left:.25rem!important;padding-right:.25rem!important}.px-md-2{padding-left:.5rem!important;padding-right:.5rem!important}.px-md-3{padding-left:1rem!important;padding-right:1rem!important}.px-md-4{padding-left:1.5rem!important;padding-right:1.5rem!important}.px-md-5{padding-left:3rem!important;padding-right:3rem!important}.py-md-0{padding-bottom:0!important;padding-top:0!important}.py-md-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.py-md-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.py-md-3{padding-bottom:1rem!important;padding-top:1rem!important}.py-md-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}.py-md-5{padding-bottom:3rem!important;padding-top: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:-ms-grid!important;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:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}.d-lg-none{display:none!important}.flex-lg-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;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{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-lg-evenly{-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-lg-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;-ms-grid-row-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;-ms-grid-row-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;-ms-grid-row-align:stretch!important;align-self:stretch!important}.order-lg-first{-ms-flex-order:-1!important;order:-1!important}.order-lg-0{-ms-flex-order:0!important;order:0!important}.order-lg-1{-ms-flex-order:1!important;order:1!important}.order-lg-2{-ms-flex-order:2!important;order:2!important}.order-lg-3{-ms-flex-order:3!important;order:3!important}.order-lg-4{-ms-flex-order:4!important;order:4!important}.order-lg-5{-ms-flex-order:5!important;order:5!important}.order-lg-last{-ms-flex-order:6!important;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-left:0!important;margin-right:0!important}.mx-lg-1{margin-left:.25rem!important;margin-right:.25rem!important}.mx-lg-2{margin-left:.5rem!important;margin-right:.5rem!important}.mx-lg-3{margin-left:1rem!important;margin-right:1rem!important}.mx-lg-4{margin-left:1.5rem!important;margin-right:1.5rem!important}.mx-lg-5{margin-left:3rem!important;margin-right:3rem!important}.mx-lg-auto{margin-left:auto!important;margin-right:auto!important}.my-lg-0{margin-bottom:0!important;margin-top:0!important}.my-lg-1{margin-bottom:.25rem!important;margin-top:.25rem!important}.my-lg-2{margin-bottom:.5rem!important;margin-top:.5rem!important}.my-lg-3{margin-bottom:1rem!important;margin-top:1rem!important}.my-lg-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}.my-lg-5{margin-bottom:3rem!important;margin-top:3rem!important}.my-lg-auto{margin-bottom:auto!important;margin-top: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-left:0!important;padding-right:0!important}.px-lg-1{padding-left:.25rem!important;padding-right:.25rem!important}.px-lg-2{padding-left:.5rem!important;padding-right:.5rem!important}.px-lg-3{padding-left:1rem!important;padding-right:1rem!important}.px-lg-4{padding-left:1.5rem!important;padding-right:1.5rem!important}.px-lg-5{padding-left:3rem!important;padding-right:3rem!important}.py-lg-0{padding-bottom:0!important;padding-top:0!important}.py-lg-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.py-lg-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.py-lg-3{padding-bottom:1rem!important;padding-top:1rem!important}.py-lg-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}.py-lg-5{padding-bottom:3rem!important;padding-top: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:-ms-grid!important;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:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}.d-xl-none{display:none!important}.flex-xl-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;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{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-xl-evenly{-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-xl-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;-ms-grid-row-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;-ms-grid-row-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;-ms-grid-row-align:stretch!important;align-self:stretch!important}.order-xl-first{-ms-flex-order:-1!important;order:-1!important}.order-xl-0{-ms-flex-order:0!important;order:0!important}.order-xl-1{-ms-flex-order:1!important;order:1!important}.order-xl-2{-ms-flex-order:2!important;order:2!important}.order-xl-3{-ms-flex-order:3!important;order:3!important}.order-xl-4{-ms-flex-order:4!important;order:4!important}.order-xl-5{-ms-flex-order:5!important;order:5!important}.order-xl-last{-ms-flex-order:6!important;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-left:0!important;margin-right:0!important}.mx-xl-1{margin-left:.25rem!important;margin-right:.25rem!important}.mx-xl-2{margin-left:.5rem!important;margin-right:.5rem!important}.mx-xl-3{margin-left:1rem!important;margin-right:1rem!important}.mx-xl-4{margin-left:1.5rem!important;margin-right:1.5rem!important}.mx-xl-5{margin-left:3rem!important;margin-right:3rem!important}.mx-xl-auto{margin-left:auto!important;margin-right:auto!important}.my-xl-0{margin-bottom:0!important;margin-top:0!important}.my-xl-1{margin-bottom:.25rem!important;margin-top:.25rem!important}.my-xl-2{margin-bottom:.5rem!important;margin-top:.5rem!important}.my-xl-3{margin-bottom:1rem!important;margin-top:1rem!important}.my-xl-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}.my-xl-5{margin-bottom:3rem!important;margin-top:3rem!important}.my-xl-auto{margin-bottom:auto!important;margin-top: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-left:0!important;padding-right:0!important}.px-xl-1{padding-left:.25rem!important;padding-right:.25rem!important}.px-xl-2{padding-left:.5rem!important;padding-right:.5rem!important}.px-xl-3{padding-left:1rem!important;padding-right:1rem!important}.px-xl-4{padding-left:1.5rem!important;padding-right:1.5rem!important}.px-xl-5{padding-left:3rem!important;padding-right:3rem!important}.py-xl-0{padding-bottom:0!important;padding-top:0!important}.py-xl-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.py-xl-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.py-xl-3{padding-bottom:1rem!important;padding-top:1rem!important}.py-xl-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}.py-xl-5{padding-bottom:3rem!important;padding-top: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:-ms-grid!important;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:-ms-flexbox!important;display:flex!important}.d-xxl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}.d-xxl-none{display:none!important}.flex-xxl-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xxl-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-xxl-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-xxl-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xxl-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xxl-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-xxl-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-xxl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xxl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-xxl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xxl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;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{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xxl-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xxl-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xxl-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xxl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-xxl-evenly{-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-xxl-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xxl-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xxl-center{-ms-flex-align:center!important;align-items:center!important}.align-items-xxl-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xxl-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xxl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xxl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xxl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xxl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xxl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xxl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xxl-auto{-ms-flex-item-align:auto!important;-ms-grid-row-align:auto!important;align-self:auto!important}.align-self-xxl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xxl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xxl-center{-ms-flex-item-align:center!important;-ms-grid-row-align:center!important;align-self:center!important}.align-self-xxl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xxl-stretch{-ms-flex-item-align:stretch!important;-ms-grid-row-align:stretch!important;align-self:stretch!important}.order-xxl-first{-ms-flex-order:-1!important;order:-1!important}.order-xxl-0{-ms-flex-order:0!important;order:0!important}.order-xxl-1{-ms-flex-order:1!important;order:1!important}.order-xxl-2{-ms-flex-order:2!important;order:2!important}.order-xxl-3{-ms-flex-order:3!important;order:3!important}.order-xxl-4{-ms-flex-order:4!important;order:4!important}.order-xxl-5{-ms-flex-order:5!important;order:5!important}.order-xxl-last{-ms-flex-order:6!important;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-left:0!important;margin-right:0!important}.mx-xxl-1{margin-left:.25rem!important;margin-right:.25rem!important}.mx-xxl-2{margin-left:.5rem!important;margin-right:.5rem!important}.mx-xxl-3{margin-left:1rem!important;margin-right:1rem!important}.mx-xxl-4{margin-left:1.5rem!important;margin-right:1.5rem!important}.mx-xxl-5{margin-left:3rem!important;margin-right:3rem!important}.mx-xxl-auto{margin-left:auto!important;margin-right:auto!important}.my-xxl-0{margin-bottom:0!important;margin-top:0!important}.my-xxl-1{margin-bottom:.25rem!important;margin-top:.25rem!important}.my-xxl-2{margin-bottom:.5rem!important;margin-top:.5rem!important}.my-xxl-3{margin-bottom:1rem!important;margin-top:1rem!important}.my-xxl-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}.my-xxl-5{margin-bottom:3rem!important;margin-top:3rem!important}.my-xxl-auto{margin-bottom:auto!important;margin-top: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-left:0!important;padding-right:0!important}.px-xxl-1{padding-left:.25rem!important;padding-right:.25rem!important}.px-xxl-2{padding-left:.5rem!important;padding-right:.5rem!important}.px-xxl-3{padding-left:1rem!important;padding-right:1rem!important}.px-xxl-4{padding-left:1.5rem!important;padding-right:1.5rem!important}.px-xxl-5{padding-left:3rem!important;padding-right:3rem!important}.py-xxl-0{padding-bottom:0!important;padding-top:0!important}.py-xxl-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.py-xxl-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.py-xxl-3{padding-bottom:1rem!important;padding-top:1rem!important}.py-xxl-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}.py-xxl-5{padding-bottom:3rem!important;padding-top: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}}@media (min-width:1200px){.fs-1{font-size:2.5rem!important}.fs-2{font-size:2rem!important}.fs-3{font-size:1.75rem!important}.fs-4{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:-ms-grid!important;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:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}.d-print-none{display:none!important}}.oe-header{-ms-flex-align:center;-ms-flex-pack:justify;align-items:center;display:-ms-flexbox;display:flex;justify-content:space-between;margin:.5rem}.oe-language .modal-content{background-color:#f8f9fa;color:#212529}.oe-language__list{display:-ms-grid;display:grid;gap:1rem;margin-bottom:1rem}.oe-language__item{background-color:transparent;color:#0d6efd}.oe-language__item:focus,.oe-language__item:hover{background-color:transparent;color:#0a58ca}.oe-header__navbar,.oe-header__navbar .nav-link.active{background-color:transparent}.icon--2xs{height:.75rem;width:.75rem}.icon--xs{height:1rem;width:1rem}.icon--s{height:1.25rem;width:1.25rem}.icon--m{height:1.5rem;width:1.5rem}.icon--l{height:2rem;width:2rem}.icon--xl{height:2.5rem;width:2.5rem}.icon--2xl{height:3rem;width:3rem}.icon--fluid{height:1em;width:1em}.icon--rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.icon--rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.icon--rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.icon--flip-horizontal{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.icon--flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.btn .bi,a .bi{margin:0 .2rem;vertical-align:middle} +/*# sourceMappingURL=oe-bcl-default.min.css.map */ \ No newline at end of file diff --git a/assets/css/oe-bcl-default.min.css.map b/assets/css/oe-bcl-default.min.css.map new file mode 100644 index 00000000..a3edf21d --- /dev/null +++ b/assets/css/oe-bcl-default.min.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_type.scss","../oe-bcl-default.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_root.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_reboot.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_variables.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/vendor/_rfs.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_border-radius.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_lists.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_images.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_image.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_containers.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_container.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_breakpoints.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_grid.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_grid.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_tables.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_table-variants.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_labels.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-text.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-control.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_transition.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_gradients.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-select.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-check.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-range.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_floating-labels.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_input-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_forms.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_buttons.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_buttons.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_transitions.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_dropdown.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_caret.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_button-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_nav.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_navbar.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_card.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_accordion.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_breadcrumb.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_pagination.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_pagination.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_badge.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_alert.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_alert.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_progress.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_list-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_list-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_close.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_toasts.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_modal.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_tooltip.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_reset-text.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_popover.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_carousel.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_clearfix.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_spinners.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_offcanvas.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_colored-links.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_ratio.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_position.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_visually-hidden.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_visually-hidden.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_stretched-link.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_text-truncation.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_text-truncate.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_utilities.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/utilities/_api.scss","../../../../../node_modules/@openeuropa/bcl-theme-default/scss/_header.scss","../../../../../node_modules/@openeuropa/bcl-theme-default/scss/_icon.scss"],"names":[],"mappings":"AAoGE,gBCqcF,CCziBA,MAGI,iBAAA,CAAA,mBAAA,CAAA,mBAAA,CAAA,iBAAA,CAAA,gBAAA,CAAA,mBAAA,CAAA,mBAAA,CAAA,kBAAA,CAAA,iBAAA,CAAA,iBAAA,CAAA,eAAA,CAAA,iBAAA,CAAA,sBAAA,CAIA,oBAAA,CAAA,sBAAA,CAAA,oBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,mBAAA,CAAA,kBAAA,CAAA,iBAAA,CAKF,wMAAA,CACA,kGAAA,CACA,4EDYF,CEXA,iBAGE,qBFcF,CEDI,8CAJJ,MAKM,sBFKJ,CACF,CEOA,KASE,6BAAA,CACA,yCAAA,CAFA,qBC7CS,CD2CT,aClCS,CD8BT,qCCsX4B,CChIxB,cALI,CF/OR,eCgY4B,CD/X5B,eCqY4B,CDzY5B,QFIF,CEcA,GAGE,6BAAA,CACA,QAAA,CAFA,aCqb4B,CDtb5B,aAAA,CAIA,WFXF,CEcA,eACE,UFXF,CEqBA,0CAKE,eC0X4B,CDzX5B,eC0X4B,CD9X5B,mBC0X4B,CD3X5B,YFfF,CEwBA,OE4MQ,gCJhOR,CI8DI,0BF1CJ,OEmNQ,gBJnON,CACF,CEoBA,OEuMQ,+BJvNR,CIqDI,0BFrCJ,OE8MQ,cJ1NN,CACF,CEgBA,OEkMQ,6BJ9MR,CI4CI,0BFhCJ,OEyMQ,iBJjNN,CACF,CEYA,OE6LQ,+BJrMR,CImCI,0BF3BJ,OEoMQ,gBJxMN,CACF,CEQA,OEoLM,iBJxLN,CESA,OE+KM,cJpLN,CEgBA,EAEE,kBCyK0B,CD1K1B,YFZF,CEwBA,yCAGE,WAAA,CADA,wCAAA,CAAA,gCAAA,CAEA,qCAAA,CAAA,6BFrBF,CE2BA,QAEE,iBAAA,CACA,mBAAA,CAFA,kBFtBF,CE8BA,MAEE,iBF3BF,CE8BA,SAIE,kBAAA,CADA,YF1BF,CE8BA,wBAIE,eF3BF,CE8BA,GACE,eF3BF,CEgCA,GACE,mBAAA,CACA,aF7BF,CEmCA,WACE,eFhCF,CEwCA,SAEE,kBFrCF,CE6CA,aEgFM,gBJzHN,CEgDA,WAEE,wBCyS4B,CD1S5B,YF5CF,CEsDA,QE8DM,eALI,CFrDR,aAAA,CAFA,iBAAA,CAGA,uBFnDF,CEsDA,IAAM,aFlDN,CEmDA,IAAM,SF/CN,CEoDA,EACE,aChNQ,CDiNR,yBFjDF,CEmDE,QACE,aFjDJ,CE4DE,4DAEE,aAAA,CACA,oBF1DJ,CEiEA,kBAME,aAAA,CAFA,oCCmJ4B,CCjIxB,aALI,CFVR,0BF9DF,CEqEA,IACE,aAAA,CEOI,gBALI,CFAR,kBAAA,CADA,YAAA,CAEA,aFjEF,CEsEE,SAEE,aAAA,CEHE,iBALI,CFSN,iBFpEJ,CEwEA,KAGE,oBAAA,CADA,aCtQQ,CC4PJ,gBJ1DN,CEwEE,OACE,aFtEJ,CE0EA,IAIE,wBC3SS,CEEP,mBAAA,CHwSF,UCnTS,CC6RL,gBALI,CFyBR,mBFnEF,CEyEE,QE1BI,aALI,CFkCN,eCgH0B,CDlH1B,SFrEJ,CEgFA,OACE,eF7EF,CEmFA,QAEE,qBFhFF,CEwFA,MAEE,wBAAA,CADA,mBFpFF,CEwFA,QAGE,aCtVS,CDqVT,oBC6K4B,CD9K5B,iBC8K4B,CD3K5B,eFrFF,CE4FA,GAEE,kBAAA,CACA,+BF1FF,CE6FA,2BAQE,cAAA,CAFA,oBFxFF,CEkGA,MACE,oBF/FF,CEqGA,OAEE,eFnGF,CE2GA,iCACE,SFxGF,CE6GA,sCAME,mBAAA,CE1HI,iBALI,CFiIR,mBAAA,CAHA,QFvGF,CE8GA,cAEE,mBF3GF,CEgHA,cACE,cF7GF,CEgHA,OAGE,gBF/GF,CEkHE,gBACE,SFhHJ,CEuHA,0CACE,YFpHF,CE4HA,gDAIE,yBFzHF,CE4HI,4GACE,cFvHN,CE8HA,mBAEE,iBAAA,CADA,SF1HF,CEgIA,SACE,eF7HF,CEuIA,SAIE,QAAA,CADA,QAAA,CAFA,WAAA,CACA,SFlIF,CE4IA,OACE,UAAA,CE5MM,+BAAA,CFkNN,mBAAA,CAHA,mBCG4B,CDJ5B,SAAA,CADA,UFrIF,CI1OI,0BF6WJ,OEpMQ,gBJqEN,CACF,CEuIE,SACE,UFrIJ,CE4IA,+OAOE,SFzIF,CE4IA,4BACE,WFzIF,CEkJA,cAEE,4BAAA,CADA,mBF9IF,CEkKA,4BACE,uBFvJF,CE4JA,+BACE,SFzJF,CE+JA,uBACE,YF5JF,CEkKA,6BAEE,yBAAA,CADA,YF9JF,CEoKA,OACE,oBFjKF,CEsKA,OACE,QFnKF,CE0KA,QAEE,cAAA,CADA,iBFtKF,CE+KA,SACE,uBF5KF,CEoLA,SACE,sBFjLF,CD9ZA,MKyQM,iBALI,CLlQR,eCiaF,CD5ZE,WKsQM,gCAAA,CLpQJ,eI4bkB,CJ3blB,eC+ZJ,CI9TI,0BLpGF,WK6QM,cJyJN,CACF,CDvaE,WKsQM,gCAAA,CLpQJ,eI4bkB,CJ3blB,eC0aJ,CIzUI,0BLpGF,WK6QM,gBJoKN,CACF,CDlbE,WKsQM,gCAAA,CLpQJ,eI4bkB,CJ3blB,eCqbJ,CIpVI,0BLpGF,WK6QM,cJ+KN,CACF,CD7bE,WKsQM,gCAAA,CLpQJ,eI4bkB,CJ3blB,eCgcJ,CI/VI,0BLpGF,WK6QM,gBJ0LN,CACF,CDxcE,WKsQM,gCAAA,CLpQJ,eI4bkB,CJ3blB,eC2cJ,CI1WI,0BLpGF,WK6QM,cJqMN,CACF,CDndE,WKsQM,gCAAA,CLpQJ,eI4bkB,CJ3blB,eCsdJ,CIrXI,0BLpGF,WK6QM,gBJgNN,CACF,CDncA,4BOzDE,eAAA,CADA,cNugBF,CD1cA,kBACE,oBC6cF,CD3cE,mCACE,kBC6cJ,CDncA,YKsNM,gBALI,CL/MR,wBCscF,CDlcA,YKgNM,iBALI,CL1MR,kBCscF,CDncE,wBACE,eCqcJ,CDjcA,mBAIE,aIpFS,CCuRL,gBALI,CLhMR,kBIyJO,CJ1JP,gBCucF,CDlcE,0BACE,YCocJ,CO5hBA,0BCCE,WAAA,CAHA,cR4iBF,CO1iBA,eAEE,qBJPS,CIQT,wBAAA,CFGE,oBAAA,CELF,cPyiBF,CO3hBA,QAEE,oBP6hBF,CO1hBA,YAEE,aAAA,CADA,mBP8hBF,CO1hBA,gBAEE,aJ1BS,CCuRL,gBJgSN,CS/jBE,mGCCA,gBAAA,CADA,iBAAA,CADA,sCAAA,CADA,uCAAA,CADA,UVglBF,CWphBI,yBF5CE,yBACE,eTokBN,CACF,CW1hBI,yBF5CE,uCACE,eTykBN,CACF,CW/hBI,yBF5CE,qDACE,eT8kBN,CACF,CWpiBI,0BF5CE,mEACE,gBTmlBN,CACF,CWziBI,0BF5CE,kFACE,gBTwlBN,CACF,CYxmBE,KCAA,oBAA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ArEN,kBb23BJ,CatzBU,cAtEN,iBAAA,CAAA,abi4BJ,Ca3zBU,OArEN,Sbg4BJ,Ca3zBU,QArEN,kBbq4BJ,Cah0BU,gBAtEN,iBAAA,CAAA,ab24BJ,Car0BU,QArEN,kBb04BJ,Car0BU,QAtEN,iBAAA,CAAA,aAAA,CACA,Ub+4BJ,Cal0BY,UA9DV,uBbo4BF,Cat0BY,UA9DV,wBbw4BF,Ca10BY,UA9DV,eb44BF,Ca90BY,UA9DV,wBbg5BF,Cal1BY,UA9DV,wBbo5BF,Cat1BY,UA9DV,ebw5BF,Ca11BY,UA9DV,wBb45BF,Ca91BY,UA9DV,wBbg6BF,Cal2BY,UA9DV,ebo6BF,Cat2BY,WA9DV,wBbw6BF,Ca12BY,WA9DV,wBb46BF,Can2BQ,WAEE,ebs2BV,Can2BQ,WAEE,ebs2BV,Ca72BQ,WAEE,qBbg3BV,Ca72BQ,WAEE,qBbg3BV,Cav3BQ,WAEE,oBb03BV,Cav3BQ,WAEE,oBb03BV,Caj4BQ,WAEE,kBbo4BV,Caj4BQ,WAEE,kBbo4BV,Ca34BQ,WAEE,oBb84BV,Ca34BQ,WAEE,oBb84BV,Car5BQ,WAEE,kBbw5BV,Car5BQ,WAEE,kBbw5BV,CWv9BI,yBE+BE,aArDJ,Ubm/BA,Cax7BQ,uBA5DR,iBAAA,CAAA,aby/BA,Ca77BQ,UArEN,iBbkgCF,Ca77BQ,UArEN,kBbugCF,Cal8BQ,oBAtEN,iBAAA,CAAA,ab6gCF,Cav8BQ,UArEN,Sb4gCF,Cav8BQ,UArEN,kBbihCF,Ca58BQ,oBAtEN,iBAAA,CAAA,abuhCF,Caj9BQ,UArEN,kBbshCF,Caj9BQ,UArEN,Sb2hCF,Cat9BQ,oBAtEN,iBAAA,CAAA,abiiCF,Ca39BQ,UArEN,kBbgiCF,Ca39BQ,UArEN,kBbqiCF,Cah+BQ,oBAtEN,iBAAA,CAAA,ab2iCF,Car+BQ,UArEN,Sb0iCF,Car+BQ,WArEN,kBb+iCF,Ca1+BQ,sBAtEN,iBAAA,CAAA,abqjCF,Ca/+BQ,WArEN,kBbojCF,Ca/+BQ,WAtEN,iBAAA,CAAA,aAAA,CACA,UbyjCF,Ca5+BU,aA9DV,ab8iCA,Cah/BU,aA9DV,uBbkjCA,Cap/BU,aA9DV,wBbsjCA,Cax/BU,aA9DV,eb0jCA,Ca5/BU,aA9DV,wBb8jCA,CahgCU,aA9DV,wBbkkCA,CapgCU,aA9DV,ebskCA,CaxgCU,aA9DV,wBb0kCA,Ca5gCU,aA9DV,wBb8kCA,CahhCU,aA9DV,ebklCA,CaphCU,cA9DV,wBbslCA,CaxhCU,cA9DV,wBb0lCA,CajhCM,iBAEE,ebohCR,CajhCM,iBAEE,ebohCR,Ca3hCM,iBAEE,qBb8hCR,Ca3hCM,iBAEE,qBb8hCR,CariCM,iBAEE,oBbwiCR,CariCM,iBAEE,oBbwiCR,Ca/iCM,iBAEE,kBbkjCR,Ca/iCM,iBAEE,kBbkjCR,CazjCM,iBAEE,oBb4jCR,CazjCM,iBAEE,oBb4jCR,CankCM,iBAEE,kBbskCR,CankCM,iBAEE,kBbskCR,CACF,CWtoCI,yBE+BE,aArDJ,UbiqCA,CatmCQ,uBA5DR,iBAAA,CAAA,abuqCA,Ca3mCQ,UArEN,iBbgrCF,Ca3mCQ,UArEN,kBbqrCF,CahnCQ,oBAtEN,iBAAA,CAAA,ab2rCF,CarnCQ,UArEN,Sb0rCF,CarnCQ,UArEN,kBb+rCF,Ca1nCQ,oBAtEN,iBAAA,CAAA,abqsCF,Ca/nCQ,UArEN,kBbosCF,Ca/nCQ,UArEN,SbysCF,CapoCQ,oBAtEN,iBAAA,CAAA,ab+sCF,CazoCQ,UArEN,kBb8sCF,CazoCQ,UArEN,kBbmtCF,Ca9oCQ,oBAtEN,iBAAA,CAAA,abytCF,CanpCQ,UArEN,SbwtCF,CanpCQ,WArEN,kBb6tCF,CaxpCQ,sBAtEN,iBAAA,CAAA,abmuCF,Ca7pCQ,WArEN,kBbkuCF,Ca7pCQ,WAtEN,iBAAA,CAAA,aAAA,CACA,UbuuCF,Ca1pCU,aA9DV,ab4tCA,Ca9pCU,aA9DV,uBbguCA,CalqCU,aA9DV,wBbouCA,CatqCU,aA9DV,ebwuCA,Ca1qCU,aA9DV,wBb4uCA,Ca9qCU,aA9DV,wBbgvCA,CalrCU,aA9DV,ebovCA,CatrCU,aA9DV,wBbwvCA,Ca1rCU,aA9DV,wBb4vCA,Ca9rCU,aA9DV,ebgwCA,CalsCU,cA9DV,wBbowCA,CatsCU,cA9DV,wBbwwCA,Ca/rCM,iBAEE,ebksCR,Ca/rCM,iBAEE,ebksCR,CazsCM,iBAEE,qBb4sCR,CazsCM,iBAEE,qBb4sCR,CantCM,iBAEE,oBbstCR,CantCM,iBAEE,oBbstCR,Ca7tCM,iBAEE,kBbguCR,Ca7tCM,iBAEE,kBbguCR,CavuCM,iBAEE,oBb0uCR,CavuCM,iBAEE,oBb0uCR,CajvCM,iBAEE,kBbovCR,CajvCM,iBAEE,kBbovCR,CACF,CWpzCI,yBE+BE,aArDJ,Ub+0CA,CapxCQ,uBA5DR,iBAAA,CAAA,abq1CA,CazxCQ,UArEN,iBb81CF,CazxCQ,UArEN,kBbm2CF,Ca9xCQ,oBAtEN,iBAAA,CAAA,aby2CF,CanyCQ,UArEN,Sbw2CF,CanyCQ,UArEN,kBb62CF,CaxyCQ,oBAtEN,iBAAA,CAAA,abm3CF,Ca7yCQ,UArEN,kBbk3CF,Ca7yCQ,UArEN,Sbu3CF,CalzCQ,oBAtEN,iBAAA,CAAA,ab63CF,CavzCQ,UArEN,kBb43CF,CavzCQ,UArEN,kBbi4CF,Ca5zCQ,oBAtEN,iBAAA,CAAA,abu4CF,Caj0CQ,UArEN,Sbs4CF,Caj0CQ,WArEN,kBb24CF,Cat0CQ,sBAtEN,iBAAA,CAAA,abi5CF,Ca30CQ,WArEN,kBbg5CF,Ca30CQ,WAtEN,iBAAA,CAAA,aAAA,CACA,Ubq5CF,Cax0CU,aA9DV,ab04CA,Ca50CU,aA9DV,uBb84CA,Cah1CU,aA9DV,wBbk5CA,Cap1CU,aA9DV,ebs5CA,Cax1CU,aA9DV,wBb05CA,Ca51CU,aA9DV,wBb85CA,Cah2CU,aA9DV,ebk6CA,Cap2CU,aA9DV,wBbs6CA,Cax2CU,aA9DV,wBb06CA,Ca52CU,aA9DV,eb86CA,Cah3CU,cA9DV,wBbk7CA,Cap3CU,cA9DV,wBbs7CA,Ca72CM,iBAEE,ebg3CR,Ca72CM,iBAEE,ebg3CR,Cav3CM,iBAEE,qBb03CR,Cav3CM,iBAEE,qBb03CR,Caj4CM,iBAEE,oBbo4CR,Caj4CM,iBAEE,oBbo4CR,Ca34CM,iBAEE,kBb84CR,Ca34CM,iBAEE,kBb84CR,Car5CM,iBAEE,oBbw5CR,Car5CM,iBAEE,oBbw5CR,Ca/5CM,iBAEE,kBbk6CR,Ca/5CM,iBAEE,kBbk6CR,CACF,CWl+CI,0BE+BE,aArDJ,Ub6/CA,Cal8CQ,uBA5DR,iBAAA,CAAA,abmgDA,Cav8CQ,UArEN,iBb4gDF,Cav8CQ,UArEN,kBbihDF,Ca58CQ,oBAtEN,iBAAA,CAAA,abuhDF,Caj9CQ,UArEN,SbshDF,Caj9CQ,UArEN,kBb2hDF,Cat9CQ,oBAtEN,iBAAA,CAAA,abiiDF,Ca39CQ,UArEN,kBbgiDF,Ca39CQ,UArEN,SbqiDF,Cah+CQ,oBAtEN,iBAAA,CAAA,ab2iDF,Car+CQ,UArEN,kBb0iDF,Car+CQ,UArEN,kBb+iDF,Ca1+CQ,oBAtEN,iBAAA,CAAA,abqjDF,Ca/+CQ,UArEN,SbojDF,Ca/+CQ,WArEN,kBbyjDF,Cap/CQ,sBAtEN,iBAAA,CAAA,ab+jDF,Caz/CQ,WArEN,kBb8jDF,Caz/CQ,WAtEN,iBAAA,CAAA,aAAA,CACA,UbmkDF,Cat/CU,aA9DV,abwjDA,Ca1/CU,aA9DV,uBb4jDA,Ca9/CU,aA9DV,wBbgkDA,CalgDU,aA9DV,ebokDA,CatgDU,aA9DV,wBbwkDA,Ca1gDU,aA9DV,wBb4kDA,Ca9gDU,aA9DV,ebglDA,CalhDU,aA9DV,wBbolDA,CathDU,aA9DV,wBbwlDA,Ca1hDU,aA9DV,eb4lDA,Ca9hDU,cA9DV,wBbgmDA,CaliDU,cA9DV,wBbomDA,Ca3hDM,iBAEE,eb8hDR,Ca3hDM,iBAEE,eb8hDR,CariDM,iBAEE,qBbwiDR,CariDM,iBAEE,qBbwiDR,Ca/iDM,iBAEE,oBbkjDR,Ca/iDM,iBAEE,oBbkjDR,CazjDM,iBAEE,kBb4jDR,CazjDM,iBAEE,kBb4jDR,CankDM,iBAEE,oBbskDR,CankDM,iBAEE,oBbskDR,Ca7kDM,iBAEE,kBbglDR,Ca7kDM,iBAEE,kBbglDR,CACF,CWhpDI,0BE+BE,cArDJ,Ub2qDA,CahnDQ,yBA5DR,iBAAA,CAAA,abirDA,CarnDQ,WArEN,iBb0rDF,CarnDQ,WArEN,kBb+rDF,Ca1nDQ,sBAtEN,iBAAA,CAAA,abqsDF,Ca/nDQ,WArEN,SbosDF,Ca/nDQ,WArEN,kBbysDF,CapoDQ,sBAtEN,iBAAA,CAAA,ab+sDF,CazoDQ,WArEN,kBb8sDF,CazoDQ,WArEN,SbmtDF,Ca9oDQ,sBAtEN,iBAAA,CAAA,abytDF,CanpDQ,WArEN,kBbwtDF,CanpDQ,WArEN,kBb6tDF,CaxpDQ,sBAtEN,iBAAA,CAAA,abmuDF,Ca7pDQ,WArEN,SbkuDF,Ca7pDQ,YArEN,kBbuuDF,CalqDQ,wBAtEN,iBAAA,CAAA,ab6uDF,CavqDQ,YArEN,kBb4uDF,CavqDQ,YAtEN,iBAAA,CAAA,aAAA,CACA,UbivDF,CapqDU,cA9DV,absuDA,CaxqDU,cA9DV,uBb0uDA,Ca5qDU,cA9DV,wBb8uDA,CahrDU,cA9DV,ebkvDA,CaprDU,cA9DV,wBbsvDA,CaxrDU,cA9DV,wBb0vDA,Ca5rDU,cA9DV,eb8vDA,CahsDU,cA9DV,wBbkwDA,CapsDU,cA9DV,wBbswDA,CaxsDU,cA9DV,eb0wDA,Ca5sDU,eA9DV,wBb8wDA,CahtDU,eA9DV,wBbkxDA,CazsDM,mBAEE,eb4sDR,CazsDM,mBAEE,eb4sDR,CantDM,mBAEE,qBbstDR,CantDM,mBAEE,qBbstDR,Ca7tDM,mBAEE,oBbguDR,Ca7tDM,mBAEE,oBbguDR,CavuDM,mBAEE,kBb0uDR,CavuDM,mBAEE,kBb0uDR,CajvDM,mBAEE,oBbovDR,CajvDM,mBAEE,oBbovDR,Ca3vDM,mBAEE,kBb8vDR,Ca3vDM,mBAEE,kBb8vDR,CACF,Ccz3DA,OACE,yBAAA,CACA,gCAAA,CACA,gCAAA,CACA,sCAAA,CACA,+BAAA,CACA,oCAAA,CACA,8BAAA,CACA,qCAAA,CAMA,oBXPS,CWKT,aXCS,CWFT,kBX0OO,CWxOP,kBXogB4B,CWvgB5B,Ud83DF,Ccn3DE,yBAEE,mCAAA,CACA,uBX4U0B,CW3U1B,uDAAA,CAHA,adw3DJ,Ccl3DE,aACE,sBdo3DJ,Ccj3DE,aACE,qBdm3DJ,Cc/2DE,uCACE,gCdi3DJ,Ccx2DA,aACE,gBd22DF,Ccj2DE,4BACE,cdo2DJ,Ccr1DE,gCACE,kBdw1DJ,Ccr1DI,kCACE,kBdu1DN,Cch1DE,oCACE,qBdm1DJ,Cc10DE,yCACE,+CAAA,CACA,mCd60DJ,Ccr0DA,cACE,8CAAA,CACA,kCdw0DF,Cch0DE,4BACE,6CAAA,CACA,iCdm0DJ,Ce37DE,eAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,Ufy7DJ,Cev8DE,iBAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,Ufq8DJ,Cen9DE,eAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,Ufi9DJ,Ce/9DE,YAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,Uf69DJ,Ce3+DE,eAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,Ufy+DJ,Cev/DE,cAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,Ufq/DJ,CengEE,aAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,UfigEJ,Ce/gEE,YAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,Uf6gEJ,Cc54DI,kBAEE,gCAAA,CADA,edg5DN,CWt9DI,4BGqEA,qBAEE,gCAAA,CADA,eds5DJ,CACF,CW79DI,4BGqEA,qBAEE,gCAAA,CADA,ed45DJ,CACF,CWn+DI,4BGqEA,qBAEE,gCAAA,CADA,edk6DJ,CACF,CWz+DI,6BGqEA,qBAEE,gCAAA,CADA,edw6DJ,CACF,CW/+DI,6BGqEA,sBAEE,gCAAA,CADA,ed86DJ,CACF,CgB7jEA,YACE,mBhB+jEF,CgBtjEA,gBZuRM,iBALI,CY3QR,ebka4B,Cata5B,eAAA,CADA,kCAAA,CADA,+BhB6jEF,CgBnjEA,mBZ4QM,iBALI,CYrQR,gCAAA,CADA,6BhBwjEF,CgBnjEA,mBZsQM,iBALI,CY/PR,iCAAA,CADA,8BhBwjEF,CiBplEA,WAKE,adKS,CCuRL,gBALI,Ca3RR,iBjBylEF,CkB1lEA,cAYE,uBAAA,CAAA,oBAAA,CAAA,eAAA,CAFA,2BAAA,CADA,qBfLS,CeOT,wBAAA,CbIE,oBAAA,CaPF,afKS,CeZT,aAAA,CdgSI,cALI,CctRR,efua4B,Ceta5B,ef4a4B,Cehb5B,sBAAA,CCSI,oEDMJ,CAhBA,UlBwmEF,CmB1lEM,uCDhBN,cCiBQ,enB6lEN,CACF,CkB3lEE,yBACE,elB6lEJ,CkB3lEI,wDACE,clB6lEN,CkBxlEE,oBAEE,qBf3BO,Ce4BP,oBfgqBoC,Ce1pBlC,4CfyiB0B,CejjB5B,afjBO,CeoBP,SlB2lEJ,CkB/kEE,2CAEE,YlBglEJ,CkB5kEE,yCACE,af1CO,Ce4CP,SlB6kEJ,CkBhlEE,gCACE,af1CO,Ce4CP,SlB6kEJ,CkBhlEE,oCACE,af1CO,Ce4CP,SlB6kEJ,CkBhlEE,qCACE,af1CO,Ce4CP,SlB6kEJ,CkBhlEE,2BACE,af1CO,Ce4CP,SlB6kEJ,CkBrkEE,+CAEE,wBf1DO,Ce6DP,SlBokEJ,CkBhkEE,oCAGE,yBf4f0B,Ce5f1B,sBf4f0B,CiBtkB5B,wBjBMS,Ce0EP,cAAA,CAFA,oBAAA,CAGA,2BfmR0B,CelR1B,eAAA,CAPA,af9DO,Ce4DP,uBAAA,CACA,wBf4f0B,Ce9f1B,sBAAA,CAKA,mBAAA,CCjEE,6HnByoEN,CmBroEM,uCDuDJ,0CCtDM,uBAAA,CAAA,enBwoEN,CkBllEA,oCCtDM,enBwoEN,CACF,CkBpkEE,yEACE,wBlBskEJ,CkBnkEE,0CAGE,yBfye0B,CiBtkB5B,wBjBMS,Ce6FP,cAAA,CAFA,oBAAA,CAGA,2BfgQ0B,Ce/P1B,eAAA,CAPA,afjFO,Ce+EP,uBAAA,CACA,wBfye0B,Ce3e1B,sBAAA,CAKA,mBAAA,CCpFE,qID0FF,CC1FE,6HnB+pEN,CmB3pEM,uCD0EJ,0CCzEM,uBAAA,CAAA,enB8pEN,CACF,CkBvkEE,+EACE,wBlBykEJ,CkBhkEA,wBAOE,4BAAA,CAEA,wBAAA,CAAA,kBAAA,CAHA,af5GS,CeuGT,aAAA,CAIA,ef2T4B,Ce5T5B,eAAA,CADA,iBAAA,CADA,UlB0kEF,CkBjkEE,gFAGE,cAAA,CADA,elBmkEJ,CkBvjEA,iBb7HI,mBAAA,CDkRE,iBALI,Cc/IR,oCfkkBsC,CejkBtC,oBlB4jEF,CkBxjEE,uCAGE,wBf6b0B,Ce7b1B,qBf6b0B,Ce9b1B,qBAAA,CACA,uBf6b0B,Ce/b1B,oBlB4jEJ,CkBvjEE,6CAGE,wBfub0B,Cexb1B,qBAAA,CACA,uBfub0B,Cezb1B,oBlB2jEJ,CkBrjEA,iBbhJI,mBAAA,CDkRE,iBALI,Cc5HR,mCfgjBsC,Ce/iBtC,kBlB0jEF,CkBtjEE,uCAGE,uBf8a0B,Ce9a1B,oBf8a0B,Ce/a1B,mBAAA,CACA,sBf8a0B,Cehb1B,kBlB0jEJ,CkBrjEE,6CAGE,uBfwa0B,Ceza1B,mBAAA,CACA,sBfwa0B,Ce1a1B,kBlByjEJ,CkB/iEE,sBACE,qClBkjEJ,CkB/iEE,yBACE,oClBijEJ,CkB9iEE,yBACE,mClBgjEJ,CkB3iEA,oBAEE,WAAA,CADA,cAAA,CAEA,elB8iEF,CkB5iEE,mDACE,clB8iEJ,CkB3iEE,uCb9LE,oBAAA,Ca+LA,YlB8iEJ,CkB1iEE,0CbnME,oBAAA,CaoMA,YlB6iEJ,CqB/vEA,aAKE,qCAAA,CAeA,uBAAA,CAAA,oBAAA,CAAA,eAAA,CATA,qBlBRS,CkBST,8PAAA,CAEA,uClBgxBkC,CkBjxBlC,2BAAA,CAEA,yBlBgxBkC,CkB/wBlC,wBAAA,ChBFE,oBAAA,CgBJF,alBES,CkBXT,aAAA,CjB+RI,cALI,CiBnRR,elBoa4B,CkBna5B,elBya4B,CkB/a5B,sCAAA,CFQI,oEEQJ,CAjBA,UrBixEF,CmBpwEM,uCEfN,aFgBQ,enBuwEN,CACF,CqBlwEE,mBACE,oBlBwqBoC,CkBlqBlC,4ClBixB4B,CkBtxB9B,SrBqwEJ,CqB5vEE,0DAGE,qBAAA,CADA,oBrB8vEJ,CqB1vEE,sBAEE,wBrB2vEJ,CqBtvEE,4BACE,iBAAA,CACA,yBrBwvEJ,CqBpvEA,gBjB4OM,iBALI,CiBrOR,qBlB0hB4B,CkBzhB5B,kBlB0hB4B,CkB5hB5B,kBrB0vEF,CqBpvEA,gBjBqOM,iBALI,CiB9NR,oBlBuhB4B,CkBthB5B,iBlBuhB4B,CkBzhB5B,iBrB0vEF,CsBvzEA,YACE,aAAA,CAGA,qBnBqtBwC,CmBvtBxC,iBnBqtBwC,CmBptBxC,kBtB2zEF,CsBxzEE,8BACE,UAAA,CACA,kBtB0zEJ,CsBtzEA,kBAWE,gCAAA,CADA,uBAAA,CAAA,oBAAA,CAAA,eAAA,CALA,qBnBbS,CmBeT,uBAAA,CADA,2BAAA,CAEA,uBAAA,CACA,gCnB4sBwC,CmB1sBxC,kBAAA,CATA,UnBwsBwC,CmBvsBxC,gBAAA,CACA,kBAAA,CAHA,StBm0EF,CsBtzEE,iCjBXE,mBLo0EJ,CsBrzEE,8BAEE,iBtBszEJ,CsBnzEE,yBACE,8BnB0rBsC,CmB1rBtC,sBtBqzEJ,CsBlzEE,wBACE,oBnBwpBoC,CmBtpBpC,4CnBqiB4B,CmBtiB5B,StBqzEJ,CsBjzEE,0BACE,wBnBZM,CmBaN,oBtBmzEJ,CsBjzEI,yCAII,4PtBgzER,CsB5yEI,sCAII,oKtB2yER,CsBtyEE,+CACE,wBnBjCM,CmBuCJ,sPAAA,CALF,oBtByyEJ,CsBhyEE,2BAEE,mBAAA,CAAA,WAAA,CACA,UnBkqBuC,CmBpqBvC,mBtBoyEJ,CsB3xEI,2FACE,UtB6xEN,CsB/wEA,aACE,kBtBkxEF,CsBhxEE,+BAGE,iLAAA,CACA,qBAAA,CjB9FA,iBAAA,CiB4FA,kBAAA,CH/FE,+CGmGF,CALA,StBuxEJ,CmBj3EM,uCGyFJ,+BHxFM,enBo3EN,CACF,CsBrxEI,qCACE,uKtBuxEN,CsBpxEI,uCAMI,oKAAA,CALF,wBtBuxEN,CsB5wEA,mBACE,oBAAA,CACA,iBtB+wEF,CsB5wEA,WAEE,kBAAA,CACA,mBAAA,CAFA,iBtBixEF,CsB3wEI,mDAEE,mBAAA,CAAA,WAAA,CACA,WnBuewB,CmBzexB,mBtB+wEN,CuB35EA,YAKE,uBAAA,CAAA,oBAAA,CAAA,eAAA,CADA,4BAAA,CAFA,aAAA,CACA,SAAA,CAFA,UvBk6EF,CuB55EE,kBACE,SvB85EJ,CuB15EI,wCAA0B,2DvB65E9B,CuB55EI,oCAA0B,2DvB+5E9B,CuB55EE,8BACE,QvB85EJ,CuB35EE,kCASE,uBAAA,CAAA,eAAA,CH/BF,wBjBkCQ,CoBPN,QpB4yBuC,CExzBvC,kBAAA,CkBSA,WpB4yBuC,CoB3yBvC,kBAAA,CJbE,8GIkBF,CJlBE,sGIkBF,CAPA,UvBo6EJ,CmB36EM,uCIMJ,kCJLM,uBAAA,CAAA,enB86EN,CACF,CuB/5EI,yCHjCF,wBpBm8EF,CuB75EE,2CAKE,wBpBpCO,CoBqCP,wBAAA,ClB7BA,kBAAA,CkB0BA,iBAAA,CACA,cpBqxB8B,CoBvxB9B,YpBsxB8B,CoBvxB9B,UvBq6EJ,CuB35EE,8BAQE,oBAAA,CAAA,eAAA,CHzDF,wBjBkCQ,CoBmBN,QpBkxBuC,CExzBvC,kBAAA,CkBoCA,WpBixBuC,CgBxzBrC,2GI4CF,CJ5CE,sGI4CF,CANA,UvBm6EJ,CmBr8EM,uCIiCJ,8BJhCM,oBAAA,CAAA,enBw8EN,CACF,CuB/5EI,qCH3DF,wBpB69EF,CuB75EE,8BAKE,wBpB9DO,CoB+DP,wBAAA,ClBvDA,kBAAA,CkBoDA,iBAAA,CACA,cpB2vB8B,CoB7vB9B,YpB4vB8B,CoB7vB9B,UvBq6EJ,CuB35EE,qBACE,mBvB65EJ,CuB35EI,2CACE,wBvB65EN,CuB15EI,uCACE,wBvB45EN,CwBn/EA,eACE,iBxBs/EF,CwBp/EE,yDAEE,yBrBu1B8B,CqBt1B9B,gBxBs/EJ,CwBn/EE,qBAOE,4BAAA,CAHA,WAAA,CADA,MAAA,CAEA,mBAAA,CACA,mBAAA,CALA,iBAAA,CACA,KAAA,CAMA,4BAAA,CAAA,oBAAA,CLDE,oEKEF,CLFE,4DKEF,CLFE,8FnBu/EN,CmBn/EM,uCKXJ,qBLYM,enBs/EN,CACF,CwBt/EE,6BACE,mBxBw/EJ,CwBt/EI,wDACE,iBxBw/EN,CwBz/EI,+CACE,iBxBw/EN,CwBz/EI,mDACE,iBxBw/EN,CwBz/EI,oDACE,iBxBw/EN,CwBz/EI,0CACE,iBxBw/EN,CwBr/EI,0DAGE,sBrBi0B4B,CqBl0B5B,oBxBu/EN,CwBz/EI,yDAGE,sBrBi0B4B,CqBl0B5B,oBxBu/EN,CwBz/EI,wFAGE,sBrBi0B4B,CqBl0B5B,oBxBu/EN,CwBn/EI,8CAEE,sBrB4zB4B,CqB7zB5B,oBxBs/EN,CwBj/EE,4BAEE,sBrBszB8B,CqBvzB9B,oBxBo/EJ,CwB7+EI,gEACE,WrBgzB4B,CqB/yB5B,0DxBi/EN,CwBn/EI,+DACE,WrBgzB4B,CqB/yB5B,0DxBi/EN,CwBn/EI,sIACE,WrBgzB4B,CqB/yB5B,kErBgzB4B,CqBhzB5B,0DxBi/EN,CwB5+EI,oDACE,WrByyB4B,CqBxyB5B,kErByyB4B,CqBzyB5B,0DxB8+EN,CyBpiFA,aAIE,sBAAA,CAAA,mBAAA,CAFA,mBAAA,CAAA,YAAA,CACA,kBAAA,CAAA,cAAA,CAFA,iBAAA,CAIA,UzBuiFF,CyBriFE,qDAGE,iBAAA,CAAA,aAAA,CAEA,WAAA,CAHA,iBAAA,CAEA,QzBwiFJ,CyBniFE,iEAEE,SzBqiFJ,CyB/hFE,kBACE,iBAAA,CACA,SzBiiFJ,CyB/hFI,wBACE,SzBiiFN,CyBthFA,kBAEE,qBAAA,CAAA,kBAAA,CAQA,wBtB5CS,CsB6CT,wBAAA,CpBpCE,oBAAA,CoBgCF,atBlCS,CsB4BT,mBAAA,CAAA,YAAA,CrBwPI,cALI,CqB/OR,etBgY4B,CsB/X5B,etBqY4B,CsBxY5B,sBAAA,CAKA,iBAAA,CACA,kBzB4hFF,CyBhhFA,kHpB9CI,mBAAA,CDkRE,iBALI,CqB3NR,kBzBqhFF,CyBhhFA,kHpBvDI,mBAAA,CDkRE,iBALI,CqBlNR,oBzBqhFF,CyBhhFA,0DAEE,kBzBmhFF,CyB//EI,iUpBrEA,4BAAA,CADA,yBLglFJ,CyB//EE,0IpBlEE,2BAAA,CADA,wBAAA,CoBoEA,gBzBmgFJ,C0B/lFE,gBAME,avBw1BqB,CuB71BrB,YAAA,CtB2QE,gBALI,CsBpQN,iBvB2nBoC,CuB5nBpC,U1BqmFJ,C0B9lFE,eAWE,mCAvBiB,CrBHjB,oBAAA,CqByBA,UAvBc,CAiBd,YAAA,CtB+PE,iBALI,CsBvPN,gBAAA,CAFA,cAAA,CACA,oBAAA,CALA,iBAAA,CACA,QAAA,CACA,S1BymFJ,C0B5lFI,8HAEE,a1BimFN,C0B/oFI,0DAwDI,wQAAA,CAEA,wDAAA,CADA,2BAAA,CAEA,2DAAA,CAPF,oBvB6zBmB,CuB1zBjB,kC1BimFR,C0B1lFM,sEACE,oBvBkzBiB,CuBjzBjB,2C1B4lFR,C0B5pFI,0EA0EI,6EAAA,CADA,kC1BwlFR,C0BjqFI,wDAiFE,oB1BolFN,C0BjlFQ,4NAGE,sfAAA,CACA,4DAAA,CACA,qEAAA,CAHA,sB1BqlFV,C0B9kFM,oEACE,oBvBmxBiB,CuBlxBjB,2C1BglFR,C0B/qFI,kEAsGE,oB1B6kFN,C0B3kFM,kFACE,wB1B6kFR,C0B1kFM,8EACE,2C1B4kFR,C0BzkFM,sGACE,a1B2kFR,C0BtkFI,qDACE,gB1BykFN,C0BhsFI,sKA+HI,S1BukFR,C0BnkFM,8LACE,S1BukFR,C0BxrFE,kBAME,avBw1BqB,CuB71BrB,YAAA,CtB2QE,gBALI,CsBpQN,iBvB2nBoC,CuB5nBpC,U1B8rFJ,C0BvrFE,iBAWE,mCAvBiB,CrBHjB,oBAAA,CqByBA,UAvBc,CAiBd,YAAA,CtB+PE,iBALI,CsBvPN,gBAAA,CAFA,cAAA,CACA,oBAAA,CALA,iBAAA,CACA,QAAA,CACA,S1BksFJ,C0BrrFI,8IAEE,a1B0rFN,C0BxuFI,8DAwDI,qUAAA,CAEA,wDAAA,CADA,2BAAA,CAEA,2DAAA,CAPF,oBvB6zBmB,CuB1zBjB,kC1B0rFR,C0BnrFM,0EACE,oBvBkzBiB,CuBjzBjB,2C1BqrFR,C0BrvFI,8EA0EI,6EAAA,CADA,kC1BirFR,C0B1vFI,4DAiFE,oB1B6qFN,C0B1qFQ,oOAGE,mjBAAA,CACA,4DAAA,CACA,qEAAA,CAHA,sB1B8qFV,C0BvqFM,wEACE,oBvBmxBiB,CuBlxBjB,2C1ByqFR,C0BxwFI,sEAsGE,oB1BsqFN,C0BpqFM,sFACE,wB1BsqFR,C0BnqFM,kFACE,2C1BqqFR,C0BlqFM,0GACE,a1BoqFR,C0B/pFI,uDACE,gB1BkqFN,C0BzxFI,8KAiII,S1B8pFR,C0B5pFM,sMACE,S1BgqFR,C2BtyFA,KAYE,4BAAA,CACA,4BAAA,CtBEE,oBAAA,CsBVF,axBQS,CwBHT,cAAA,CATA,oBAAA,CvBgSI,cALI,CuBzRR,exB0a4B,CwBza5B,exB+a4B,CyBxT5B,sBAAA,CDrHA,iBAAA,CACA,oBAAA,CRKI,6HQGJ,CAJA,wBAAA,CAAA,qBAAA,CAAA,oBAAA,CAAA,gBAAA,CAFA,qB3B+yFF,CmBxyFM,uCQhBN,KRiBQ,enB2yFN,CACF,C2B5yFE,WACE,a3B8yFJ,C2B1yFE,iCAGE,4CxBsjB4B,CwBvjB5B,S3B4yFJ,C2B7xFE,mDAIE,WxB4kB0B,CwB7kB1B,mB3B8xFJ,C2BjxFE,aPvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5B8zFF,C4BnzFE,oER3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5Bm0FJ,C4B9zFE,iDASI,2C5BqzFN,C4BjzFE,0IAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5BizFJ,C4B3yFI,wKAKI,2C5ByyFR,C4BpyFE,4CAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5BuyFJ,C2B/yFE,ePvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5B41FF,C4Bj1FE,0ER3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5Bi2FJ,C4B51FE,qDASI,2C5Bm1FN,C4B/0FE,oJAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5B+0FJ,C4Bz0FI,kLAKI,2C5Bu0FR,C4Bl0FE,gDAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5Bq0FJ,C2B70FE,aPvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5B03FF,C4B/2FE,oER3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5B+3FJ,C4B13FE,iDASI,2C5Bi3FN,C4B72FE,0IAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5B62FJ,C4Bv2FI,wKAKI,2C5Bq2FR,C4Bh2FE,4CAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5Bm2FJ,C2B32FE,UPvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5Bw5FF,C4B74FE,2DR3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5B65FJ,C4Bx5FE,2CASI,2C5B+4FN,C4B34FE,2HAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5B24FJ,C4Br4FI,yJAKI,2C5Bm4FR,C4B93FE,sCAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5Bi4FJ,C2Bz4FE,aPvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5Bs7FF,C4B36FE,oER3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5B27FJ,C4Bt7FE,iDASI,0C5B66FN,C4Bz6FE,0IAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5By6FJ,C4Bn6FI,wKAKI,0C5Bi6FR,C4B55FE,4CAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5B+5FJ,C2Bv6FE,YPvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5Bo9FF,C4Bz8FE,iER3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5By9FJ,C4Bp9FE,+CASI,0C5B28FN,C4Bv8FE,qIAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5Bu8FJ,C4Bj8FI,mKAKI,0C5B+7FR,C4B17FE,0CAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5B67FJ,C2Br8FE,WPvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5Bk/FF,C4Bv+FE,8DR3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5Bu/FJ,C4Bl/FE,6CASI,2C5By+FN,C4Br+FE,gIAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5Bq+FJ,C4B/9FI,8JAKI,2C5B69FR,C4Bx9FE,wCAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5B29FJ,C2Bn+FE,UPvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5BghGF,C4BrgGE,2DR3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5BqhGJ,C4BhhGE,2CASI,yC5BugGN,C4BngGE,2HAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5BmgGJ,C4B7/FI,yJAKI,yC5B2/FR,C4Bt/FE,sCAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5By/FJ,C2B3/FE,qBCoBA,oBzBLa,CyBIb,a5B6+FF,C4B1+FE,2BAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5B8+FJ,C4Bz+FE,iEAEE,2C5B0+FJ,C4Bv+FE,iLAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5Bu+FJ,C4Bn+FI,+MAKI,2C5Bi+FR,C4B59FE,4DAGE,4BAAA,CADA,a5B89FJ,C2BphGE,uBCoBA,oBzBLa,CyBIb,a5BsgGF,C4BngGE,6BAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5BugGJ,C4BlgGE,qEAEE,2C5BmgGJ,C4BhgGE,2LAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5BggGJ,C4B5/FI,yNAKI,2C5B0/FR,C4Br/FE,gEAGE,4BAAA,CADA,a5Bu/FJ,C2B7iGE,qBCoBA,oBzBLa,CyBIb,a5B+hGF,C4B5hGE,2BAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5BgiGJ,C4B3hGE,iEAEE,0C5B4hGJ,C4BzhGE,iLAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5ByhGJ,C4BrhGI,+MAKI,0C5BmhGR,C4B9gGE,4DAGE,4BAAA,CADA,a5BghGJ,C2BtkGE,kBCoBA,oBzBLa,CyBIb,a5BwjGF,C4BrjGE,wBAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5ByjGJ,C4BpjGE,2DAEE,2C5BqjGJ,C4BljGE,kKAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5BkjGJ,C4B9iGI,gMAKI,2C5B4iGR,C4BviGE,sDAGE,4BAAA,CADA,a5ByiGJ,C2B/lGE,qBCoBA,oBzBLa,CyBIb,a5BilGF,C4B9kGE,2BAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5BklGJ,C4B7kGE,iEAEE,0C5B8kGJ,C4B3kGE,iLAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5B2kGJ,C4BvkGI,+MAKI,0C5BqkGR,C4BhkGE,4DAGE,4BAAA,CADA,a5BkkGJ,C2BxnGE,oBCoBA,oBzBLa,CyBIb,a5B0mGF,C4BvmGE,0BAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5B2mGJ,C4BtmGE,+DAEE,0C5BumGJ,C4BpmGE,4KAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5BomGJ,C4BhmGI,0MAKI,0C5B8lGR,C4BzlGE,0DAGE,4BAAA,CADA,a5B2lGJ,C2BjpGE,mBCoBA,oBzBLa,CyBIb,a5BmoGF,C4BhoGE,yBAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5BooGJ,C4B/nGE,6DAEE,4C5BgoGJ,C4B7nGE,uKAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5B6nGJ,C4BznGI,qMAKI,4C5BunGR,C4BlnGE,wDAGE,4BAAA,CADA,a5BonGJ,C2B1qGE,kBCoBA,oBzBLa,CyBIb,a5B4pGF,C4BzpGE,wBAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5B6pGJ,C4BxpGE,2DAEE,yC5BypGJ,C4BtpGE,kKAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5BspGJ,C4BlpGI,gMAKI,yC5BgpGR,C4B3oGE,sDAGE,4BAAA,CADA,a5B6oGJ,C2BvrGA,UAEE,axBzCQ,CwBwCR,exBmW4B,CwBjW5B,yB3B0rGF,C2BxrGE,gBACE,a3B0rGJ,C2BlrGE,sCAEE,a3BmrGJ,C2BxqGA,2BtBrFI,mBAAA,CDkRE,iBALI,CwBjKR,kB5BupGF,C2B1qGA,2BtBzFI,mBAAA,CDkRE,iBALI,CwBjKR,oB5B6pGF,C6B5xGA,MVgBM,8BnBgxGN,CmB5wGM,uCUpBN,MVqBQ,enB+wGN,CACF,C6BlyGE,iBACE,S7BoyGJ,C6B9xGE,qBACE,Y7BiyGJ,C6B7xGA,YACE,QAAA,CACA,eAAA,CVDI,2BnBkyGN,CmB9xGM,uCULN,YVMQ,enBiyGN,CACF,C8BtzGA,sCAIE,iB9ByzGF,C8BtzGA,iBACE,kB9ByzGF,C+BpyGI,uBA1BF,eAAA,CACA,kCAAA,CAFA,mCAAA,CADA,qBAAA,CAgCI,UAAA,CAHA,oBAAA,CACA,kB5BwWwB,C4BvWxB,qB/B2yGN,C+BlxGI,6BACE,a/BoxGN,C8B/zGA,eAYE,2BAAA,CADA,qB3BnBS,C2BqBT,gCAAA,CzBVE,oBAAA,CyBKF,a3BPS,C2BET,YAAA,C1BkRI,cALI,C0BtQR,eAAA,CAJA,QAAA,CAFA,e3B48BkC,C2B38BlC,eAAA,CAJA,iBAAA,CAQA,eAAA,CAPA,Y9B80GF,C8B/zGE,+BAEE,MAAA,CACA,kB3B+7BgC,C2Bj8BhC,Q9Bm0GJ,C8BrzGI,qBACE,mB9BwzGN,C8BtzGM,qCAEE,MAAA,CADA,U9ByzGR,C8BpzGI,mBACE,iB9BuzGN,C8BrzGM,mCAEE,SAAA,CADA,O9BwzGR,CWtzGI,yBmBfA,wBACE,mB9By0GJ,C8Bv0GI,wCAEE,MAAA,CADA,U9B00GN,C8Br0GE,sBACE,iB9Bw0GJ,C8Bt0GI,sCAEE,SAAA,CADA,O9By0GN,CACF,CWx0GI,yBmBfA,wBACE,mB9B01GJ,C8Bx1GI,wCAEE,MAAA,CADA,U9B21GN,C8Bt1GE,sBACE,iB9By1GJ,C8Bv1GI,sCAEE,SAAA,CADA,O9B01GN,CACF,CWz1GI,yBmBfA,wBACE,mB9B22GJ,C8Bz2GI,wCAEE,MAAA,CADA,U9B42GN,C8Bv2GE,sBACE,iB9B02GJ,C8Bx2GI,sCAEE,SAAA,CADA,O9B22GN,CACF,CW12GI,0BmBfA,wBACE,mB9B43GJ,C8B13GI,wCAEE,MAAA,CADA,U9B63GN,C8Bx3GE,sBACE,iB9B23GJ,C8Bz3GI,sCAEE,SAAA,CADA,O9B43GN,CACF,CW33GI,0BmBfA,yBACE,mB9B64GJ,C8B34GI,yCAEE,MAAA,CADA,U9B84GN,C8Bz4GE,uBACE,iB9B44GJ,C8B14GI,uCAEE,SAAA,CADA,O9B64GN,CACF,C8Bn4GE,uCAEE,WAAA,CAEA,qB3Bu5BgC,C2Bx5BhC,YAAA,CAFA,Q9Bw4GJ,C+Bn7GI,+BAnBF,wBAAA,CACA,kCAAA,CAFA,mCAAA,CADA,YAAA,CAyBI,UAAA,CAHA,oBAAA,CACA,kB5BwWwB,C4BvWxB,qB/B07GN,C+Bj6GI,qCACE,a/Bm6GN,C8Bz4GE,wCAGE,SAAA,CAEA,mB3By4BgC,C2B14BhC,YAAA,CAFA,UAAA,CADA,K9Bg5GJ,C+Bx8GI,gCAZF,oCAAA,CACA,sBAAA,CAFA,cAAA,CADA,iCAAA,CAkBI,UAAA,CAHA,oBAAA,CACA,kB5BwWwB,C4BvWxB,qB/B+8GN,C+Bt7GI,sCACE,a/Bw7GN,C8Bp5GI,gCACE,gB9Bs5GN,C8Bh5GE,0CAGE,SAAA,CAEA,oB3Bw3BgC,C2Bz3BhC,YAAA,CAFA,UAAA,CADA,K9Bu5GJ,C+Bh+GI,kCAIE,UAAA,CAHA,oBAAA,CAeE,YAAA,CAdF,kB5BwWwB,C4BvWxB,qB/Bm+GN,C+Bn9GM,mCAxBJ,oCAAA,CADA,uBAAA,CADA,iCAAA,CA8BM,UAAA,CAHA,oBAAA,CACA,mB5BqVsB,C4BpVtB,qB/B49GR,C+Bt9GI,wCACE,a/Bw9GN,C8Bn6GI,mCACE,gB9Bq6GN,C8B95GA,kBAIE,oCAAA,CAHA,QAAA,CACA,cAAA,CACA,e9Bk6GF,C8B35GA,eAUE,4BAAA,CACA,QAAA,CAPA,UAAA,CAEA,a3BvHS,C2BkHT,aAAA,CAIA,e3B0S4B,C2B5S5B,mBAAA,CAIA,kBAAA,CACA,oBAAA,CACA,kBAAA,CAPA,U9Bu6GF,C8Bh5GE,0CVvJA,wBjBMS,C2BmJP,a9Bk5GJ,C8B74GE,4CV9JA,wBjBkCQ,C2B8HN,U3B5JO,C2B6JP,oB9B+4GJ,C8B34GE,gDAIE,4BAAA,CAFA,a3B9JO,C2B+JP,mB9B64GJ,C8Bt4GA,oBACE,a9By4GF,C8Br4GA,iBAKE,a3B/KS,C2B2KT,aAAA,C1B4GI,iBALI,C0BrGR,eAAA,CADA,kB3Bk0BkC,C2B9zBlC,kB9Bw4GF,C8Bp4GA,oBAGE,a3BpLS,C2BkLT,aAAA,CACA,mB9Bw4GF,C8Bn4GA,oBAEE,wB3B3LS,C2B4LT,4B3B2xBkC,C2B7xBlC,a9Bw4GF,C8Bn4GE,mCACE,a9Bq4GJ,C8Bn4GI,kFV9MF,oCjBmgCkC,C2BnzB9B,U9Bq4GN,C8Bj4GI,oFVpNF,wBjBkCQ,C2BoLJ,U9Bm4GN,C8B/3GI,wFAEE,a9Bg4GN,C8B53GE,sCACE,4B9B83GJ,C8B33GE,wCACE,a9B63GJ,C8B13GE,qCACE,a9B43GJ,CgCxmHA,+BAGE,0BAAA,CAAA,mBAAA,CADA,iBAAA,CAEA,qBhC2mHF,CgCzmHE,yCAEE,iBAAA,CAAA,aAAA,CADA,iBhC6mHJ,CgCvmHE,kXAME,ShC+mHJ,CgC1mHA,aAGE,mBAAA,CAF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q2HR,CkCn2HQ,2BACE,sBAAA,CAAA,kBlCq2HV,CkCn2HU,0CACE,iBlCq2HZ,CkCl2HU,qCAEE,kB/BiwBwB,C+BlwBxB,mBlCq2HZ,CkCh2HQ,kCACE,gBlCk2HV,CkC/1HQ,gCAEE,4BAAA,CADA,6BAAA,CAAA,sBAAA,CACA,elCi2HV,CkC91HQ,+BACE,YlCg2HV,CkC90HI,gGAEE,oBlCm1HN,CkC90HI,oCACE,qBlCg1HN,CkC90HM,oFAEE,oBlC+0HR,CkC50HM,6CACE,oBlC80HR,CkC10HI,qFAEE,oBlC40HN,CkCx0HE,8BAEE,2B/BmuBgC,C+BpuBhC,qBlC20HJ,CkCv0HE,mCACE,sQlCy0HJ,CkCt0HE,2BACE,qBlCw0HJ,CkCt0HI,mGAGE,oBlCw0HN,CkC9zHI,6FAEE,UlCm0HN,CkC9zHI,mCACE,yBlCg0HN,CkC9zHM,kFAEE,yBlC+zHR,CkC5zHM,4CACE,yBlC8zHR,CkC1zHI,mFAEE,UlC4zHN,CkCxzHE,6BAEE,+B/ByqBgC,C+B1qBhC,yBlC2zHJ,CkCvzHE,kCACE,4QlCyzHJ,CkCtzHE,0BACE,yBlCwzHJ,CkCvzHI,gGAGE,UlCyzHN,CmCnmIA,MAME,oBAAA,CAEA,0BAAA,CADA,qBhCHS,CgCKT,iCAAA,C9BME,oBAAA,C8BbF,mBAAA,CAAA,YAAA,CACA,yBAAA,CAAA,qBAAA,CACA,WAAA,CAHA,iBnC8mIF,CmCnmIE,SAEE,aAAA,CADA,cnCsmIJ,CmClmIE,kBAEE,qBAAA,CADA,kBnCqmIJ,CmClmII,8B9BGA,yCAAA,CACA,0CAAA,C8BHE,kBnCsmIN,CmClmII,6B9BaA,4CAAA,CADA,6CAAA,C8BXE,qBnCsmIN,CmC/lIE,8DAEE,YnCimIJ,CmC7lIA,WAGE,iBAAA,CAAA,aAAA,CACA,YnC8lIF,CmC1lIA,YACE,mBnC6lIF,CmC1lIA,eACE,kBnC8lIF,CmC1lIA,qCAHE,enCimIF,CmCzlIE,iBACE,oBnC4lIJ,CmCzlIE,sBACE,gBnC2lIJ,CmCnlIA,aAIE,gChCi/BkC,CgCh/BlC,wCAAA,CAHA,eAAA,CADA,kBnCylIF,CmCnlIE,yB9BnEE,uDLypIJ,CmCjlIA,aAGE,gChCs+BkC,CgCr+BlC,qCAAA,CAHA,kBnCslIF,CmCjlIE,wB9B9EE,uDLkqIJ,CmC1kIA,kBAIE,eAAA,CAFA,oBnC+kIF,CmCnkIA,qCAXE,kBAAA,CAFA,mBnCqlIF,CmClkIA,kB9B5GI,gCAAA,C8BgHF,QAAA,CACA,MAAA,CACA,YhCoHO,CgCzHP,iBAAA,CAEA,OAAA,CADA,KnC0kIF,CmClkIA,yCAGE,UnCqkIF,CmClkIA,wB9BnHI,yCAAA,CACA,0CL0rIJ,CmCnkIA,2B9BzGI,4CAAA,CADA,6CLmrIJ,CmC5jIE,kBACE,oBnC+jIJ,CWlqII,yBwB+FJ,YAQI,mBAAA,CAAA,YAAA,CACA,sBAAA,CAAA,kBnC+jIF,CmC5jIE,kBAEE,eAAA,CAAA,WAAA,CACA,enC6jIJ,CmC3jII,wBAEE,aAAA,CADA,anC8jIN,CmCxjIM,mC9BlJJ,4BAAA,CADA,yBL+sIF,CmCzjIQ,iGAGE,yBnC0jIV,CmCxjIQ,oGAGE,4BnCyjIV,CmCrjIM,oC9BnJJ,2BAAA,CADA,wBL6sIF,CmCtjIQ,mGAGE,wBnCujIV,CmCrjIQ,sGAGE,2BnCsjIV,CACF,CoCnwIA,kBAGE,qBAAA,CAAA,kBAAA,CAMA,qBjCLS,CiCMT,QAAA,C/BKE,eAAA,C+BRF,ajCMS,CiCXT,mBAAA,CAAA,YAAA,ChC+RI,cALI,CgChRR,oBAAA,CAPA,oBAAA,CAJA,iBAAA,CAOA,eAAA,CjBII,qJiBCJ,CATA,UpC+wIF,CmBnwIM,uCiBhBN,kBjBiBQ,enBswIN,CACF,CoCzwIE,kCAEE,wBjC4kCsC,CiC3kCtC,0CAAA,CAFA,apC6wIJ,CoCzwII,wCACE,8SAAA,CACA,iCjCilCoC,CiCjlCpC,yBpC2wIN,CoCtwIE,wBACE,mBAAA,CAKA,8SAAA,CACA,2BAAA,CACA,uBjCgkCsC,CiCnkCtC,UAAA,CAJA,aAAA,CAEA,cjCqkCsC,CiCpkCtC,gBAAA,CjBnBE,4CiBwBF,CjBxBE,oCiBwBF,CjBxBE,sEiBwBF,CAPA,apC+wIJ,CmB5xIM,uCiBWJ,wBjBVM,enB+xIN,CACF,CoC1wIE,wBACE,SpC4wIJ,CoCzwIE,wBAEE,oBjCmpBoC,CiCjpBpC,4CjCgiB4B,CiCjiB5B,SAAA,CAFA,SpC8wIJ,CoCvwIA,kBACE,epC0wIF,CoCvwIA,gBACE,qBjCpDS,CiCqDT,iCpC0wIF,CoCxwIE,8B/BnCE,6BAAA,CACA,8BL8yIJ,CoCzwII,gD/BtCA,yCAAA,CACA,0CLkzIJ,CoCxwIE,oCACE,YpC0wIJ,CoCtwIE,6B/BjCE,gCAAA,CADA,iCL4yIJ,CoCtwIM,yD/BrCF,4CAAA,CADA,6CLgzIJ,CoCrwII,iD/B1CA,gCAAA,CADA,iCLozIJ,CoCnwIA,gBACE,oBpCswIF,CoC7vIE,qCACE,cpCgwIJ,CoC7vIE,iCAEE,aAAA,C/BxFA,eAAA,C+BuFA,cpCiwIJ,CoC7vII,6CAAgB,YpCgwIpB,CoC/vII,4CAAe,epCkwInB,CoChwII,mD/B9FA,eLi2IJ,CqCp3IA,YACE,mBAAA,CAAA,YAAA,CACA,kBAAA,CAAA,cAAA,CAIA,eAAA,CAFA,kBlC60CkC,CkC90ClC,SrCy3IF,CqC/2IE,kCACE,kBrCk3IJ,CqCh3II,yCAGE,alCLK,CkCML,wCAAA,CAHA,UAAA,CACA,mBrCo3IN,CqC92IE,wBACE,arCg3IJ,CsCz4IA,YACE,mBAAA,CAAA,YAAA,ChCIA,eAAA,CADA,cN24IF,CsC14IA,WAKE,qBnCFS,CmCGT,wBAAA,CAHA,anC8BQ,CmC/BR,aAAA,CADA,iBAAA,CAGA,oBAAA,CnBOI,6HnBy4IN,CmBr4IM,uCmBfN,WnBgBQ,enBw4IN,CACF,CsCh5IE,iBAKE,oBnCRO,CmCIP,StCq5IJ,CsC94IE,kCAJE,wBnCRO,CmCMP,atC25IJ,CsCr5IE,iBAKE,4CnCwjB4B,CmCzjB5B,SnCygCgC,CmC5gChC,StCo5IJ,CsC34IE,wCACE,gBtC84IJ,CsC34IE,6BlBhCA,wBjBkCQ,CmCEN,oBnCFM,CmCAN,UnC9BO,CmC6BP,StCg5IJ,CsC14IE,+BAGE,qBnCtCO,CmCuCP,oBnCpCO,CmCiCP,anC9BO,CmC+BP,mBtC84IJ,CuCv7IE,WACE,sBvC07IJ,CuCn7IQ,kClCsCJ,gCAAA,CADA,6BLm5IJ,CuCl7IQ,iClCkBJ,iCAAA,CADA,8BLq6IJ,CuCp8IE,0BnCiSI,iBALI,CmC3RN,qBvCw8IJ,CuCj8IQ,iDlCsCJ,+BAAA,CADA,4BLg6IJ,CuC/7IQ,gDlCkBJ,gCAAA,CADA,6BLk7IJ,CuCj9IE,0BnCiSI,iBALI,CmC3RN,oBvCq9IJ,CuC98IQ,iDlCsCJ,+BAAA,CADA,4BL66IJ,CuC58IQ,gDlCkBJ,gCAAA,CADA,6BL+7IJ,CwC79IA,OnCcI,oBAAA,CmCRF,UrCHS,CqCFT,oBAAA,CpC+RI,eALI,CoCvRR,erCya4B,CqCxa5B,aAAA,CAHA,mBAAA,CAKA,iBAAA,CAEA,uBAAA,CADA,kBxCk+IF,CwC59IE,aACE,YxC89IJ,CwCz9IA,YACE,iBAAA,CACA,QxC49IF,CyCn/IA,OAIE,4BAAA,CpCWE,oBAAA,CoCZF,kBtCuvC8B,CsCxvC9B,YAAA,CADA,iBzC0/IF,CyCl/IA,eAEE,azCo/IF,CyCh/IA,YACE,ezCm/IF,CyC3+IA,mBACE,kBzC8+IF,CyC3+IE,8BAKE,oBAAA,CAJA,iBAAA,CAEA,OAAA,CADA,KAAA,CAEA,SzC8+IJ,CyC99IE,erBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1CshJF,C0ClhJE,2BACE,a1CohJJ,CyCv+IE,iBrBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1C+hJF,C0C3hJE,6BACE,a1C6hJJ,CyCh/IE,erBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1CwiJF,C0CpiJE,2BACE,a1CsiJJ,CyCz/IE,YrBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1CijJF,C0C7iJE,wBACE,a1C+iJJ,CyClgJE,erBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1C0jJF,C0CtjJE,2BACE,a1CwjJJ,CyC3gJE,crBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1CmkJF,C0C/jJE,0BACE,a1CikJJ,CyCphJE,arBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1C4kJF,C0CxkJE,yBACE,a1C0kJJ,CyC7hJE,YrBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1CqlJF,C0CjlJE,wBACE,a1CmlJJ,C2CtlJE,wCACE,GAAK,0B3C0lJP,CACF,C2C5lJE,gCACE,GAAK,0B3C0lJP,CACF,C2CtlJA,UAKE,wBxCLS,CESP,oBAAA,CDkRE,gBALI,CuCpRR,W3C4lJF,C2CplJA,wBATE,mBAAA,CAAA,YAAA,CAEA,e3CumJF,C2ChmJA,cAGE,oBAAA,CAKA,wBxCUQ,CwCbR,UxCjBS,CwCcT,yBAAA,CAAA,qBAAA,CACA,sBAAA,CAGA,iBAAA,CxBVI,yBwBaJ,CAFA,kB3CylJF,CmBhmJM,uCwBAN,cxBCQ,enBmmJN,CACF,C2CzlJA,sBvBYE,qKAAA,CuBVA,yB3C4lJF,C2CxlJE,uBACE,yDAAA,CAAA,iD3C2lJJ,C2CxlJM,uCAJJ,uBAKM,sBAAA,CAAA,c3C2lJN,CACF,C4CnoJA,YvCeI,oBAAA,CuCdF,mBAAA,CAAA,YAAA,CACA,yBAAA,CAAA,qBAAA,CAIA,eAAA,CADA,c5CsoJF,C4CjoJA,qBAEE,qBAAA,CADA,oB5CqoJF,C4CloJE,+BAEE,kCAAA,CACA,yB5CmoJJ,C4CznJA,wBAEE,azClBS,CyCmBT,kBAAA,CAFA,U5C8nJF,C4CznJE,4DAKE,wBzCjCO,CyC+BP,azCzBO,CyC0BP,oBAAA,CAFA,S5C6nJJ,C4CvnJE,+BAEE,wBzCrCO,CyCoCP,a5C0nJJ,C4ChnJA,iBAME,qBzCtDS,CyCuDT,iCAAA,CAHA,azC3CS,CyCyCT,aAAA,CACA,kBAAA,CAFA,iBAAA,CAIA,oB5CqnJF,C4CjnJE,6BvCrCE,8BAAA,CACA,+BLypJJ,C4CjnJE,4BvC1BE,iCAAA,CADA,kCLgpJJ,C4CjnJE,oDAIE,qBzCrEO,CyCmEP,azC7DO,CyC8DP,mB5CmnJJ,C4C9mJE,wBAGE,wBzC9CM,CyC+CN,oBzC/CM,CyC6CN,UzC3EO,CyC0EP,S5CmnJJ,C4C7mJE,kCACE,kB5C+mJJ,C4C7mJI,yCAEE,oBzC2QwB,CyC5QxB,e5CgnJN,C4CjmJI,uBACE,sBAAA,CAAA,kB5ComJN,C4CjmJQ,oDvCrCJ,gCAAA,CAZA,yBLspJJ,C4ChmJQ,mDvC1CJ,2BAAA,CAZA,8BL0pJJ,C4C/lJQ,+CACE,Y5CimJV,C4C9lJQ,yDAEE,mBAAA,CADA,oB5CimJV,C4C9lJU,gEAEE,qBzCqOkB,CyCtOlB,gB5CimJZ,CWpqJI,yBiC4CA,0BACE,sBAAA,CAAA,kB5C4nJJ,C4CznJM,uDvCrCJ,gCAAA,CAZA,yBL8qJF,C4CxnJM,sDvC1CJ,2BAAA,CAZA,8BLkrJF,C4CvnJM,kDACE,Y5CynJR,C4CtnJM,4DAEE,mBAAA,CADA,oB5CynJR,C4CtnJQ,mEAEE,qBzCqOkB,CyCtOlB,gB5CynJV,CACF,CW7rJI,yBiC4CA,0BACE,sBAAA,CAAA,kB5CopJJ,C4CjpJM,uDvCrCJ,gCAAA,CAZA,yBLssJF,C4ChpJM,sDvC1CJ,2BAAA,CAZA,8BL0sJF,C4C/oJM,kDACE,Y5CipJR,C4C9oJM,4DAEE,mBAAA,CADA,oB5CipJR,C4C9oJQ,mEAEE,qBzCqOkB,CyCtOlB,gB5CipJV,CACF,CWrtJI,yBiC4CA,0BACE,sBAAA,CAAA,kB5C4qJJ,C4CzqJM,uDvCrCJ,gCAAA,CAZA,yBL8tJF,C4CxqJM,sDvC1CJ,2BAAA,CAZA,8BLkuJF,C4CvqJM,kDACE,Y5CyqJR,C4CtqJM,4DAEE,mBAAA,CADA,oB5CyqJR,C4CtqJQ,mEAEE,qBzCqOkB,CyCtOlB,gB5CyqJV,CACF,CW7uJI,0BiC4CA,0BACE,sBAAA,CAAA,kB5CosJJ,C4CjsJM,uDvCrCJ,gCAAA,CAZA,yBLsvJF,C4ChsJM,sDvC1CJ,2BAAA,CAZA,8BL0vJF,C4C/rJM,kDACE,Y5CisJR,C4C9rJM,4DAEE,mBAAA,CADA,oB5CisJR,C4C9rJQ,mEAEE,qBzCqOkB,CyCtOlB,gB5CisJV,CACF,CWrwJI,0BiC4CA,2BACE,sBAAA,CAAA,kB5C4tJJ,C4CztJM,wDvCrCJ,gCAAA,CAZA,yBL8wJF,C4CxtJM,uDvC1CJ,2BAAA,CAZA,8BLkxJF,C4CvtJM,mDACE,Y5CytJR,C4CttJM,6DAEE,mBAAA,CADA,oB5CytJR,C4CttJQ,oEAEE,qBzCqOkB,CyCtOlB,gB5CytJV,CACF,C4C3sJA,kBvC9HI,eL40JJ,C4C3sJE,mCACE,oB5C6sJJ,C4C3sJI,8CACE,qB5C6sJN,C6Cj2JE,yBAEE,wBD+JsB,CChKtB,a7Cq2JJ,C6Cj2JM,4GAGE,wBAAA,CADA,a7Cm2JR,C6C/1JM,uDAEE,wBDqJqB,CCpJrB,oBDoJqB,CCtJrB,U7Cm2JR,C6C/2JE,2BAEE,wBD+JsB,CChKtB,a7Cm3JJ,C6C/2JM,gHAGE,wBAAA,CADA,a7Ci3JR,C6C72JM,yDAEE,wBDqJqB,CCpJrB,oBDoJqB,CCtJrB,U7Ci3JR,C6C73JE,yBAEE,wBD+JsB,CChKtB,a7Ci4JJ,C6C73JM,4GAGE,wBAAA,CADA,a7C+3JR,C6C33JM,uDAEE,wBDqJqB,CCpJrB,oBDoJqB,CCtJrB,U7C+3JR,C6C34JE,sBAEE,wBD+JsB,CChKtB,a7C+4JJ,C6C34JM,sGAGE,wBAAA,CADA,a7C64JR,C6Cz4JM,oDAEE,wBDuJuB,CCtJvB,oBDsJuB,CCxJvB,U7C64JR,C6Cz5JE,yBAEE,wBD+JsB,CChKtB,a7C65JJ,C6Cz5JM,4GAGE,wBAAA,CADA,a7C25JR,C6Cv5JM,uDAEE,wBDuJuB,CCtJvB,oBDsJuB,CCxJvB,U7C25JR,C6Cv6JE,wBAEE,wBD+JsB,CChKtB,a7C26JJ,C6Cv6JM,0GAGE,wBAAA,CADA,a7Cy6JR,C6Cr6JM,sDAEE,wBDqJqB,CCpJrB,oBDoJqB,CCtJrB,U7Cy6JR,C6Cr7JE,uBAEE,wBD+JsB,CChKtB,a7Cy7JJ,C6Cr7JM,wGAGE,wBAAA,CADA,a7Cu7JR,C6Cn7JM,qDAEE,wBDuJuB,CCtJvB,oBDsJuB,CCxJvB,U7Cu7JR,C6Cn8JE,sBAEE,wBD+JsB,CChKtB,a7Cu8JJ,C6Cn8JM,sGAGE,wBAAA,CADA,a7Cq8JR,C6Cj8JM,oDAEE,wBDqJqB,CCpJrB,oBDoJqB,CCtJrB,U7Cq8JR,C8Ch9JA,WAME,+WAAA,CACA,QAAA,CzCOE,oBAAA,CyCbF,sBAAA,CAIA,U3CQS,C2CVT,U3Cy4C2B,C2Cn4C3B,U3C04C2B,C2C/4C3B,aAAA,CAFA,S9C09JF,C8Ch9JE,iBACE,UAAA,CAEA,W3Cq4CyB,C2Ct4CzB,oB9Cm9JJ,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CiDv0KI,yGAGE,qB9CtBK,C8CqBL,0BAAA,CADA,QjD20KN,CiDp0KA,+DACE,ejDu0KF,CiDr0KE,6FAGE,Y9C2kCgC,C8C7kChC,MAAA,CACA,WjDw0KJ,CiDr0KI,2GAGE,uB9CtCK,C8CqCL,gCAAA,CADA,UjDy0KN,CiDl0KA,mEACE,ejDq0KF,CiDn0KE,iGACE,KjDq0KJ,CiDn0KI,+GAGE,wB9CpDK,C8CmDL,0BAAA,CADA,WjDu0KN,CiDh0KA,gEACE,ejDm0KF,CiDj0KE,8FAGE,Y9C6iCgC,C8C/iChC,OAAA,CACA,WjDo0KJ,CiDj0KI,4GAGE,sB9CpEK,C8CmEL,gCAAA,CADA,SjDq0KN,CiD9yKA,eAKE,qB9C9FS,CECP,oBAAA,C4C2FF,U9CtGS,C8CoGT,e9CygCkC,C8CxgClC,oBAAA,CAEA,iBjDmzKF,CmDl6KA,SAYE,oBAAA,CAEA,2BAAA,CADA,qBhDLS,CgDOT,+BAAA,C9CIE,mBAAA,C8CdF,aAAA,CDJA,qC/Coa4B,CChIxB,iBALI,C8C7RR,iBAAA,CACA,e/C6a4B,CgD9a5B,MAAA,CDQA,qBAAA,CAIA,eAAA,CAVA,e/Ckb4B,CgDjb5B,ehD6oCkC,CgDlpClC,iBAAA,CDKA,eAAA,CACA,gBAAA,CACA,oBAAA,CACA,gBAAA,CACA,mBAAA,CCRA,KAAA,CDYA,kBAAA,CAFA,iBAAA,CACA,mBAAA,CCTA,YnD27KF,CmD56KE,wBAEE,aAAA,CAEA,YhD6oCgC,CgDhpChC,iBAAA,CAEA,UnD+6KJ,CmD56KI,6DAKE,wBAAA,CACA,kBAAA,CAFA,UAAA,CADA,aAAA,CADA,iBnDi7KN,CmDv6KE,2FACE,yBnD06KJ,CmDx6KI,yGAGE,gChD4nC8B,CgD7nC9B,0BAAA,CADA,QnD46KN,CmDv6KI,uGAGE,qBhDzCK,CgDwCL,0BAAA,CADA,UnD26KN,CmDn6KE,6FAGE,WhDymCgC,CgD3mChC,uBAAA,CACA,WnDu6KJ,CmDp6KI,2GAGE,kChDwmC8B,CgDzmC9B,gCAAA,CADA,MnDw6KN,CmDn6KI,yGAGE,uBhD7DK,CgD4DL,gCAAA,CADA,QnDu6KN,CmD/5KE,iG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AAA,CANA,oBAAA,CAEA,qBAAA,CACA,yBAAA,CAFA,mBAAA,CAHA,2BAAA,CAOA,4BAAA,CANA,mB5DqhMF,C6DzhME,sBAIE,QAAA,CAGA,UAAA,CAFA,MAAA,CAJA,iBAAA,CAEA,OAAA,CADA,KAAA,CAIA,S7D6hMJ,C8DpiMA,eCAE,eAAA,CACA,sBAAA,CACA,kB/DwiMF,CgE7/LM,gBAEI,iChE+/LV,CgEjgMM,WAEI,4BhEmgMV,CgErgMM,cAEI,+BhEugMV,CgEzgMM,cAEI,+BhE2gMV,CgE7gMM,mBAEI,oChE+gMV,CgEjhMM,gBAEI,iChEmhMV,CgErhMM,aAEI,oBhEuhMV,CgEzhMM,WAEI,qBhE2hMV,CgE7hMM,YAEI,oBhE+hMV,CgEjiMM,eAEI,uBhEmiMV,CgEriMM,iBAEI,yBhEuiMV,CgEziMM,kBAEI,0BhE2iMV,CgE7iMM,iBAEI,yBhE+iMV,CgEjjMM,UAEI,wBhEmjMV,CgErjMM,gBAEI,8BhEujMV,CgEzjMM,SAEI,uBhE2jMV,CgE7jMM,QAEI,0BAAA,CAAA,sBhE+jMV,CgEjkMM,SAEI,uBhEmkMV,CgErkMM,aAEI,2BhEukMV,CgEzkMM,cAEI,4BhE2kMV,CgE7kMM,QAEI,6BAAA,CAAA,sBhE+kMV,CgEjlMM,eAEI,oCAAA,CAAA,6BhEmlMV,CgErlMM,QAEI,sBhEulMV,CgEzlMM,QAEI,iDhE2lMV,CgE7lMM,WAEI,sDhE+lMV,CgEjmMM,WAEI,iDhEmmMV,CgErmMM,aAEI,yBhEumMV,CgEzmMM,iBAEI,yBhE2mMV,CgE7mMM,mBAEI,2BhE+mMV,CgEjnMM,mBAEI,2BhEmnMV,CgErnMM,gBAEI,wBhEunMV,CgEznMM,iBAEI,iCAAA,CAAA,yBhE2nMV,CgE7nMM,OAEI,ehE+nMV,CgEjoMM,QAEI,iBhEmoMV,CgEroMM,SAEI,kBhEuoMV,CgEzoMM,UAEI,kBhE2oMV,CgE7oMM,WAEI,oBhE+oMV,CgEjpMM,YAEI,qBhEmpMV,CgErpMM,SAEI,gBhEupMV,CgEzpMM,UAEI,kBhE2pMV,CgE7pMM,WAEI,mBhE+pMV,CgEjqMM,OAEI,iBhEmqMV,CgErqMM,QAEI,mBhEuqMV,CgEzqMM,SAEI,oBhE2qMV,CgE7qMM,kBAEI,gDAAA,CAAA,wChE+qMV,CgEjrMM,oBAEI,4CAAA,CAAA,oChEmrMV,CgErrMM,oBAEI,4CAAA,CAAA,oChEurMV,CgEzrMM,QAEI,kChE2rMV,CgE7rMM,UAEI,kBhE+rMV,CgEjsMM,YAEI,sChEmsMV,CgErsMM,cAEI,sBhEusMV,CgEzsMM,YAEI,wChE2sMV,CgE7sMM,cAEI,wBhE+sMV,CgEjtMM,eAEI,yChEmtMV,CgErtMM,iBAEI,yBhEutMV,CgEztMM,cAEI,uChE2tMV,CgE7tMM,gBAEI,uBhE+tMV,CgEjuMM,gBAEI,8BhEmuMV,CgEruMM,kBAEI,8BhEuuMV,CgEzuMM,gBAEI,8BhE2uMV,CgE7uMM,aAEI,8BhE+uMV,CgEjvMM,gBAEI,8BhEmvMV,CgErvMM,eAEI,8BhEuvMV,CgEzvMM,cAEI,8BhE2vMV,CgE7vMM,aAEI,8BhE+vMV,CgEjwMM,cAEI,2BhEmwMV,CgErwMM,UAEI,0BhEuwMV,CgEzwMM,UAEI,0BhE2wMV,CgE7wMM,UAEI,0BhE+wMV,CgEjxMM,UAEI,0BhEmxMV,CgErxMM,UAEI,0BhEuxMV,CgEzxMM,MAEI,mBhE2xMV,CgE7xMM,MAEI,mBhE+xMV,CgEjyMM,MAEI,mBhEmyMV,CgEryMM,OAEI,oBhEuyMV,CgEzyMM,QAEI,oBhE2yMV,CgE7yMM,QAEI,wBhE+yMV,CgEjzMM,QAEI,qBhEmzMV,CgErzMM,YAEI,yBhEuzMV,CgEzzMM,MAEI,oBhE2zMV,CgE7zMM,MAEI,oBhE+zMV,CgEj0MM,MAEI,oBhEm0MV,CgEr0MM,OAEI,qBhEu0MV,CgEz0MM,QAEI,qBhE20MV,CgE70MM,QAEI,yBhE+0MV,CgEj1MM,QAEI,sBhEm1MV,CgEr1MM,YAEI,0BhEu1MV,CgEz1MM,WAEI,2BAAA,CAAA,uBhE21MV,CgE71MM,UAEI,gCAAA,CAAA,4BhE+1MV,CgEj2MM,aAEI,mCAAA,CAAA,+BhEm2MV,CgEr2MM,kBAEI,wCAAA,CAAA,oChEu2MV,CgEz2MM,qBAEI,2CAAA,CAAA,uChE22MV,CgE72MM,aAEI,6BAAA,CAAA,qBhE+2MV,CgEj3MM,aAEI,6BAAA,CAAA,qBhEm3MV,CgEr3MM,eAEI,6BAAA,CAAA,uBhEu3MV,CgEz3MM,eAEI,6BAAA,CAAA,uBhE23MV,CgE73MM,WAEI,4BAAA,CAAA,wBhE+3MV,CgEj4MM,aAEI,8BAAA,CAAA,0BhEm4MV,CgEr4MM,mBAEI,oCAAA,CAAA,gChEu4MV,CgEz4MM,OAEI,ehE24MV,CgE74MM,OAEI,oBhE+4MV,CgEj5MM,OAEI,mBhEm5MV,CgEr5MM,OAEI,kBhEu5MV,CgEz5MM,OAEI,oBhE25MV,CgE75MM,OAEI,kBhE+5MV,CgEj6MM,uBAEI,6BAAA,CAAA,oChEm6MV,CgEr6MM,qBAEI,2BAAA,CAAA,kChEu6MV,CgEz6MM,wBAEI,8BAAA,CAAA,gChE26MV,CgE76MM,yBAEI,+BAAA,CAAA,uChE+6MV,CgEj7MM,wBAEI,kCAAA,CAAA,sChEm7MV,CgEr7MM,wBAEI,oCAAA,CAAA,sChEu7MV,CgEz7MM,mBAEI,8BAAA,CAAA,gChE27MV,CgE77MM,iBAEI,4BAAA,CAAA,8BhE+7MV,CgEj8MM,oBAEI,+BAAA,CAAA,4BhEm8MV,CgEr8MM,sBAEI,iCAAA,CAAA,8BhEu8MV,CgEz8MM,qBAEI,gCAAA,CAAA,6BhE28MV,CgE78MM,qBAEI,kCAAA,CAAA,kChE+8MV,CgEj9MM,mBAEI,gCAAA,CAAA,gChEm9MV,CgEr9MM,sBAEI,mCAAA,CAAA,8BhEu9MV,CgEz9MM,uBAEI,oCAAA,CAAA,qChE29MV,CgE79MM,sBAEI,uCAAA,CAAA,oChE+9MV,CgEj+MM,uBAEI,oCAAA,CAAA,+BhEm+MV,CgEr+MM,iBAEI,kCAAA,CAAA,iCAAA,CAAA,yBhEu+MV,CgEz+MM,kBAEI,mCAAA,CAAA,+BhE2+MV,CgE7+MM,gBAEI,iCAAA,CAAA,6BhE++MV,CgEj/MM,mBAEI,oCAAA,CAAA,mCAAA,CAAA,2BhEm/MV,CgEr/MM,qBAEI,sCAAA,CAAA,6BhEu/MV,CgEz/MM,oBAEI,qCAAA,CAAA,oCAAA,CAAA,4BhE2/MV,CgE7/MM,aAEI,2BAAA,CAAA,kBhE+/MV,CgEjgNM,SAEI,0BAAA,CAAA,iBhEmgNV,CgErgNM,SAEI,0BAAA,CAAA,iBhEugNV,CgEzgNM,SAEI,0BAAA,CAAA,iBhE2gNV,CgE7gNM,SAEI,0BAAA,CAAA,iBhE+gNV,CgEjhNM,SAEI,0BAAA,CAAA,iBhEmhNV,CgErhNM,SAEI,0BAAA,CAAA,iBhEuhNV,CgEzhNM,YAEI,0BAAA,CAAA,iBhE2hNV,CgE7hNM,KAEI,kBhE+hNV,CgEjiNM,KAEI,uBhEmiNV,CgEriNM,KAEI,sBhEuiNV,CgEziNM,KAEI,qBhE2iNV,CgE7iNM,KAEI,uBhE+iNV,CgEjjNM,KAEI,qBhEmjNV,CgErjNM,QAEI,qBhEujNV,CgEzjNM,MAEI,uBAAA,CAAA,wBhE4jNV,CgE9jNM,MAEI,4BAAA,CAAA,6BhEikNV,CgEnkNM,MAEI,2BAAA,CAAA,4BhEskNV,CgExkNM,MAEI,0BAAA,CAAA,2BhE2kNV,CgE7kNM,MAEI,4BAAA,CAAA,6BhEglNV,CgEllNM,MAEI,0BAAA,CAAA,2BhEqlNV,CgEvlNM,SAEI,0BAAA,CAAA,2BhE0lNV,CgE5lNM,MAEI,yBAAA,CAAA,sBhE+lNV,CgEjmNM,MAEI,8BAAA,CAAA,2BhEomNV,CgEtmNM,MAEI,6BAAA,CAAA,0BhEymNV,CgE3mNM,MAEI,4BAAA,CAAA,yBhE8mNV,CgEhnNM,MAEI,8BAAA,CAAA,2BhEmnNV,CgErnNM,MAEI,4BAAA,CAAA,yBhEwnNV,CgE1nNM,SAEI,4BAAA,CAAA,yBhE6nNV,CgE/nNM,MAEI,sBhEioNV,CgEnoNM,MAEI,2BhEqoNV,CgEvoNM,MAEI,0BhEyoNV,CgE3oNM,MAEI,yBhE6oNV,CgE/oNM,MAEI,2BhEipNV,CgEnpNM,MAEI,yBhEqpNV,CgEvpNM,SAEI,yBhEypNV,CgE3pNM,MAEI,wBhE6pNV,CgE/pNM,MAEI,6BhEiqNV,CgEnqNM,MAEI,4BhEqqNV,CgEvqNM,MAEI,2BhEyqNV,CgE3qNM,MAEI,6BhE6qNV,CgE/qNM,MAEI,2BhEirNV,CgEnrNM,SAEI,2BhEqrNV,CgEvrNM,MAEI,yBhEyrNV,CgE3rNM,MAEI,8BhE6rNV,CgE/rNM,MAEI,6BhEisNV,CgEnsNM,MAEI,4BhEqsNV,CgEvsNM,MAEI,8BhEysNV,CgE3sNM,MAEI,4BhE6sNV,CgE/sNM,SAEI,4BhEitNV,CgEntNM,MAEI,uBhEqtNV,CgEvtNM,MAEI,4BhEytNV,CgE3tNM,MAEI,2BhE6tNV,CgE/tNM,MAEI,0BhEiuNV,CgEnuNM,MAEI,4BhEquNV,CgEvuNM,MAEI,0BhEyuNV,CgE3uNM,SAEI,0BhE6uNV,CgE/uNM,KAEI,mBhEivNV,CgEnvNM,KAEI,wBhEqvNV,CgEvvNM,KAEI,uBhEyvNV,CgE3vNM,KAEI,sBhE6vNV,CgE/vNM,KAEI,wBhEiwNV,CgEnwNM,KAEI,sBhEqwNV,CgEvwNM,MAEI,wBAAA,CAAA,yBhE0wNV,CgE5wNM,MAEI,6BAAA,CAAA,8BhE+wNV,CgEjxNM,MAEI,4BAAA,CAAA,6BhEoxNV,CgEtxNM,MAEI,2BAAA,CAAA,4BhEyxNV,CgE3xNM,MAEI,6BAAA,CAAA,8BhE8xNV,CgEhyNM,MAEI,2BAAA,CAAA,4BhEmyNV,CgEryNM,MAEI,0BAAA,CAAA,uBhEwyNV,CgE1yNM,MAEI,+BAAA,CAAA,4BhE6yNV,CgE/yNM,MAEI,8BAAA,CAAA,2BhEkzNV,CgEpzNM,MAEI,6BAAA,CAAA,0BhEuzNV,CgEzzNM,MAEI,+BAAA,CAAA,4BhE4zNV,CgE9zNM,MAEI,6BAAA,CAAA,0BhEi0NV,CgEn0NM,MAEI,uBhEq0NV,CgEv0NM,MAEI,4BhEy0NV,CgE30NM,MAEI,2BhE60NV,CgE/0NM,MAEI,0BhEi1NV,CgEn1NM,MAEI,4BhEq1NV,CgEv1NM,MAEI,0BhEy1NV,CgE31NM,MAEI,yBhE61NV,CgE/1NM,MAEI,8BhEi2NV,CgEn2NM,MAEI,6BhEq2NV,CgEv2NM,MAEI,4BhEy2NV,CgE32NM,MAEI,8BhE62NV,CgE/2NM,MAEI,4BhEi3NV,CgEn3NM,MAEI,0BhEq3NV,CgEv3NM,MAEI,+BhEy3NV,CgE33NM,MAEI,8BhE63NV,CgE/3NM,MAEI,6BhEi4NV,CgEn4NM,MAEI,+BhEq4NV,CgEv4NM,MAEI,6BhEy4NV,CgE34NM,MAEI,wBhE64NV,CgE/4NM,MAEI,6BhEi5NV,CgEn5NM,MAEI,4BhEq5NV,CgEv5NM,MAEI,2BhEy5NV,CgE35NM,MAEI,6BhE65NV,CgE/5NM,MAEI,2BhEi6NV,CgEn6NM,gBAEI,8ChEq6NV,CgEv6NM,MAEI,0ChEy6NV,CgE36NM,MAEI,yChE66NV,CgE/6NM,MAEI,uChEi7NV,CgEn7NM,MAEI,yChEq7NV,CgEv7NM,MAEI,2BhEy7NV,CgE37NM,MAEI,wBhE67NV,CgE/7NM,YAEI,2BhEi8NV,CgEn8NM,YAEI,2BhEq8NV,CgEv8NM,UAEI,yBhEy8NV,CgE38NM,YAEI,6BhE68NV,CgE/8NM,WAEI,yBhEi9NV,CgEn9NM,SAEI,yBhEq9NV,CgEv9NM,WAEI,4BhEy9NV,CgE39NM,MAEI,uBhE69NV,CgE/9NM,OAEI,0BhEi+NV,CgEn+NM,SAEI,yBhEq+NV,CgEv+NM,OAEI,uBhEy+NV,CgE3+NM,YAEI,yBhE6+NV,CgE/+NM,UAEI,0BhEi/NV,CgEn/NM,aAEI,2BhEq/NV,CgEv/NM,sBAEI,8BhEy/NV,CgE3/NM,2BAEI,mChE6/NV,CgE//NM,8BAEI,sChEigOV,CgEngOM,gBAEI,kChEqgOV,CgEvgOM,gBAEI,kChEygOV,CgE3gOM,iBAEI,mChE6gOV,CgE/gOM,WAEI,4BhEihOV,CgEnhOM,aAEI,4BhEqhOV,CgEvhOM,YAEI,8BAAA,CAAA,+BhE2hOV,CgE7hOM,cAEI,uBhEgiOV,CgEliOM,gBAEI,uBhEoiOV,CgEtiOM,cAEI,uBhEwiOV,CgE1iOM,WAEI,uBhE4iOV,CgE9iOM,cAEI,uBhEgjOV,CgEljOM,aAEI,uBhEojOV,CgEtjOM,YAEI,uBhEwjOV,CgE1jOM,WAEI,uBhE4jOV,CgE9jOM,YAEI,oBhEgkOV,CgElkOM,WAEI,uBhEokOV,CgEtkOM,YAEI,uBhEwkOV,CgE1kOM,eAEI,8BhE4kOV,CgE9kOM,eAEI,kChEglOV,CgEllOM,YAEI,uBhEolOV,CgEtlOM,YAEI,kChEwlOV,CgE1lOM,cAEI,kChE4lOV,CgE9lOM,YAEI,kChEgmOV,CgElmOM,SAEI,kChEomOV,CgEtmOM,YAEI,kChEwmOV,CgE1mOM,WAEI,kChE4mOV,CgE9mOM,UAEI,kChEgnOV,CgElnOM,SAEI,kChEonOV,CgEtnOM,mBAEI,+BhE4nOV,CgE9nOM,gBAEI,sChEgoOV,CgEloOM,aAEI,6ChEooOV,CgEtoOM,iBAEI,iCAAA,CAAA,8BAAA,CAAA,yBhEwoOV,CgE1oOM,kBAEI,kCAAA,CAAA,+BAAA,CAAA,8BAAA,CAAA,0BhE4oOV,CgE9oOM,kBAEI,kCAAA,CAAA,+BAAA,CAAA,8BAAA,CAAA,0BhEgpOV,CgElpOM,SAEI,6BhEopOV,CgEtpOM,SAEI,6BhEwpOV,CgE1pOM,SAEI,8BhE4pOV,CgE9pOM,WAEI,yBhEgqOV,CgElqOM,WAEI,6BhEoqOV,CgEtqOM,WAEI,8BhEwqOV,CgE1qOM,WAEI,6BhE4qOV,CgE9qOM,gBAEI,2BhEgrOV,CgElrOM,cAEI,6BhEorOV,CgEtrOM,aAEI,uChEyrOV,CgE3rOM,0BAEI,wChE8rOV,CgEhsOM,6BAEI,2ChEmsOV,CgErsOM,+BAEI,0ChEwsOV,CgE1sOM,eAEI,uChEwsOV,CgE1sOM,SAEI,4BhE4sOV,CgE9sOM,WAEI,2BhEgtOV,CWpsOI,yBqDdE,gBAEI,oBhEqtOR,CgEvtOI,cAEI,qBhEytOR,CgE3tOI,eAEI,oBhE6tOR,CgE/tOI,aAEI,wBhEiuOR,CgEnuOI,mBAEI,8BhEquOR,CgEvuOI,YAEI,uBhEyuOR,CgE3uOI,WAEI,0BAAA,CAAA,sBhE6uOR,CgE/uOI,YAEI,uBhEivOR,CgEnvOI,gBAEI,2BhEqvOR,CgEvvOI,iBAEI,4BhEyvOR,CgE3vOI,WAEI,6BAAA,CAAA,sBhE6vOR,CgE/vOI,kBAEI,oCAAA,CAAA,6BhEiwOR,CgEnwOI,WAEI,sBhEqwOR,CgEvwOI,cAEI,2BAAA,CAAA,uBhEywOR,CgE3wOI,aAEI,gCAAA,CAAA,4BhE6wOR,CgE/wOI,gBAEI,mCAAA,CAAA,+BhEixOR,CgEnxOI,qBAEI,wCAAA,CAAA,oChEqxOR,CgEvxOI,wBAEI,2CAAA,CAAA,uChEyxOR,CgE3xOI,gBAEI,6BAAA,CAAA,qBhE6xOR,CgE/xOI,gBAEI,6BAAA,CAAA,qBhEiyOR,CgEnyOI,kBAEI,6BAAA,CAAA,uBhEqyOR,CgEvyOI,kBAEI,6BAAA,CAAA,uBhEyyOR,CgE3yOI,cAEI,4BAAA,CAAA,wBhE6yOR,CgE/yOI,gBAEI,8BAAA,CAAA,0BhEizOR,CgEnzOI,sBAEI,oCAAA,CAAA,gChEqzOR,CgEvzOI,UAEI,ehEyzOR,CgE3zOI,UAEI,oBhE6zOR,CgE/zOI,UAEI,mBhEi0OR,CgEn0OI,UAEI,kBhEq0OR,CgEv0OI,UAEI,oBhEy0OR,CgE30OI,UAEI,kBhE60OR,CgE/0OI,0BAEI,6BAAA,CAAA,oChEi1OR,CgEn1OI,wBAEI,2BAAA,CAAA,kChEq1OR,CgEv1OI,2BAEI,8BAAA,CAAA,gChEy1OR,CgE31OI,4BAEI,+BAAA,CAAA,uChE61OR,CgE/1OI,2BAEI,kCAAA,CAAA,sChEi2OR,CgEn2OI,2BAEI,oCAAA,CAAA,sChEq2OR,CgEv2OI,sBAEI,8BAAA,CAAA,gChEy2OR,CgE32OI,oBAEI,4BAAA,CAAA,8BhE62OR,CgE/2OI,uBAEI,+BAAA,CAAA,4BhEi3OR,CgEn3OI,yBAEI,iCAAA,CAAA,8BhEq3OR,CgEv3OI,wBAEI,gCAAA,CAAA,6BhEy3OR,CgE33OI,wBAEI,kCAAA,CAAA,kChE63OR,CgE/3OI,sBAEI,gCAAA,CAAA,gChEi4OR,CgEn4OI,yBAEI,mCAAA,CAAA,8BhEq4OR,CgEv4OI,0BAEI,oCAAA,CAAA,qChEy4OR,CgE34OI,yBAEI,uCAAA,CAAA,oChE64OR,CgE/4OI,0BAEI,oCAAA,CAAA,+BhEi5OR,CgEn5OI,oBAEI,kCAAA,CAAA,iCAAA,CAAA,yBhEq5OR,CgEv5OI,qBAEI,mCAAA,CAAA,+BhEy5OR,CgE35OI,mBAEI,iCAAA,CAAA,6BhE65OR,CgE/5OI,sBAEI,oCAAA,CAAA,mCAAA,CAAA,2BhEi6OR,CgEn6OI,wBAEI,sCAAA,CAAA,6BhEq6OR,CgEv6OI,uBAEI,qCAAA,CAAA,oCAAA,CAAA,4BhEy6OR,CgE36OI,gBAEI,2BAAA,CAAA,kBhE66OR,CgE/6OI,YAEI,0BAAA,CAAA,iBhEi7OR,CgEn7OI,YAEI,0BAAA,CAAA,iBhEq7OR,CgEv7OI,YAEI,0BAAA,CAAA,iBhEy7OR,CgE37OI,YAEI,0BAAA,CAAA,iBhE67OR,CgE/7OI,YAEI,0BAAA,CAAA,iBhEi8OR,CgEn8OI,YAEI,0BAAA,CAAA,iBhEq8OR,CgEv8OI,eAEI,0BAAA,CAAA,iBhEy8OR,CgE38OI,QAEI,kBhE68OR,CgE/8OI,QAEI,uBhEi9OR,CgEn9OI,QAEI,sBhEq9OR,CgEv9OI,QAEI,qBhEy9OR,CgE39OI,QAEI,uBhE69OR,CgE/9OI,QAEI,qBhEi+OR,CgEn+OI,WAEI,qBhEq+OR,CgEv+OI,SAEI,uBAAA,CAAA,wBhE0+OR,CgE5+OI,SAEI,4BAAA,CAAA,6BhE++OR,CgEj/OI,SAEI,2BAAA,CAAA,4BhEo/OR,CgEt/OI,SAEI,0BAAA,CAAA,2BhEy/OR,CgE3/OI,SAEI,4BAAA,CAAA,6BhE8/OR,CgEhgPI,SAEI,0BAAA,CAAA,2BhEmgPR,CgErgPI,YAEI,0BAAA,CAAA,2BhEwgPR,CgE1gPI,SAEI,yBAAA,CAAA,sBhE6gPR,CgE/gPI,SAEI,8BAAA,CAAA,2BhEkhPR,CgEphPI,SAEI,6BAAA,CAAA,0BhEuhPR,CgEzhPI,SAEI,4BAAA,CAAA,yBhE4hPR,CgE9hPI,SAEI,8BAAA,CAAA,2BhEiiPR,CgEniPI,SAEI,4BAAA,CAAA,yBhEsiPR,CgExiPI,YAEI,4BAAA,CAAA,yBhE2iPR,CgE7iPI,SAEI,sBhE+iPR,CgEjjPI,SAEI,2BhEmjPR,CgErjPI,SAEI,0BhEujPR,CgEzjPI,SAEI,yBhE2jPR,CgE7jPI,SAEI,2BhE+jPR,CgEjkPI,SAEI,yBhEmkPR,CgErkPI,YAEI,yBhEukPR,CgEzkPI,SAEI,wBhE2kPR,CgE7kPI,SAEI,6BhE+kPR,CgEjlPI,SAEI,4BhEmlPR,CgErlPI,SAEI,2BhEulPR,CgEzlPI,SAEI,6BhE2lPR,CgE7lPI,SAEI,2BhE+lPR,CgEjmPI,YAEI,2BhEmmPR,CgErmPI,SAEI,yBhEumPR,CgEzmPI,SAEI,8BhE2mPR,CgE7mPI,SAEI,6BhE+mPR,CgEjnPI,SAEI,4BhEmnPR,CgErnPI,SAEI,8BhEunPR,CgEznPI,SAEI,4BhE2nPR,CgE7nPI,YAEI,4BhE+nPR,CgEjoPI,SAEI,uBhEmoPR,CgEroPI,SAEI,4BhEuoPR,CgEzoPI,SAEI,2BhE2oPR,CgE7oPI,SAEI,0BhE+oPR,CgEjpPI,SAEI,4BhEmpPR,CgErpPI,SAEI,0BhEupPR,CgEzpPI,YAEI,0BhE2pPR,CgE7pPI,QAEI,mBhE+pPR,CgEjqPI,QAEI,wBhEmqPR,CgErqPI,QAEI,uBhEuqPR,CgEzqPI,QAEI,sBhE2qPR,CgE7qPI,QAEI,wBhE+qPR,CgEjrPI,QAEI,sBhEmrPR,CgErrPI,SAEI,wBAAA,CAAA,yBhEwrPR,CgE1rPI,SAEI,6BAAA,CAAA,8BhE6rPR,CgE/rPI,SAEI,4BAAA,CAAA,6BhEksPR,CgEpsPI,SAEI,2BAAA,CAAA,4BhEusPR,CgEzsPI,SAEI,6BAAA,CAAA,8BhE4sPR,CgE9sPI,SAEI,2BAAA,CAAA,4BhEitPR,CgEntPI,SAEI,0BAAA,CAAA,uBhEstPR,CgExtPI,SAEI,+BAAA,CAAA,4BhE2tPR,CgE7tPI,SAEI,8BAAA,CAAA,2BhEguPR,CgEluPI,SAEI,6BAAA,CAAA,0BhEquPR,CgEvuPI,SAEI,+BAAA,CAAA,4BhE0uPR,CgE5uPI,SAEI,6BAAA,CAAA,0BhE+uPR,CgEjvPI,SAEI,uBhEmvPR,CgErvPI,SAEI,4BhEuvPR,CgEzvPI,SAEI,2BhE2vPR,CgE7vPI,SAEI,0BhE+vPR,CgEjwPI,SAEI,4BhEmwPR,CgErwPI,SAEI,0BhEuwPR,CgEzwPI,SAEI,yBhE2wPR,CgE7wPI,SAEI,8BhE+wPR,CgEjxPI,SAEI,6BhEmxPR,CgErxPI,SAEI,4BhEuxPR,CgEzxPI,SAEI,8BhE2xPR,CgE7xPI,SAEI,4BhE+xPR,CgEjyPI,SAEI,0BhEmyPR,CgEryPI,SAEI,+BhEuyPR,CgEzyPI,SAEI,8BhE2yPR,CgE7yPI,SAEI,6BhE+yPR,CgEjzPI,SAEI,+BhEmzPR,CgErzPI,SAEI,6BhEuzPR,CgEzzPI,SAEI,wBhE2zPR,CgE7zPI,SAEI,6BhE+zPR,CgEj0PI,SAEI,4BhEm0PR,CgEr0PI,SAEI,2BhEu0PR,CgEz0PI,SAEI,6BhE20PR,CgE70PI,SAEI,2BhE+0PR,CgEj1PI,eAEI,yBhEm1PR,CgEr1PI,aAEI,0BhEu1PR,CgEz1PI,gBAEI,2BhE21PR,CACF,CWh1PI,yBqDdE,gBAEI,oBhEg2PR,CgEl2PI,cAEI,qBhEo2PR,CgEt2PI,eAEI,oBhEw2PR,CgE12PI,aAEI,wBhE42PR,CgE92PI,mBAEI,8BhEg3PR,CgEl3PI,YAEI,uBhEo3PR,CgEt3PI,WAEI,0BAAA,CAAA,sBhEw3PR,CgE13PI,YAEI,uBhE43PR,CgE93PI,gBAEI,2BhEg4PR,CgEl4PI,iBAEI,4BhEo4PR,CgEt4PI,WAEI,6BAAA,CAAA,sBhEw4PR,CgE14PI,kBAEI,oCAAA,CAAA,6BhE44PR,CgE94PI,WAEI,sBhEg5PR,CgEl5PI,cAEI,2BAAA,CAAA,uBhEo5PR,CgEt5PI,aAEI,gCAAA,CAAA,4BhEw5PR,CgE15PI,gBAEI,mCAAA,CAAA,+BhE45PR,CgE95PI,qBAEI,wCAAA,CAAA,oChEg6PR,CgEl6PI,wBAEI,2CAAA,CAAA,uChEo6PR,CgEt6PI,gBAEI,6BAAA,CAAA,qBhEw6PR,CgE16PI,gBAEI,6BAAA,CAAA,qBhE46PR,CgE96PI,kBAEI,6BAAA,CAAA,uBhEg7PR,CgEl7PI,kBAEI,6BAAA,CAAA,uBhEo7PR,CgEt7PI,cAEI,4BAAA,CAAA,wBhEw7PR,CgE17PI,gBAEI,8BAAA,CAAA,0BhE47PR,CgE97PI,sBAEI,oCAAA,CAAA,gChEg8PR,CgEl8PI,UAEI,ehEo8PR,CgEt8PI,UAEI,oBhEw8PR,CgE18PI,UAEI,mBhE48PR,CgE98PI,UAEI,kBhEg9PR,CgEl9PI,UAEI,oBhEo9PR,CgEt9PI,UAEI,kBhEw9PR,CgE19PI,0BAEI,6BAAA,CAAA,oChE49PR,CgE99PI,wBAEI,2BAAA,CAAA,kChEg+PR,CgEl+PI,2BAEI,8BAAA,CAAA,gChEo+PR,CgEt+PI,4BAEI,+BAAA,CAAA,uChEw+PR,CgE1+PI,2BAEI,kCAAA,CAAA,sChE4+PR,CgE9+PI,2BAEI,oCAAA,CAAA,sChEg/PR,CgEl/PI,sBAEI,8BAAA,CAAA,gChEo/PR,CgEt/PI,oBAEI,4BAAA,CAAA,8BhEw/PR,CgE1/PI,uBAEI,+BAAA,CAAA,4BhE4/PR,CgE9/PI,yBAEI,iCAAA,CAAA,8BhEggQR,CgElgQI,wBAEI,gCAAA,CAAA,6BhEogQR,CgEtgQI,wBAEI,kCAAA,CAAA,kChEwgQR,CgE1gQI,sBAEI,gCAAA,CAAA,gChE4gQR,CgE9gQI,yBAEI,mCAAA,CAAA,8BhEghQR,CgElhQI,0BAEI,oCAAA,CAAA,qChEohQR,CgEthQI,yBAEI,uCAAA,CAAA,oChEwhQR,CgE1hQI,0BAEI,oCAAA,CAAA,+BhE4hQR,CgE9hQI,oBAEI,kCAAA,CAAA,iCAAA,CAAA,yBhEgiQR,CgEliQI,qBAEI,mCAAA,CAAA,+BhEoiQR,CgEtiQI,mBAEI,iCAAA,CAAA,6BhEwiQR,CgE1iQI,sBAEI,oCAAA,CAAA,mCAAA,CAAA,2BhE4iQR,CgE9iQI,wBAEI,sCAAA,CAAA,6BhEgjQR,CgEljQI,uBAEI,qCAAA,CAAA,oCAAA,CAAA,4BhEojQR,CgEtjQI,gBAEI,2BAAA,CAAA,kBhEwjQR,CgE1jQI,YAEI,0BAAA,CAAA,iBhE4jQR,CgE9jQI,YAEI,0BAAA,CAAA,iBhEgkQR,CgElkQI,YAEI,0BAAA,CAAA,iBhEokQR,CgEtkQI,YAEI,0BAAA,CAAA,iBhEwkQR,CgE1kQI,YAEI,0BAAA,CAAA,iBhE4kQR,CgE9kQI,YAEI,0BAAA,CAAA,iBhEglQR,CgEllQI,eAEI,0BAAA,CAAA,iBhEolQR,CgEtlQI,QAEI,kBhEwlQR,CgE1lQI,QAEI,uBhE4lQR,CgE9lQI,QAEI,sBhEgmQR,CgElmQI,QAEI,qBhEomQR,CgEtmQI,QAEI,uBhEwmQR,CgE1mQI,QAEI,qBhE4mQR,CgE9mQI,WAEI,qBhEgnQR,CgElnQI,SAEI,uBAAA,CAAA,wBhEqnQR,CgEvnQI,SAEI,4BAAA,CAAA,6BhE0nQR,CgE5nQI,SAEI,2BAAA,CAAA,4BhE+nQR,CgEjoQI,SAEI,0BAAA,CAAA,2BhEooQR,CgEtoQI,SAEI,4BAAA,CAAA,6BhEyoQR,CgE3oQI,SAEI,0BAAA,CAAA,2BhE8oQR,CgEhpQI,YAEI,0BAAA,CAAA,2BhEmpQR,CgErpQI,SAEI,yBAAA,CAAA,sBhEwpQR,CgE1pQI,SAEI,8BAAA,CAAA,2BhE6pQR,CgE/pQI,SAEI,6BAAA,CAAA,0BhEkqQR,CgEpqQI,SAEI,4BAAA,CAAA,yBhEuqQR,CgEzqQI,SAEI,8BAAA,CAAA,2BhE4qQR,CgE9qQI,SAEI,4BAAA,CAAA,yBhEirQR,CgEnrQI,YAEI,4BAAA,CAAA,yBhEsrQR,CgExrQI,SAEI,sBhE0rQR,CgE5rQI,SAEI,2BhE8rQR,CgEhsQI,SAEI,0BhEksQR,CgEpsQI,SAEI,yBhEssQR,CgExsQI,SAEI,2BhE0sQR,CgE5sQI,SAEI,yBhE8sQR,CgEhtQI,YAEI,yBhEktQR,CgEptQI,SAEI,wBhEstQR,CgExtQI,SAEI,6BhE0tQR,CgE5tQI,SAEI,4BhE8tQR,CgEhuQI,SAEI,2BhEkuQR,CgEpuQI,SAEI,6BhEsuQR,CgExuQI,SAEI,2BhE0uQR,CgE5uQI,YAEI,2BhE8uQR,CgEhvQI,SAEI,yBhEkvQR,CgEpvQI,SAEI,8BhEsvQR,CgExvQI,SAEI,6BhE0vQR,CgE5vQI,SAEI,4BhE8vQR,CgEhwQI,SAEI,8BhEkwQR,CgEpwQI,SAEI,4BhEswQR,CgExwQI,YAEI,4BhE0wQR,CgE5wQI,SAEI,uBhE8wQR,CgEhxQI,SAEI,4BhEkxQR,CgEpxQI,SAEI,2BhEsxQR,CgExxQI,SAEI,0BhE0xQR,CgE5xQI,SAEI,4BhE8xQR,CgEhyQI,SAEI,0BhEkyQR,CgEpyQI,YAEI,0BhEsyQR,CgExyQI,QAEI,mBhE0yQR,CgE5yQI,QAEI,wBhE8yQR,CgEhzQI,QAEI,uBhEkzQR,CgEpzQI,QAEI,sBhEszQR,CgExzQI,QAEI,wBhE0zQR,CgE5zQI,QAEI,sBhE8zQR,CgEh0QI,SAEI,wBAAA,CAAA,yBhEm0QR,CgEr0QI,SAEI,6BAAA,CAAA,8BhEw0QR,CgE10QI,SAEI,4BAAA,CAAA,6BhE60QR,CgE/0QI,SAEI,2BAAA,CAAA,4BhEk1QR,CgEp1QI,SAEI,6BAAA,CAAA,8BhEu1QR,CgEz1QI,SAEI,2BAAA,CAAA,4BhE41QR,CgE91QI,SAEI,0BAAA,CAAA,uBhEi2QR,CgEn2QI,SAEI,+BAAA,CAAA,4BhEs2QR,CgEx2QI,SAEI,8BAAA,CAAA,2BhE22QR,CgE72QI,SAEI,6BAAA,CAAA,0BhEg3QR,CgEl3QI,SAEI,+BAAA,CAAA,4BhEq3QR,CgEv3QI,SAEI,6BAAA,CAAA,0BhE03QR,CgE53QI,SAEI,uBhE83QR,CgEh4QI,SAEI,4BhEk4QR,CgEp4QI,SAEI,2BhEs4QR,CgEx4QI,SAEI,0BhE04QR,CgE54QI,SAEI,4BhE84QR,CgEh5QI,SAEI,0BhEk5QR,CgEp5QI,SAEI,yBhEs5QR,CgEx5QI,SAEI,8BhE05QR,CgE55QI,SAEI,6BhE85QR,CgEh6QI,SAEI,4BhEk6QR,CgEp6QI,SAEI,8BhEs6QR,CgEx6QI,SAEI,4BhE06QR,CgE56QI,SAEI,0BhE86QR,CgEh7QI,SAEI,+BhEk7QR,CgEp7QI,SAEI,8BhEs7QR,CgEx7QI,SAEI,6BhE07QR,CgE57QI,SAEI,+BhE87QR,CgEh8QI,SAEI,6BhEk8QR,CgEp8QI,SAEI,wBhEs8QR,CgEx8QI,SAEI,6BhE08QR,CgE58QI,SAEI,4BhE88QR,CgEh9QI,SAEI,2BhEk9QR,CgEp9QI,SAEI,6BhEs9QR,CgEx9QI,SAEI,2BhE09QR,CgE59QI,eAEI,yBhE89QR,CgEh+QI,aAEI,0BhEk+QR,CgEp+QI,gBAEI,2BhEs+QR,CACF,CW39QI,yBqDdE,gBAEI,oBhE2+QR,CgE7+QI,cAEI,qBhE++QR,CgEj/QI,eAEI,oBhEm/QR,CgEr/QI,aAEI,wBhEu/QR,CgEz/QI,mBAEI,8BhE2/QR,CgE7/QI,YAEI,uBhE+/QR,CgEjgRI,WAEI,0BAAA,CAAA,sBhEmgRR,CgErgRI,YAEI,uBhEugRR,CgEzgRI,gBAEI,2BhE2gRR,CgE7gRI,iBAEI,4BhE+gRR,CgEjhRI,WAEI,6BAAA,CAAA,sBhEmhRR,CgErhRI,kBAEI,oCAAA,CAAA,6BhEuhRR,CgEzhRI,WAEI,sBhE2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EI,wBhEi2RR,CgEn2RI,SAEI,6BhEq2RR,CgEv2RI,SAEI,4BhEy2RR,CgE32RI,SAEI,2BhE62RR,CgE/2RI,SAEI,6BhEi3RR,CgEn3RI,SAEI,2BhEq3RR,CgEv3RI,YAEI,2BhEy3RR,CgE33RI,SAEI,yBhE63RR,CgE/3RI,SAEI,8BhEi4RR,CgEn4RI,SAEI,6BhEq4RR,CgEv4RI,SAEI,4BhEy4RR,CgE34RI,SAEI,8BhE64RR,CgE/4RI,SAEI,4BhEi5RR,CgEn5RI,YAEI,4BhEq5RR,CgEv5RI,SAEI,uBhEy5RR,CgE35RI,SAEI,4BhE65RR,CgE/5RI,SAEI,2BhEi6RR,CgEn6RI,SAEI,0BhEq6RR,CgEv6RI,SAEI,4BhEy6RR,CgE36RI,SAEI,0BhE66RR,CgE/6RI,YAEI,0BhEi7RR,CgEn7RI,QAEI,mBhEq7RR,CgEv7RI,QAEI,wBhEy7RR,CgE37RI,QAEI,uBhE67RR,CgE/7RI,QAEI,sBhEi8RR,CgEn8RI,QAEI,wBhEq8RR,CgEv8RI,QAEI,sBhEy8RR,CgE38RI,SAEI,wBAAA,CAAA,yBhE88RR,CgEh9RI,SAEI,6BAAA,CAAA,8BhEm9RR,CgEr9RI,SAEI,4BAAA,CAAA,6BhEw9RR,CgE19RI,SAEI,2BAAA,CAAA,4BhE69RR,CgE/9RI,SAEI,6BAAA,CAAA,8BhEk+RR,CgEp+RI,SAEI,2BAAA,CAAA,4BhEu+RR,CgEz+RI,SAEI,0BAAA,CAAA,uBhE4+RR,CgE9+RI,SAEI,+BAAA,CAAA,4BhEi/RR,CgEn/RI,SAEI,8BAAA,CAAA,2BhEs/RR,CgEx/RI,SAEI,6BAAA,CAAA,0BhE2/RR,CgE7/RI,SAEI,+BAAA,CAAA,4BhEggSR,CgElgSI,SAEI,6BAAA,CAAA,0BhEqgSR,CgEvgSI,SAEI,uBhEygSR,CgE3gSI,SAEI,4BhE6gSR,CgE/gSI,SAEI,2BhEihSR,CgEnhSI,SAEI,0BhEqhSR,CgEvhSI,SAEI,4BhEyhSR,CgE3hSI,SAEI,0BhE6hSR,CgE/hSI,SAEI,yBhEiiSR,CgEniSI,SAEI,8BhEqiSR,CgEviSI,SAEI,6BhEyiSR,CgE3iSI,SAEI,4BhE6iSR,CgE/iSI,SAEI,8BhEijSR,CgEnjSI,SAEI,4BhEqjSR,CgEvjSI,SAEI,0BhEyjSR,CgE3jSI,SAEI,+BhE6jSR,CgE/jSI,SAEI,8BhEikSR,CgEnkSI,SAEI,6BhEqkSR,CgEvkSI,SAEI,+BhEykSR,CgE3kSI,SAEI,6BhE6kSR,CgE/kSI,SAEI,wBhEilSR,CgEnlSI,SAEI,6BhEqlSR,CgEvlSI,SAEI,4BhEylSR,CgE3lSI,SAEI,2BhE6lSR,CgE/lSI,SAEI,6BhEimSR,CgEnmSI,SAEI,2BhEqmSR,CgEvmSI,eAEI,yBhEymSR,CgE3mSI,aAEI,0BhE6mSR,CgE/mSI,gBAEI,2BhEinSR,CACF,CWtmSI,0BqDdE,gBAEI,oBhEsnSR,CgExnSI,cAEI,qBhE0nSR,CgE5nSI,eAEI,oBhE8nSR,CgEhoSI,aAEI,wBhEkoSR,CgEpoSI,mBAEI,8BhEsoSR,CgExoSI,YAEI,uBhE0oSR,CgE5oSI,WAEI,0BAAA,CAAA,sBhE8oSR,CgEhpSI,YAEI,uBhEkpSR,CgEppSI,gBAEI,2BhEspSR,CgExpSI,iBAEI,4BhE0pSR,CgE5pSI,WAEI,6BAAA,CAAA,sBhE8pSR,CgEhqSI,kBAEI,oCAAA,CAAA,6BhEkqSR,CgEpqSI,WAEI,sBhEsqSR,CgExqSI,cAEI,2BAAA,CAAA,uBhE0qSR,CgE5qSI,aAEI,gCAAA,CAAA,4BhE8qSR,CgEhrSI,gBAEI,mCAAA,CAAA,+BhEkrSR,CgEprSI,qBAEI,wCAAA,CAAA,oChEsrSR,CgExrSI,wBAEI,2CAAA,CAAA,uChE0rSR,CgE5rSI,gBAEI,6BAAA,CAAA,qBhE8rSR,CgEhsSI,gBAEI,6BAAA,CAAA,qBhEksSR,CgEpsSI,kBAEI,6BAAA,CAAA,uBhEssSR,CgExsSI,kBAEI,6BAAA,CAAA,uBhE0sSR,CgE5sSI,cAEI,4BAAA,CAAA,wBhE8sSR,CgEhtSI,gBAEI,8BAAA,CAAA,0BhEktSR,CgEptSI,sBAEI,oCAAA,CAAA,gChEstSR,CgExtSI,UAEI,ehE0tSR,CgE5tSI,UAEI,oBhE8tSR,CgEhuSI,UAEI,mBhEkuSR,CgEpuSI,UAEI,kBhEsuSR,CgExuSI,UAEI,oBhE0uSR,CgE5uSI,UAEI,kBhE8uSR,CgEhvSI,0BAEI,6BAAA,CAAA,oChEkvSR,CgEpvSI,wBAEI,2BAAA,CAAA,kChEsvSR,CgExvSI,2BAEI,8BAAA,CAAA,gChE0vSR,CgE5vSI,4BAEI,+BAAA,CAAA,uChE8vSR,CgEhwSI,2BAEI,kCAAA,CAAA,sChEkwSR,CgEpwSI,2BAEI,oCAAA,CAAA,sChEswSR,CgExwSI,sBAEI,8BAAA,CAAA,gChE0wSR,CgE5wSI,oBAEI,4BAAA,CAAA,8BhE8wSR,CgEhxSI,uBAEI,+BAAA,CAAA,4BhEkxSR,CgEpxSI,yBAEI,iCAAA,CAAA,8BhEsxSR,CgExxSI,wBAEI,gCAAA,CAAA,6BhE0xSR,CgE5xSI,wBAEI,kCAAA,CAAA,kChE8xSR,CgEhySI,sBAEI,gCAAA,CAAA,gChEkySR,CgEpySI,yBAEI,mCAAA,CAAA,8BhEsySR,CgExySI,0BAEI,oCAAA,CAAA,qChE0ySR,CgE5ySI,yBAEI,uCAAA,CAAA,oChE8ySR,CgEhzSI,0BAEI,oCAAA,CAAA,+BhEkzSR,CgEpzSI,oBAEI,kCAAA,CAAA,iCAAA,CAAA,yBhEszSR,CgExzSI,qBAEI,mCAAA,CAAA,+BhE0zSR,CgE5zSI,mBAEI,iCAAA,CAAA,6BhE8zSR,CgEh0SI,sBAEI,oCAAA,CAAA,mCAAA,CAAA,2BhEk0SR,CgEp0SI,wBAEI,sCAAA,CAAA,6BhEs0SR,CgEx0SI,uBAEI,qCAAA,CAAA,oCAAA,CAAA,4BhE00SR,CgE50SI,gBAEI,2BAAA,CAAA,kBhE80SR,CgEh1SI,YAEI,0BAAA,CAAA,iBhEk1SR,CgEp1SI,YAEI,0BAAA,CAAA,iBhEs1SR,CgEx1SI,YAEI,0BAAA,CAAA,iBhE01SR,CgE51SI,YAEI,0BAAA,CAAA,iBhE81SR,CgEh2SI,YAEI,0BAAA,CAAA,iBhEk2SR,CgEp2SI,YAEI,0BAAA,CAAA,iBhEs2SR,CgEx2SI,eAEI,0BAAA,CAAA,iBhE02SR,CgE52SI,QAEI,kBhE82SR,CgEh3SI,QAEI,uBhEk3SR,CgEp3SI,QAEI,sBhEs3SR,CgEx3SI,QAEI,qBhE03SR,CgE53SI,QAEI,uBhE83SR,CgEh4SI,QAEI,qBhEk4SR,CgEp4SI,WAEI,qBhEs4SR,CgEx4SI,SAEI,uBAAA,CAAA,wBhE24SR,CgE74SI,SAEI,4BAAA,CAAA,6BhEg5SR,CgEl5SI,SAEI,2BAAA,CAAA,4BhEq5SR,CgEv5SI,SAEI,0BAAA,CAAA,2BhE05SR,CgE55SI,SAEI,4BAAA,CAAA,6BhE+5SR,CgEj6SI,SAEI,0BAAA,CAAA,2BhEo6SR,CgEt6SI,YAEI,0BAAA,CAAA,2BhEy6SR,CgE36SI,SAEI,yBAAA,CAAA,sBhE86SR,CgEh7SI,SAEI,8BAAA,CAAA,2BhEm7SR,CgEr7SI,SAEI,6BAAA,CAAA,0BhEw7SR,CgE17SI,SAEI,4BAAA,CAAA,yBhE67SR,CgE/7SI,SAEI,8BAAA,CAAA,2BhEk8SR,CgEp8SI,SAEI,4BAAA,CAAA,yBhEu8SR,CgEz8SI,YAEI,4BAAA,CAAA,yBhE48SR,CgE98SI,SAEI,sBhEg9SR,CgEl9SI,SAEI,2BhEo9SR,CgEt9SI,SAEI,0BhEw9SR,CgE19SI,SAEI,yBhE49SR,CgE99SI,SAEI,2BhEg+SR,CgEl+SI,SAEI,yBhEo+SR,CgEt+SI,YAEI,yBhEw+SR,CgE1+SI,SAEI,wBhE4+SR,CgE9+SI,SAEI,6BhEg/SR,CgEl/SI,SAEI,4BhEo/SR,CgEt/SI,SAEI,2BhEw/SR,CgE1/SI,SAEI,6BhE4/SR,CgE9/SI,SAEI,2BhEggTR,CgElgTI,YAEI,2BhEogTR,CgEtgTI,SAEI,yBhEwgTR,CgE1gTI,SAEI,8BhE4gTR,CgE9gTI,SAEI,6BhEghTR,CgElhTI,SAEI,4BhEohTR,CgEthTI,SAEI,8BhEwhTR,CgE1hTI,SAEI,4BhE4hTR,CgE9hTI,YAEI,4BhEgiTR,CgEliTI,SAEI,uBhEoiTR,CgEtiTI,SAEI,4BhEwiTR,CgE1iTI,SAEI,2BhE4iTR,CgE9iTI,SAEI,0BhEgjTR,CgEljTI,SAEI,4BhEojTR,CgEtjTI,SAEI,0BhEwjTR,CgE1jTI,YAEI,0BhE4jTR,CgE9jTI,QAEI,mBhEgkTR,CgElkTI,QAEI,wBhEokTR,CgEtkTI,QAEI,uBhEwkTR,CgE1kTI,QAEI,sBhE4kTR,CgE9kTI,QAEI,wBhEglTR,CgEllTI,QAEI,sBhEolTR,CgEtlTI,SAEI,wBAAA,CAAA,yBhEylTR,CgE3lTI,SAEI,6BAAA,CAAA,8BhE8lTR,CgEhmTI,SAEI,4BAAA,CAAA,6BhEmmTR,CgErmTI,SAEI,2BAAA,CAAA,4BhEwmTR,CgE1mTI,SAEI,6BAAA,CAAA,8BhE6mTR,CgE/mTI,SAEI,2BAAA,CAAA,4BhEknTR,CgEpnTI,SAEI,0BAAA,CAAA,uBhEunTR,CgEznTI,SAEI,+BAAA,CAAA,4BhE4nTR,CgE9nTI,SAEI,8BAAA,CAAA,2BhEioTR,CgEnoTI,SAEI,6BAAA,CAAA,0BhEsoTR,CgExoTI,SAEI,+BAAA,CAAA,4BhE2oTR,CgE7oTI,SAEI,6BAAA,CAAA,0BhEgpTR,CgElpTI,SAEI,uBhEopTR,CgEtpTI,SAEI,4BhEwpTR,CgE1pTI,SAEI,2BhE4pTR,CgE9pTI,SAEI,0BhEgqTR,CgElqTI,SAEI,4BhEoqTR,CgEtqTI,SAEI,0BhEwqTR,CgE1qTI,SAEI,yBhE4qTR,CgE9qTI,SAEI,8BhEgrTR,CgElrTI,SAEI,6BhEorTR,CgEtrTI,SAEI,4BhEwrTR,CgE1rTI,SAEI,8BhE4rTR,CgE9rTI,SAEI,4BhEgsTR,CgElsTI,SAEI,0BhEosTR,CgEtsTI,SAEI,+BhEwsTR,CgE1sTI,SAEI,8BhE4sTR,CgE9sTI,SAEI,6BhEgtTR,CgEltTI,SAEI,+BhEotTR,CgEttTI,SAEI,6BhEwtTR,CgE1tTI,SAEI,wBhE4tTR,CgE9tTI,SAEI,6BhEguTR,CgEluTI,SAEI,4BhEouTR,CgEtuTI,SAEI,2BhEwuTR,CgE1uTI,SAEI,6BhE4uTR,CgE9uTI,SAEI,2BhEgvTR,CgElvTI,eAEI,yBhEovTR,CgEtvTI,aAEI,0BhEwvTR,CgE1vTI,gBAEI,2BhE4vTR,CACF,CWjvTI,0BqDdE,iBAEI,oBhEiwTR,CgEnwTI,eAEI,qBhEqwTR,CgEvwTI,gBAEI,oBhEywTR,CgE3wTI,cAEI,wBhE6wTR,CgE/wTI,oBAEI,8BhE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AA,CAAA,yBhEklUR,CgEplUI,aAEI,4BAAA,CAAA,yBhEulUR,CgEzlUI,UAEI,sBhE2lUR,CgE7lUI,UAEI,2BhE+lUR,CgEjmUI,UAEI,0BhEmmUR,CgErmUI,UAEI,yBhEumUR,CgEzmUI,UAEI,2BhE2mUR,CgE7mUI,UAEI,yBhE+mUR,CgEjnUI,aAEI,yBhEmnUR,CgErnUI,UAEI,wBhEunUR,CgEznUI,UAEI,6BhE2nUR,CgE7nUI,UAEI,4BhE+nUR,CgEjoUI,UAEI,2BhEmoUR,CgEroUI,UAEI,6BhEuoUR,CgEzoUI,UAEI,2BhE2oUR,CgE7oUI,aAEI,2BhE+oUR,CgEjpUI,UAEI,yBhEmpUR,CgErpUI,UAEI,8BhEupUR,CgEzpUI,UAEI,6BhE2pUR,CgE7pUI,UAEI,4BhE+pUR,CgEjqUI,UAEI,8BhEmqUR,CgErqUI,UAEI,4BhEuqUR,CgEzqUI,aAEI,4BhE2qUR,CgE7qUI,UAEI,uBhE+qUR,CgEjrUI,UAEI,4BhEmrUR,CgErrUI,UAEI,2BhEurUR,CgEzrUI,UAEI,0BhE2rUR,CgE7rUI,UAEI,4BhE+rUR,CgEjsUI,UAEI,0BhEmsUR,CgErsUI,aAEI,0BhEusUR,CgEzsUI,SAEI,mBhE2sUR,CgE7sUI,SAEI,wBhE+sUR,CgEjtUI,SAEI,uBhEmtUR,CgErtUI,SAEI,sBhEutUR,CgEztUI,SAEI,wBhE2tUR,CgE7tUI,SAEI,sBhE+tUR,CgEjuUI,UAEI,wBAAA,CAAA,yBhEouUR,CgEtuUI,UAEI,6BAAA,CAAA,8BhEyuUR,CgE3uUI,UAEI,4BAAA,CAAA,6BhE8uUR,CgEhvUI,UAEI,2BAAA,CAAA,4BhEmvUR,CgErvUI,UAEI,6BAAA,CAAA,8BhEwvUR,CgE1vUI,UAEI,2BAAA,CAAA,4BhE6vUR,CgE/vUI,UAEI,0BAAA,CAAA,uBhEkwUR,CgEpwUI,UAEI,+BAAA,CAAA,4BhEuwUR,CgEzwUI,UAEI,8BAAA,CAAA,2BhE4wUR,CgE9wUI,UAEI,6BAAA,CAAA,0BhEixUR,CgEnxUI,UAEI,+BAAA,CAAA,4BhEsxUR,CgExxUI,UAEI,6BAAA,CAAA,0BhE2xUR,CgE7xUI,UAEI,uBhE+xUR,CgEjyUI,UAEI,4BhEmyUR,CgEryUI,UAEI,2BhEuyUR,CgEzyUI,UAEI,0BhE2yUR,CgE7yUI,UAEI,4BhE+yUR,CgEjzUI,UAEI,0BhEmzUR,CgErzUI,UAEI,yBhEuzUR,CgEzzUI,UAEI,8BhE2zUR,CgE7zUI,UAEI,6BhE+zUR,CgEj0UI,UAEI,4BhEm0UR,CgEr0UI,UAEI,8BhEu0UR,CgEz0UI,UAEI,4BhE20UR,CgE70UI,UAEI,0BhE+0UR,CgEj1UI,UAEI,+BhEm1UR,CgEr1UI,UAEI,8BhEu1UR,CgEz1UI,UAEI,6BhE21UR,CgE71UI,UAEI,+BhE+1UR,CgEj2UI,UAEI,6BhEm2UR,CgEr2UI,UAEI,wBhEu2UR,CgEz2UI,UAEI,6BhE22UR,CgE72UI,UAEI,4BhE+2UR,CgEj3UI,UAEI,2BhEm3UR,CgEr3UI,UAEI,6BhEu3UR,CgEz3UI,UAEI,2BhE23UR,CgE73UI,gBAEI,yBhE+3UR,CgEj4UI,cAEI,0BhEm4UR,CgEr4UI,iBAEI,2BhEu4UR,CACF,CiEx6UA,0BD8BM,MAEI,0BhE44UR,CgE94UI,MAEI,wBhEg5UR,CgEl5UI,MAEI,2BhEo5UR,CgEt5UI,MAEI,0BhEw5UR,CACF,CiEt6UA,aDWM,gBAEI,wBhE65UR,CgE/5UI,sBAEI,8BhEi6UR,CgEn6UI,eAEI,uBhEq6UR,CgEv6UI,cAEI,0BAAA,CAAA,sBhEy6UR,CgE36UI,eAEI,uBhE66UR,CgE/6UI,mBAEI,2BhEi7UR,CgEn7UI,oBAEI,4BhEq7UR,CgEv7UI,cAEI,6BAAA,CAAA,sBhEy7UR,CgE37UI,qBAEI,oCAAA,CAAA,6BhE67UR,CgE/7UI,cAEI,sBhEi8UR,CACF,CkEl/UA,WAEE,qBAAA,CACA,qBAAA,CADA,kBAAA,CADA,mBAAA,CAAA,YAAA,CAEA,6BAAA,CACA,YlEo/UF,CkEx+UA,4BAEE,wB/DZS,C+DWT,alE4+UF,CkEx+UA,mBACE,gBAAA,CAAA,YAAA,CACA,Q/D+NO,C+D9NP,kBlE2+UF,CkEx+UA,mBAEE,4BAlByB,CAiBzB,alE4+UF,CkEz+UE,kDAGE,4BArB6B,CAoB7B,alE2+UJ,CkE/9UA,uDACE,4BlEs+UF,CmE1gVA,WAEE,aAAA,CADA,YnE8gVF,CmE1gVA,UAEE,WAAA,CADA,UnE8gVF,CmE1gVA,SAEE,cAAA,CADA,anE8gVF,CmE1gVA,SAEE,aAAA,CADA,YnE8gVF,CmE1gVA,SAEE,WAAA,CADA,UnE8gVF,CmE1gVA,UAEE,aAAA,CADA,YnE8gVF,CmE1gVA,WAEE,WAAA,CADA,UnE8gVF,CmE1gVA,aAEE,UAAA,CADA,SnE8gVF,CmE1gVA,iBACE,+BAAA,CAAA,uBnE6gVF,CmE1gVA,kBACE,gCAAA,CAAA,wBnE6gVF,CmE1gVA,kBACE,gCAAA,CAAA,wBnE6gVF,CmE1gVA,uBACE,4BAAA,CAAA,oBnE6gVF,CmE1gVA,qBACE,4BAAA,CAAA,oBnE6gVF,CmExgVE,eACE,cAAA,CACA,qBnE4gVJ","file":"oe-bcl-default.min.css"} \ No newline at end of file diff --git a/assets/css/oe_bootstrap_theme.style.min.css b/assets/css/oe_bootstrap_theme.style.min.css new file mode 100644 index 00000000..fd414def --- /dev/null +++ b/assets/css/oe_bootstrap_theme.style.min.css @@ -0,0 +1,2 @@ + +/*# sourceMappingURL=oe_bootstrap_theme.style.min.css.map */ \ No newline at end of file diff --git a/assets/css/oe_bootstrap_theme.style.min.css.map b/assets/css/oe_bootstrap_theme.style.min.css.map new file mode 100644 index 00000000..ce62a1e6 --- /dev/null +++ b/assets/css/oe_bootstrap_theme.style.min.css.map @@ -0,0 +1 @@ +{"version":3,"sources":[],"names":[],"mappings":"","file":"oe_bootstrap_theme.style.min.css"} \ No newline at end of file diff --git a/assets/icons/bootstrap-icons.svg b/assets/icons/bootstrap-icons.svg new file mode 100644 index 00000000..7e2d6429 --- /dev/null +++ b/assets/icons/bootstrap-icons.svg @@ -0,0 +1 @@ +<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><symbol fill="currentColor" class="bi bi-alarm" viewBox="0 0 16 16" id="alarm" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 5.5a.5.5 0 00-1 0v3.362l-1.429 2.38a.5.5 0 10.858.515l1.5-2.5A.5.5 0 008.5 9V5.5z"/><path d="M6.5 0a.5.5 0 000 1H7v1.07a7.001 7.001 0 00-3.273 12.474l-.602.602a.5.5 0 00.707.708l.746-.746A6.97 6.97 0 008 16a6.97 6.97 0 003.422-.892l.746.746a.5.5 0 00.707-.708l-.601-.602A7.001 7.001 0 009 2.07V1h.5a.5.5 0 000-1h-3zm1.038 3.018a6.093 6.093 0 01.924 0 6 6 0 11-.924 0zM0 3.5c0 .753.333 1.429.86 1.887A8.035 8.035 0 014.387 1.86 2.5 2.5 0 000 3.5zM13.5 1c-.753 0-1.429.333-1.887.86a8.035 8.035 0 013.527 3.527A2.5 2.5 0 0013.5 1z"/></symbol><symbol fill="currentColor" class="bi bi-alarm-fill" viewBox="0 0 16 16" id="alarm-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 .5a.5.5 0 01.5-.5h3a.5.5 0 010 1H9v1.07a7.001 7.001 0 013.274 12.474l.601.602a.5.5 0 01-.707.708l-.746-.746A6.97 6.97 0 018 16a6.97 6.97 0 01-3.422-.892l-.746.746a.5.5 0 01-.707-.708l.602-.602A7.001 7.001 0 017 2.07V1h-.5A.5.5 0 016 .5zm2.5 5a.5.5 0 00-1 0v3.362l-1.429 2.38a.5.5 0 10.858.515l1.5-2.5A.5.5 0 008.5 9V5.5zM.86 5.387A2.5 2.5 0 114.387 1.86 8.035 8.035 0 00.86 5.387zM11.613 1.86a2.5 2.5 0 113.527 3.527 8.035 8.035 0 00-3.527-3.527z"/></symbol><symbol fill="currentColor" class="bi bi-align-bottom" viewBox="0 0 16 16" id="align-bottom" xmlns="http://www.w3.org/2000/svg"><rect width="4" height="12" x="6" y="1" rx="1"/><path d="M1.5 14a.5.5 0 000 1v-1zm13 1a.5.5 0 000-1v1zm-13 0h13v-1h-13v1z"/></symbol><symbol fill="currentColor" class="bi bi-align-center" viewBox="0 0 16 16" id="align-center" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a.5.5 0 01.5.5V6h-1V1.5A.5.5 0 018 1zm0 14a.5.5 0 01-.5-.5V10h1v4.5a.5.5 0 01-.5.5zM2 7a1 1 0 011-1h10a1 1 0 011 1v2a1 1 0 01-1 1H3a1 1 0 01-1-1V7z"/></symbol><symbol fill="currentColor" class="bi bi-align-end" viewBox="0 0 16 16" id="align-end" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M14.5 1a.5.5 0 00-.5.5v13a.5.5 0 001 0v-13a.5.5 0 00-.5-.5z"/><path d="M13 7a1 1 0 00-1-1H2a1 1 0 00-1 1v2a1 1 0 001 1h10a1 1 0 001-1V7z"/></symbol><symbol fill="currentColor" class="bi bi-align-middle" viewBox="0 0 16 16" id="align-middle" xmlns="http://www.w3.org/2000/svg"><path d="M6 13a1 1 0 001 1h2a1 1 0 001-1V3a1 1 0 00-1-1H7a1 1 0 00-1 1v10zM1 8a.5.5 0 00.5.5H6v-1H1.5A.5.5 0 001 8zm14 0a.5.5 0 01-.5.5H10v-1h4.5a.5.5 0 01.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-align-start" viewBox="0 0 16 16" id="align-start" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.5 1a.5.5 0 01.5.5v13a.5.5 0 01-1 0v-13a.5.5 0 01.5-.5z"/><path d="M3 7a1 1 0 011-1h10a1 1 0 011 1v2a1 1 0 01-1 1H4a1 1 0 01-1-1V7z"/></symbol><symbol fill="currentColor" class="bi bi-align-top" viewBox="0 0 16 16" id="align-top" xmlns="http://www.w3.org/2000/svg"><rect width="4" height="12" rx="1" transform="matrix(1 0 0 -1 6 15)"/><path d="M1.5 2a.5.5 0 010-1v1zm13-1a.5.5 0 010 1V1zm-13 0h13v1h-13V1z"/></symbol><symbol fill="currentColor" class="bi bi-alt" viewBox="0 0 16 16" id="alt" xmlns="http://www.w3.org/2000/svg"><path d="M1 13.5a.5.5 0 00.5.5h3.797a.5.5 0 00.439-.26L11 3h3.5a.5.5 0 000-1h-3.797a.5.5 0 00-.439.26L5 13H1.5a.5.5 0 00-.5.5zm10 0a.5.5 0 00.5.5h3a.5.5 0 000-1h-3a.5.5 0 00-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-app" viewBox="0 0 16 16" id="app" xmlns="http://www.w3.org/2000/svg"><path d="M11 2a3 3 0 013 3v6a3 3 0 01-3 3H5a3 3 0 01-3-3V5a3 3 0 013-3h6zM5 1a4 4 0 00-4 4v6a4 4 0 004 4h6a4 4 0 004-4V5a4 4 0 00-4-4H5z"/></symbol><symbol fill="currentColor" class="bi bi-app-indicator" viewBox="0 0 16 16" id="app-indicator" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 2A3.5 3.5 0 002 5.5v5A3.5 3.5 0 005.5 14h5a3.5 3.5 0 003.5-3.5V8a.5.5 0 011 0v2.5a4.5 4.5 0 01-4.5 4.5h-5A4.5 4.5 0 011 10.5v-5A4.5 4.5 0 015.5 1H8a.5.5 0 010 1H5.5z"/><path d="M16 3a3 3 0 11-6 0 3 3 0 016 0z"/></symbol><symbol fill="currentColor" class="bi bi-archive" viewBox="0 0 16 16" id="archive" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a1 1 0 011-1h14a1 1 0 011 1v2a1 1 0 01-1 1v7.5a2.5 2.5 0 01-2.5 2.5h-9A2.5 2.5 0 011 12.5V5a1 1 0 01-1-1V2zm2 3v7.5A1.5 1.5 0 003.5 14h9a1.5 1.5 0 001.5-1.5V5H2zm13-3H1v2h14V2zM5 7.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-archive-fill" viewBox="0 0 16 16" id="archive-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12.643 15C13.979 15 15 13.845 15 12.5V5H1v7.5C1 13.845 2.021 15 3.357 15h9.286zM5.5 7h5a.5.5 0 010 1h-5a.5.5 0 010-1zM.8 1a.8.8 0 00-.8.8V3a.8.8 0 00.8.8h14.4A.8.8 0 0016 3V1.8a.8.8 0 00-.8-.8H.8z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-90deg-down" viewBox="0 0 16 16" id="arrow-90deg-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.854 14.854a.5.5 0 01-.708 0l-4-4a.5.5 0 01.708-.708L4 13.293V3.5A2.5 2.5 0 016.5 1h8a.5.5 0 010 1h-8A1.5 1.5 0 005 3.5v9.793l3.146-3.147a.5.5 0 01.708.708l-4 4z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-90deg-left" viewBox="0 0 16 16" id="arrow-90deg-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.146 4.854a.5.5 0 010-.708l4-4a.5.5 0 11.708.708L2.707 4H12.5A2.5 2.5 0 0115 6.5v8a.5.5 0 01-1 0v-8A1.5 1.5 0 0012.5 5H2.707l3.147 3.146a.5.5 0 11-.708.708l-4-4z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-90deg-right" viewBox="0 0 16 16" id="arrow-90deg-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M14.854 4.854a.5.5 0 000-.708l-4-4a.5.5 0 00-.708.708L13.293 4H3.5A2.5 2.5 0 001 6.5v8a.5.5 0 001 0v-8A1.5 1.5 0 013.5 5h9.793l-3.147 3.146a.5.5 0 00.708.708l4-4z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-90deg-up" viewBox="0 0 16 16" id="arrow-90deg-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.854 1.146a.5.5 0 00-.708 0l-4 4a.5.5 0 10.708.708L4 2.707V12.5A2.5 2.5 0 006.5 15h8a.5.5 0 000-1h-8A1.5 1.5 0 015 12.5V2.707l3.146 3.147a.5.5 0 10.708-.708l-4-4z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-bar-down" viewBox="0 0 16 16" id="arrow-bar-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 3.5a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13a.5.5 0 01-.5-.5zM8 6a.5.5 0 01.5.5v5.793l2.146-2.147a.5.5 0 01.708.708l-3 3a.5.5 0 01-.708 0l-3-3a.5.5 0 01.708-.708L7.5 12.293V6.5A.5.5 0 018 6z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-bar-left" viewBox="0 0 16 16" id="arrow-bar-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M12.5 15a.5.5 0 01-.5-.5v-13a.5.5 0 011 0v13a.5.5 0 01-.5.5zM10 8a.5.5 0 01-.5.5H3.707l2.147 2.146a.5.5 0 01-.708.708l-3-3a.5.5 0 010-.708l3-3a.5.5 0 11.708.708L3.707 7.5H9.5a.5.5 0 01.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-bar-right" viewBox="0 0 16 16" id="arrow-bar-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 8a.5.5 0 00.5.5h5.793l-2.147 2.146a.5.5 0 00.708.708l3-3a.5.5 0 000-.708l-3-3a.5.5 0 00-.708.708L12.293 7.5H6.5A.5.5 0 006 8zm-2.5 7a.5.5 0 01-.5-.5v-13a.5.5 0 011 0v13a.5.5 0 01-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-bar-up" viewBox="0 0 16 16" id="arrow-bar-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 10a.5.5 0 00.5-.5V3.707l2.146 2.147a.5.5 0 00.708-.708l-3-3a.5.5 0 00-.708 0l-3 3a.5.5 0 10.708.708L7.5 3.707V9.5a.5.5 0 00.5.5zm-7 2.5a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-clockwise" viewBox="0 0 16 16" id="arrow-clockwise" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 3a5 5 0 104.546 2.914.5.5 0 01.908-.417A6 6 0 118 2v1z"/><path d="M8 4.466V.534a.25.25 0 01.41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 018 4.466z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-counterclockwise" viewBox="0 0 16 16" id="arrow-counterclockwise" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 3a5 5 0 11-4.546 2.914.5.5 0 00-.908-.417A6 6 0 108 2v1z"/><path d="M8 4.466V.534a.25.25 0 00-.41-.192L5.23 2.308a.25.25 0 000 .384l2.36 1.966A.25.25 0 008 4.466z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down" viewBox="0 0 16 16" id="arrow-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 1a.5.5 0 01.5.5v11.793l3.146-3.147a.5.5 0 01.708.708l-4 4a.5.5 0 01-.708 0l-4-4a.5.5 0 01.708-.708L7.5 13.293V1.5A.5.5 0 018 1z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-circle" viewBox="0 0 16 16" id="arrow-down-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zM8.5 4.5a.5.5 0 00-1 0v5.793L5.354 8.146a.5.5 0 10-.708.708l3 3a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 10.293V4.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-circle-fill" viewBox="0 0 16 16" id="arrow-down-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM8.5 4.5a.5.5 0 00-1 0v5.793L5.354 8.146a.5.5 0 10-.708.708l3 3a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 10.293V4.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-left" viewBox="0 0 16 16" id="arrow-down-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 13.5a.5.5 0 00.5.5h6a.5.5 0 000-1H3.707L13.854 2.854a.5.5 0 00-.708-.708L3 12.293V7.5a.5.5 0 00-1 0v6z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-left-circle" viewBox="0 0 16 16" id="arrow-down-left-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zm-5.904-2.854a.5.5 0 11.707.708L6.707 9.95h2.768a.5.5 0 110 1H5.5a.5.5 0 01-.5-.5V6.475a.5.5 0 111 0v2.768l4.096-4.097z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-left-circle-fill" viewBox="0 0 16 16" id="arrow-down-left-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 100 8a8 8 0 0016 0zm-5.904-2.803a.5.5 0 11.707.707L6.707 10h2.768a.5.5 0 010 1H5.5a.5.5 0 01-.5-.5V6.525a.5.5 0 011 0v2.768l4.096-4.096z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-left-square" viewBox="0 0 16 16" id="arrow-down-left-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm10.096 3.146a.5.5 0 11.707.708L6.707 9.95h2.768a.5.5 0 110 1H5.5a.5.5 0 01-.5-.5V6.475a.5.5 0 111 0v2.768l4.096-4.097z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-left-square-fill" viewBox="0 0 16 16" id="arrow-down-left-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 16a2 2 0 01-2-2V2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2zm8.096-10.803L6 9.293V6.525a.5.5 0 00-1 0V10.5a.5.5 0 00.5.5h3.975a.5.5 0 000-1H6.707l4.096-4.096a.5.5 0 10-.707-.707z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-right" viewBox="0 0 16 16" id="arrow-down-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M14 13.5a.5.5 0 01-.5.5h-6a.5.5 0 010-1h4.793L2.146 2.854a.5.5 0 11.708-.708L13 12.293V7.5a.5.5 0 011 0v6z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-right-circle" viewBox="0 0 16 16" id="arrow-down-right-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zM5.854 5.146a.5.5 0 10-.708.708L9.243 9.95H6.475a.5.5 0 100 1h3.975a.5.5 0 00.5-.5V6.475a.5.5 0 10-1 0v2.768L5.854 5.146z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-right-circle-fill" viewBox="0 0 16 16" id="arrow-down-right-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 8a8 8 0 1116 0A8 8 0 010 8zm5.904-2.803a.5.5 0 10-.707.707L9.293 10H6.525a.5.5 0 000 1H10.5a.5.5 0 00.5-.5V6.525a.5.5 0 00-1 0v2.768L5.904 5.197z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-right-square" viewBox="0 0 16 16" id="arrow-down-right-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm5.854 3.146a.5.5 0 10-.708.708L9.243 9.95H6.475a.5.5 0 100 1h3.975a.5.5 0 00.5-.5V6.475a.5.5 0 10-1 0v2.768L5.854 5.146z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-right-square-fill" viewBox="0 0 16 16" id="arrow-down-right-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M14 16a2 2 0 002-2V2a2 2 0 00-2-2H2a2 2 0 00-2 2v12a2 2 0 002 2h12zM5.904 5.197L10 9.293V6.525a.5.5 0 011 0V10.5a.5.5 0 01-.5.5H6.525a.5.5 0 010-1h2.768L5.197 5.904a.5.5 0 01.707-.707z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-short" viewBox="0 0 16 16" id="arrow-down-short" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 4a.5.5 0 01.5.5v5.793l2.146-2.147a.5.5 0 01.708.708l-3 3a.5.5 0 01-.708 0l-3-3a.5.5 0 11.708-.708L7.5 10.293V4.5A.5.5 0 018 4z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-square" viewBox="0 0 16 16" id="arrow-down-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm8.5 2.5a.5.5 0 00-1 0v5.793L5.354 8.146a.5.5 0 10-.708.708l3 3a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 10.293V4.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-square-fill" viewBox="0 0 16 16" id="arrow-down-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm6.5 4.5v5.793l2.146-2.147a.5.5 0 01.708.708l-3 3a.5.5 0 01-.708 0l-3-3a.5.5 0 11.708-.708L7.5 10.293V4.5a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-up" viewBox="0 0 16 16" id="arrow-down-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11.5 15a.5.5 0 00.5-.5V2.707l3.146 3.147a.5.5 0 00.708-.708l-4-4a.5.5 0 00-.708 0l-4 4a.5.5 0 10.708.708L11 2.707V14.5a.5.5 0 00.5.5zm-7-14a.5.5 0 01.5.5v11.793l3.146-3.147a.5.5 0 01.708.708l-4 4a.5.5 0 01-.708 0l-4-4a.5.5 0 01.708-.708L4 13.293V1.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-left" viewBox="0 0 16 16" id="arrow-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 8a.5.5 0 00-.5-.5H2.707l3.147-3.146a.5.5 0 10-.708-.708l-4 4a.5.5 0 000 .708l4 4a.5.5 0 00.708-.708L2.707 8.5H14.5A.5.5 0 0015 8z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-left-circle" viewBox="0 0 16 16" id="arrow-left-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zm-4.5-.5a.5.5 0 010 1H5.707l2.147 2.146a.5.5 0 01-.708.708l-3-3a.5.5 0 010-.708l3-3a.5.5 0 11.708.708L5.707 7.5H11.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-left-circle-fill" viewBox="0 0 16 16" id="arrow-left-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a8 8 0 100 16A8 8 0 008 0zm3.5 7.5a.5.5 0 010 1H5.707l2.147 2.146a.5.5 0 01-.708.708l-3-3a.5.5 0 010-.708l3-3a.5.5 0 11.708.708L5.707 7.5H11.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-left-right" viewBox="0 0 16 16" id="arrow-left-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 11.5a.5.5 0 00.5.5h11.793l-3.147 3.146a.5.5 0 00.708.708l4-4a.5.5 0 000-.708l-4-4a.5.5 0 00-.708.708L13.293 11H1.5a.5.5 0 00-.5.5zm14-7a.5.5 0 01-.5.5H2.707l3.147 3.146a.5.5 0 11-.708.708l-4-4a.5.5 0 010-.708l4-4a.5.5 0 11.708.708L2.707 4H14.5a.5.5 0 01.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-left-short" viewBox="0 0 16 16" id="arrow-left-short" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M12 8a.5.5 0 01-.5.5H5.707l2.147 2.146a.5.5 0 01-.708.708l-3-3a.5.5 0 010-.708l3-3a.5.5 0 11.708.708L5.707 7.5H11.5a.5.5 0 01.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-left-square" viewBox="0 0 16 16" id="arrow-left-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm11.5 5.5a.5.5 0 010 1H5.707l2.147 2.146a.5.5 0 01-.708.708l-3-3a.5.5 0 010-.708l3-3a.5.5 0 11.708.708L5.707 7.5H11.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-left-square-fill" viewBox="0 0 16 16" id="arrow-left-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 14a2 2 0 01-2 2H2a2 2 0 01-2-2V2a2 2 0 012-2h12a2 2 0 012 2v12zm-4.5-6.5H5.707l2.147-2.146a.5.5 0 10-.708-.708l-3 3a.5.5 0 000 .708l3 3a.5.5 0 00.708-.708L5.707 8.5H11.5a.5.5 0 000-1z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-repeat" viewBox="0 0 16 16" id="arrow-repeat" xmlns="http://www.w3.org/2000/svg"><path d="M11.534 7h3.932a.25.25 0 01.192.41l-1.966 2.36a.25.25 0 01-.384 0l-1.966-2.36a.25.25 0 01.192-.41zm-11 2h3.932a.25.25 0 00.192-.41L2.692 6.23a.25.25 0 00-.384 0L.342 8.59A.25.25 0 00.534 9z"/><path fill-rule="evenodd" d="M8 3c-1.552 0-2.94.707-3.857 1.818a.5.5 0 11-.771-.636A6.002 6.002 0 0113.917 7H12.9A5.002 5.002 0 008 3zM3.1 9a5.002 5.002 0 008.757 2.182.5.5 0 11.771.636A6.002 6.002 0 012.083 9H3.1z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-return-left" viewBox="0 0 16 16" id="arrow-return-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M14.5 1.5a.5.5 0 01.5.5v4.8a2.5 2.5 0 01-2.5 2.5H2.707l3.347 3.346a.5.5 0 01-.708.708l-4.2-4.2a.5.5 0 010-.708l4-4a.5.5 0 11.708.708L2.707 8.3H12.5A1.5 1.5 0 0014 6.8V2a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-return-right" viewBox="0 0 16 16" id="arrow-return-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.5 1.5A.5.5 0 001 2v4.8a2.5 2.5 0 002.5 2.5h9.793l-3.347 3.346a.5.5 0 00.708.708l4.2-4.2a.5.5 0 000-.708l-4-4a.5.5 0 00-.708.708L13.293 8.3H3.5A1.5 1.5 0 012 6.8V2a.5.5 0 00-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-right" viewBox="0 0 16 16" id="arrow-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a.5.5 0 01.5-.5h11.793l-3.147-3.146a.5.5 0 01.708-.708l4 4a.5.5 0 010 .708l-4 4a.5.5 0 01-.708-.708L13.293 8.5H1.5A.5.5 0 011 8z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-right-circle" viewBox="0 0 16 16" id="arrow-right-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zM4.5 7.5a.5.5 0 000 1h5.793l-2.147 2.146a.5.5 0 00.708.708l3-3a.5.5 0 000-.708l-3-3a.5.5 0 10-.708.708L10.293 7.5H4.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-right-circle-fill" viewBox="0 0 16 16" id="arrow-right-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a8 8 0 110 16A8 8 0 018 0zM4.5 7.5a.5.5 0 000 1h5.793l-2.147 2.146a.5.5 0 00.708.708l3-3a.5.5 0 000-.708l-3-3a.5.5 0 10-.708.708L10.293 7.5H4.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-right-short" viewBox="0 0 16 16" id="arrow-right-short" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4 8a.5.5 0 01.5-.5h5.793L8.146 5.354a.5.5 0 11.708-.708l3 3a.5.5 0 010 .708l-3 3a.5.5 0 01-.708-.708L10.293 8.5H4.5A.5.5 0 014 8z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-right-square" viewBox="0 0 16 16" id="arrow-right-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm4.5 5.5a.5.5 0 000 1h5.793l-2.147 2.146a.5.5 0 00.708.708l3-3a.5.5 0 000-.708l-3-3a.5.5 0 10-.708.708L10.293 7.5H4.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-right-square-fill" viewBox="0 0 16 16" id="arrow-right-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 14a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2a2 2 0 00-2 2v12zm4.5-6.5h5.793L8.146 5.354a.5.5 0 11.708-.708l3 3a.5.5 0 010 .708l-3 3a.5.5 0 01-.708-.708L10.293 8.5H4.5a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up" viewBox="0 0 16 16" id="arrow-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 15a.5.5 0 00.5-.5V2.707l3.146 3.147a.5.5 0 00.708-.708l-4-4a.5.5 0 00-.708 0l-4 4a.5.5 0 10.708.708L7.5 2.707V14.5a.5.5 0 00.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-circle" viewBox="0 0 16 16" id="arrow-up-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zm-7.5 3.5a.5.5 0 01-1 0V5.707L5.354 7.854a.5.5 0 11-.708-.708l3-3a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 5.707V11.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-circle-fill" viewBox="0 0 16 16" id="arrow-up-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 100 8a8 8 0 0016 0zm-7.5 3.5a.5.5 0 01-1 0V5.707L5.354 7.854a.5.5 0 11-.708-.708l3-3a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 5.707V11.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-left" viewBox="0 0 16 16" id="arrow-up-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 2.5a.5.5 0 01.5-.5h6a.5.5 0 010 1H3.707l10.147 10.146a.5.5 0 01-.708.708L3 3.707V8.5a.5.5 0 01-1 0v-6z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-left-circle" viewBox="0 0 16 16" id="arrow-up-left-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zm-5.904 2.803a.5.5 0 10.707-.707L6.707 6h2.768a.5.5 0 100-1H5.5a.5.5 0 00-.5.5v3.975a.5.5 0 001 0V6.707l4.096 4.096z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-left-circle-fill" viewBox="0 0 16 16" id="arrow-up-left-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-5.904 2.803a.5.5 0 10.707-.707L6.707 6h2.768a.5.5 0 100-1H5.5a.5.5 0 00-.5.5v3.975a.5.5 0 001 0V6.707l4.096 4.096z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-left-square" viewBox="0 0 16 16" id="arrow-up-left-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm10.096 8.803a.5.5 0 10.707-.707L6.707 6h2.768a.5.5 0 100-1H5.5a.5.5 0 00-.5.5v3.975a.5.5 0 001 0V6.707l4.096 4.096z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-left-square-fill" viewBox="0 0 16 16" id="arrow-up-left-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm8.096 10.803L6 6.707v2.768a.5.5 0 01-1 0V5.5a.5.5 0 01.5-.5h3.975a.5.5 0 110 1H6.707l4.096 4.096a.5.5 0 11-.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-right" viewBox="0 0 16 16" id="arrow-up-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M14 2.5a.5.5 0 00-.5-.5h-6a.5.5 0 000 1h4.793L2.146 13.146a.5.5 0 00.708.708L13 3.707V8.5a.5.5 0 001 0v-6z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-right-circle" viewBox="0 0 16 16" id="arrow-up-right-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zM5.854 10.803a.5.5 0 11-.708-.707L9.243 6H6.475a.5.5 0 110-1h3.975a.5.5 0 01.5.5v3.975a.5.5 0 11-1 0V6.707l-4.096 4.096z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-right-circle-fill" viewBox="0 0 16 16" id="arrow-up-right-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 8a8 8 0 1016 0A8 8 0 000 8zm5.904 2.803a.5.5 0 11-.707-.707L9.293 6H6.525a.5.5 0 110-1H10.5a.5.5 0 01.5.5v3.975a.5.5 0 01-1 0V6.707l-4.096 4.096z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-right-square" viewBox="0 0 16 16" id="arrow-up-right-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm5.854 8.803a.5.5 0 11-.708-.707L9.243 6H6.475a.5.5 0 110-1h3.975a.5.5 0 01.5.5v3.975a.5.5 0 11-1 0V6.707l-4.096 4.096z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-right-square-fill" viewBox="0 0 16 16" id="arrow-up-right-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M14 0a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2a2 2 0 012-2h12zM5.904 10.803L10 6.707v2.768a.5.5 0 001 0V5.5a.5.5 0 00-.5-.5H6.525a.5.5 0 100 1h2.768l-4.096 4.096a.5.5 0 00.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-short" viewBox="0 0 16 16" id="arrow-up-short" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 12a.5.5 0 00.5-.5V5.707l2.146 2.147a.5.5 0 00.708-.708l-3-3a.5.5 0 00-.708 0l-3 3a.5.5 0 10.708.708L7.5 5.707V11.5a.5.5 0 00.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-square" viewBox="0 0 16 16" id="arrow-up-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm8.5 9.5a.5.5 0 01-1 0V5.707L5.354 7.854a.5.5 0 11-.708-.708l3-3a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 5.707V11.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-square-fill" viewBox="0 0 16 16" id="arrow-up-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 16a2 2 0 01-2-2V2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2zm6.5-4.5V5.707l2.146 2.147a.5.5 0 00.708-.708l-3-3a.5.5 0 00-.708 0l-3 3a.5.5 0 10.708.708L7.5 5.707V11.5a.5.5 0 001 0z"/></symbol><symbol fill="currentColor" class="bi bi-arrows-angle-contract" viewBox="0 0 16 16" id="arrows-angle-contract" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M.172 15.828a.5.5 0 00.707 0l4.096-4.096V14.5a.5.5 0 101 0v-3.975a.5.5 0 00-.5-.5H1.5a.5.5 0 000 1h2.768L.172 15.121a.5.5 0 000 .707zM15.828.172a.5.5 0 00-.707 0l-4.096 4.096V1.5a.5.5 0 10-1 0v3.975a.5.5 0 00.5.5H14.5a.5.5 0 000-1h-2.768L15.828.879a.5.5 0 000-.707z"/></symbol><symbol fill="currentColor" class="bi bi-arrows-angle-expand" viewBox="0 0 16 16" id="arrows-angle-expand" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.828 10.172a.5.5 0 00-.707 0l-4.096 4.096V11.5a.5.5 0 00-1 0v3.975a.5.5 0 00.5.5H4.5a.5.5 0 000-1H1.732l4.096-4.096a.5.5 0 000-.707zm4.344-4.344a.5.5 0 00.707 0l4.096-4.096V4.5a.5.5 0 101 0V.525a.5.5 0 00-.5-.5H11.5a.5.5 0 000 1h2.768l-4.096 4.096a.5.5 0 000 .707z"/></symbol><symbol fill="currentColor" class="bi bi-arrows-collapse" viewBox="0 0 16 16" id="arrows-collapse" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13A.5.5 0 011 8zm7-8a.5.5 0 01.5.5v3.793l1.146-1.147a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 11.708-.708L7.5 4.293V.5A.5.5 0 018 0zm-.5 11.707l-1.146 1.147a.5.5 0 01-.708-.708l2-2a.5.5 0 01.708 0l2 2a.5.5 0 01-.708.708L8.5 11.707V15.5a.5.5 0 01-1 0v-3.793z"/></symbol><symbol fill="currentColor" class="bi bi-arrows-expand" viewBox="0 0 16 16" id="arrows-expand" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13A.5.5 0 011 8zM7.646.146a.5.5 0 01.708 0l2 2a.5.5 0 01-.708.708L8.5 1.707V5.5a.5.5 0 01-1 0V1.707L6.354 2.854a.5.5 0 11-.708-.708l2-2zM8 10a.5.5 0 01.5.5v3.793l1.146-1.147a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 01.708-.708L7.5 14.293V10.5A.5.5 0 018 10z"/></symbol><symbol fill="currentColor" class="bi bi-arrows-fullscreen" viewBox="0 0 16 16" id="arrows-fullscreen" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.828 10.172a.5.5 0 00-.707 0l-4.096 4.096V11.5a.5.5 0 00-1 0v3.975a.5.5 0 00.5.5H4.5a.5.5 0 000-1H1.732l4.096-4.096a.5.5 0 000-.707zm4.344 0a.5.5 0 01.707 0l4.096 4.096V11.5a.5.5 0 111 0v3.975a.5.5 0 01-.5.5H11.5a.5.5 0 010-1h2.768l-4.096-4.096a.5.5 0 010-.707zm0-4.344a.5.5 0 00.707 0l4.096-4.096V4.5a.5.5 0 101 0V.525a.5.5 0 00-.5-.5H11.5a.5.5 0 000 1h2.768l-4.096 4.096a.5.5 0 000 .707zm-4.344 0a.5.5 0 01-.707 0L1.025 1.732V4.5a.5.5 0 01-1 0V.525a.5.5 0 01.5-.5H4.5a.5.5 0 010 1H1.732l4.096 4.096a.5.5 0 010 .707z"/></symbol><symbol fill="currentColor" class="bi bi-arrows-move" viewBox="0 0 16 16" id="arrows-move" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.646.146a.5.5 0 01.708 0l2 2a.5.5 0 01-.708.708L8.5 1.707V5.5a.5.5 0 01-1 0V1.707L6.354 2.854a.5.5 0 11-.708-.708l2-2zM8 10a.5.5 0 01.5.5v3.793l1.146-1.147a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 01.708-.708L7.5 14.293V10.5A.5.5 0 018 10zM.146 8.354a.5.5 0 010-.708l2-2a.5.5 0 11.708.708L1.707 7.5H5.5a.5.5 0 010 1H1.707l1.147 1.146a.5.5 0 01-.708.708l-2-2zM10 8a.5.5 0 01.5-.5h3.793l-1.147-1.146a.5.5 0 01.708-.708l2 2a.5.5 0 010 .708l-2 2a.5.5 0 01-.708-.708L14.293 8.5H10.5A.5.5 0 0110 8z"/></symbol><symbol fill="currentColor" class="bi bi-aspect-ratio" viewBox="0 0 16 16" id="aspect-ratio" xmlns="http://www.w3.org/2000/svg"><path d="M0 3.5A1.5 1.5 0 011.5 2h13A1.5 1.5 0 0116 3.5v9a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 12.5v-9zM1.5 3a.5.5 0 00-.5.5v9a.5.5 0 00.5.5h13a.5.5 0 00.5-.5v-9a.5.5 0 00-.5-.5h-13z"/><path d="M2 4.5a.5.5 0 01.5-.5h3a.5.5 0 010 1H3v2.5a.5.5 0 01-1 0v-3zm12 7a.5.5 0 01-.5.5h-3a.5.5 0 010-1H13V8.5a.5.5 0 011 0v3z"/></symbol><symbol fill="currentColor" class="bi bi-aspect-ratio-fill" viewBox="0 0 16 16" id="aspect-ratio-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12.5v-9A1.5 1.5 0 011.5 2h13A1.5 1.5 0 0116 3.5v9a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 12.5zM2.5 4a.5.5 0 00-.5.5v3a.5.5 0 001 0V5h2.5a.5.5 0 000-1h-3zm11 8a.5.5 0 00.5-.5v-3a.5.5 0 00-1 0V11h-2.5a.5.5 0 000 1h3z"/></symbol><symbol fill="currentColor" class="bi bi-asterisk" viewBox="0 0 16 16" id="asterisk" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a1 1 0 011 1v5.268l4.562-2.634a1 1 0 111 1.732L10 8l4.562 2.634a1 1 0 11-1 1.732L9 9.732V15a1 1 0 11-2 0V9.732l-4.562 2.634a1 1 0 11-1-1.732L6 8 1.438 5.366a1 1 0 011-1.732L7 6.268V1a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-at" viewBox="0 0 16 16" id="at" xmlns="http://www.w3.org/2000/svg"><path d="M13.106 7.222c0-2.967-2.249-5.032-5.482-5.032-3.35 0-5.646 2.318-5.646 5.702 0 3.493 2.235 5.708 5.762 5.708.862 0 1.689-.123 2.304-.335v-.862c-.43.199-1.354.328-2.29.328-2.926 0-4.813-1.88-4.813-4.798 0-2.844 1.921-4.881 4.594-4.881 2.735 0 4.608 1.688 4.608 4.156 0 1.682-.554 2.769-1.416 2.769-.492 0-.772-.28-.772-.76V5.206H8.923v.834h-.11c-.266-.595-.881-.964-1.6-.964-1.4 0-2.378 1.162-2.378 2.823 0 1.737.957 2.906 2.379 2.906.8 0 1.415-.39 1.709-1.087h.11c.081.67.703 1.148 1.503 1.148 1.572 0 2.57-1.415 2.57-3.643zm-7.177.704c0-1.197.54-1.907 1.456-1.907.93 0 1.524.738 1.524 1.907S8.308 9.84 7.371 9.84c-.895 0-1.442-.725-1.442-1.914z"/></symbol><symbol fill="currentColor" class="bi bi-award" viewBox="0 0 16 16" id="award" xmlns="http://www.w3.org/2000/svg"><path d="M9.669.864L8 0 6.331.864l-1.858.282-.842 1.68-1.337 1.32L2.6 6l-.306 1.854 1.337 1.32.842 1.68 1.858.282L8 12l1.669-.864 1.858-.282.842-1.68 1.337-1.32L13.4 6l.306-1.854-1.337-1.32-.842-1.68L9.669.864zm1.196 1.193l.684 1.365 1.086 1.072L12.387 6l.248 1.506-1.086 1.072-.684 1.365-1.51.229L8 10.874l-1.355-.702-1.51-.229-.684-1.365-1.086-1.072L3.614 6l-.25-1.506 1.087-1.072.684-1.365 1.51-.229L8 1.126l1.356.702 1.509.229z"/><path d="M4 11.794V16l4-1 4 1v-4.206l-2.018.306L8 13.126 6.018 12.1 4 11.794z"/></symbol><symbol fill="currentColor" class="bi bi-award-fill" viewBox="0 0 16 16" id="award-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 0l1.669.864 1.858.282.842 1.68 1.337 1.32L13.4 6l.306 1.854-1.337 1.32-.842 1.68-1.858.282L8 12l-1.669-.864-1.858-.282-.842-1.68-1.337-1.32L2.6 6l-.306-1.854 1.337-1.32.842-1.68L6.331.864 8 0z"/><path d="M4 11.794V16l4-1 4 1v-4.206l-2.018.306L8 13.126 6.018 12.1 4 11.794z"/></symbol><symbol fill="currentColor" class="bi bi-back" viewBox="0 0 16 16" id="back" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h8a2 2 0 012 2v2h2a2 2 0 012 2v8a2 2 0 01-2 2H6a2 2 0 01-2-2v-2H2a2 2 0 01-2-2V2zm2-1a1 1 0 00-1 1v8a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1H2z"/></symbol><symbol fill="currentColor" class="bi bi-backspace" viewBox="0 0 16 16" id="backspace" xmlns="http://www.w3.org/2000/svg"><path d="M5.83 5.146a.5.5 0 000 .708L7.975 8l-2.147 2.146a.5.5 0 00.707.708l2.147-2.147 2.146 2.147a.5.5 0 00.707-.708L9.39 8l2.146-2.146a.5.5 0 00-.707-.708L8.683 7.293 6.536 5.146a.5.5 0 00-.707 0z"/><path d="M13.683 1a2 2 0 012 2v10a2 2 0 01-2 2h-7.08a2 2 0 01-1.519-.698L.241 8.65a1 1 0 010-1.302L5.084 1.7A2 2 0 016.603 1h7.08zm-7.08 1a1 1 0 00-.76.35L1 8l4.844 5.65a1 1 0 00.759.35h7.08a1 1 0 001-1V3a1 1 0 00-1-1h-7.08z"/></symbol><symbol fill="currentColor" class="bi bi-backspace-fill" viewBox="0 0 16 16" id="backspace-fill" xmlns="http://www.w3.org/2000/svg"><path d="M15.683 3a2 2 0 00-2-2h-7.08a2 2 0 00-1.519.698L.241 7.35a1 1 0 000 1.302l4.843 5.65A2 2 0 006.603 15h7.08a2 2 0 002-2V3zM5.829 5.854a.5.5 0 11.707-.708l2.147 2.147 2.146-2.147a.5.5 0 11.707.708L9.39 8l2.146 2.146a.5.5 0 01-.707.708L8.683 8.707l-2.147 2.147a.5.5 0 01-.707-.708L7.976 8 5.829 5.854z"/></symbol><symbol fill="currentColor" class="bi bi-backspace-reverse" viewBox="0 0 16 16" id="backspace-reverse" xmlns="http://www.w3.org/2000/svg"><path d="M9.854 5.146a.5.5 0 010 .708L7.707 8l2.147 2.146a.5.5 0 01-.708.708L7 8.707l-2.146 2.147a.5.5 0 01-.708-.708L6.293 8 4.146 5.854a.5.5 0 11.708-.708L7 7.293l2.146-2.147a.5.5 0 01.708 0z"/><path d="M2 1a2 2 0 00-2 2v10a2 2 0 002 2h7.08a2 2 0 001.519-.698l4.843-5.651a1 1 0 000-1.302L10.6 1.7A2 2 0 009.08 1H2zm7.08 1a1 1 0 01.76.35L14.682 8l-4.844 5.65a1 1 0 01-.759.35H2a1 1 0 01-1-1V3a1 1 0 011-1h7.08z"/></symbol><symbol fill="currentColor" class="bi bi-backspace-reverse-fill" viewBox="0 0 16 16" id="backspace-reverse-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 3a2 2 0 012-2h7.08a2 2 0 011.519.698l4.843 5.651a1 1 0 010 1.302L10.6 14.3a2 2 0 01-1.52.7H2a2 2 0 01-2-2V3zm9.854 2.854a.5.5 0 00-.708-.708L7 7.293 4.854 5.146a.5.5 0 10-.708.708L6.293 8l-2.147 2.146a.5.5 0 00.708.708L7 8.707l2.146 2.147a.5.5 0 00.708-.708L7.707 8l2.147-2.146z"/></symbol><symbol fill="currentColor" class="bi bi-badge-3d" viewBox="0 0 16 16" id="badge-3d" xmlns="http://www.w3.org/2000/svg"><path d="M4.52 8.368h.664c.646 0 1.055.378 1.06.9.008.537-.427.919-1.086.919-.598-.004-1.037-.325-1.068-.756H3c.03.914.791 1.688 2.153 1.688 1.24 0 2.285-.66 2.272-1.798-.013-.953-.747-1.38-1.292-1.432v-.062c.44-.07 1.125-.527 1.108-1.375-.013-.906-.8-1.57-2.053-1.565-1.31.005-2.043.734-2.074 1.67h1.103c.022-.391.383-.751.936-.751.532 0 .928.33.928.813.004.479-.383.835-.928.835h-.632v.914zm3.606-3.367V11h2.189C12.125 11 13 9.893 13 7.985c0-1.894-.861-2.984-2.685-2.984H8.126zm1.187.967h.844c1.112 0 1.621.686 1.621 2.04 0 1.353-.505 2.02-1.621 2.02h-.844v-4.06z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-3d-fill" viewBox="0 0 16 16" id="badge-3d-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.157 5.968h-.844v4.06h.844c1.116 0 1.621-.667 1.621-2.02 0-1.354-.51-2.04-1.621-2.04z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm5.184 4.368c.646 0 1.055.378 1.06.9.008.537-.427.919-1.086.919-.598-.004-1.037-.325-1.068-.756H3c.03.914.791 1.688 2.153 1.688 1.24 0 2.285-.66 2.272-1.798-.013-.953-.747-1.38-1.292-1.432v-.062c.44-.07 1.125-.527 1.108-1.375-.013-.906-.8-1.57-2.053-1.565-1.31.005-2.043.734-2.074 1.67h1.103c.022-.391.383-.751.936-.751.532 0 .928.33.928.813.004.479-.383.835-.928.835h-.632v.914h.663zM8.126 11h2.189C12.125 11 13 9.893 13 7.985c0-1.894-.861-2.984-2.685-2.984H8.126V11z"/></symbol><symbol fill="currentColor" class="bi bi-badge-4k" viewBox="0 0 16 16" id="badge-4k" xmlns="http://www.w3.org/2000/svg"><path d="M4.807 5.001C4.021 6.298 3.203 7.6 2.5 8.917v.971h2.905V11h1.112V9.888h.733V8.93h-.733V5.001h-1.71zm-1.23 3.93v-.032a46.781 46.781 0 011.766-3.001h.062V8.93H3.577zm9.831-3.93h-1.306L9.835 7.687h-.057V5H8.59v6h1.187V9.075l.615-.699L12.072 11H13.5l-2.232-3.415 2.14-2.584z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-4k-fill" viewBox="0 0 16 16" id="badge-4k-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.577 8.9v.03h1.828V5.898h-.062a46.781 46.781 0 00-1.766 3.001z"/><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm2.372 3.715l.435-.714h1.71v3.93h.733v.957h-.733V11H5.405V9.888H2.5v-.971c.574-1.077 1.225-2.142 1.872-3.202zm7.73-.714h1.306l-2.14 2.584L13.5 11h-1.428l-1.679-2.624-.615.7V11H8.59V5.001h1.187v2.686h.057L12.102 5z"/></symbol><symbol fill="currentColor" class="bi bi-badge-8k" viewBox="0 0 16 16" id="badge-8k" xmlns="http://www.w3.org/2000/svg"><path d="M4.837 11.114c1.406 0 2.333-.725 2.333-1.766 0-.945-.712-1.38-1.256-1.49v-.053c.496-.15 1.02-.55 1.02-1.331 0-.914-.831-1.587-2.084-1.587-1.257 0-2.087.673-2.087 1.587 0 .773.51 1.177 1.02 1.331v.053c-.546.11-1.258.54-1.258 1.494 0 1.042.906 1.762 2.312 1.762zm.013-3.643c-.545 0-.95-.356-.95-.866s.405-.852.95-.852c.545 0 .945.343.945.852 0 .51-.4.866-.945.866zm0 2.786c-.65 0-1.142-.395-1.142-.984S4.2 8.28 4.85 8.28c.646 0 1.143.404 1.143.993s-.497.984-1.143.984zM13.408 5h-1.306L9.835 7.685h-.057V5H8.59v5.998h1.187V9.075l.615-.699 1.679 2.623H13.5l-2.232-3.414L13.408 5z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-8k-fill" viewBox="0 0 16 16" id="badge-8k-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.9 6.605c0 .51.405.866.95.866.545 0 .945-.356.945-.866s-.4-.852-.945-.852c-.545 0-.95.343-.95.852zm-.192 2.668c0 .589.492.984 1.142.984.646 0 1.143-.395 1.143-.984S5.496 8.28 4.85 8.28c-.65 0-1.142.404-1.142.993z"/><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm5.17 7.348c0 1.041-.927 1.766-2.333 1.766-1.406 0-2.312-.72-2.312-1.762 0-.954.712-1.384 1.257-1.494v-.053c-.51-.154-1.02-.558-1.02-1.331 0-.914.831-1.587 2.088-1.587 1.253 0 2.083.673 2.083 1.587 0 .782-.523 1.182-1.02 1.331v.053c.545.11 1.257.545 1.257 1.49zM12.102 5h1.306l-2.14 2.584 2.232 3.415h-1.428l-1.679-2.624-.615.699v1.925H8.59V5h1.187v2.685h.057L12.102 5z"/></symbol><symbol fill="currentColor" class="bi bi-badge-ad" viewBox="0 0 16 16" id="badge-ad" xmlns="http://www.w3.org/2000/svg"><path d="M3.7 11l.47-1.542h2.004L6.644 11h1.261L5.901 5.001H4.513L2.5 11h1.2zm1.503-4.852l.734 2.426H4.416l.734-2.426h.053zm4.759.128c-1.059 0-1.753.765-1.753 2.043v.695c0 1.279.685 2.043 1.74 2.043.677 0 1.222-.33 1.367-.804h.057V11h1.138V4.685h-1.16v2.36h-.053c-.18-.475-.68-.77-1.336-.77zm.387.923c.58 0 1.002.44 1.002 1.138v.602c0 .76-.396 1.2-.984 1.2-.598 0-.972-.449-.972-1.248v-.453c0-.795.37-1.24.954-1.24z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-ad-fill" viewBox="0 0 16 16" id="badge-ad-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.35 8.337c0-.699-.42-1.138-1.001-1.138-.584 0-.954.444-.954 1.239v.453c0 .8.374 1.248.972 1.248.588 0 .984-.44.984-1.2v-.602zm-5.413.237l-.734-2.426H5.15l-.734 2.426h1.52z"/><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm6.209 6.32c0-1.28.694-2.044 1.753-2.044.655 0 1.156.294 1.336.769h.053v-2.36h1.16V11h-1.138v-.747h-.057c-.145.474-.69.804-1.367.804-1.055 0-1.74-.764-1.74-2.043v-.695zm-4.04 1.138L3.7 11H2.5l2.013-5.999H5.9L7.905 11H6.644l-.47-1.542H4.17z"/></symbol><symbol fill="currentColor" class="bi bi-badge-ar" viewBox="0 0 16 16" id="badge-ar" xmlns="http://www.w3.org/2000/svg"><path d="M3.794 11l.47-1.542H6.27L6.739 11H8L5.996 5.001H4.607L2.595 11h1.2zm1.503-4.852l.734 2.426h-1.52l.734-2.426h.052zm5.598-1.147H8.5V11h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9zm-1.222 2.87V5.933h1.05c.63 0 1.05.347 1.05.989 0 .633-.408.95-1.067.95H9.673z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-ar-fill" viewBox="0 0 16 16" id="badge-ar-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.031 8.574l-.734-2.426h-.052L4.51 8.574h1.52zm3.642-2.641v1.938h1.033c.66 0 1.068-.316 1.068-.95 0-.64-.422-.988-1.05-.988h-1.05z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm4.265 5.458h2.004L6.739 11H8L5.996 5.001H4.607L2.595 11h1.2l.47-1.542zM8.5 5v6h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9H8.5z"/></symbol><symbol fill="currentColor" class="bi bi-badge-cc" viewBox="0 0 16 16" id="badge-cc" xmlns="http://www.w3.org/2000/svg"><path d="M3.708 7.755c0-1.111.488-1.753 1.319-1.753.681 0 1.138.47 1.186 1.107H7.36V7c-.052-1.186-1.024-2-2.342-2C3.414 5 2.5 6.05 2.5 7.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114H6.213c-.048.615-.496 1.05-1.186 1.05-.84 0-1.319-.62-1.319-1.727v-.743zm6.14 0c0-1.111.488-1.753 1.318-1.753.682 0 1.139.47 1.187 1.107H13.5V7c-.053-1.186-1.024-2-2.342-2C9.554 5 8.64 6.05 8.64 7.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114h-1.147c-.048.615-.497 1.05-1.187 1.05-.839 0-1.318-.62-1.318-1.727v-.743z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-cc-fill" viewBox="0 0 16 16" id="badge-cc-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm3.027 4.002c-.83 0-1.319.642-1.319 1.753v.743c0 1.107.48 1.727 1.319 1.727.69 0 1.138-.435 1.186-1.05H7.36v.114c-.057 1.147-1.028 1.938-2.342 1.938-1.613 0-2.518-1.028-2.518-2.729v-.747C2.5 6.051 3.414 5 5.018 5c1.318 0 2.29.813 2.342 2v.11H6.213c-.048-.638-.505-1.108-1.186-1.108zm6.14 0c-.831 0-1.319.642-1.319 1.753v.743c0 1.107.48 1.727 1.318 1.727.69 0 1.139-.435 1.187-1.05H13.5v.114c-.057 1.147-1.028 1.938-2.342 1.938-1.613 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.751 2.518-2.751 1.318 0 2.29.813 2.342 2v.11h-1.147c-.048-.638-.505-1.108-1.187-1.108z"/></symbol><symbol fill="currentColor" class="bi bi-badge-hd" viewBox="0 0 16 16" id="badge-hd" xmlns="http://www.w3.org/2000/svg"><path d="M7.396 11V5.001H6.209v2.44H3.687V5H2.5v6h1.187V8.43h2.522V11h1.187zM8.5 5.001V11h2.188c1.811 0 2.685-1.107 2.685-3.015 0-1.894-.86-2.984-2.684-2.984H8.5zm1.187.967h.843c1.112 0 1.622.686 1.622 2.04 0 1.353-.505 2.02-1.622 2.02h-.843v-4.06z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-hd-fill" viewBox="0 0 16 16" id="badge-hd-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.53 5.968h-.843v4.06h.843c1.117 0 1.622-.667 1.622-2.02 0-1.354-.51-2.04-1.622-2.04z"/><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm5.396 3.001V11H6.209V8.43H3.687V11H2.5V5.001h1.187v2.44h2.522V5h1.187zM8.5 11V5.001h2.188c1.824 0 2.685 1.09 2.685 2.984C13.373 9.893 12.5 11 10.69 11H8.5z"/></symbol><symbol fill="currentColor" class="bi bi-badge-tm" viewBox="0 0 16 16" id="badge-tm" xmlns="http://www.w3.org/2000/svg"><path d="M5.295 11V5.995H7V5H2.403v.994h1.701V11h1.19zm3.397 0V7.01h.058l1.428 3.239h.773l1.42-3.24h.057V11H13.5V5.001h-1.2l-1.71 3.894h-.039l-1.71-3.894H7.634V11h1.06z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-tm-fill" viewBox="0 0 16 16" id="badge-tm-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm3.295 3.995V11H4.104V5.995h-1.7V5H7v.994H5.295zM8.692 7.01V11H7.633V5.001h1.209l1.71 3.894h.039l1.71-3.894H13.5V11h-1.072V7.01h-.057l-1.42 3.239h-.773L8.75 7.008h-.058z"/></symbol><symbol fill="currentColor" class="bi bi-badge-vo" viewBox="0 0 16 16" id="badge-vo" xmlns="http://www.w3.org/2000/svg"><path d="M4.508 11h1.429l1.99-5.999H6.61L5.277 9.708H5.22L3.875 5.001H2.5L4.508 11zM13.5 8.39v-.77c0-1.696-.962-2.733-2.566-2.733-1.604 0-2.571 1.029-2.571 2.734v.769c0 1.691.967 2.724 2.57 2.724 1.605 0 2.567-1.033 2.567-2.724zm-1.204-.778v.782c0 1.156-.571 1.732-1.362 1.732-.796 0-1.363-.576-1.363-1.732v-.782c0-1.156.567-1.736 1.363-1.736.79 0 1.362.58 1.362 1.736z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-vo-fill" viewBox="0 0 16 16" id="badge-vo-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12.296 8.394v-.782c0-1.156-.571-1.736-1.362-1.736-.796 0-1.363.58-1.363 1.736v.782c0 1.156.567 1.732 1.363 1.732.79 0 1.362-.576 1.362-1.732z"/><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm11.5 5.62v.77c0 1.691-.962 2.724-2.566 2.724-1.604 0-2.571-1.033-2.571-2.724v-.77c0-1.704.967-2.733 2.57-2.733 1.605 0 2.567 1.037 2.567 2.734zM5.937 11H4.508L2.5 5.001h1.375L5.22 9.708h.057L6.61 5.001h1.318L5.937 11z"/></symbol><symbol fill="currentColor" class="bi bi-badge-vr" viewBox="0 0 16 16" id="badge-vr" xmlns="http://www.w3.org/2000/svg"><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/><path d="M4.508 11h1.429l1.99-5.999H6.61L5.277 9.708H5.22L3.875 5.001H2.5L4.508 11zm6.387-5.999H8.5V11h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9zm-1.222 2.87V5.933h1.05c.63 0 1.05.347 1.05.989 0 .633-.408.95-1.067.95H9.673z"/></symbol><symbol fill="currentColor" class="bi bi-badge-vr-fill" viewBox="0 0 16 16" id="badge-vr-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.673 5.933v1.938h1.033c.66 0 1.068-.316 1.068-.95 0-.64-.422-.988-1.05-.988h-1.05z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm5.937 7l1.99-5.999H6.61L5.277 9.708H5.22L3.875 5.001H2.5L4.508 11h1.429zM8.5 5.001V11h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9H8.5z"/></symbol><symbol fill="currentColor" class="bi bi-badge-wc" viewBox="0 0 16 16" id="badge-wc" xmlns="http://www.w3.org/2000/svg"><path d="M10.348 7.643c0-1.112.488-1.754 1.318-1.754.682 0 1.139.47 1.187 1.108H14v-.11c-.053-1.187-1.024-2-2.342-2-1.604 0-2.518 1.05-2.518 2.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114h-1.147c-.048.615-.497 1.05-1.187 1.05-.839 0-1.318-.62-1.318-1.727v-.742zM4.457 11l1.02-4.184h.045L6.542 11h1.006L9 5.001H7.818l-.82 4.355h-.056L5.97 5.001h-.94l-.972 4.355h-.053l-.827-4.355H2L3.452 11h1.005z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-wc-fill" viewBox="0 0 16 16" id="badge-wc-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm11.666 1.89c.682 0 1.139.47 1.187 1.107H14v-.11c-.053-1.187-1.024-2-2.342-2-1.604 0-2.518 1.05-2.518 2.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114h-1.147c-.048.615-.497 1.05-1.187 1.05-.839 0-1.318-.62-1.318-1.727v-.742c0-1.112.488-1.754 1.318-1.754zm-6.188.926h.044L6.542 11h1.006L9 5.001H7.818l-.82 4.355h-.056L5.97 5.001h-.94l-.972 4.355h-.053l-.827-4.355H2L3.452 11h1.005l1.02-4.184z"/></symbol><symbol fill="currentColor" class="bi bi-bag" viewBox="0 0 16 16" id="bag" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a2.5 2.5 0 012.5 2.5V4h-5v-.5A2.5 2.5 0 018 1zm3.5 3v-.5a3.5 3.5 0 10-7 0V4H1v10a2 2 0 002 2h10a2 2 0 002-2V4h-3.5zM2 5h12v9a1 1 0 01-1 1H3a1 1 0 01-1-1V5z"/></symbol><symbol fill="currentColor" class="bi bi-bag-check" viewBox="0 0 16 16" id="bag-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.854 8.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 01.708-.708L7.5 10.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M8 1a2.5 2.5 0 012.5 2.5V4h-5v-.5A2.5 2.5 0 018 1zm3.5 3v-.5a3.5 3.5 0 10-7 0V4H1v10a2 2 0 002 2h10a2 2 0 002-2V4h-3.5zM2 5h12v9a1 1 0 01-1 1H3a1 1 0 01-1-1V5z"/></symbol><symbol fill="currentColor" class="bi bi-bag-check-fill" viewBox="0 0 16 16" id="bag-check-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.5 3.5a2.5 2.5 0 00-5 0V4h5v-.5zm1 0V4H15v10a2 2 0 01-2 2H3a2 2 0 01-2-2V4h3.5v-.5a3.5 3.5 0 117 0zm-.646 5.354a.5.5 0 00-.708-.708L7.5 10.793 6.354 9.646a.5.5 0 10-.708.708l1.5 1.5a.5.5 0 00.708 0l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-bag-dash" viewBox="0 0 16 16" id="bag-dash" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.5 10a.5.5 0 01.5-.5h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M8 1a2.5 2.5 0 012.5 2.5V4h-5v-.5A2.5 2.5 0 018 1zm3.5 3v-.5a3.5 3.5 0 10-7 0V4H1v10a2 2 0 002 2h10a2 2 0 002-2V4h-3.5zM2 5h12v9a1 1 0 01-1 1H3a1 1 0 01-1-1V5z"/></symbol><symbol fill="currentColor" class="bi bi-bag-dash-fill" viewBox="0 0 16 16" id="bag-dash-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.5 3.5a2.5 2.5 0 00-5 0V4h5v-.5zm1 0V4H15v10a2 2 0 01-2 2H3a2 2 0 01-2-2V4h3.5v-.5a3.5 3.5 0 117 0zM6 9.5a.5.5 0 000 1h4a.5.5 0 000-1H6z"/></symbol><symbol fill="currentColor" class="bi bi-bag-fill" viewBox="0 0 16 16" id="bag-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a2.5 2.5 0 012.5 2.5V4h-5v-.5A2.5 2.5 0 018 1zm3.5 3v-.5a3.5 3.5 0 10-7 0V4H1v10a2 2 0 002 2h10a2 2 0 002-2V4h-3.5z"/></symbol><symbol fill="currentColor" class="bi bi-bag-plus" viewBox="0 0 16 16" id="bag-plus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 7.5a.5.5 0 01.5.5v1.5H10a.5.5 0 010 1H8.5V12a.5.5 0 01-1 0v-1.5H6a.5.5 0 010-1h1.5V8a.5.5 0 01.5-.5z"/><path d="M8 1a2.5 2.5 0 012.5 2.5V4h-5v-.5A2.5 2.5 0 018 1zm3.5 3v-.5a3.5 3.5 0 10-7 0V4H1v10a2 2 0 002 2h10a2 2 0 002-2V4h-3.5zM2 5h12v9a1 1 0 01-1 1H3a1 1 0 01-1-1V5z"/></symbol><symbol fill="currentColor" class="bi bi-bag-plus-fill" viewBox="0 0 16 16" id="bag-plus-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.5 3.5a2.5 2.5 0 00-5 0V4h5v-.5zm1 0V4H15v10a2 2 0 01-2 2H3a2 2 0 01-2-2V4h3.5v-.5a3.5 3.5 0 117 0zM8.5 8a.5.5 0 00-1 0v1.5H6a.5.5 0 000 1h1.5V12a.5.5 0 001 0v-1.5H10a.5.5 0 000-1H8.5V8z"/></symbol><symbol fill="currentColor" class="bi bi-bag-x" viewBox="0 0 16 16" id="bag-x" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.146 8.146a.5.5 0 01.708 0L8 9.293l1.146-1.147a.5.5 0 11.708.708L8.707 10l1.147 1.146a.5.5 0 01-.708.708L8 10.707l-1.146 1.147a.5.5 0 01-.708-.708L7.293 10 6.146 8.854a.5.5 0 010-.708z"/><path d="M8 1a2.5 2.5 0 012.5 2.5V4h-5v-.5A2.5 2.5 0 018 1zm3.5 3v-.5a3.5 3.5 0 10-7 0V4H1v10a2 2 0 002 2h10a2 2 0 002-2V4h-3.5zM2 5h12v9a1 1 0 01-1 1H3a1 1 0 01-1-1V5z"/></symbol><symbol fill="currentColor" class="bi bi-bag-x-fill" viewBox="0 0 16 16" id="bag-x-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.5 3.5a2.5 2.5 0 00-5 0V4h5v-.5zm1 0V4H15v10a2 2 0 01-2 2H3a2 2 0 01-2-2V4h3.5v-.5a3.5 3.5 0 117 0zM6.854 8.146a.5.5 0 10-.708.708L7.293 10l-1.147 1.146a.5.5 0 00.708.708L8 10.707l1.146 1.147a.5.5 0 00.708-.708L8.707 10l1.147-1.146a.5.5 0 00-.708-.708L8 9.293 6.854 8.146z"/></symbol><symbol fill="currentColor" class="bi bi-bank" viewBox="0 0 16 16" id="bank" xmlns="http://www.w3.org/2000/svg"><path d="M8 .95L14.61 4h.89a.5.5 0 01.5.5v2a.5.5 0 01-.5.5H15v7a.5.5 0 01.485.379l.5 2A.5.5 0 0115.5 17H.5a.5.5 0 01-.485-.621l.5-2A.5.5 0 011 14V7H.5a.5.5 0 01-.5-.5v-2A.5.5 0 01.5 4h.89L8 .95zM3.776 4h8.447L8 2.05 3.776 4zM2 7v7h1V7H2zm2 0v7h2.5V7H4zm3.5 0v7h1V7h-1zm2 0v7H12V7H9.5zM13 7v7h1V7h-1zm2-1V5H1v1h14zm-.39 9H1.39l-.25 1h13.72l-.25-1z"/></symbol><symbol fill="currentColor" class="bi bi-bank2" viewBox="0 0 16 16" id="bank2" xmlns="http://www.w3.org/2000/svg"><path d="M8.277.084a.5.5 0 00-.554 0l-7.5 5A.5.5 0 00.5 6h1.875v7H1.5a.5.5 0 000 1h13a.5.5 0 100-1h-.875V6H15.5a.5.5 0 00.277-.916l-7.5-5zM12.375 6v7h-1.25V6h1.25zm-2.5 0v7h-1.25V6h1.25zm-2.5 0v7h-1.25V6h1.25zm-2.5 0v7h-1.25V6h1.25zM8 4a1 1 0 110-2 1 1 0 010 2zM.5 15a.5.5 0 000 1h15a.5.5 0 100-1H.5z"/></symbol><symbol fill="currentColor" class="bi bi-bar-chart" viewBox="0 0 16 16" id="bar-chart" xmlns="http://www.w3.org/2000/svg"><path d="M4 11H2v3h2v-3zm5-4H7v7h2V7zm5-5v12h-2V2h2zm-2-1a1 1 0 00-1 1v12a1 1 0 001 1h2a1 1 0 001-1V2a1 1 0 00-1-1h-2zM6 7a1 1 0 011-1h2a1 1 0 011 1v7a1 1 0 01-1 1H7a1 1 0 01-1-1V7zm-5 4a1 1 0 011-1h2a1 1 0 011 1v3a1 1 0 01-1 1H2a1 1 0 01-1-1v-3z"/></symbol><symbol fill="currentColor" class="bi bi-bar-chart-fill" viewBox="0 0 16 16" id="bar-chart-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1 11a1 1 0 011-1h2a1 1 0 011 1v3a1 1 0 01-1 1H2a1 1 0 01-1-1v-3zm5-4a1 1 0 011-1h2a1 1 0 011 1v7a1 1 0 01-1 1H7a1 1 0 01-1-1V7zm5-5a1 1 0 011-1h2a1 1 0 011 1v12a1 1 0 01-1 1h-2a1 1 0 01-1-1V2z"/></symbol><symbol fill="currentColor" class="bi bi-bar-chart-line" viewBox="0 0 16 16" id="bar-chart-line" xmlns="http://www.w3.org/2000/svg"><path d="M11 2a1 1 0 011-1h2a1 1 0 011 1v12h.5a.5.5 0 010 1H.5a.5.5 0 010-1H1v-3a1 1 0 011-1h2a1 1 0 011 1v3h1V7a1 1 0 011-1h2a1 1 0 011 1v7h1V2zm1 12h2V2h-2v12zm-3 0V7H7v7h2zm-5 0v-3H2v3h2z"/></symbol><symbol fill="currentColor" class="bi bi-bar-chart-line-fill" viewBox="0 0 16 16" id="bar-chart-line-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11 2a1 1 0 011-1h2a1 1 0 011 1v12h.5a.5.5 0 010 1H.5a.5.5 0 010-1H1v-3a1 1 0 011-1h2a1 1 0 011 1v3h1V7a1 1 0 011-1h2a1 1 0 011 1v7h1V2z"/></symbol><symbol fill="currentColor" class="bi bi-bar-chart-steps" viewBox="0 0 16 16" id="bar-chart-steps" xmlns="http://www.w3.org/2000/svg"><path d="M.5 0a.5.5 0 01.5.5v15a.5.5 0 01-1 0V.5A.5.5 0 01.5 0zM2 1.5a.5.5 0 01.5-.5h4a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-4a.5.5 0 01-.5-.5v-1zm2 4a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-1zm2 4a.5.5 0 01.5-.5h6a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-6a.5.5 0 01-.5-.5v-1zm2 4a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-basket" viewBox="0 0 16 16" id="basket" xmlns="http://www.w3.org/2000/svg"><path d="M5.757 1.071a.5.5 0 01.172.686L3.383 6h9.234L10.07 1.757a.5.5 0 11.858-.514L13.783 6H15a1 1 0 011 1v1a1 1 0 01-1 1v4.5a2.5 2.5 0 01-2.5 2.5h-9A2.5 2.5 0 011 13.5V9a1 1 0 01-1-1V7a1 1 0 011-1h1.217L5.07 1.243a.5.5 0 01.686-.172zM2 9v4.5A1.5 1.5 0 003.5 15h9a1.5 1.5 0 001.5-1.5V9H2zM1 7v1h14V7H1zm3 3a.5.5 0 01.5.5v3a.5.5 0 01-1 0v-3A.5.5 0 014 10zm2 0a.5.5 0 01.5.5v3a.5.5 0 01-1 0v-3A.5.5 0 016 10zm2 0a.5.5 0 01.5.5v3a.5.5 0 01-1 0v-3A.5.5 0 018 10zm2 0a.5.5 0 01.5.5v3a.5.5 0 01-1 0v-3a.5.5 0 01.5-.5zm2 0a.5.5 0 01.5.5v3a.5.5 0 01-1 0v-3a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-basket-fill" viewBox="0 0 16 16" id="basket-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.071 1.243a.5.5 0 01.858.514L3.383 6h9.234L10.07 1.757a.5.5 0 11.858-.514L13.783 6H15.5a.5.5 0 01.5.5v2a.5.5 0 01-.5.5H15v5a2 2 0 01-2 2H3a2 2 0 01-2-2V9H.5a.5.5 0 01-.5-.5v-2A.5.5 0 01.5 6h1.717L5.07 1.243zM3.5 10.5a.5.5 0 10-1 0v3a.5.5 0 001 0v-3zm2.5 0a.5.5 0 10-1 0v3a.5.5 0 001 0v-3zm2.5 0a.5.5 0 10-1 0v3a.5.5 0 001 0v-3zm2.5 0a.5.5 0 10-1 0v3a.5.5 0 001 0v-3zm2.5 0a.5.5 0 10-1 0v3a.5.5 0 001 0v-3z"/></symbol><symbol fill="currentColor" class="bi bi-basket2" viewBox="0 0 16 16" id="basket2" xmlns="http://www.w3.org/2000/svg"><path d="M4 10a1 1 0 012 0v2a1 1 0 01-2 0v-2zm3 0a1 1 0 012 0v2a1 1 0 01-2 0v-2zm3 0a1 1 0 112 0v2a1 1 0 01-2 0v-2z"/><path d="M5.757 1.071a.5.5 0 01.172.686L3.383 6h9.234L10.07 1.757a.5.5 0 11.858-.514L13.783 6H15.5a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-.623l-1.844 6.456a.75.75 0 01-.722.544H3.69a.75.75 0 01-.722-.544L1.123 8H.5a.5.5 0 01-.5-.5v-1A.5.5 0 01.5 6h1.717L5.07 1.243a.5.5 0 01.686-.172zM2.163 8l1.714 6h8.246l1.714-6H2.163z"/></symbol><symbol fill="currentColor" class="bi bi-basket2-fill" viewBox="0 0 16 16" id="basket2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.929 1.757a.5.5 0 10-.858-.514L2.217 6H.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h.623l1.844 6.456A.75.75 0 003.69 15h8.622a.75.75 0 00.722-.544L14.877 8h.623a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1.717L10.93 1.243a.5.5 0 10-.858.514L12.617 6H3.383L5.93 1.757zM4 10a1 1 0 012 0v2a1 1 0 11-2 0v-2zm3 0a1 1 0 012 0v2a1 1 0 11-2 0v-2zm4-1a1 1 0 011 1v2a1 1 0 11-2 0v-2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-basket3" viewBox="0 0 16 16" id="basket3" xmlns="http://www.w3.org/2000/svg"><path d="M5.757 1.071a.5.5 0 01.172.686L3.383 6h9.234L10.07 1.757a.5.5 0 11.858-.514L13.783 6H15.5a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H.5a.5.5 0 01-.5-.5v-1A.5.5 0 01.5 6h1.717L5.07 1.243a.5.5 0 01.686-.172zM3.394 15l-1.48-6h-.97l1.525 6.426a.75.75 0 00.729.574h9.606a.75.75 0 00.73-.574L15.056 9h-.972l-1.479 6h-9.21z"/></symbol><symbol fill="currentColor" class="bi bi-basket3-fill" viewBox="0 0 16 16" id="basket3-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.757 1.071a.5.5 0 01.172.686L3.383 6h9.234L10.07 1.757a.5.5 0 11.858-.514L13.783 6H15.5a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H.5a.5.5 0 01-.5-.5v-1A.5.5 0 01.5 6h1.717L5.07 1.243a.5.5 0 01.686-.172zM2.468 15.426L.943 9h14.114l-1.525 6.426a.75.75 0 01-.729.574H3.197a.75.75 0 01-.73-.574z"/></symbol><symbol fill="currentColor" class="bi bi-battery" viewBox="0 0 16 16" id="battery" xmlns="http://www.w3.org/2000/svg"><path d="M0 6a2 2 0 012-2h10a2 2 0 012 2v4a2 2 0 01-2 2H2a2 2 0 01-2-2V6zm2-1a1 1 0 00-1 1v4a1 1 0 001 1h10a1 1 0 001-1V6a1 1 0 00-1-1H2zm14 3a1.5 1.5 0 01-1.5 1.5v-3A1.5 1.5 0 0116 8z"/></symbol><symbol fill="currentColor" class="bi bi-battery-charging" viewBox="0 0 16 16" id="battery-charging" xmlns="http://www.w3.org/2000/svg"><path d="M9.585 2.568a.5.5 0 01.226.58L8.677 6.832h1.99a.5.5 0 01.364.843l-5.334 5.667a.5.5 0 01-.842-.49L5.99 9.167H4a.5.5 0 01-.364-.843l5.333-5.667a.5.5 0 01.616-.09z"/><path d="M2 4h4.332l-.94 1H2a1 1 0 00-1 1v4a1 1 0 001 1h2.38l-.308 1H2a2 2 0 01-2-2V6a2 2 0 012-2z"/><path d="M2 6h2.45L2.908 7.639A1.5 1.5 0 003.313 10H2V6zm8.595-2l-.308 1H12a1 1 0 011 1v4a1 1 0 01-1 1H9.276l-.942 1H12a2 2 0 002-2V6a2 2 0 00-2-2h-1.405z"/><path d="M12 10h-1.783l1.542-1.639c.097-.103.178-.218.241-.34V10zm0-3.354V6h-.646a1.5 1.5 0 01.646.646zM16 8a1.5 1.5 0 01-1.5 1.5v-3A1.5 1.5 0 0116 8z"/></symbol><symbol fill="currentColor" class="bi bi-battery-full" viewBox="0 0 16 16" id="battery-full" xmlns="http://www.w3.org/2000/svg"><path d="M2 6h10v4H2V6z"/><path d="M2 4a2 2 0 00-2 2v4a2 2 0 002 2h10a2 2 0 002-2V6a2 2 0 00-2-2H2zm10 1a1 1 0 011 1v4a1 1 0 01-1 1H2a1 1 0 01-1-1V6a1 1 0 011-1h10zm4 3a1.5 1.5 0 01-1.5 1.5v-3A1.5 1.5 0 0116 8z"/></symbol><symbol fill="currentColor" class="bi bi-battery-half" viewBox="0 0 16 16" id="battery-half" xmlns="http://www.w3.org/2000/svg"><path d="M2 6h5v4H2V6z"/><path d="M2 4a2 2 0 00-2 2v4a2 2 0 002 2h10a2 2 0 002-2V6a2 2 0 00-2-2H2zm10 1a1 1 0 011 1v4a1 1 0 01-1 1H2a1 1 0 01-1-1V6a1 1 0 011-1h10zm4 3a1.5 1.5 0 01-1.5 1.5v-3A1.5 1.5 0 0116 8z"/></symbol><symbol fill="currentColor" class="bi bi-bell" viewBox="0 0 16 16" id="bell" xmlns="http://www.w3.org/2000/svg"><path d="M8 16a2 2 0 002-2H6a2 2 0 002 2zM8 1.918l-.797.161A4.002 4.002 0 004 6c0 .628-.134 2.197-.459 3.742-.16.767-.376 1.566-.663 2.258h10.244c-.287-.692-.502-1.49-.663-2.258C12.134 8.197 12 6.628 12 6a4.002 4.002 0 00-3.203-3.92L8 1.917zM14.22 12c.223.447.481.801.78 1H1c.299-.199.557-.553.78-1C2.68 10.2 3 6.88 3 6c0-2.42 1.72-4.44 4.005-4.901a1 1 0 111.99 0A5.002 5.002 0 0113 6c0 .88.32 4.2 1.22 6z"/></symbol><symbol fill="currentColor" class="bi bi-bell-fill" viewBox="0 0 16 16" id="bell-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16a2 2 0 002-2H6a2 2 0 002 2zm.995-14.901a1 1 0 10-1.99 0A5.002 5.002 0 003 6c0 1.098-.5 6-2 7h14c-1.5-1-2-5.902-2-7 0-2.42-1.72-4.44-4.005-4.901z"/></symbol><symbol fill="currentColor" class="bi bi-bell-slash" viewBox="0 0 16 16" id="bell-slash" xmlns="http://www.w3.org/2000/svg"><path d="M5.164 14H15c-.299-.199-.557-.553-.78-1-.9-1.8-1.22-5.12-1.22-6 0-.264-.02-.523-.06-.776l-.938.938c.02.708.157 2.154.457 3.58.161.767.377 1.566.663 2.258H6.164l-1 1zm5.581-9.91a3.986 3.986 0 00-1.948-1.01L8 2.917l-.797.161A4.002 4.002 0 004 7c0 .628-.134 2.197-.459 3.742-.05.238-.105.479-.166.718l-1.653 1.653c.02-.037.04-.074.059-.113C2.679 11.2 3 7.88 3 7c0-2.42 1.72-4.44 4.005-4.901a1 1 0 111.99 0c.942.19 1.788.645 2.457 1.284l-.707.707zM10 15a2 2 0 11-4 0h4zm-9.375.625a.53.53 0 00.75.75l14.75-14.75a.53.53 0 00-.75-.75L.625 15.625z"/></symbol><symbol fill="currentColor" class="bi bi-bell-slash-fill" viewBox="0 0 16 16" id="bell-slash-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.164 14H15c-1.5-1-2-5.902-2-7 0-.264-.02-.523-.06-.776L5.164 14zm6.288-10.617A4.988 4.988 0 008.995 2.1a1 1 0 10-1.99 0A5.002 5.002 0 003 7c0 .898-.335 4.342-1.278 6.113l9.73-9.73zM10 15a2 2 0 11-4 0h4zm-9.375.625a.53.53 0 00.75.75l14.75-14.75a.53.53 0 00-.75-.75L.625 15.625z"/></symbol><symbol fill="currentColor" class="bi bi-bezier" viewBox="0 0 16 16" id="bezier" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M0 10.5A1.5 1.5 0 011.5 9h1A1.5 1.5 0 014 10.5v1A1.5 1.5 0 012.5 13h-1A1.5 1.5 0 010 11.5v-1zm1.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zm10.5.5A1.5 1.5 0 0113.5 9h1a1.5 1.5 0 011.5 1.5v1a1.5 1.5 0 01-1.5 1.5h-1a1.5 1.5 0 01-1.5-1.5v-1zm1.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zM6 4.5A1.5 1.5 0 017.5 3h1A1.5 1.5 0 0110 4.5v1A1.5 1.5 0 018.5 7h-1A1.5 1.5 0 016 5.5v-1zM7.5 4a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1z"/><path d="M6 4.5H1.866a1 1 0 100 1h2.668A6.517 6.517 0 001.814 9H2.5c.123 0 .244.015.358.043a5.517 5.517 0 013.185-3.185A1.503 1.503 0 016 5.5v-1zm3.957 1.358A1.5 1.5 0 0010 5.5v-1h4.134a1 1 0 110 1h-2.668a6.517 6.517 0 012.72 3.5H13.5c-.123 0-.243.015-.358.043a5.517 5.517 0 00-3.185-3.185z"/></symbol><symbol fill="currentColor" class="bi bi-bezier2" viewBox="0 0 16 16" id="bezier2" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 2.5A1.5 1.5 0 012.5 1h1A1.5 1.5 0 015 2.5h4.134a1 1 0 110 1h-2.01c.18.18.34.381.484.605.638.992.892 2.354.892 3.895 0 1.993.257 3.092.713 3.7.356.476.895.721 1.787.784A1.5 1.5 0 0112.5 11h1a1.5 1.5 0 011.5 1.5v1a1.5 1.5 0 01-1.5 1.5h-1a1.5 1.5 0 01-1.5-1.5H6.866a1 1 0 110-1h1.711a2.839 2.839 0 01-.165-.2C7.743 11.407 7.5 10.007 7.5 8c0-1.46-.246-2.597-.733-3.355-.39-.605-.952-1-1.767-1.112A1.5 1.5 0 013.5 5h-1A1.5 1.5 0 011 3.5v-1zM2.5 2a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zm10 10a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-bicycle" viewBox="0 0 16 16" id="bicycle" xmlns="http://www.w3.org/2000/svg"><path d="M4 4.5a.5.5 0 01.5-.5H6a.5.5 0 010 1v.5h4.14l.386-1.158A.5.5 0 0111 4h1a.5.5 0 010 1h-.64l-.311.935.807 1.29a3 3 0 11-.848.53l-.508-.812-2.076 3.322A.5.5 0 018 10.5H5.959a3 3 0 11-1.815-3.274L5 5.856V5h-.5a.5.5 0 01-.5-.5zm1.5 2.443l-.508.814c.5.444.85 1.054.967 1.743h1.139L5.5 6.943zM8 9.057L9.598 6.5H6.402L8 9.057zM4.937 9.5a1.997 1.997 0 00-.487-.877l-.548.877h1.035zM3.603 8.092A2 2 0 104.937 10.5H3a.5.5 0 01-.424-.765l1.027-1.643zm7.947.53a2 2 0 10.848-.53l1.026 1.643a.5.5 0 11-.848.53L11.55 8.623z"/></symbol><symbol fill="currentColor" class="bi bi-binoculars" viewBox="0 0 16 16" id="binoculars" xmlns="http://www.w3.org/2000/svg"><path d="M3 2.5A1.5 1.5 0 014.5 1h1A1.5 1.5 0 017 2.5V5h2V2.5A1.5 1.5 0 0110.5 1h1A1.5 1.5 0 0113 2.5v2.382a.5.5 0 00.276.447l.895.447A1.5 1.5 0 0115 7.118V14.5a1.5 1.5 0 01-1.5 1.5h-3A1.5 1.5 0 019 14.5v-3a.5.5 0 01.146-.354l.854-.853V9.5a.5.5 0 00-.5-.5h-3a.5.5 0 00-.5.5v.793l.854.853A.5.5 0 017 11.5v3A1.5 1.5 0 015.5 16h-3A1.5 1.5 0 011 14.5V7.118a1.5 1.5 0 01.83-1.342l.894-.447A.5.5 0 003 4.882V2.5zM4.5 2a.5.5 0 00-.5.5V3h2v-.5a.5.5 0 00-.5-.5h-1zM6 4H4v.882a1.5 1.5 0 01-.83 1.342l-.894.447A.5.5 0 002 7.118V13h4v-1.293l-.854-.853A.5.5 0 015 10.5v-1A1.5 1.5 0 016.5 8h3A1.5 1.5 0 0111 9.5v1a.5.5 0 01-.146.354l-.854.853V13h4V7.118a.5.5 0 00-.276-.447l-.895-.447A1.5 1.5 0 0112 4.882V4h-2v1.5a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5V4zm4-1h2v-.5a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5V3zm4 11h-4v.5a.5.5 0 00.5.5h3a.5.5 0 00.5-.5V14zm-8 0H2v.5a.5.5 0 00.5.5h3a.5.5 0 00.5-.5V14z"/></symbol><symbol fill="currentColor" class="bi bi-binoculars-fill" viewBox="0 0 16 16" id="binoculars-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 1A1.5 1.5 0 003 2.5V3h4v-.5A1.5 1.5 0 005.5 1h-1zM7 4v1h2V4h4v.882a.5.5 0 00.276.447l.895.447A1.5 1.5 0 0115 7.118V13H9v-1.5a.5.5 0 01.146-.354l.854-.853V9.5a.5.5 0 00-.5-.5h-3a.5.5 0 00-.5.5v.793l.854.853A.5.5 0 017 11.5V13H1V7.118a1.5 1.5 0 01.83-1.342l.894-.447A.5.5 0 003 4.882V4h4zM1 14v.5A1.5 1.5 0 002.5 16h3A1.5 1.5 0 007 14.5V14H1zm8 0v.5a1.5 1.5 0 001.5 1.5h3a1.5 1.5 0 001.5-1.5V14H9zm4-11H9v-.5A1.5 1.5 0 0110.5 1h1A1.5 1.5 0 0113 2.5V3z"/></symbol><symbol fill="currentColor" class="bi bi-blockquote-left" viewBox="0 0 16 16" id="blockquote-left" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 3a.5.5 0 000 1h11a.5.5 0 000-1h-11zm5 3a.5.5 0 000 1h6a.5.5 0 000-1h-6zm0 3a.5.5 0 000 1h6a.5.5 0 000-1h-6zm-5 3a.5.5 0 000 1h11a.5.5 0 000-1h-11zm.79-5.373c.112-.078.26-.17.444-.275L3.524 6c-.122.074-.272.17-.452.287-.18.117-.35.26-.51.428a2.425 2.425 0 00-.398.562c-.11.207-.164.438-.164.692 0 .36.072.65.217.873.144.219.385.328.72.328.215 0 .383-.07.504-.211a.697.697 0 00.188-.463c0-.23-.07-.404-.211-.521-.137-.121-.326-.182-.568-.182h-.282c.024-.203.065-.37.123-.498a1.38 1.38 0 01.252-.37 1.94 1.94 0 01.346-.298zm2.167 0c.113-.078.262-.17.445-.275L5.692 6c-.122.074-.272.17-.452.287-.18.117-.35.26-.51.428a2.425 2.425 0 00-.398.562c-.11.207-.164.438-.164.692 0 .36.072.65.217.873.144.219.385.328.72.328.215 0 .383-.07.504-.211a.697.697 0 00.188-.463c0-.23-.07-.404-.211-.521-.137-.121-.326-.182-.568-.182h-.282a1.75 1.75 0 01.118-.492c.058-.13.144-.254.257-.375a1.94 1.94 0 01.346-.3z"/></symbol><symbol fill="currentColor" class="bi bi-blockquote-right" viewBox="0 0 16 16" id="blockquote-right" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 3a.5.5 0 000 1h11a.5.5 0 000-1h-11zm0 3a.5.5 0 000 1h6a.5.5 0 000-1h-6zm0 3a.5.5 0 000 1h6a.5.5 0 000-1h-6zm0 3a.5.5 0 000 1h11a.5.5 0 000-1h-11zm10.113-5.373a6.59 6.59 0 00-.445-.275l.21-.352c.122.074.272.17.452.287.18.117.35.26.51.428.156.164.289.351.398.562.11.207.164.438.164.692 0 .36-.072.65-.216.873-.145.219-.385.328-.721.328-.215 0-.383-.07-.504-.211a.697.697 0 01-.188-.463c0-.23.07-.404.211-.521.137-.121.326-.182.569-.182h.281a1.686 1.686 0 00-.123-.498 1.379 1.379 0 00-.252-.37 1.94 1.94 0 00-.346-.298zm-2.168 0A6.59 6.59 0 0010 6.352L10.21 6c.122.074.272.17.452.287.18.117.35.26.51.428.156.164.289.351.398.562.11.207.164.438.164.692 0 .36-.072.65-.216.873-.145.219-.385.328-.721.328-.215 0-.383-.07-.504-.211a.697.697 0 01-.188-.463c0-.23.07-.404.211-.521.137-.121.327-.182.569-.182h.281a1.749 1.749 0 00-.117-.492 1.402 1.402 0 00-.258-.375 1.94 1.94 0 00-.346-.3z"/></symbol><symbol fill="currentColor" class="bi bi-book" viewBox="0 0 16 16" id="book" xmlns="http://www.w3.org/2000/svg"><path d="M1 2.828c.885-.37 2.154-.769 3.388-.893 1.33-.134 2.458.063 3.112.752v9.746c-.935-.53-2.12-.603-3.213-.493-1.18.12-2.37.461-3.287.811V2.828zm7.5-.141c.654-.689 1.782-.886 3.112-.752 1.234.124 2.503.523 3.388.893v9.923c-.918-.35-2.107-.692-3.287-.81-1.094-.111-2.278-.039-3.213.492V2.687zM8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 000 2.5v11a.5.5 0 00.707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 00.78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0016 13.5v-11a.5.5 0 00-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783z"/></symbol><symbol fill="currentColor" class="bi bi-book-fill" viewBox="0 0 16 16" id="book-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 000 2.5v11a.5.5 0 00.707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 00.78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0016 13.5v-11a.5.5 0 00-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783z"/></symbol><symbol fill="currentColor" class="bi bi-book-half" viewBox="0 0 16 16" id="book-half" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 2.687c.654-.689 1.782-.886 3.112-.752 1.234.124 2.503.523 3.388.893v9.923c-.918-.35-2.107-.692-3.287-.81-1.094-.111-2.278-.039-3.213.492V2.687zM8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 000 2.5v11a.5.5 0 00.707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 00.78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0016 13.5v-11a.5.5 0 00-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark" viewBox="0 0 16 16" id="bookmark" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.777.416L8 13.101l-5.223 2.815A.5.5 0 012 15.5V2zm2-1a1 1 0 00-1 1v12.566l4.723-2.482a.5.5 0 01.554 0L13 14.566V2a1 1 0 00-1-1H4z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-check" viewBox="0 0 16 16" id="bookmark-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.854 5.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 7.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.777.416L8 13.101l-5.223 2.815A.5.5 0 012 15.5V2zm2-1a1 1 0 00-1 1v12.566l4.723-2.482a.5.5 0 01.554 0L13 14.566V2a1 1 0 00-1-1H4z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-check-fill" viewBox="0 0 16 16" id="bookmark-check-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 15.5V2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.74.439L8 13.069l-5.26 2.87A.5.5 0 012 15.5zm8.854-9.646a.5.5 0 00-.708-.708L7.5 7.793 6.354 6.646a.5.5 0 10-.708.708l1.5 1.5a.5.5 0 00.708 0l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-dash" viewBox="0 0 16 16" id="bookmark-dash" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.5 6.5A.5.5 0 016 6h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.777.416L8 13.101l-5.223 2.815A.5.5 0 012 15.5V2zm2-1a1 1 0 00-1 1v12.566l4.723-2.482a.5.5 0 01.554 0L13 14.566V2a1 1 0 00-1-1H4z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-dash-fill" viewBox="0 0 16 16" id="bookmark-dash-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 15.5V2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.74.439L8 13.069l-5.26 2.87A.5.5 0 012 15.5zM6 6a.5.5 0 000 1h4a.5.5 0 000-1H6z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-fill" viewBox="0 0 16 16" id="bookmark-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2v13.5a.5.5 0 00.74.439L8 13.069l5.26 2.87A.5.5 0 0014 15.5V2a2 2 0 00-2-2H4a2 2 0 00-2 2z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-heart" viewBox="0 0 16 16" id="bookmark-heart" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 4.41c1.387-1.425 4.854 1.07 0 4.277C3.146 5.48 6.613 2.986 8 4.412z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.777.416L8 13.101l-5.223 2.815A.5.5 0 012 15.5V2zm2-1a1 1 0 00-1 1v12.566l4.723-2.482a.5.5 0 01.554 0L13 14.566V2a1 1 0 00-1-1H4z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-heart-fill" viewBox="0 0 16 16" id="bookmark-heart-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 15.5a.5.5 0 00.74.439L8 13.069l5.26 2.87A.5.5 0 0014 15.5V2a2 2 0 00-2-2H4a2 2 0 00-2 2v13.5zM8 4.41c1.387-1.425 4.854 1.07 0 4.277C3.146 5.48 6.613 2.986 8 4.412z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-plus" viewBox="0 0 16 16" id="bookmark-plus" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.777.416L8 13.101l-5.223 2.815A.5.5 0 012 15.5V2zm2-1a1 1 0 00-1 1v12.566l4.723-2.482a.5.5 0 01.554 0L13 14.566V2a1 1 0 00-1-1H4z"/><path d="M8 4a.5.5 0 01.5.5V6H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V7H6a.5.5 0 010-1h1.5V4.5A.5.5 0 018 4z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-plus-fill" viewBox="0 0 16 16" id="bookmark-plus-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 15.5V2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.74.439L8 13.069l-5.26 2.87A.5.5 0 012 15.5zm6.5-11a.5.5 0 00-1 0V6H6a.5.5 0 000 1h1.5v1.5a.5.5 0 001 0V7H10a.5.5 0 000-1H8.5V4.5z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-star" viewBox="0 0 16 16" id="bookmark-star" xmlns="http://www.w3.org/2000/svg"><path d="M7.84 4.1a.178.178 0 01.32 0l.634 1.285a.178.178 0 00.134.098l1.42.206c.145.021.204.2.098.303L9.42 6.993a.178.178 0 00-.051.158l.242 1.414a.178.178 0 01-.258.187l-1.27-.668a.178.178 0 00-.165 0l-1.27.668a.178.178 0 01-.257-.187l.242-1.414a.178.178 0 00-.05-.158l-1.03-1.001a.178.178 0 01.098-.303l1.42-.206a.178.178 0 00.134-.098L7.84 4.1z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.777.416L8 13.101l-5.223 2.815A.5.5 0 012 15.5V2zm2-1a1 1 0 00-1 1v12.566l4.723-2.482a.5.5 0 01.554 0L13 14.566V2a1 1 0 00-1-1H4z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-star-fill" viewBox="0 0 16 16" id="bookmark-star-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 15.5V2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.74.439L8 13.069l-5.26 2.87A.5.5 0 012 15.5zM8.16 4.1a.178.178 0 00-.32 0l-.634 1.285a.178.178 0 01-.134.098l-1.42.206a.178.178 0 00-.098.303L6.58 6.993c.042.041.061.1.051.158L6.39 8.565a.178.178 0 00.258.187l1.27-.668a.178.178 0 01.165 0l1.27.668a.178.178 0 00.257-.187L9.368 7.15a.178.178 0 01.05-.158l1.028-1.001a.178.178 0 00-.098-.303l-1.42-.206a.178.178 0 01-.134-.098L8.16 4.1z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-x" viewBox="0 0 16 16" id="bookmark-x" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.146 5.146a.5.5 0 01.708 0L8 6.293l1.146-1.147a.5.5 0 11.708.708L8.707 7l1.147 1.146a.5.5 0 01-.708.708L8 7.707 6.854 8.854a.5.5 0 11-.708-.708L7.293 7 6.146 5.854a.5.5 0 010-.708z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.777.416L8 13.101l-5.223 2.815A.5.5 0 012 15.5V2zm2-1a1 1 0 00-1 1v12.566l4.723-2.482a.5.5 0 01.554 0L13 14.566V2a1 1 0 00-1-1H4z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-x-fill" viewBox="0 0 16 16" id="bookmark-x-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 15.5V2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.74.439L8 13.069l-5.26 2.87A.5.5 0 012 15.5zM6.854 5.146a.5.5 0 10-.708.708L7.293 7 6.146 8.146a.5.5 0 10.708.708L8 7.707l1.146 1.147a.5.5 0 10.708-.708L8.707 7l1.147-1.146a.5.5 0 00-.708-.708L8 6.293 6.854 5.146z"/></symbol><symbol fill="currentColor" class="bi bi-bookmarks" viewBox="0 0 16 16" id="bookmarks" xmlns="http://www.w3.org/2000/svg"><path d="M2 4a2 2 0 012-2h6a2 2 0 012 2v11.5a.5.5 0 01-.777.416L7 13.101l-4.223 2.815A.5.5 0 012 15.5V4zm2-1a1 1 0 00-1 1v10.566l3.723-2.482a.5.5 0 01.554 0L11 14.566V4a1 1 0 00-1-1H4z"/><path d="M4.268 1H12a1 1 0 011 1v11.768l.223.148A.5.5 0 0014 13.5V2a2 2 0 00-2-2H6a2 2 0 00-1.732 1z"/></symbol><symbol fill="currentColor" class="bi bi-bookmarks-fill" viewBox="0 0 16 16" id="bookmarks-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 4a2 2 0 012-2h6a2 2 0 012 2v11.5a.5.5 0 01-.777.416L7 13.101l-4.223 2.815A.5.5 0 012 15.5V4z"/><path d="M4.268 1A2 2 0 016 0h6a2 2 0 012 2v11.5a.5.5 0 01-.777.416L13 13.768V2a1 1 0 00-1-1H4.268z"/></symbol><symbol fill="currentColor" class="bi bi-bookshelf" viewBox="0 0 16 16" id="bookshelf" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 0a.5.5 0 01.5.5V2h10V.5a.5.5 0 011 0v15a.5.5 0 01-1 0V15H3v.5a.5.5 0 01-1 0V.5a.5.5 0 01.5-.5zM3 14h10v-3H3v3zm0-4h10V7H3v3zm0-4h10V3H3v3z"/></symbol><symbol fill="currentColor" class="bi bi-bootstrap" viewBox="0 0 16 16" id="bootstrap" xmlns="http://www.w3.org/2000/svg"><path d="M5.062 12h3.475c1.804 0 2.888-.908 2.888-2.396 0-1.102-.761-1.916-1.904-2.034v-.1c.832-.14 1.482-.93 1.482-1.816 0-1.3-.955-2.11-2.542-2.11H5.062V12zm1.313-4.875V4.658h1.78c.973 0 1.542.457 1.542 1.237 0 .802-.604 1.23-1.764 1.23H6.375zm0 3.762V8.162h1.822c1.236 0 1.887.463 1.887 1.348 0 .896-.627 1.377-1.811 1.377H6.375z"/><path d="M0 4a4 4 0 014-4h8a4 4 0 014 4v8a4 4 0 01-4 4H4a4 4 0 01-4-4V4zm4-3a3 3 0 00-3 3v8a3 3 0 003 3h8a3 3 0 003-3V4a3 3 0 00-3-3H4z"/></symbol><symbol fill="currentColor" class="bi bi-bootstrap-fill" viewBox="0 0 16 16" id="bootstrap-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.375 7.125V4.658h1.78c.973 0 1.542.457 1.542 1.237 0 .802-.604 1.23-1.764 1.23H6.375zm0 3.762h1.898c1.184 0 1.81-.48 1.81-1.377 0-.885-.65-1.348-1.886-1.348H6.375v2.725z"/><path d="M4.002 0a4 4 0 00-4 4v8a4 4 0 004 4h8a4 4 0 004-4V4a4 4 0 00-4-4h-8zm1.06 12V3.545h3.399c1.587 0 2.543.809 2.543 2.11 0 .884-.65 1.675-1.483 1.816v.1c1.143.117 1.904.931 1.904 2.033 0 1.488-1.084 2.396-2.888 2.396H5.062z"/></symbol><symbol fill="currentColor" class="bi bi-bootstrap-reboot" viewBox="0 0 16 16" id="bootstrap-reboot" xmlns="http://www.w3.org/2000/svg"><path d="M1.161 8a6.84 6.84 0 106.842-6.84.58.58 0 110-1.16 8 8 0 11-6.556 3.412l-.663-.577a.58.58 0 01.227-.997l2.52-.69a.58.58 0 01.728.633l-.332 2.592a.58.58 0 01-.956.364l-.643-.56A6.812 6.812 0 001.16 8z"/><path d="M6.641 11.671V8.843h1.57l1.498 2.828h1.314L9.377 8.665c.897-.3 1.427-1.106 1.427-2.1 0-1.37-.943-2.246-2.456-2.246H5.5v7.352h1.141zm0-3.75V5.277h1.57c.881 0 1.416.499 1.416 1.32 0 .84-.504 1.324-1.386 1.324h-1.6z"/></symbol><symbol fill="currentColor" class="bi bi-border" viewBox="0 0 16 16" id="border" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h.969v.5H1v.469H.969V1H.5V.969H0V0zm2.844 1h-.938V0h.938v1zm1.875 0H3.78V0h.938v1zm1.875 0h-.938V0h.938v1zm.937 0V.969H7.5V.5h.031V0h.938v.5H8.5v.469h-.031V1H7.53zm2.813 0h-.938V0h.938v1zm1.875 0h-.938V0h.938v1zm1.875 0h-.938V0h.938v1zM15.5 1h-.469V.969H15V.5h.031V0H16v.969h-.5V1zM1 1.906v.938H0v-.938h1zm6.5.938v-.938h1v.938h-1zm7.5 0v-.938h1v.938h-1zM1 3.78v.938H0V3.78h1zm6.5.938V3.78h1v.938h-1zm7.5 0V3.78h1v.938h-1zM1 5.656v.938H0v-.938h1zm6.5.938v-.938h1v.938h-1zm7.5 0v-.938h1v.938h-1zM.969 8.5H.5v-.031H0V7.53h.5V7.5h.469v.031H1v.938H.969V8.5zm1.875 0h-.938v-1h.938v1zm1.875 0H3.78v-1h.938v1zm1.875 0h-.938v-1h.938v1zm1.875-.031V8.5H7.53v-.031H7.5V7.53h.031V7.5h.938v.031H8.5v.938h-.031zm1.875.031h-.938v-1h.938v1zm1.875 0h-.938v-1h.938v1zm1.875 0h-.938v-1h.938v1zm1.406 0h-.469v-.031H15V7.53h.031V7.5h.469v.031h.5v.938h-.5V8.5zM0 10.344v-.938h1v.938H0zm7.5 0v-.938h1v.938h-1zm8.5-.938v.938h-1v-.938h1zM0 12.22v-.938h1v.938H0zm7.5 0v-.938h1v.938h-1zm8.5-.938v.938h-1v-.938h1zM0 14.094v-.938h1v.938H0zm7.5 0v-.938h1v.938h-1zm8.5-.938v.938h-1v-.938h1zM.969 16H0v-.969h.5V15h.469v.031H1v.469H.969v.5zm1.875 0h-.938v-1h.938v1zm1.875 0H3.78v-1h.938v1zm1.875 0h-.938v-1h.938v1zm.937 0v-.5H7.5v-.469h.031V15h.938v.031H8.5v.469h-.031v.5H7.53zm2.813 0h-.938v-1h.938v1zm1.875 0h-.938v-1h.938v1zm1.875 0h-.938v-1h.938v1zm.937 0v-.5H15v-.469h.031V15h.469v.031h.5V16h-.969z"/></symbol><symbol fill="currentColor" class="bi bi-border-all" viewBox="0 0 16 16" id="border-all" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h16v16H0V0zm1 1v6.5h6.5V1H1zm7.5 0v6.5H15V1H8.5zM15 8.5H8.5V15H15V8.5zM7.5 15V8.5H1V15h6.5z"/></symbol><symbol fill="currentColor" class="bi bi-border-bottom" viewBox="0 0 16 16" id="border-bottom" xmlns="http://www.w3.org/2000/svg"><path d="M.969 0H0v.969h.5V1h.469V.969H1V.5H.969V0zm.937 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469h.031zM9.406 1h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031V1zM1 2.844v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5V8.5zm1.406 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5h.938zm.937 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031V8.5zM0 9.406v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zM0 15h16v1H0v-1z"/></symbol><symbol fill="currentColor" class="bi bi-border-center" viewBox="0 0 16 16" id="border-center" xmlns="http://www.w3.org/2000/svg"><path d="M.969 0H0v.969h.5V1h.469V.969H1V.5H.969V0zm.937 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469h.031zM9.406 1h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031V1zM1 2.844v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM0 8.5v-1h16v1H0zm0 .906v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0V16zm1.906 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469h.031zm1.875.5h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469h.031z"/></symbol><symbol fill="currentColor" class="bi bi-border-inner" viewBox="0 0 16 16" id="border-inner" xmlns="http://www.w3.org/2000/svg"><path d="M.969 0H0v.969h.5V1h.469V.969H1V.5H.969V0zm.937 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1z"/><path d="M8.5 7.5H16v1H8.5V16h-1V8.5H0v-1h7.5V0h1v7.5z"/><path d="M9.406 1h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031V1zM1 2.844v-.938H0v.938h1zm14-.938v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm14-.938v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm14-.938v.938h1v-.938h-1zM0 9.406v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0V16zm1.906 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm3.75 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469h.031z"/></symbol><symbol fill="currentColor" class="bi bi-border-left" viewBox="0 0 16 16" id="border-left" xmlns="http://www.w3.org/2000/svg"><path d="M0 0v16h1V0H0zm1.906 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469h.031zM9.406 1h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031V1zM7.5 1.906v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM7.5 3.781v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM7.5 5.656v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM1.906 8.5h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5h.938zm.937 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031V8.5zM7.5 9.406v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-8.5.937v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-8.5.937v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zM1.906 16h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469h.031zm1.875.5h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469h.031z"/></symbol><symbol fill="currentColor" class="bi bi-border-middle" viewBox="0 0 16 16" id="border-middle" xmlns="http://www.w3.org/2000/svg"><path d="M.969 0H0v.969h.5V1h.469V.969H1V.5H.969V0zm.937 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1zM8.5 16h-1V0h1v16zm.906-15h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031V1zM1 2.844v-.938H0v.938h1zm14-.938v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm14-.938v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm14-.938v.938h1v-.938h-1zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5V8.5zm1.406 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm3.75 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031V8.5zM0 9.406v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0V16zm1.906 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm3.75 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469h.031z"/></symbol><symbol fill="currentColor" class="bi bi-border-outer" viewBox="0 0 16 16" id="border-outer" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 1.906v.938h1v-.938h-1zm0 1.875v.938h1V3.78h-1zm0 1.875v.938h1v-.938h-1zM1.906 8.5h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5h.938zm.937 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zM7.5 9.406v.938h1v-.938h-1zm0 1.875v.938h1v-.938h-1zm0 1.875v.938h1v-.938h-1z"/><path d="M0 0v16h16V0H0zm1 1h14v14H1V1z"/></symbol><symbol fill="currentColor" class="bi bi-border-right" viewBox="0 0 16 16" id="border-right" xmlns="http://www.w3.org/2000/svg"><path d="M.969 0H0v.969h.5V1h.469V.969H1V.5H.969V0zm.937 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469h.031zM9.406 1h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zM16 0h-1v16h1V0zM1 2.844v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5V8.5zm1.406 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5h.938zm.937 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zM0 9.406v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zM0 11.281v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zM0 13.156v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0V16zm1.906 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469h.031zm1.875.5h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1z"/></symbol><symbol fill="currentColor" class="bi bi-border-style" viewBox="0 0 16 16" id="border-style" xmlns="http://www.w3.org/2000/svg"><path d="M1 3.5a.5.5 0 01.5-.5h13a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-13a.5.5 0 01-.5-.5v-1zm0 4a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-1zm0 4a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm8 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-4 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm8 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-4-4a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-border-top" viewBox="0 0 16 16" id="border-top" xmlns="http://www.w3.org/2000/svg"><path d="M0 0v1h16V0H0zm1 2.844v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5V8.5zm1.406 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5h.938zm.937 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031V8.5zM0 9.406v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0V16zm1.906 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469h.031zm1.875.5h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469h.031z"/></symbol><symbol fill="currentColor" class="bi bi-border-width" viewBox="0 0 16 16" id="border-width" xmlns="http://www.w3.org/2000/svg"><path d="M0 3.5A.5.5 0 01.5 3h15a.5.5 0 01.5.5v2a.5.5 0 01-.5.5H.5a.5.5 0 01-.5-.5v-2zm0 5A.5.5 0 01.5 8h15a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H.5a.5.5 0 01-.5-.5v-1zm0 4a.5.5 0 01.5-.5h15a.5.5 0 010 1H.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-bounding-box" viewBox="0 0 16 16" id="bounding-box" xmlns="http://www.w3.org/2000/svg"><path d="M5 2V0H0v5h2v6H0v5h5v-2h6v2h5v-5h-2V5h2V0h-5v2H5zm6 1v2h2v6h-2v2H5v-2H3V5h2V3h6zm1-2h3v3h-3V1zm3 11v3h-3v-3h3zM4 15H1v-3h3v3zM1 4V1h3v3H1z"/></symbol><symbol fill="currentColor" class="bi bi-bounding-box-circles" viewBox="0 0 16 16" id="bounding-box-circles" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 100 2 1 1 0 000-2zM0 2a2 2 0 013.937-.5h8.126A2 2 0 1114.5 3.937v8.126a2 2 0 11-2.437 2.437H3.937A2 2 0 111.5 12.063V3.937A2 2 0 010 2zm2.5 1.937v8.126c.703.18 1.256.734 1.437 1.437h8.126a2.004 2.004 0 011.437-1.437V3.937A2.004 2.004 0 0112.063 2.5H3.937A2.004 2.004 0 012.5 3.937zM14 1a1 1 0 100 2 1 1 0 000-2zM2 13a1 1 0 100 2 1 1 0 000-2zm12 0a1 1 0 100 2 1 1 0 000-2z"/></symbol><symbol fill="currentColor" class="bi bi-box" viewBox="0 0 16 16" id="box" xmlns="http://www.w3.org/2000/svg"><path d="M8.186 1.113a.5.5 0 00-.372 0L1.846 3.5 8 5.961 14.154 3.5 8.186 1.113zM15 4.239l-6.5 2.6v7.922l6.5-2.6V4.24zM7.5 14.762V6.838L1 4.239v7.923l6.5 2.6zM7.443.184a1.5 1.5 0 011.114 0l7.129 2.852A.5.5 0 0116 3.5v8.662a1 1 0 01-.629.928l-7.185 2.874a.5.5 0 01-.372 0L.63 13.09a1 1 0 01-.63-.928V3.5a.5.5 0 01.314-.464L7.443.184z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-down" viewBox="0 0 16 16" id="box-arrow-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.5 10a.5.5 0 01-.5-.5v-8a.5.5 0 01.5-.5h9a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-2a.5.5 0 000 1h2A1.5 1.5 0 0014 9.5v-8A1.5 1.5 0 0012.5 0h-9A1.5 1.5 0 002 1.5v8A1.5 1.5 0 003.5 11h2a.5.5 0 000-1h-2z"/><path fill-rule="evenodd" d="M7.646 15.854a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 14.293V5.5a.5.5 0 00-1 0v8.793l-2.146-2.147a.5.5 0 00-.708.708l3 3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-down-left" viewBox="0 0 16 16" id="box-arrow-down-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.364 12.5a.5.5 0 00.5.5H14.5a1.5 1.5 0 001.5-1.5v-10A1.5 1.5 0 0014.5 0h-10A1.5 1.5 0 003 1.5v6.636a.5.5 0 101 0V1.5a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v10a.5.5 0 01-.5.5H7.864a.5.5 0 00-.5.5z"/><path fill-rule="evenodd" d="M0 15.5a.5.5 0 00.5.5h5a.5.5 0 000-1H1.707l8.147-8.146a.5.5 0 00-.708-.708L1 14.293V10.5a.5.5 0 00-1 0v5z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-down-right" viewBox="0 0 16 16" id="box-arrow-down-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8.636 12.5a.5.5 0 01-.5.5H1.5A1.5 1.5 0 010 11.5v-10A1.5 1.5 0 011.5 0h10A1.5 1.5 0 0113 1.5v6.636a.5.5 0 01-1 0V1.5a.5.5 0 00-.5-.5h-10a.5.5 0 00-.5.5v10a.5.5 0 00.5.5h6.636a.5.5 0 01.5.5z"/><path fill-rule="evenodd" d="M16 15.5a.5.5 0 01-.5.5h-5a.5.5 0 010-1h3.793L6.146 6.854a.5.5 0 11.708-.708L15 14.293V10.5a.5.5 0 011 0v5z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-down" viewBox="0 0 16 16" id="box-arrow-in-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.5 6a.5.5 0 00-.5.5v8a.5.5 0 00.5.5h9a.5.5 0 00.5-.5v-8a.5.5 0 00-.5-.5h-2a.5.5 0 010-1h2A1.5 1.5 0 0114 6.5v8a1.5 1.5 0 01-1.5 1.5h-9A1.5 1.5 0 012 14.5v-8A1.5 1.5 0 013.5 5h2a.5.5 0 010 1h-2z"/><path fill-rule="evenodd" d="M7.646 11.854a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 10.293V1.5a.5.5 0 00-1 0v8.793L5.354 8.146a.5.5 0 10-.708.708l3 3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-down-left" viewBox="0 0 16 16" id="box-arrow-in-down-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M9.636 2.5a.5.5 0 00-.5-.5H2.5A1.5 1.5 0 001 3.5v10A1.5 1.5 0 002.5 15h10a1.5 1.5 0 001.5-1.5V6.864a.5.5 0 00-1 0V13.5a.5.5 0 01-.5.5h-10a.5.5 0 01-.5-.5v-10a.5.5 0 01.5-.5h6.636a.5.5 0 00.5-.5z"/><path fill-rule="evenodd" d="M5 10.5a.5.5 0 00.5.5h5a.5.5 0 000-1H6.707l8.147-8.146a.5.5 0 00-.708-.708L6 9.293V5.5a.5.5 0 00-1 0v5z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-down-right" viewBox="0 0 16 16" id="box-arrow-in-down-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.364 2.5a.5.5 0 01.5-.5H13.5A1.5 1.5 0 0115 3.5v10a1.5 1.5 0 01-1.5 1.5h-10A1.5 1.5 0 012 13.5V6.864a.5.5 0 111 0V13.5a.5.5 0 00.5.5h10a.5.5 0 00.5-.5v-10a.5.5 0 00-.5-.5H6.864a.5.5 0 01-.5-.5z"/><path fill-rule="evenodd" d="M11 10.5a.5.5 0 01-.5.5h-5a.5.5 0 010-1h3.793L1.146 1.854a.5.5 0 11.708-.708L10 9.293V5.5a.5.5 0 011 0v5z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-left" viewBox="0 0 16 16" id="box-arrow-in-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10 3.5a.5.5 0 00-.5-.5h-8a.5.5 0 00-.5.5v9a.5.5 0 00.5.5h8a.5.5 0 00.5-.5v-2a.5.5 0 011 0v2A1.5 1.5 0 019.5 14h-8A1.5 1.5 0 010 12.5v-9A1.5 1.5 0 011.5 2h8A1.5 1.5 0 0111 3.5v2a.5.5 0 01-1 0v-2z"/><path fill-rule="evenodd" d="M4.146 8.354a.5.5 0 010-.708l3-3a.5.5 0 11.708.708L5.707 7.5H14.5a.5.5 0 010 1H5.707l2.147 2.146a.5.5 0 01-.708.708l-3-3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-right" viewBox="0 0 16 16" id="box-arrow-in-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 3.5a.5.5 0 01.5-.5h8a.5.5 0 01.5.5v9a.5.5 0 01-.5.5h-8a.5.5 0 01-.5-.5v-2a.5.5 0 00-1 0v2A1.5 1.5 0 006.5 14h8a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 2h-8A1.5 1.5 0 005 3.5v2a.5.5 0 001 0v-2z"/><path fill-rule="evenodd" d="M11.854 8.354a.5.5 0 000-.708l-3-3a.5.5 0 10-.708.708L10.293 7.5H1.5a.5.5 0 000 1h8.793l-2.147 2.146a.5.5 0 00.708.708l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-up" viewBox="0 0 16 16" id="box-arrow-in-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.5 10a.5.5 0 01-.5-.5v-8a.5.5 0 01.5-.5h9a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-2a.5.5 0 000 1h2A1.5 1.5 0 0014 9.5v-8A1.5 1.5 0 0012.5 0h-9A1.5 1.5 0 002 1.5v8A1.5 1.5 0 003.5 11h2a.5.5 0 000-1h-2z"/><path fill-rule="evenodd" d="M7.646 4.146a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 5.707V14.5a.5.5 0 01-1 0V5.707L5.354 7.854a.5.5 0 11-.708-.708l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-up-left" viewBox="0 0 16 16" id="box-arrow-in-up-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M9.636 13.5a.5.5 0 01-.5.5H2.5A1.5 1.5 0 011 12.5v-10A1.5 1.5 0 012.5 1h10A1.5 1.5 0 0114 2.5v6.636a.5.5 0 01-1 0V2.5a.5.5 0 00-.5-.5h-10a.5.5 0 00-.5.5v10a.5.5 0 00.5.5h6.636a.5.5 0 01.5.5z"/><path fill-rule="evenodd" d="M5 5.5a.5.5 0 01.5-.5h5a.5.5 0 010 1H6.707l8.147 8.146a.5.5 0 01-.708.708L6 6.707V10.5a.5.5 0 01-1 0v-5z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-up-right" viewBox="0 0 16 16" id="box-arrow-in-up-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.364 13.5a.5.5 0 00.5.5H13.5a1.5 1.5 0 001.5-1.5v-10A1.5 1.5 0 0013.5 1h-10A1.5 1.5 0 002 2.5v6.636a.5.5 0 101 0V2.5a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v10a.5.5 0 01-.5.5H6.864a.5.5 0 00-.5.5z"/><path fill-rule="evenodd" d="M11 5.5a.5.5 0 00-.5-.5h-5a.5.5 0 000 1h3.793l-8.147 8.146a.5.5 0 00.708.708L10 6.707V10.5a.5.5 0 001 0v-5z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-left" viewBox="0 0 16 16" id="box-arrow-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 12.5a.5.5 0 00.5.5h8a.5.5 0 00.5-.5v-9a.5.5 0 00-.5-.5h-8a.5.5 0 00-.5.5v2a.5.5 0 01-1 0v-2A1.5 1.5 0 016.5 2h8A1.5 1.5 0 0116 3.5v9a1.5 1.5 0 01-1.5 1.5h-8A1.5 1.5 0 015 12.5v-2a.5.5 0 011 0v2z"/><path fill-rule="evenodd" d="M.146 8.354a.5.5 0 010-.708l3-3a.5.5 0 11.708.708L1.707 7.5H10.5a.5.5 0 010 1H1.707l2.147 2.146a.5.5 0 01-.708.708l-3-3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-right" viewBox="0 0 16 16" id="box-arrow-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10 12.5a.5.5 0 01-.5.5h-8a.5.5 0 01-.5-.5v-9a.5.5 0 01.5-.5h8a.5.5 0 01.5.5v2a.5.5 0 001 0v-2A1.5 1.5 0 009.5 2h-8A1.5 1.5 0 000 3.5v9A1.5 1.5 0 001.5 14h8a1.5 1.5 0 001.5-1.5v-2a.5.5 0 00-1 0v2z"/><path fill-rule="evenodd" d="M15.854 8.354a.5.5 0 000-.708l-3-3a.5.5 0 00-.708.708L14.293 7.5H5.5a.5.5 0 000 1h8.793l-2.147 2.146a.5.5 0 00.708.708l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-up" viewBox="0 0 16 16" id="box-arrow-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.5 6a.5.5 0 00-.5.5v8a.5.5 0 00.5.5h9a.5.5 0 00.5-.5v-8a.5.5 0 00-.5-.5h-2a.5.5 0 010-1h2A1.5 1.5 0 0114 6.5v8a1.5 1.5 0 01-1.5 1.5h-9A1.5 1.5 0 012 14.5v-8A1.5 1.5 0 013.5 5h2a.5.5 0 010 1h-2z"/><path fill-rule="evenodd" d="M7.646.146a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 1.707V10.5a.5.5 0 01-1 0V1.707L5.354 3.854a.5.5 0 11-.708-.708l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-up-left" viewBox="0 0 16 16" id="box-arrow-up-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.364 3.5a.5.5 0 01.5-.5H14.5A1.5 1.5 0 0116 4.5v10a1.5 1.5 0 01-1.5 1.5h-10A1.5 1.5 0 013 14.5V7.864a.5.5 0 111 0V14.5a.5.5 0 00.5.5h10a.5.5 0 00.5-.5v-10a.5.5 0 00-.5-.5H7.864a.5.5 0 01-.5-.5z"/><path fill-rule="evenodd" d="M0 .5A.5.5 0 01.5 0h5a.5.5 0 010 1H1.707l8.147 8.146a.5.5 0 01-.708.708L1 1.707V5.5a.5.5 0 01-1 0v-5z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-up-right" viewBox="0 0 16 16" id="box-arrow-up-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8.636 3.5a.5.5 0 00-.5-.5H1.5A1.5 1.5 0 000 4.5v10A1.5 1.5 0 001.5 16h10a1.5 1.5 0 001.5-1.5V7.864a.5.5 0 00-1 0V14.5a.5.5 0 01-.5.5h-10a.5.5 0 01-.5-.5v-10a.5.5 0 01.5-.5h6.636a.5.5 0 00.5-.5z"/><path fill-rule="evenodd" d="M16 .5a.5.5 0 00-.5-.5h-5a.5.5 0 000 1h3.793L6.146 9.146a.5.5 0 10.708.708L15 1.707V5.5a.5.5 0 001 0v-5z"/></symbol><symbol fill="currentColor" class="bi bi-box-seam" viewBox="0 0 16 16" id="box-seam" xmlns="http://www.w3.org/2000/svg"><path d="M8.186 1.113a.5.5 0 00-.372 0L1.846 3.5l2.404.961L10.404 2l-2.218-.887zm3.564 1.426L5.596 5 8 5.961 14.154 3.5l-2.404-.961zm3.25 1.7l-6.5 2.6v7.922l6.5-2.6V4.24zM7.5 14.762V6.838L1 4.239v7.923l6.5 2.6zM7.443.184a1.5 1.5 0 011.114 0l7.129 2.852A.5.5 0 0116 3.5v8.662a1 1 0 01-.629.928l-7.185 2.874a.5.5 0 01-.372 0L.63 13.09a1 1 0 01-.63-.928V3.5a.5.5 0 01.314-.464L7.443.184z"/></symbol><symbol fill="currentColor" class="bi bi-braces" viewBox="0 0 16 16" id="braces" xmlns="http://www.w3.org/2000/svg"><path d="M2.114 8.063V7.9c1.005-.102 1.497-.615 1.497-1.6V4.503c0-1.094.39-1.538 1.354-1.538h.273V2h-.376C3.25 2 2.49 2.759 2.49 4.352v1.524c0 1.094-.376 1.456-1.49 1.456v1.299c1.114 0 1.49.362 1.49 1.456v1.524c0 1.593.759 2.352 2.372 2.352h.376v-.964h-.273c-.964 0-1.354-.444-1.354-1.538V9.663c0-.984-.492-1.497-1.497-1.6zM13.886 7.9v.163c-1.005.103-1.497.616-1.497 1.6v1.798c0 1.094-.39 1.538-1.354 1.538h-.273v.964h.376c1.613 0 2.372-.759 2.372-2.352v-1.524c0-1.094.376-1.456 1.49-1.456V7.332c-1.114 0-1.49-.362-1.49-1.456V4.352C13.51 2.759 12.75 2 11.138 2h-.376v.964h.273c.964 0 1.354.444 1.354 1.538V6.3c0 .984.492 1.497 1.497 1.6z"/></symbol><symbol fill="currentColor" class="bi bi-bricks" viewBox="0 0 16 16" id="bricks" xmlns="http://www.w3.org/2000/svg"><path d="M0 .5A.5.5 0 01.5 0h15a.5.5 0 01.5.5v3a.5.5 0 01-.5.5H14v2h1.5a.5.5 0 01.5.5v3a.5.5 0 01-.5.5H14v2h1.5a.5.5 0 01.5.5v3a.5.5 0 01-.5.5H.5a.5.5 0 01-.5-.5v-3a.5.5 0 01.5-.5H2v-2H.5a.5.5 0 01-.5-.5v-3A.5.5 0 01.5 6H2V4H.5a.5.5 0 01-.5-.5v-3zM3 4v2h4.5V4H3zm5.5 0v2H13V4H8.5zM3 10v2h4.5v-2H3zm5.5 0v2H13v-2H8.5zM1 1v2h3.5V1H1zm4.5 0v2h5V1h-5zm6 0v2H15V1h-3.5zM1 7v2h3.5V7H1zm4.5 0v2h5V7h-5zm6 0v2H15V7h-3.5zM1 13v2h3.5v-2H1zm4.5 0v2h5v-2h-5zm6 0v2H15v-2h-3.5z"/></symbol><symbol fill="currentColor" class="bi bi-briefcase" viewBox="0 0 16 16" id="briefcase" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 1A1.5 1.5 0 005 2.5V3H1.5A1.5 1.5 0 000 4.5v8A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-8A1.5 1.5 0 0014.5 3H11v-.5A1.5 1.5 0 009.5 1h-3zm0 1h3a.5.5 0 01.5.5V3H6v-.5a.5.5 0 01.5-.5zm1.886 6.914L15 7.151V12.5a.5.5 0 01-.5.5h-13a.5.5 0 01-.5-.5V7.15l6.614 1.764a1.5 1.5 0 00.772 0zM1.5 4h13a.5.5 0 01.5.5v1.616L8.129 7.948a.5.5 0 01-.258 0L1 6.116V4.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-briefcase-fill" viewBox="0 0 16 16" id="briefcase-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 1A1.5 1.5 0 005 2.5V3H1.5A1.5 1.5 0 000 4.5v1.384l7.614 2.03a1.5 1.5 0 00.772 0L16 5.884V4.5A1.5 1.5 0 0014.5 3H11v-.5A1.5 1.5 0 009.5 1h-3zm0 1h3a.5.5 0 01.5.5V3H6v-.5a.5.5 0 01.5-.5z"/><path d="M0 12.5A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5V6.85L8.129 8.947a.5.5 0 01-.258 0L0 6.85v5.65z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-alt-high" viewBox="0 0 16 16" id="brightness-alt-high" xmlns="http://www.w3.org/2000/svg"><path d="M8 3a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 3zm8 8a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2a.5.5 0 01.5.5zm-13.5.5a.5.5 0 000-1h-2a.5.5 0 000 1h2zm11.157-6.157a.5.5 0 010 .707l-1.414 1.414a.5.5 0 11-.707-.707l1.414-1.414a.5.5 0 01.707 0zm-9.9 2.121a.5.5 0 00.707-.707L3.05 5.343a.5.5 0 10-.707.707l1.414 1.414zM8 7a4 4 0 00-4 4 .5.5 0 00.5.5h7a.5.5 0 00.5-.5 4 4 0 00-4-4zm0 1a3 3 0 012.959 2.5H5.04A3 3 0 018 8z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-alt-high-fill" viewBox="0 0 16 16" id="brightness-alt-high-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 3a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 3zm8 8a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2a.5.5 0 01.5.5zm-13.5.5a.5.5 0 000-1h-2a.5.5 0 000 1h2zm11.157-6.157a.5.5 0 010 .707l-1.414 1.414a.5.5 0 11-.707-.707l1.414-1.414a.5.5 0 01.707 0zm-9.9 2.121a.5.5 0 00.707-.707L3.05 5.343a.5.5 0 10-.707.707l1.414 1.414zM8 7a4 4 0 00-4 4 .5.5 0 00.5.5h7a.5.5 0 00.5-.5 4 4 0 00-4-4z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-alt-low" viewBox="0 0 16 16" id="brightness-alt-low" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 5.5a.5.5 0 11-1 0 .5.5 0 011 0zm5 6a.5.5 0 110-1 .5.5 0 010 1zM2 11a.5.5 0 101 0 .5.5 0 00-1 0zm10.243-3.536a.5.5 0 11-.707-.707.5.5 0 01.707.707zm-8.486-.707a.5.5 0 10.707.707.5.5 0 00-.707-.707zM8 7a4 4 0 00-4 4 .5.5 0 00.5.5h7a.5.5 0 00.5-.5 4 4 0 00-4-4zm0 1a3 3 0 012.959 2.5H5.04A3 3 0 018 8z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-alt-low-fill" viewBox="0 0 16 16" id="brightness-alt-low-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 5.5a.5.5 0 11-1 0 .5.5 0 011 0zm5 6a.5.5 0 110-1 .5.5 0 010 1zM2 11a.5.5 0 101 0 .5.5 0 00-1 0zm10.243-3.536a.5.5 0 11-.707-.707.5.5 0 01.707.707zm-8.486-.707a.5.5 0 10.707.707.5.5 0 00-.707-.707zM8 7a4 4 0 00-4 4 .5.5 0 00.5.5h7a.5.5 0 00.5-.5 4 4 0 00-4-4z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-high" viewBox="0 0 16 16" id="brightness-high" xmlns="http://www.w3.org/2000/svg"><path d="M8 11a3 3 0 110-6 3 3 0 010 6zm0 1a4 4 0 100-8 4 4 0 000 8zM8 0a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 0zm0 13a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 13zm8-5a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2a.5.5 0 01.5.5zM3 8a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2A.5.5 0 013 8zm10.657-5.657a.5.5 0 010 .707l-1.414 1.415a.5.5 0 11-.707-.708l1.414-1.414a.5.5 0 01.707 0zm-9.193 9.193a.5.5 0 010 .707L3.05 13.657a.5.5 0 01-.707-.707l1.414-1.414a.5.5 0 01.707 0zm9.193 2.121a.5.5 0 01-.707 0l-1.414-1.414a.5.5 0 01.707-.707l1.414 1.414a.5.5 0 010 .707zM4.464 4.465a.5.5 0 01-.707 0L2.343 3.05a.5.5 0 11.707-.707l1.414 1.414a.5.5 0 010 .708z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-high-fill" viewBox="0 0 16 16" id="brightness-high-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 8a4 4 0 11-8 0 4 4 0 018 0zM8 0a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 0zm0 13a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 13zm8-5a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2a.5.5 0 01.5.5zM3 8a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2A.5.5 0 013 8zm10.657-5.657a.5.5 0 010 .707l-1.414 1.415a.5.5 0 11-.707-.708l1.414-1.414a.5.5 0 01.707 0zm-9.193 9.193a.5.5 0 010 .707L3.05 13.657a.5.5 0 01-.707-.707l1.414-1.414a.5.5 0 01.707 0zm9.193 2.121a.5.5 0 01-.707 0l-1.414-1.414a.5.5 0 01.707-.707l1.414 1.414a.5.5 0 010 .707zM4.464 4.465a.5.5 0 01-.707 0L2.343 3.05a.5.5 0 11.707-.707l1.414 1.414a.5.5 0 010 .708z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-low" viewBox="0 0 16 16" id="brightness-low" xmlns="http://www.w3.org/2000/svg"><path d="M8 11a3 3 0 110-6 3 3 0 010 6zm0 1a4 4 0 100-8 4 4 0 000 8zm.5-9.5a.5.5 0 11-1 0 .5.5 0 011 0zm0 11a.5.5 0 11-1 0 .5.5 0 011 0zm5-5a.5.5 0 110-1 .5.5 0 010 1zm-11 0a.5.5 0 110-1 .5.5 0 010 1zm9.743-4.036a.5.5 0 11-.707-.707.5.5 0 01.707.707zm-7.779 7.779a.5.5 0 11-.707-.707.5.5 0 01.707.707zm7.072 0a.5.5 0 11.707-.707.5.5 0 01-.707.707zM3.757 4.464a.5.5 0 11.707-.707.5.5 0 01-.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-low-fill" viewBox="0 0 16 16" id="brightness-low-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 8a4 4 0 11-8 0 4 4 0 018 0zM8.5 2.5a.5.5 0 11-1 0 .5.5 0 011 0zm0 11a.5.5 0 11-1 0 .5.5 0 011 0zm5-5a.5.5 0 110-1 .5.5 0 010 1zm-11 0a.5.5 0 110-1 .5.5 0 010 1zm9.743-4.036a.5.5 0 11-.707-.707.5.5 0 01.707.707zm-7.779 7.779a.5.5 0 11-.707-.707.5.5 0 01.707.707zm7.072 0a.5.5 0 11.707-.707.5.5 0 01-.707.707zM3.757 4.464a.5.5 0 11.707-.707.5.5 0 01-.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-broadcast" viewBox="0 0 16 16" id="broadcast" xmlns="http://www.w3.org/2000/svg"><path d="M3.05 3.05a7 7 0 000 9.9.5.5 0 01-.707.707 8 8 0 010-11.314.5.5 0 01.707.707zm2.122 2.122a4 4 0 000 5.656.5.5 0 11-.708.708 5 5 0 010-7.072.5.5 0 01.708.708zm5.656-.708a.5.5 0 01.708 0 5 5 0 010 7.072.5.5 0 11-.708-.708 4 4 0 000-5.656.5.5 0 010-.708zm2.122-2.12a.5.5 0 01.707 0 8 8 0 010 11.313.5.5 0 01-.707-.707 7 7 0 000-9.9.5.5 0 010-.707zM10 8a2 2 0 11-4 0 2 2 0 014 0z"/></symbol><symbol fill="currentColor" class="bi bi-broadcast-pin" viewBox="0 0 16 16" id="broadcast-pin" xmlns="http://www.w3.org/2000/svg"><path d="M3.05 3.05a7 7 0 000 9.9.5.5 0 01-.707.707 8 8 0 010-11.314.5.5 0 01.707.707zm2.122 2.122a4 4 0 000 5.656.5.5 0 11-.708.708 5 5 0 010-7.072.5.5 0 01.708.708zm5.656-.708a.5.5 0 01.708 0 5 5 0 010 7.072.5.5 0 11-.708-.708 4 4 0 000-5.656.5.5 0 010-.708zm2.122-2.12a.5.5 0 01.707 0 8 8 0 010 11.313.5.5 0 01-.707-.707 7 7 0 000-9.9.5.5 0 010-.707zM6 8a2 2 0 112.5 1.937V15.5a.5.5 0 01-1 0V9.937A2 2 0 016 8z"/></symbol><symbol fill="currentColor" class="bi bi-brush" viewBox="0 0 16 16" id="brush" xmlns="http://www.w3.org/2000/svg"><path d="M15.825.12a.5.5 0 01.132.584c-1.53 3.43-4.743 8.17-7.095 10.64a6.067 6.067 0 01-2.373 1.534c-.018.227-.06.538-.16.868-.201.659-.667 1.479-1.708 1.74a8.118 8.118 0 01-3.078.132 3.659 3.659 0 01-.562-.135 1.382 1.382 0 01-.466-.247.714.714 0 01-.204-.288.622.622 0 01.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 01.596.04zM4.705 11.912a1.23 1.23 0 00-.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 01-.76.861c.69.112 1.736.111 2.657-.12.559-.139.843-.569.993-1.06a3.122 3.122 0 00.126-.75l-.793-.792zm1.44.026c.12-.04.277-.1.458-.183a5.068 5.068 0 001.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.04l.007-.005a.031.031 0 01-.007.004zm3.582-3.043l.002.001h-.002z"/></symbol><symbol fill="currentColor" class="bi bi-brush-fill" viewBox="0 0 16 16" id="brush-fill" xmlns="http://www.w3.org/2000/svg"><path d="M15.825.12a.5.5 0 01.132.584c-1.53 3.43-4.743 8.17-7.095 10.64a6.067 6.067 0 01-2.373 1.534c-.018.227-.06.538-.16.868-.201.659-.667 1.479-1.708 1.74a8.118 8.118 0 01-3.078.132 3.659 3.659 0 01-.562-.135 1.382 1.382 0 01-.466-.247.714.714 0 01-.204-.288.622.622 0 01.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 01.596.04z"/></symbol><symbol fill="currentColor" class="bi bi-bucket" viewBox="0 0 16 16" id="bucket" xmlns="http://www.w3.org/2000/svg"><path d="M2.522 5H2a.5.5 0 00-.494.574l1.372 9.149A1.5 1.5 0 004.36 16h7.278a1.5 1.5 0 001.483-1.277l1.373-9.149A.5.5 0 0014 5h-.522A5.5 5.5 0 002.522 5zm1.005 0a4.5 4.5 0 018.945 0H3.527zm9.892 1l-1.286 8.574a.5.5 0 01-.494.426H4.36a.5.5 0 01-.494-.426L2.58 6h10.838z"/></symbol><symbol fill="currentColor" class="bi bi-bucket-fill" viewBox="0 0 16 16" id="bucket-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.522 5H2a.5.5 0 00-.494.574l1.372 9.149A1.5 1.5 0 004.36 16h7.278a1.5 1.5 0 001.483-1.277l1.373-9.149A.5.5 0 0014 5h-.522A5.5 5.5 0 002.522 5zm1.005 0a4.5 4.5 0 018.945 0H3.527z"/></symbol><symbol fill="currentColor" class="bi bi-bug" viewBox="0 0 16 16" id="bug" xmlns="http://www.w3.org/2000/svg"><path d="M4.355.522a.5.5 0 01.623.333l.291.956A4.979 4.979 0 018 1c1.007 0 1.946.298 2.731.811l.29-.956a.5.5 0 11.957.29l-.41 1.352A4.985 4.985 0 0113 6h.5a.5.5 0 00.5-.5V5a.5.5 0 011 0v.5A1.5 1.5 0 0113.5 7H13v1h1.5a.5.5 0 010 1H13v1h.5a1.5 1.5 0 011.5 1.5v.5a.5.5 0 11-1 0v-.5a.5.5 0 00-.5-.5H13a5 5 0 01-10 0h-.5a.5.5 0 00-.5.5v.5a.5.5 0 11-1 0v-.5A1.5 1.5 0 012.5 10H3V9H1.5a.5.5 0 010-1H3V7h-.5A1.5 1.5 0 011 5.5V5a.5.5 0 011 0v.5a.5.5 0 00.5.5H3c0-1.364.547-2.601 1.432-3.503l-.41-1.352a.5.5 0 01.333-.623zM4 7v4a4 4 0 003.5 3.97V7H4zm4.5 0v7.97A4 4 0 0012 11V7H8.5zM12 6a3.989 3.989 0 00-1.334-2.982A3.983 3.983 0 008 2a3.983 3.983 0 00-2.667 1.018A3.989 3.989 0 004 6h8z"/></symbol><symbol fill="currentColor" class="bi bi-bug-fill" viewBox="0 0 16 16" id="bug-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.978.855a.5.5 0 10-.956.29l.41 1.352A4.985 4.985 0 003 6h10a4.985 4.985 0 00-1.432-3.503l.41-1.352a.5.5 0 10-.956-.29l-.291.956A4.978 4.978 0 008 1a4.979 4.979 0 00-2.731.811l-.29-.956z"/><path d="M13 6v1H8.5v8.975A5 5 0 0013 11h.5a.5.5 0 01.5.5v.5a.5.5 0 101 0v-.5a1.5 1.5 0 00-1.5-1.5H13V9h1.5a.5.5 0 000-1H13V7h.5A1.5 1.5 0 0015 5.5V5a.5.5 0 00-1 0v.5a.5.5 0 01-.5.5H13zm-5.5 9.975V7H3V6h-.5a.5.5 0 01-.5-.5V5a.5.5 0 00-1 0v.5A1.5 1.5 0 002.5 7H3v1H1.5a.5.5 0 000 1H3v1h-.5A1.5 1.5 0 001 11.5v.5a.5.5 0 101 0v-.5a.5.5 0 01.5-.5H3a5 5 0 004.5 4.975z"/></symbol><symbol fill="currentColor" class="bi bi-building" viewBox="0 0 16 16" id="building" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M14.763.075A.5.5 0 0115 .5v15a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5V14h-1v1.5a.5.5 0 01-.5.5h-9a.5.5 0 01-.5-.5V10a.5.5 0 01.342-.474L6 7.64V4.5a.5.5 0 01.276-.447l8-4a.5.5 0 01.487.022zM6 8.694L1 10.36V15h5V8.694zM7 15h2v-1.5a.5.5 0 01.5-.5h2a.5.5 0 01.5.5V15h2V1.309l-7 3.5V15z"/><path d="M2 11h1v1H2v-1zm2 0h1v1H4v-1zm-2 2h1v1H2v-1zm2 0h1v1H4v-1zm4-4h1v1H8V9zm2 0h1v1h-1V9zm-2 2h1v1H8v-1zm2 0h1v1h-1v-1zm2-2h1v1h-1V9zm0 2h1v1h-1v-1zM8 7h1v1H8V7zm2 0h1v1h-1V7zm2 0h1v1h-1V7zM8 5h1v1H8V5zm2 0h1v1h-1V5zm2 0h1v1h-1V5zm0-2h1v1h-1V3z"/></symbol><symbol fill="currentColor" class="bi bi-bullseye" viewBox="0 0 16 16" id="bullseye" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M8 13A5 5 0 118 3a5 5 0 010 10zm0 1A6 6 0 108 2a6 6 0 000 12z"/><path d="M8 11a3 3 0 110-6 3 3 0 010 6zm0 1a4 4 0 100-8 4 4 0 000 8z"/><path d="M9.5 8a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-calculator" viewBox="0 0 16 16" id="calculator" xmlns="http://www.w3.org/2000/svg"><path d="M12 1a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h8zM4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4z"/><path d="M4 2.5a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-2zm0 4a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm0 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm0 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm3-6a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm0 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm0 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm3-6a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm0 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v4a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-4z"/></symbol><symbol fill="currentColor" class="bi bi-calculator-fill" viewBox="0 0 16 16" id="calculator-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm2 .5v2a.5.5 0 00.5.5h7a.5.5 0 00.5-.5v-2a.5.5 0 00-.5-.5h-7a.5.5 0 00-.5.5zm0 4v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5zM4.5 9a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zM4 12.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5zM7.5 6a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zM7 9.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5zm.5 2.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zM10 6.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5zm.5 2.5a.5.5 0 00-.5.5v4a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-4a.5.5 0 00-.5-.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar" viewBox="0 0 16 16" id="calendar" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-check" viewBox="0 0 16 16" id="calendar-check" xmlns="http://www.w3.org/2000/svg"><path d="M10.854 7.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 9.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-check-fill" viewBox="0 0 16 16" id="calendar-check-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zm-5.146-5.146l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 01.708-.708L7.5 10.793l2.646-2.647a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-date" viewBox="0 0 16 16" id="calendar-date" xmlns="http://www.w3.org/2000/svg"><path d="M6.445 11.688V6.354h-.633A12.6 12.6 0 004.5 7.16v.695c.375-.257.969-.62 1.258-.777h.012v4.61h.675zm1.188-1.305c.047.64.594 1.406 1.703 1.406 1.258 0 2-1.066 2-2.871 0-1.934-.781-2.668-1.953-2.668-.926 0-1.797.672-1.797 1.809 0 1.16.824 1.77 1.676 1.77.746 0 1.23-.376 1.383-.79h.027c-.004 1.316-.461 2.164-1.305 2.164-.664 0-1.008-.45-1.05-.82h-.684zm2.953-2.317c0 .696-.559 1.18-1.184 1.18-.601 0-1.144-.383-1.144-1.2 0-.823.582-1.21 1.168-1.21.633 0 1.16.398 1.16 1.23z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-date-fill" viewBox="0 0 16 16" id="calendar-date-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zm5.402 9.746c.625 0 1.184-.484 1.184-1.18 0-.832-.527-1.23-1.16-1.23-.586 0-1.168.387-1.168 1.21 0 .817.543 1.2 1.144 1.2z"/><path d="M16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zm-6.664-1.21c-1.11 0-1.656-.767-1.703-1.407h.683c.043.37.387.82 1.051.82.844 0 1.301-.848 1.305-2.164h-.027c-.153.414-.637.79-1.383.79-.852 0-1.676-.61-1.676-1.77 0-1.137.871-1.809 1.797-1.809 1.172 0 1.953.734 1.953 2.668 0 1.805-.742 2.871-2 2.871zm-2.89-5.435v5.332H5.77V8.079h-.012c-.29.156-.883.52-1.258.777V8.16a12.6 12.6 0 011.313-.805h.632z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-day" viewBox="0 0 16 16" id="calendar-day" xmlns="http://www.w3.org/2000/svg"><path d="M4.684 11.523v-2.3h2.261v-.61H4.684V6.801h2.464v-.61H4v5.332h.684zm3.296 0h.676V8.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a1.806 1.806 0 00-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98v4.105zm2.805-5.093c0 .238.192.425.43.425a.428.428 0 100-.855.426.426 0 00-.43.43zm.094 5.093h.672V7.418h-.672v4.105z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-day-fill" viewBox="0 0 16 16" id="calendar-day-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 14a2 2 0 01-2 2H2a2 2 0 01-2-2V5h16v9zm-4.785-6.145a.428.428 0 100-.855.426.426 0 00-.43.43c0 .238.192.425.43.425zm.336.563h-.672v4.105h.672V8.418zm-6.867 4.105v-2.3h2.261v-.61H4.684V7.801h2.464v-.61H4v5.332h.684zm3.296 0h.676V9.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a1.806 1.806 0 00-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98v4.105z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-event" viewBox="0 0 16 16" id="calendar-event" xmlns="http://www.w3.org/2000/svg"><path d="M11 6.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-event-fill" viewBox="0 0 16 16" id="calendar-event-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zm-3.5-7h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-fill" viewBox="0 0 16 16" id="calendar-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V5h16V4H0V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-minus" viewBox="0 0 16 16" id="calendar-minus" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 9.5A.5.5 0 016 9h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-minus-fill" viewBox="0 0 16 16" id="calendar-minus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zM6 10h4a.5.5 0 010 1H6a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-month" viewBox="0 0 16 16" id="calendar-month" xmlns="http://www.w3.org/2000/svg"><path d="M2.56 11.332L3.1 9.73h1.984l.54 1.602h.718L4.444 6h-.696L1.85 11.332h.71zm1.544-4.527L4.9 9.18H3.284l.8-2.375h.02zm5.746.422h-.676V9.77c0 .652-.414 1.023-1.004 1.023-.539 0-.98-.246-.98-1.012V7.227h-.676v2.746c0 .941.606 1.425 1.453 1.425.656 0 1.043-.28 1.188-.605h.027v.539h.668V7.227zm2.258 5.046c-.563 0-.91-.304-.985-.636h-.687c.094.683.625 1.199 1.668 1.199.93 0 1.746-.527 1.746-1.578V7.227h-.649v.578h-.019c-.191-.348-.637-.64-1.195-.64-.965 0-1.64.679-1.64 1.886v.34c0 1.23.683 1.902 1.64 1.902.558 0 1.008-.293 1.172-.648h.02v.605c0 .645-.423 1.023-1.071 1.023zm.008-4.53c.648 0 1.062.527 1.062 1.359v.253c0 .848-.39 1.364-1.062 1.364-.692 0-1.098-.512-1.098-1.364v-.253c0-.868.406-1.36 1.098-1.36z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-month-fill" viewBox="0 0 16 16" id="calendar-month-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zm.104 7.305L4.9 10.18H3.284l.8-2.375h.02zm9.074 2.297c0-.832-.414-1.36-1.062-1.36-.692 0-1.098.492-1.098 1.36v.253c0 .852.406 1.364 1.098 1.364.671 0 1.062-.516 1.062-1.364v-.253z"/><path d="M16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zM2.56 12.332h-.71L3.748 7h.696l1.898 5.332h-.719l-.539-1.602H3.1l-.54 1.602zm7.29-4.105v4.105h-.668v-.539h-.027c-.145.324-.532.605-1.188.605-.847 0-1.453-.484-1.453-1.425V8.227h.676v2.554c0 .766.441 1.012.98 1.012.59 0 1.004-.371 1.004-1.023V8.227h.676zm1.273 4.41c.075.332.422.636.985.636.648 0 1.07-.378 1.07-1.023v-.605h-.02c-.163.355-.613.648-1.171.648-.957 0-1.64-.672-1.64-1.902v-.34c0-1.207.675-1.887 1.64-1.887.558 0 1.004.293 1.195.64h.02v-.577h.648v4.03c0 1.052-.816 1.579-1.746 1.579-1.043 0-1.574-.516-1.668-1.2h.687z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-plus" viewBox="0 0 16 16" id="calendar-plus" xmlns="http://www.w3.org/2000/svg"><path d="M8 7a.5.5 0 01.5.5V9H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V10H6a.5.5 0 010-1h1.5V7.5A.5.5 0 018 7z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-plus-fill" viewBox="0 0 16 16" id="calendar-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zM8.5 8.5V10H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V11H6a.5.5 0 010-1h1.5V8.5a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-range" viewBox="0 0 16 16" id="calendar-range" xmlns="http://www.w3.org/2000/svg"><path d="M9 7a1 1 0 011-1h5v2h-5a1 1 0 01-1-1zM1 9h4a1 1 0 010 2H1V9z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-range-fill" viewBox="0 0 16 16" id="calendar-range-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 7V5H0v5h5a1 1 0 110 2H0v2a2 2 0 002 2h12a2 2 0 002-2V9h-6a1 1 0 110-2h6z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-week" viewBox="0 0 16 16" id="calendar-week" xmlns="http://www.w3.org/2000/svg"><path d="M11 6.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-3 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-5 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm3 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-week-fill" viewBox="0 0 16 16" id="calendar-week-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zM9.5 7h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5zm3 0h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5zM2 10.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm3.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-x" viewBox="0 0 16 16" id="calendar-x" xmlns="http://www.w3.org/2000/svg"><path d="M6.146 7.146a.5.5 0 01.708 0L8 8.293l1.146-1.147a.5.5 0 11.708.708L8.707 9l1.147 1.146a.5.5 0 01-.708.708L8 9.707l-1.146 1.147a.5.5 0 01-.708-.708L7.293 9 6.146 7.854a.5.5 0 010-.708z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-x-fill" viewBox="0 0 16 16" id="calendar-x-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zM6.854 8.146L8 9.293l1.146-1.147a.5.5 0 11.708.708L8.707 10l1.147 1.146a.5.5 0 01-.708.708L8 10.707l-1.146 1.147a.5.5 0 01-.708-.708L7.293 10 6.146 8.854a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2" viewBox="0 0 16 16" id="calendar2" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-check" viewBox="0 0 16 16" id="calendar2-check" xmlns="http://www.w3.org/2000/svg"><path d="M10.854 8.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 01.708-.708L7.5 10.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-check-fill" viewBox="0 0 16 16" id="calendar2-check-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zm-2.6 5.854a.5.5 0 00-.708-.708L7.5 10.793 6.354 9.646a.5.5 0 10-.708.708l1.5 1.5a.5.5 0 00.708 0l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-date" viewBox="0 0 16 16" id="calendar2-date" xmlns="http://www.w3.org/2000/svg"><path d="M6.445 12.688V7.354h-.633A12.6 12.6 0 004.5 8.16v.695c.375-.257.969-.62 1.258-.777h.012v4.61h.675zm1.188-1.305c.047.64.594 1.406 1.703 1.406 1.258 0 2-1.066 2-2.871 0-1.934-.781-2.668-1.953-2.668-.926 0-1.797.672-1.797 1.809 0 1.16.824 1.77 1.676 1.77.746 0 1.23-.376 1.383-.79h.027c-.004 1.316-.461 2.164-1.305 2.164-.664 0-1.008-.45-1.05-.82h-.684zm2.953-2.317c0 .696-.559 1.18-1.184 1.18-.601 0-1.144-.383-1.144-1.2 0-.823.582-1.21 1.168-1.21.633 0 1.16.398 1.16 1.23z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-date-fill" viewBox="0 0 16 16" id="calendar2-date-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.402 10.246c.625 0 1.184-.484 1.184-1.18 0-.832-.527-1.23-1.16-1.23-.586 0-1.168.387-1.168 1.21 0 .817.543 1.2 1.144 1.2z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zm-4.118 9.79c1.258 0 2-1.067 2-2.872 0-1.934-.781-2.668-1.953-2.668-.926 0-1.797.672-1.797 1.809 0 1.16.824 1.77 1.676 1.77.746 0 1.23-.376 1.383-.79h.027c-.004 1.316-.461 2.164-1.305 2.164-.664 0-1.008-.45-1.05-.82h-.684c.047.64.594 1.406 1.703 1.406zm-2.89-5.435h-.633A12.6 12.6 0 004.5 8.16v.695c.375-.257.969-.62 1.258-.777h.012v4.61h.675V7.354z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-day" viewBox="0 0 16 16" id="calendar2-day" xmlns="http://www.w3.org/2000/svg"><path d="M4.684 12.523v-2.3h2.261v-.61H4.684V7.801h2.464v-.61H4v5.332h.684zm3.296 0h.676V9.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a1.806 1.806 0 00-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98v4.105zm2.805-5.093c0 .238.192.425.43.425a.428.428 0 100-.855.426.426 0 00-.43.43zm.094 5.093h.672V8.418h-.672v4.105z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-day-fill" viewBox="0 0 16 16" id="calendar2-day-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zm-2.24 4.855a.428.428 0 100-.855.426.426 0 00-.429.43c0 .238.192.425.43.425zm.337.563h-.672v4.105h.672V8.418zm-6.867 4.105v-2.3h2.261v-.61H4.684V7.801h2.464v-.61H4v5.332h.684zm3.296 0h.676V9.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a1.806 1.806 0 00-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98v4.105z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-event" viewBox="0 0 16 16" id="calendar2-event" xmlns="http://www.w3.org/2000/svg"><path d="M11 7.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-event-fill" viewBox="0 0 16 16" id="calendar2-event-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zM11.5 7a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-fill" viewBox="0 0 16 16" id="calendar2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v11a2 2 0 002 2h12a2 2 0 002-2V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM2.545 3h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5v-1c0-.276.244-.5.545-.5z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-minus" viewBox="0 0 16 16" id="calendar2-minus" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 10.5A.5.5 0 016 10h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-minus-fill" viewBox="0 0 16 16" id="calendar2-minus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zM6 10a.5.5 0 000 1h4a.5.5 0 000-1H6z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-month" viewBox="0 0 16 16" id="calendar2-month" xmlns="http://www.w3.org/2000/svg"><path d="M2.56 12.332l.54-1.602h1.984l.54 1.602h.718L4.444 7h-.696L1.85 12.332h.71zm1.544-4.527L4.9 10.18H3.284l.8-2.375h.02zm5.746.422h-.676v2.543c0 .652-.414 1.023-1.004 1.023-.539 0-.98-.246-.98-1.012V8.227h-.676v2.746c0 .941.606 1.425 1.453 1.425.656 0 1.043-.28 1.188-.605h.027v.539h.668V8.227zm2.258 5.046c-.563 0-.91-.304-.985-.636h-.687c.094.683.625 1.199 1.668 1.199.93 0 1.746-.527 1.746-1.578V8.227h-.649v.578h-.019c-.191-.348-.637-.64-1.195-.64-.965 0-1.64.679-1.64 1.886v.34c0 1.23.683 1.902 1.64 1.902.558 0 1.008-.293 1.172-.648h.02v.605c0 .645-.423 1.023-1.071 1.023zm.008-4.53c.648 0 1.062.527 1.062 1.359v.253c0 .848-.39 1.364-1.062 1.364-.692 0-1.098-.512-1.098-1.364v-.253c0-.868.406-1.36 1.098-1.36z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-month-fill" viewBox="0 0 16 16" id="calendar2-month-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.104 7.805L4.9 10.18H3.284l.8-2.375h.02zm9.074 2.297c0-.832-.414-1.36-1.062-1.36-.692 0-1.098.492-1.098 1.36v.253c0 .852.406 1.364 1.098 1.364.671 0 1.062-.516 1.062-1.364v-.253z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zM2.561 12.332L3.1 10.73h1.984l.54 1.602h.718L4.444 7h-.696L1.85 12.332h.71zM9.85 8.227h-.676v2.543c0 .652-.414 1.023-1.004 1.023-.539 0-.98-.246-.98-1.012V8.227h-.676v2.746c0 .941.606 1.425 1.453 1.425.656 0 1.043-.28 1.188-.605h.027v.539h.668V8.227zm1.273 4.41h-.687c.094.683.625 1.199 1.668 1.199.93 0 1.746-.527 1.746-1.578V8.227h-.649v.578h-.019c-.191-.348-.637-.64-1.195-.64-.965 0-1.64.679-1.64 1.886v.34c0 1.23.683 1.902 1.64 1.902.558 0 1.008-.293 1.172-.648h.02v.605c0 .645-.423 1.023-1.071 1.023-.563 0-.91-.304-.985-.636z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-plus" viewBox="0 0 16 16" id="calendar2-plus" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4zM8 8a.5.5 0 01.5.5V10H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V11H6a.5.5 0 010-1h1.5V8.5A.5.5 0 018 8z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-plus-fill" viewBox="0 0 16 16" id="calendar2-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 3.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5H2.545c-.3 0-.545.224-.545.5zm6.5 5a.5.5 0 00-1 0V10H6a.5.5 0 000 1h1.5v1.5a.5.5 0 001 0V11H10a.5.5 0 000-1H8.5V8.5z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-range" viewBox="0 0 16 16" id="calendar2-range" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4zM9 8a1 1 0 011-1h5v2h-5a1 1 0 01-1-1zm-8 2h4a1 1 0 110 2H1v-2z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-range-fill" viewBox="0 0 16 16" id="calendar2-range-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zM10 7a1 1 0 000 2h5V7h-5zm-4 4a1 1 0 00-1-1H1v2h4a1 1 0 001-1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-week" viewBox="0 0 16 16" id="calendar2-week" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4zM11 7.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-3 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-5 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm3 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-week-fill" viewBox="0 0 16 16" id="calendar2-week-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zM8.5 7a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zm3 0a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zM3 10.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5zm3.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-x" viewBox="0 0 16 16" id="calendar2-x" xmlns="http://www.w3.org/2000/svg"><path d="M6.146 8.146a.5.5 0 01.708 0L8 9.293l1.146-1.147a.5.5 0 11.708.708L8.707 10l1.147 1.146a.5.5 0 01-.708.708L8 10.707l-1.146 1.147a.5.5 0 01-.708-.708L7.293 10 6.146 8.854a.5.5 0 010-.708z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-x-fill" viewBox="0 0 16 16" id="calendar2-x-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zm-6.6 5.146a.5.5 0 10-.708.708L7.293 10l-1.147 1.146a.5.5 0 00.708.708L8 10.707l1.146 1.147a.5.5 0 00.708-.708L8.707 10l1.147-1.146a.5.5 0 00-.708-.708L8 9.293 6.854 8.146z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3" viewBox="0 0 16 16" id="calendar3" xmlns="http://www.w3.org/2000/svg"><path d="M14 0H2a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z"/><path d="M6.5 7a1 1 0 100-2 1 1 0 000 2zm3 0a1 1 0 100-2 1 1 0 000 2zm3 0a1 1 0 100-2 1 1 0 000 2zm-9 3a1 1 0 100-2 1 1 0 000 2zm3 0a1 1 0 100-2 1 1 0 000 2zm3 0a1 1 0 100-2 1 1 0 000 2zm3 0a1 1 0 100-2 1 1 0 000 2zm-9 3a1 1 0 100-2 1 1 0 000 2zm3 0a1 1 0 100-2 1 1 0 000 2zm3 0a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3-event" viewBox="0 0 16 16" id="calendar3-event" xmlns="http://www.w3.org/2000/svg"><path d="M14 0H2a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z"/><path d="M12 7a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3-event-fill" viewBox="0 0 16 16" id="calendar3-event-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 0a2 2 0 00-2 2h16a2 2 0 00-2-2H2zM0 14V3h16v11a2 2 0 01-2 2H2a2 2 0 01-2-2zm12-8a1 1 0 102 0 1 1 0 00-2 0z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3-fill" viewBox="0 0 16 16" id="calendar3-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2H0zm0 1v11a2 2 0 002 2h12a2 2 0 002-2V3H0z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3-range" viewBox="0 0 16 16" id="calendar3-range" xmlns="http://www.w3.org/2000/svg"><path d="M14 0H2a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z"/><path d="M7 10a1 1 0 000-2H1v2h6zm2-3h6V5H9a1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3-range-fill" viewBox="0 0 16 16" id="calendar3-range-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 0a2 2 0 00-2 2h16a2 2 0 00-2-2H2zM0 8V3h16v2h-6a1 1 0 100 2h6v7a2 2 0 01-2 2H2a2 2 0 01-2-2v-4h6a1 1 0 100-2H0z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3-week" viewBox="0 0 16 16" id="calendar3-week" xmlns="http://www.w3.org/2000/svg"><path d="M14 0H2a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z"/><path d="M12 7a1 1 0 100-2 1 1 0 000 2zm-5 3a1 1 0 100-2 1 1 0 000 2zm2-3a1 1 0 100-2 1 1 0 000 2zm-5 3a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3-week-fill" viewBox="0 0 16 16" id="calendar3-week-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 0a2 2 0 00-2 2h16a2 2 0 00-2-2H2zM0 14V3h16v11a2 2 0 01-2 2H2a2 2 0 01-2-2zm12-8a1 1 0 102 0 1 1 0 00-2 0zM5 9a1 1 0 102 0 1 1 0 00-2 0zm5-2a1 1 0 110-2 1 1 0 010 2zM2 9a1 1 0 102 0 1 1 0 00-2 0z"/></symbol><symbol fill="currentColor" class="bi bi-calendar4" viewBox="0 0 16 16" id="calendar4" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v1h14V3a1 1 0 00-1-1H2zm13 3H1v9a1 1 0 001 1h12a1 1 0 001-1V5z"/></symbol><symbol fill="currentColor" class="bi bi-calendar4-event" viewBox="0 0 16 16" id="calendar4-event" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v1h14V3a1 1 0 00-1-1H2zm13 3H1v9a1 1 0 001 1h12a1 1 0 001-1V5z"/><path d="M11 7.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar4-range" viewBox="0 0 16 16" id="calendar4-range" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v1h14V3a1 1 0 00-1-1H2zm13 3H1v9a1 1 0 001 1h12a1 1 0 001-1V5z"/><path d="M9 7.5a.5.5 0 01.5-.5H15v2H9.5a.5.5 0 01-.5-.5v-1zm-2 3v1a.5.5 0 01-.5.5H1v-2h5.5a.5.5 0 01.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-calendar4-week" viewBox="0 0 16 16" id="calendar4-week" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v1h14V3a1 1 0 00-1-1H2zm13 3H1v9a1 1 0 001 1h12a1 1 0 001-1V5z"/><path d="M11 7.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-3 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-2 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-3 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-camera" viewBox="0 0 16 16" id="camera" xmlns="http://www.w3.org/2000/svg"><path d="M15 12a1 1 0 01-1 1H2a1 1 0 01-1-1V6a1 1 0 011-1h1.172a3 3 0 002.12-.879l.83-.828A1 1 0 016.827 3h2.344a1 1 0 01.707.293l.828.828A3 3 0 0012.828 5H14a1 1 0 011 1v6zM2 4a2 2 0 00-2 2v6a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1.172a2 2 0 01-1.414-.586l-.828-.828A2 2 0 009.172 2H6.828a2 2 0 00-1.414.586l-.828.828A2 2 0 013.172 4H2z"/><path d="M8 11a2.5 2.5 0 110-5 2.5 2.5 0 010 5zm0 1a3.5 3.5 0 100-7 3.5 3.5 0 000 7zM3 6.5a.5.5 0 11-1 0 .5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-camera-fill" viewBox="0 0 16 16" id="camera-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.5 8.5a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0z"/><path d="M2 4a2 2 0 00-2 2v6a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1.172a2 2 0 01-1.414-.586l-.828-.828A2 2 0 009.172 2H6.828a2 2 0 00-1.414.586l-.828.828A2 2 0 013.172 4H2zm.5 2a.5.5 0 110-1 .5.5 0 010 1zm9 2.5a3.5 3.5 0 11-7 0 3.5 3.5 0 017 0z"/></symbol><symbol fill="currentColor" class="bi bi-camera-reels" viewBox="0 0 16 16" id="camera-reels" xmlns="http://www.w3.org/2000/svg"><path d="M6 3a3 3 0 11-6 0 3 3 0 016 0zM1 3a2 2 0 104 0 2 2 0 00-4 0z"/><path d="M9 6h.5a2 2 0 011.983 1.738l3.11-1.382A1 1 0 0116 7.269v7.462a1 1 0 01-1.406.913l-3.111-1.382A2 2 0 019.5 16H2a2 2 0 01-2-2V8a2 2 0 012-2h7zm6 8.73V7.27l-3.5 1.555v4.35l3.5 1.556zM1 8v6a1 1 0 001 1h7.5a1 1 0 001-1V8a1 1 0 00-1-1H2a1 1 0 00-1 1z"/><path d="M9 6a3 3 0 100-6 3 3 0 000 6zM7 3a2 2 0 114 0 2 2 0 01-4 0z"/></symbol><symbol fill="currentColor" class="bi bi-camera-reels-fill" viewBox="0 0 16 16" id="camera-reels-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 3a3 3 0 11-6 0 3 3 0 016 0z"/><path d="M9 6a3 3 0 110-6 3 3 0 010 6z"/><path d="M9 6h.5a2 2 0 011.983 1.738l3.11-1.382A1 1 0 0116 7.269v7.462a1 1 0 01-1.406.913l-3.111-1.382A2 2 0 019.5 16H2a2 2 0 01-2-2V8a2 2 0 012-2h7z"/></symbol><symbol fill="currentColor" class="bi bi-camera-video" viewBox="0 0 16 16" id="camera-video" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M0 5a2 2 0 012-2h7.5a2 2 0 011.983 1.738l3.11-1.382A1 1 0 0116 4.269v7.462a1 1 0 01-1.406.913l-3.111-1.382A2 2 0 019.5 13H2a2 2 0 01-2-2V5zm11.5 5.175l3.5 1.556V4.269l-3.5 1.556v4.35zM2 4a1 1 0 00-1 1v6a1 1 0 001 1h7.5a1 1 0 001-1V5a1 1 0 00-1-1H2z"/></symbol><symbol fill="currentColor" class="bi bi-camera-video-fill" viewBox="0 0 16 16" id="camera-video-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M0 5a2 2 0 012-2h7.5a2 2 0 011.983 1.738l3.11-1.382A1 1 0 0116 4.269v7.462a1 1 0 01-1.406.913l-3.111-1.382A2 2 0 019.5 13H2a2 2 0 01-2-2V5z"/></symbol><symbol fill="currentColor" class="bi bi-camera-video-off" viewBox="0 0 16 16" id="camera-video-off" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.961 12.365a1.99 1.99 0 00.522-1.103l3.11 1.382A1 1 0 0016 11.731V4.269a1 1 0 00-1.406-.913l-3.111 1.382A2 2 0 009.5 3H4.272l.714 1H9.5a1 1 0 011 1v6a1 1 0 01-.144.518l.605.847zM1.428 4.18A.999.999 0 001 5v6a1 1 0 001 1h5.014l.714 1H2a2 2 0 01-2-2V5c0-.675.334-1.272.847-1.634l.58.814zM15 11.73l-3.5-1.555v-4.35L15 4.269v7.462zm-4.407 3.56l-10-14 .814-.58 10 14-.814.58z"/></symbol><symbol fill="currentColor" class="bi bi-camera-video-off-fill" viewBox="0 0 16 16" id="camera-video-off-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.961 12.365a1.99 1.99 0 00.522-1.103l3.11 1.382A1 1 0 0016 11.731V4.269a1 1 0 00-1.406-.913l-3.111 1.382A2 2 0 009.5 3H4.272l6.69 9.365zm-10.114-9A2.001 2.001 0 000 5v6a2 2 0 002 2h5.728L.847 3.366zm9.746 11.925l-10-14 .814-.58 10 14-.814.58z"/></symbol><symbol fill="currentColor" class="bi bi-camera2" viewBox="0 0 16 16" id="camera2" xmlns="http://www.w3.org/2000/svg"><path d="M5 8c0-1.657 2.343-3 4-3V4a4 4 0 00-4 4z"/><path d="M12.318 3h2.015C15.253 3 16 3.746 16 4.667v6.666c0 .92-.746 1.667-1.667 1.667h-2.015A5.97 5.97 0 019 14a5.972 5.972 0 01-3.318-1H1.667C.747 13 0 12.254 0 11.333V4.667C0 3.747.746 3 1.667 3H2a1 1 0 011-1h1a1 1 0 011 1h.682A5.97 5.97 0 019 2c1.227 0 2.367.368 3.318 1zM2 4.5a.5.5 0 10-1 0 .5.5 0 001 0zM14 8A5 5 0 104 8a5 5 0 0010 0z"/></symbol><symbol fill="currentColor" class="bi bi-capslock" viewBox="0 0 16 16" id="capslock" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.27 1.047a1 1 0 011.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v1a1 1 0 01-1 1h-5a1 1 0 01-1-1v-1H1.654C.78 9.5.326 8.455.924 7.816L7.27 1.047zM14.346 8.5L8 1.731 1.654 8.5H4.5a1 1 0 011 1v1h5v-1a1 1 0 011-1h2.846zm-9.846 5a1 1 0 011-1h5a1 1 0 011 1v1a1 1 0 01-1 1h-5a1 1 0 01-1-1v-1zm6 0h-5v1h5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-capslock-fill" viewBox="0 0 16 16" id="capslock-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.27 1.047a1 1 0 011.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v1a1 1 0 01-1 1h-5a1 1 0 01-1-1v-1H1.654C.78 9.5.326 8.455.924 7.816L7.27 1.047zM4.5 13.5a1 1 0 011-1h5a1 1 0 011 1v1a1 1 0 01-1 1h-5a1 1 0 01-1-1v-1z"/></symbol><symbol fill="currentColor" class="bi bi-card-checklist" viewBox="0 0 16 16" id="card-checklist" xmlns="http://www.w3.org/2000/svg"><path d="M14.5 3a.5.5 0 01.5.5v9a.5.5 0 01-.5.5h-13a.5.5 0 01-.5-.5v-9a.5.5 0 01.5-.5h13zm-13-1A1.5 1.5 0 000 3.5v9A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 2h-13z"/><path d="M7 5.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm-1.496-.854a.5.5 0 010 .708l-1.5 1.5a.5.5 0 01-.708 0l-.5-.5a.5.5 0 11.708-.708l.146.147 1.146-1.147a.5.5 0 01.708 0zM7 9.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm-1.496-.854a.5.5 0 010 .708l-1.5 1.5a.5.5 0 01-.708 0l-.5-.5a.5.5 0 01.708-.708l.146.147 1.146-1.147a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-card-heading" viewBox="0 0 16 16" id="card-heading" xmlns="http://www.w3.org/2000/svg"><path d="M14.5 3a.5.5 0 01.5.5v9a.5.5 0 01-.5.5h-13a.5.5 0 01-.5-.5v-9a.5.5 0 01.5-.5h13zm-13-1A1.5 1.5 0 000 3.5v9A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 2h-13z"/><path d="M3 8.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zm0-5a.5.5 0 01.5-.5h9a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-9a.5.5 0 01-.5-.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-card-image" viewBox="0 0 16 16" id="card-image" xmlns="http://www.w3.org/2000/svg"><path d="M6.002 5.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/><path d="M1.5 2A1.5 1.5 0 000 3.5v9A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 2h-13zm13 1a.5.5 0 01.5.5v6l-3.775-1.947a.5.5 0 00-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 00-.63.062L1.002 12v.54A.505.505 0 011 12.5v-9a.5.5 0 01.5-.5h13z"/></symbol><symbol fill="currentColor" class="bi bi-card-list" viewBox="0 0 16 16" id="card-list" xmlns="http://www.w3.org/2000/svg"><path d="M14.5 3a.5.5 0 01.5.5v9a.5.5 0 01-.5.5h-13a.5.5 0 01-.5-.5v-9a.5.5 0 01.5-.5h13zm-13-1A1.5 1.5 0 000 3.5v9A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 2h-13z"/><path d="M5 8a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7A.5.5 0 015 8zm0-2.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0 5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-1-5a.5.5 0 11-1 0 .5.5 0 011 0zM4 8a.5.5 0 11-1 0 .5.5 0 011 0zm0 2.5a.5.5 0 11-1 0 .5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-card-text" viewBox="0 0 16 16" id="card-text" xmlns="http://www.w3.org/2000/svg"><path d="M14.5 3a.5.5 0 01.5.5v9a.5.5 0 01-.5.5h-13a.5.5 0 01-.5-.5v-9a.5.5 0 01.5-.5h13zm-13-1A1.5 1.5 0 000 3.5v9A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 2h-13z"/><path d="M3 5.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM3 8a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9A.5.5 0 013 8zm0 2.5a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-caret-down" viewBox="0 0 16 16" id="caret-down" xmlns="http://www.w3.org/2000/svg"><path d="M3.204 5h9.592L8 10.481 3.204 5zm-.753.659l4.796 5.48a1 1 0 001.506 0l4.796-5.48c.566-.647.106-1.659-.753-1.659H3.204a1 1 0 00-.753 1.659z"/></symbol><symbol fill="currentColor" class="bi bi-caret-down-fill" viewBox="0 0 16 16" id="caret-down-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.247 11.14L2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 01.753 1.659l-4.796 5.48a1 1 0 01-1.506 0z"/></symbol><symbol fill="currentColor" class="bi bi-caret-down-square" viewBox="0 0 16 16" id="caret-down-square" xmlns="http://www.w3.org/2000/svg"><path d="M3.626 6.832A.5.5 0 014 6h8a.5.5 0 01.374.832l-4 4.5a.5.5 0 01-.748 0l-4-4.5z"/><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2z"/></symbol><symbol fill="currentColor" class="bi bi-caret-down-square-fill" viewBox="0 0 16 16" id="caret-down-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm4 4a.5.5 0 00-.374.832l4 4.5a.5.5 0 00.748 0l4-4.5A.5.5 0 0012 6H4z"/></symbol><symbol fill="currentColor" class="bi bi-caret-left" viewBox="0 0 16 16" id="caret-left" xmlns="http://www.w3.org/2000/svg"><path d="M10 12.796V3.204L4.519 8 10 12.796zm-.659.753l-5.48-4.796a1 1 0 010-1.506l5.48-4.796A1 1 0 0111 3.204v9.592a1 1 0 01-1.659.753z"/></symbol><symbol fill="currentColor" class="bi bi-caret-left-fill" viewBox="0 0 16 16" id="caret-left-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.86 8.753l5.482 4.796c.646.566 1.658.106 1.658-.753V3.204a1 1 0 00-1.659-.753l-5.48 4.796a1 1 0 000 1.506z"/></symbol><symbol fill="currentColor" class="bi bi-caret-left-square" viewBox="0 0 16 16" id="caret-left-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M10.205 12.456A.5.5 0 0010.5 12V4a.5.5 0 00-.832-.374l-4.5 4a.5.5 0 000 .748l4.5 4a.5.5 0 00.537.082z"/></symbol><symbol fill="currentColor" class="bi bi-caret-left-square-fill" viewBox="0 0 16 16" id="caret-left-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm10.5 10V4a.5.5 0 00-.832-.374l-4.5 4a.5.5 0 000 .748l4.5 4A.5.5 0 0010.5 12z"/></symbol><symbol fill="currentColor" class="bi bi-caret-right" viewBox="0 0 16 16" id="caret-right" xmlns="http://www.w3.org/2000/svg"><path d="M6 12.796V3.204L11.481 8 6 12.796zm.659.753l5.48-4.796a1 1 0 000-1.506L6.66 2.451C6.011 1.885 5 2.345 5 3.204v9.592a1 1 0 001.659.753z"/></symbol><symbol fill="currentColor" class="bi bi-caret-right-fill" viewBox="0 0 16 16" id="caret-right-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12.14 8.753l-5.482 4.796c-.646.566-1.658.106-1.658-.753V3.204a1 1 0 011.659-.753l5.48 4.796a1 1 0 010 1.506z"/></symbol><symbol fill="currentColor" class="bi bi-caret-right-square" viewBox="0 0 16 16" id="caret-right-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M5.795 12.456A.5.5 0 015.5 12V4a.5.5 0 01.832-.374l4.5 4a.5.5 0 010 .748l-4.5 4a.5.5 0 01-.537.082z"/></symbol><symbol fill="currentColor" class="bi bi-caret-right-square-fill" viewBox="0 0 16 16" id="caret-right-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm5.5 10a.5.5 0 00.832.374l4.5-4a.5.5 0 000-.748l-4.5-4A.5.5 0 005.5 4v8z"/></symbol><symbol fill="currentColor" class="bi bi-caret-up" viewBox="0 0 16 16" id="caret-up" xmlns="http://www.w3.org/2000/svg"><path d="M3.204 11h9.592L8 5.519 3.204 11zm-.753-.659l4.796-5.48a1 1 0 011.506 0l4.796 5.48c.566.647.106 1.659-.753 1.659H3.204a1 1 0 01-.753-1.659z"/></symbol><symbol fill="currentColor" class="bi bi-caret-up-fill" viewBox="0 0 16 16" id="caret-up-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.247 4.86l-4.796 5.481c-.566.647-.106 1.659.753 1.659h9.592a1 1 0 00.753-1.659l-4.796-5.48a1 1 0 00-1.506 0z"/></symbol><symbol fill="currentColor" class="bi bi-caret-up-square" viewBox="0 0 16 16" id="caret-up-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M3.544 10.705A.5.5 0 004 11h8a.5.5 0 00.374-.832l-4-4.5a.5.5 0 00-.748 0l-4 4.5a.5.5 0 00-.082.537z"/></symbol><symbol fill="currentColor" class="bi bi-caret-up-square-fill" viewBox="0 0 16 16" id="caret-up-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm4 9h8a.5.5 0 00.374-.832l-4-4.5a.5.5 0 00-.748 0l-4 4.5A.5.5 0 004 11z"/></symbol><symbol fill="currentColor" class="bi bi-cart" viewBox="0 0 16 16" id="cart" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A.5.5 0 01.5 1H2a.5.5 0 01.485.379L2.89 3H14.5a.5.5 0 01.491.592l-1.5 8A.5.5 0 0113 12H4a.5.5 0 01-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 01-.5-.5zM3.102 4l1.313 7h8.17l1.313-7H3.102zM5 12a2 2 0 100 4 2 2 0 000-4zm7 0a2 2 0 100 4 2 2 0 000-4zm-7 1a1 1 0 110 2 1 1 0 010-2zm7 0a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-cart-check" viewBox="0 0 16 16" id="cart-check" xmlns="http://www.w3.org/2000/svg"><path d="M11.354 6.354a.5.5 0 00-.708-.708L8 8.293 6.854 7.146a.5.5 0 10-.708.708l1.5 1.5a.5.5 0 00.708 0l3-3z"/><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zm3.915 10L3.102 4h10.796l-1.313 7h-8.17zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-cart-check-fill" viewBox="0 0 16 16" id="cart-check-fill" xmlns="http://www.w3.org/2000/svg"><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0zm-1.646-7.646l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L8 8.293l2.646-2.647a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-cart-dash" viewBox="0 0 16 16" id="cart-dash" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 7a.5.5 0 000 1h4a.5.5 0 000-1h-4z"/><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zm3.915 10L3.102 4h10.796l-1.313 7h-8.17zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-cart-dash-fill" viewBox="0 0 16 16" id="cart-dash-fill" xmlns="http://www.w3.org/2000/svg"><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0zM6.5 7h4a.5.5 0 010 1h-4a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-cart-fill" viewBox="0 0 16 16" id="cart-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A.5.5 0 01.5 1H2a.5.5 0 01.485.379L2.89 3H14.5a.5.5 0 01.491.592l-1.5 8A.5.5 0 0113 12H4a.5.5 0 01-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 01-.5-.5zM5 12a2 2 0 100 4 2 2 0 000-4zm7 0a2 2 0 100 4 2 2 0 000-4zm-7 1a1 1 0 110 2 1 1 0 010-2zm7 0a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-cart-plus" viewBox="0 0 16 16" id="cart-plus" xmlns="http://www.w3.org/2000/svg"><path d="M9 5.5a.5.5 0 00-1 0V7H6.5a.5.5 0 000 1H8v1.5a.5.5 0 001 0V8h1.5a.5.5 0 000-1H9V5.5z"/><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zm3.915 10L3.102 4h10.796l-1.313 7h-8.17zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-cart-plus-fill" viewBox="0 0 16 16" id="cart-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0zM9 5.5V7h1.5a.5.5 0 010 1H9v1.5a.5.5 0 01-1 0V8H6.5a.5.5 0 010-1H8V5.5a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-cart-x" viewBox="0 0 16 16" id="cart-x" xmlns="http://www.w3.org/2000/svg"><path d="M7.354 5.646a.5.5 0 10-.708.708L7.793 7.5 6.646 8.646a.5.5 0 10.708.708L8.5 8.207l1.146 1.147a.5.5 0 00.708-.708L9.207 7.5l1.147-1.146a.5.5 0 00-.708-.708L8.5 6.793 7.354 5.646z"/><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zm3.915 10L3.102 4h10.796l-1.313 7h-8.17zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-cart-x-fill" viewBox="0 0 16 16" id="cart-x-fill" xmlns="http://www.w3.org/2000/svg"><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0zM7.354 5.646L8.5 6.793l1.146-1.147a.5.5 0 01.708.708L9.207 7.5l1.147 1.146a.5.5 0 01-.708.708L8.5 8.207 7.354 9.354a.5.5 0 11-.708-.708L7.793 7.5 6.646 6.354a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-cart2" viewBox="0 0 16 16" id="cart2" xmlns="http://www.w3.org/2000/svg"><path d="M0 2.5A.5.5 0 01.5 2H2a.5.5 0 01.485.379L2.89 4H14.5a.5.5 0 01.485.621l-1.5 6A.5.5 0 0113 11H4a.5.5 0 01-.485-.379L1.61 3H.5a.5.5 0 01-.5-.5zM3.14 5l1.25 5h8.22l1.25-5H3.14zM5 13a1 1 0 100 2 1 1 0 000-2zm-2 1a2 2 0 114 0 2 2 0 01-4 0zm9-1a1 1 0 100 2 1 1 0 000-2zm-2 1a2 2 0 114 0 2 2 0 01-4 0z"/></symbol><symbol fill="currentColor" class="bi bi-cart3" viewBox="0 0 16 16" id="cart3" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A.5.5 0 01.5 1H2a.5.5 0 01.485.379L2.89 3H14.5a.5.5 0 01.49.598l-1 5a.5.5 0 01-.465.401l-9.397.472L4.415 11H13a.5.5 0 010 1H4a.5.5 0 01-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 01-.5-.5zM3.102 4l.84 4.479 9.144-.459L13.89 4H3.102zM5 12a2 2 0 100 4 2 2 0 000-4zm7 0a2 2 0 100 4 2 2 0 000-4zm-7 1a1 1 0 110 2 1 1 0 010-2zm7 0a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-cart4" viewBox="0 0 16 16" id="cart4" xmlns="http://www.w3.org/2000/svg"><path d="M0 2.5A.5.5 0 01.5 2H2a.5.5 0 01.485.379L2.89 4H14.5a.5.5 0 01.485.621l-1.5 6A.5.5 0 0113 11H4a.5.5 0 01-.485-.379L1.61 3H.5a.5.5 0 01-.5-.5zM3.14 5l.5 2H5V5H3.14zM6 5v2h2V5H6zm3 0v2h2V5H9zm3 0v2h1.36l.5-2H12zm1.11 3H12v2h.61l.5-2zM11 8H9v2h2V8zM8 8H6v2h2V8zM5 8H3.89l.5 2H5V8zm0 5a1 1 0 100 2 1 1 0 000-2zm-2 1a2 2 0 114 0 2 2 0 01-4 0zm9-1a1 1 0 100 2 1 1 0 000-2zm-2 1a2 2 0 114 0 2 2 0 01-4 0z"/></symbol><symbol fill="currentColor" class="bi bi-cash" viewBox="0 0 16 16" id="cash" xmlns="http://www.w3.org/2000/svg"><path d="M8 10a2 2 0 100-4 2 2 0 000 4z"/><path d="M0 4a1 1 0 011-1h14a1 1 0 011 1v8a1 1 0 01-1 1H1a1 1 0 01-1-1V4zm3 0a2 2 0 01-2 2v4a2 2 0 012 2h10a2 2 0 012-2V6a2 2 0 01-2-2H3z"/></symbol><symbol fill="currentColor" class="bi bi-cash-coin" viewBox="0 0 16 16" id="cash-coin" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11 15a4 4 0 100-8 4 4 0 000 8zm5-4a5 5 0 11-10 0 5 5 0 0110 0z"/><path d="M9.438 11.944c.047.596.518 1.06 1.363 1.116v.44h.375v-.443c.875-.061 1.386-.529 1.386-1.207 0-.618-.39-.936-1.09-1.1l-.296-.07v-1.2c.376.043.614.248.671.532h.658c-.047-.575-.54-1.024-1.329-1.073V8.5h-.375v.45c-.747.073-1.255.522-1.255 1.158 0 .562.378.92 1.007 1.066l.248.061v1.272c-.384-.058-.639-.27-.696-.563h-.668zm1.36-1.354c-.369-.085-.569-.26-.569-.522 0-.294.216-.514.572-.578v1.1h-.003zm.432.746c.449.104.655.272.655.569 0 .339-.257.571-.709.614v-1.195l.054.012z"/><path d="M1 0a1 1 0 00-1 1v8a1 1 0 001 1h4.083c.058-.344.145-.678.258-1H3a2 2 0 00-2-2V3a2 2 0 002-2h10a2 2 0 002 2v3.528c.38.34.717.728 1 1.154V1a1 1 0 00-1-1H1z"/><path d="M9.998 5.083L10 5a2 2 0 10-3.132 1.65 5.982 5.982 0 013.13-1.567z"/></symbol><symbol fill="currentColor" class="bi bi-cash-stack" viewBox="0 0 16 16" id="cash-stack" xmlns="http://www.w3.org/2000/svg"><path d="M1 3a1 1 0 011-1h12a1 1 0 011 1H1zm7 8a2 2 0 100-4 2 2 0 000 4z"/><path d="M0 5a1 1 0 011-1h14a1 1 0 011 1v8a1 1 0 01-1 1H1a1 1 0 01-1-1V5zm3 0a2 2 0 01-2 2v4a2 2 0 012 2h10a2 2 0 012-2V7a2 2 0 01-2-2H3z"/></symbol><symbol fill="currentColor" class="bi bi-cast" viewBox="0 0 16 16" id="cast" xmlns="http://www.w3.org/2000/svg"><path d="M7.646 9.354l-3.792 3.792a.5.5 0 00.353.854h7.586a.5.5 0 00.354-.854L8.354 9.354a.5.5 0 00-.708 0z"/><path d="M11.414 11H14.5a.5.5 0 00.5-.5v-7a.5.5 0 00-.5-.5h-13a.5.5 0 00-.5.5v7a.5.5 0 00.5.5h3.086l-1 1H1.5A1.5 1.5 0 010 10.5v-7A1.5 1.5 0 011.5 2h13A1.5 1.5 0 0116 3.5v7a1.5 1.5 0 01-1.5 1.5h-2.086l-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-chat" viewBox="0 0 16 16" id="chat" xmlns="http://www.w3.org/2000/svg"><path d="M2.678 11.894a1 1 0 01.287.801 10.97 10.97 0 01-.398 2c1.395-.323 2.247-.697 2.634-.893a1 1 0 01.71-.074A8.06 8.06 0 008 14c3.996 0 7-2.807 7-6 0-3.192-3.004-6-7-6S1 4.808 1 8c0 1.468.617 2.83 1.678 3.894zm-.493 3.905a21.682 21.682 0 01-.713.129c-.2.032-.352-.176-.273-.362a9.68 9.68 0 00.244-.637l.003-.01c.248-.72.45-1.548.524-2.319C.743 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7-3.582 7-8 7a9.06 9.06 0 01-2.347-.306c-.52.263-1.639.742-3.468 1.105z"/></symbol><symbol fill="currentColor" class="bi bi-chat-dots" viewBox="0 0 16 16" id="chat-dots" xmlns="http://www.w3.org/2000/svg"><path d="M5 8a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0zm3 1a1 1 0 100-2 1 1 0 000 2z"/><path d="M2.165 15.803l.02-.004c1.83-.363 2.948-.842 3.468-1.105A9.06 9.06 0 008 15c4.418 0 8-3.134 8-7s-3.582-7-8-7-8 3.134-8 7c0 1.76.743 3.37 1.97 4.6a10.437 10.437 0 01-.524 2.318l-.003.011a10.722 10.722 0 01-.244.637c-.079.186.074.394.273.362a21.673 21.673 0 00.693-.125zm.8-3.108a1 1 0 00-.287-.801C1.618 10.83 1 9.468 1 8c0-3.192 3.004-6 7-6s7 2.808 7 6c0 3.193-3.004 6-7 6a8.06 8.06 0 01-2.088-.272 1 1 0 00-.711.074c-.387.196-1.24.57-2.634.893a10.97 10.97 0 00.398-2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-dots-fill" viewBox="0 0 16 16" id="chat-dots-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8c0 3.866-3.582 7-8 7a9.06 9.06 0 01-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7zM5 8a1 1 0 10-2 0 1 1 0 002 0zm4 0a1 1 0 10-2 0 1 1 0 002 0zm3 1a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-fill" viewBox="0 0 16 16" id="chat-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 15c4.418 0 8-3.134 8-7s-3.582-7-8-7-8 3.134-8 7c0 1.76.743 3.37 1.97 4.6-.097 1.016-.417 2.13-.771 2.966-.079.186.074.394.273.362 2.256-.37 3.597-.938 4.18-1.234A9.06 9.06 0 008 15z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left" viewBox="0 0 16 16" id="chat-left" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1H4.414A2 2 0 003 11.586l-2 2V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12.793a.5.5 0 00.854.353l2.853-2.853A1 1 0 014.414 12H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left-dots" viewBox="0 0 16 16" id="chat-left-dots" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1H4.414A2 2 0 003 11.586l-2 2V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12.793a.5.5 0 00.854.353l2.853-2.853A1 1 0 014.414 12H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M5 6a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left-dots-fill" viewBox="0 0 16 16" id="chat-left-dots-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H4.414a1 1 0 00-.707.293L.854 15.146A.5.5 0 010 14.793V2zm5 4a1 1 0 10-2 0 1 1 0 002 0zm4 0a1 1 0 10-2 0 1 1 0 002 0zm3 1a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left-fill" viewBox="0 0 16 16" id="chat-left-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12.793a.5.5 0 00.854.353l2.853-2.853A1 1 0 014.414 12H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left-quote" viewBox="0 0 16 16" id="chat-left-quote" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1H4.414A2 2 0 003 11.586l-2 2V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12.793a.5.5 0 00.854.353l2.853-2.853A1 1 0 014.414 12H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M7.066 4.76A1.665 1.665 0 004 5.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 10.6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 008 5.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 10.6.58c1.486-1.54 1.293-3.214.682-4.112z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left-quote-fill" viewBox="0 0 16 16" id="chat-left-quote-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H4.414a1 1 0 00-.707.293L.854 15.146A.5.5 0 010 14.793V2zm7.194 2.766a1.688 1.688 0 00-.227-.272 1.467 1.467 0 00-.469-.324l-.008-.004A1.785 1.785 0 005.734 4C4.776 4 4 4.746 4 5.667c0 .92.776 1.666 1.734 1.666.343 0 .662-.095.931-.26-.137.389-.39.804-.81 1.22a.405.405 0 00.011.59c.173.16.447.155.614-.01 1.334-1.329 1.37-2.758.941-3.706a2.461 2.461 0 00-.227-.4zM11 7.073c-.136.389-.39.804-.81 1.22a.405.405 0 00.012.59c.172.16.446.155.613-.01 1.334-1.329 1.37-2.758.942-3.706a2.466 2.466 0 00-.228-.4 1.686 1.686 0 00-.227-.273 1.466 1.466 0 00-.469-.324l-.008-.004A1.785 1.785 0 0010.07 4c-.957 0-1.734.746-1.734 1.667 0 .92.777 1.666 1.734 1.666.343 0 .662-.095.931-.26z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left-text" viewBox="0 0 16 16" id="chat-left-text" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1H4.414A2 2 0 003 11.586l-2 2V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12.793a.5.5 0 00.854.353l2.853-2.853A1 1 0 014.414 12H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M3 3.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM3 6a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9A.5.5 0 013 6zm0 2.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left-text-fill" viewBox="0 0 16 16" id="chat-left-text-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H4.414a1 1 0 00-.707.293L.854 15.146A.5.5 0 010 14.793V2zm3.5 1a.5.5 0 000 1h9a.5.5 0 000-1h-9zm0 2.5a.5.5 0 000 1h9a.5.5 0 000-1h-9zm0 2.5a.5.5 0 000 1h5a.5.5 0 000-1h-5z"/></symbol><symbol fill="currentColor" class="bi bi-chat-quote" viewBox="0 0 16 16" id="chat-quote" xmlns="http://www.w3.org/2000/svg"><path d="M2.678 11.894a1 1 0 01.287.801 10.97 10.97 0 01-.398 2c1.395-.323 2.247-.697 2.634-.893a1 1 0 01.71-.074A8.06 8.06 0 008 14c3.996 0 7-2.807 7-6 0-3.192-3.004-6-7-6S1 4.808 1 8c0 1.468.617 2.83 1.678 3.894zm-.493 3.905a21.682 21.682 0 01-.713.129c-.2.032-.352-.176-.273-.362a9.68 9.68 0 00.244-.637l.003-.01c.248-.72.45-1.548.524-2.319C.743 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7-3.582 7-8 7a9.06 9.06 0 01-2.347-.306c-.52.263-1.639.742-3.468 1.105z"/><path d="M7.066 6.76A1.665 1.665 0 004 7.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 00.6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 008 7.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 00.6.58c1.486-1.54 1.293-3.214.682-4.112z"/></symbol><symbol fill="currentColor" class="bi bi-chat-quote-fill" viewBox="0 0 16 16" id="chat-quote-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8c0 3.866-3.582 7-8 7a9.06 9.06 0 01-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7zM7.194 6.766a1.688 1.688 0 00-.227-.272 1.467 1.467 0 00-.469-.324l-.008-.004A1.785 1.785 0 005.734 6C4.776 6 4 6.746 4 7.667c0 .92.776 1.666 1.734 1.666.343 0 .662-.095.931-.26-.137.389-.39.804-.81 1.22a.405.405 0 00.011.59c.173.16.447.155.614-.01 1.334-1.329 1.37-2.758.941-3.706a2.461 2.461 0 00-.227-.4zM11 9.073c-.136.389-.39.804-.81 1.22a.405.405 0 00.012.59c.172.16.446.155.613-.01 1.334-1.329 1.37-2.758.942-3.706a2.466 2.466 0 00-.228-.4 1.686 1.686 0 00-.227-.273 1.466 1.466 0 00-.469-.324l-.008-.004A1.785 1.785 0 0010.07 6c-.957 0-1.734.746-1.734 1.667 0 .92.777 1.666 1.734 1.666.343 0 .662-.095.931-.26z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right" viewBox="0 0 16 16" id="chat-right" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 00-1 1v8a1 1 0 001 1h9.586a2 2 0 011.414.586l2 2V2a1 1 0 00-1-1H2zm12-1a2 2 0 012 2v12.793a.5.5 0 01-.854.353l-2.853-2.853a1 1 0 00-.707-.293H2a2 2 0 01-2-2V2a2 2 0 012-2h12z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right-dots" viewBox="0 0 16 16" id="chat-right-dots" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 00-1 1v8a1 1 0 001 1h9.586a2 2 0 011.414.586l2 2V2a1 1 0 00-1-1H2zm12-1a2 2 0 012 2v12.793a.5.5 0 01-.854.353l-2.853-2.853a1 1 0 00-.707-.293H2a2 2 0 01-2-2V2a2 2 0 012-2h12z"/><path d="M5 6a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right-dots-fill" viewBox="0 0 16 16" id="chat-right-dots-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 2a2 2 0 00-2-2H2a2 2 0 00-2 2v8a2 2 0 002 2h9.586a1 1 0 01.707.293l2.853 2.853a.5.5 0 00.854-.353V2zM5 6a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0zm3 1a1 1 0 110-2 1 1 0 010 2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right-fill" viewBox="0 0 16 16" id="chat-right-fill" xmlns="http://www.w3.org/2000/svg"><path d="M14 0a2 2 0 012 2v12.793a.5.5 0 01-.854.353l-2.853-2.853a1 1 0 00-.707-.293H2a2 2 0 01-2-2V2a2 2 0 012-2h12z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right-quote" viewBox="0 0 16 16" id="chat-right-quote" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 00-1 1v8a1 1 0 001 1h9.586a2 2 0 011.414.586l2 2V2a1 1 0 00-1-1H2zm12-1a2 2 0 012 2v12.793a.5.5 0 01-.854.353l-2.853-2.853a1 1 0 00-.707-.293H2a2 2 0 01-2-2V2a2 2 0 012-2h12z"/><path d="M7.066 4.76A1.665 1.665 0 004 5.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 10.6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 008 5.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 10.6.58c1.486-1.54 1.293-3.214.682-4.112z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right-quote-fill" viewBox="0 0 16 16" id="chat-right-quote-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 2a2 2 0 00-2-2H2a2 2 0 00-2 2v8a2 2 0 002 2h9.586a1 1 0 01.707.293l2.853 2.853a.5.5 0 00.854-.353V2zM7.194 4.766c.087.124.163.26.227.401.428.948.393 2.377-.942 3.706a.446.446 0 01-.612.01.405.405 0 01-.011-.59c.419-.416.672-.831.809-1.22-.269.165-.588.26-.93.26C4.775 7.333 4 6.587 4 5.667 4 4.747 4.776 4 5.734 4c.271 0 .528.06.756.166l.008.004c.169.07.327.182.469.324.085.083.161.174.227.272zM11 7.073c-.269.165-.588.26-.93.26-.958 0-1.735-.746-1.735-1.666 0-.92.777-1.667 1.734-1.667.271 0 .528.06.756.166l.008.004c.17.07.327.182.469.324.085.083.161.174.227.272.087.124.164.26.228.401.428.948.392 2.377-.942 3.706a.446.446 0 01-.613.01.405.405 0 01-.011-.59c.42-.416.672-.831.81-1.22z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right-text" viewBox="0 0 16 16" id="chat-right-text" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 00-1 1v8a1 1 0 001 1h9.586a2 2 0 011.414.586l2 2V2a1 1 0 00-1-1H2zm12-1a2 2 0 012 2v12.793a.5.5 0 01-.854.353l-2.853-2.853a1 1 0 00-.707-.293H2a2 2 0 01-2-2V2a2 2 0 012-2h12z"/><path d="M3 3.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM3 6a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9A.5.5 0 013 6zm0 2.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right-text-fill" viewBox="0 0 16 16" id="chat-right-text-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 2a2 2 0 00-2-2H2a2 2 0 00-2 2v8a2 2 0 002 2h9.586a1 1 0 01.707.293l2.853 2.853a.5.5 0 00.854-.353V2zM3.5 3h9a.5.5 0 010 1h-9a.5.5 0 010-1zm0 2.5h9a.5.5 0 010 1h-9a.5.5 0 010-1zm0 2.5h5a.5.5 0 010 1h-5a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square" viewBox="0 0 16 16" id="chat-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1h-2.5a2 2 0 00-1.6.8L8 14.333 6.1 11.8a2 2 0 00-1.6-.8H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v8a2 2 0 002 2h2.5a1 1 0 01.8.4l1.9 2.533a1 1 0 001.6 0l1.9-2.533a1 1 0 01.8-.4H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square-dots" viewBox="0 0 16 16" id="chat-square-dots" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1h-2.5a2 2 0 00-1.6.8L8 14.333 6.1 11.8a2 2 0 00-1.6-.8H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v8a2 2 0 002 2h2.5a1 1 0 01.8.4l1.9 2.533a1 1 0 001.6 0l1.9-2.533a1 1 0 01.8-.4H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M5 6a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square-dots-fill" viewBox="0 0 16 16" id="chat-square-dots-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2h-2.5a1 1 0 00-.8.4l-1.9 2.533a1 1 0 01-1.6 0L5.3 12.4a1 1 0 00-.8-.4H2a2 2 0 01-2-2V2zm5 4a1 1 0 10-2 0 1 1 0 002 0zm4 0a1 1 0 10-2 0 1 1 0 002 0zm3 1a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square-fill" viewBox="0 0 16 16" id="chat-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v8a2 2 0 002 2h2.5a1 1 0 01.8.4l1.9 2.533a1 1 0 001.6 0l1.9-2.533a1 1 0 01.8-.4H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square-quote" viewBox="0 0 16 16" id="chat-square-quote" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1h-2.5a2 2 0 00-1.6.8L8 14.333 6.1 11.8a2 2 0 00-1.6-.8H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v8a2 2 0 002 2h2.5a1 1 0 01.8.4l1.9 2.533a1 1 0 001.6 0l1.9-2.533a1 1 0 01.8-.4H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M7.066 4.76A1.665 1.665 0 004 5.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 10.6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 008 5.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 10.6.58c1.486-1.54 1.293-3.214.682-4.112z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square-quote-fill" viewBox="0 0 16 16" id="chat-square-quote-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2h-2.5a1 1 0 00-.8.4l-1.9 2.533a1 1 0 01-1.6 0L5.3 12.4a1 1 0 00-.8-.4H2a2 2 0 01-2-2V2zm7.194 2.766a1.688 1.688 0 00-.227-.272 1.467 1.467 0 00-.469-.324l-.008-.004A1.785 1.785 0 005.734 4C4.776 4 4 4.746 4 5.667c0 .92.776 1.666 1.734 1.666.343 0 .662-.095.931-.26-.137.389-.39.804-.81 1.22a.405.405 0 00.011.59c.173.16.447.155.614-.01 1.334-1.329 1.37-2.758.941-3.706a2.461 2.461 0 00-.227-.4zM11 7.073c-.136.389-.39.804-.81 1.22a.405.405 0 00.012.59c.172.16.446.155.613-.01 1.334-1.329 1.37-2.758.942-3.706a2.466 2.466 0 00-.228-.4 1.686 1.686 0 00-.227-.273 1.466 1.466 0 00-.469-.324l-.008-.004A1.785 1.785 0 0010.07 4c-.957 0-1.734.746-1.734 1.667 0 .92.777 1.666 1.734 1.666.343 0 .662-.095.931-.26z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square-text" viewBox="0 0 16 16" id="chat-square-text" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1h-2.5a2 2 0 00-1.6.8L8 14.333 6.1 11.8a2 2 0 00-1.6-.8H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v8a2 2 0 002 2h2.5a1 1 0 01.8.4l1.9 2.533a1 1 0 001.6 0l1.9-2.533a1 1 0 01.8-.4H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M3 3.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM3 6a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9A.5.5 0 013 6zm0 2.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square-text-fill" viewBox="0 0 16 16" id="chat-square-text-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2h-2.5a1 1 0 00-.8.4l-1.9 2.533a1 1 0 01-1.6 0L5.3 12.4a1 1 0 00-.8-.4H2a2 2 0 01-2-2V2zm3.5 1a.5.5 0 000 1h9a.5.5 0 000-1h-9zm0 2.5a.5.5 0 000 1h9a.5.5 0 000-1h-9zm0 2.5a.5.5 0 000 1h5a.5.5 0 000-1h-5z"/></symbol><symbol fill="currentColor" class="bi bi-chat-text" viewBox="0 0 16 16" id="chat-text" xmlns="http://www.w3.org/2000/svg"><path d="M2.678 11.894a1 1 0 01.287.801 10.97 10.97 0 01-.398 2c1.395-.323 2.247-.697 2.634-.893a1 1 0 01.71-.074A8.06 8.06 0 008 14c3.996 0 7-2.807 7-6 0-3.192-3.004-6-7-6S1 4.808 1 8c0 1.468.617 2.83 1.678 3.894zm-.493 3.905a21.682 21.682 0 01-.713.129c-.2.032-.352-.176-.273-.362a9.68 9.68 0 00.244-.637l.003-.01c.248-.72.45-1.548.524-2.319C.743 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7-3.582 7-8 7a9.06 9.06 0 01-2.347-.306c-.52.263-1.639.742-3.468 1.105z"/><path d="M4 5.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zM4 8a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7A.5.5 0 014 8zm0 2.5a.5.5 0 01.5-.5h4a.5.5 0 010 1h-4a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-chat-text-fill" viewBox="0 0 16 16" id="chat-text-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8c0 3.866-3.582 7-8 7a9.06 9.06 0 01-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7zM4.5 5a.5.5 0 000 1h7a.5.5 0 000-1h-7zm0 2.5a.5.5 0 000 1h7a.5.5 0 000-1h-7zm0 2.5a.5.5 0 000 1h4a.5.5 0 000-1h-4z"/></symbol><symbol fill="currentColor" class="bi bi-check" viewBox="0 0 16 16" id="check" xmlns="http://www.w3.org/2000/svg"><path d="M10.97 4.97a.75.75 0 011.07 1.05l-3.99 4.99a.75.75 0 01-1.08.02L4.324 8.384a.75.75 0 111.06-1.06l2.094 2.093 3.473-4.425a.267.267 0 01.02-.022z"/></symbol><symbol fill="currentColor" class="bi bi-check-all" viewBox="0 0 16 16" id="check-all" xmlns="http://www.w3.org/2000/svg"><path d="M8.97 4.97a.75.75 0 011.07 1.05l-3.99 4.99a.75.75 0 01-1.08.02L2.324 8.384a.75.75 0 111.06-1.06l2.094 2.093L8.95 4.992a.252.252 0 01.02-.022zm-.92 5.14l.92.92a.75.75 0 001.079-.02l3.992-4.99a.75.75 0 10-1.091-1.028L9.477 9.417l-.485-.486-.943 1.179z"/></symbol><symbol fill="currentColor" class="bi bi-check-circle" viewBox="0 0 16 16" id="check-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M10.97 4.97a.235.235 0 00-.02.022L7.477 9.417 5.384 7.323a.75.75 0 00-1.06 1.06L6.97 11.03a.75.75 0 001.079-.02l3.992-4.99a.75.75 0 00-1.071-1.05z"/></symbol><symbol fill="currentColor" class="bi bi-check-circle-fill" viewBox="0 0 16 16" id="check-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-3.97-3.03a.75.75 0 00-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 00-1.06 1.06L6.97 11.03a.75.75 0 001.079-.02l3.992-4.99a.75.75 0 00-.01-1.05z"/></symbol><symbol fill="currentColor" class="bi bi-check-lg" viewBox="0 0 16 16" id="check-lg" xmlns="http://www.w3.org/2000/svg"><path d="M13.485 1.431a1.473 1.473 0 012.104 2.062l-7.84 9.801a1.473 1.473 0 01-2.12.04L.431 8.138a1.473 1.473 0 012.084-2.083l4.111 4.112 6.82-8.69a.486.486 0 01.04-.045z"/></symbol><symbol fill="currentColor" class="bi bi-check-square" viewBox="0 0 16 16" id="check-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M10.97 4.97a.75.75 0 011.071 1.05l-3.992 4.99a.75.75 0 01-1.08.02L4.324 8.384a.75.75 0 111.06-1.06l2.094 2.093 3.473-4.425a.235.235 0 01.02-.022z"/></symbol><symbol fill="currentColor" class="bi bi-check-square-fill" viewBox="0 0 16 16" id="check-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm10.03 4.97a.75.75 0 01.011 1.05l-3.992 4.99a.75.75 0 01-1.08.02L4.324 8.384a.75.75 0 111.06-1.06l2.094 2.093 3.473-4.425a.75.75 0 011.08-.022z"/></symbol><symbol fill="currentColor" class="bi bi-check2" viewBox="0 0 16 16" id="check2" xmlns="http://www.w3.org/2000/svg"><path d="M13.854 3.646a.5.5 0 010 .708l-7 7a.5.5 0 01-.708 0l-3.5-3.5a.5.5 0 11.708-.708L6.5 10.293l6.646-6.647a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-check2-all" viewBox="0 0 16 16" id="check2-all" xmlns="http://www.w3.org/2000/svg"><path d="M12.354 4.354a.5.5 0 00-.708-.708L5 10.293 1.854 7.146a.5.5 0 10-.708.708l3.5 3.5a.5.5 0 00.708 0l7-7zm-4.208 7l-.896-.897.707-.707.543.543 6.646-6.647a.5.5 0 01.708.708l-7 7a.5.5 0 01-.708 0z"/><path d="M5.354 7.146l.896.897-.707.707-.897-.896a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-check2-circle" viewBox="0 0 16 16" id="check2-circle" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 8a5.5 5.5 0 018.25-4.764.5.5 0 00.5-.866A6.5 6.5 0 1014.5 8a.5.5 0 00-1 0 5.5 5.5 0 11-11 0z"/><path d="M15.354 3.354a.5.5 0 00-.708-.708L8 9.293 5.354 6.646a.5.5 0 10-.708.708l3 3a.5.5 0 00.708 0l7-7z"/></symbol><symbol fill="currentColor" class="bi bi-check2-square" viewBox="0 0 16 16" id="check2-square" xmlns="http://www.w3.org/2000/svg"><path d="M3 14.5A1.5 1.5 0 011.5 13V3A1.5 1.5 0 013 1.5h8a.5.5 0 010 1H3a.5.5 0 00-.5.5v10a.5.5 0 00.5.5h10a.5.5 0 00.5-.5V8a.5.5 0 011 0v5a1.5 1.5 0 01-1.5 1.5H3z"/><path d="M8.354 10.354l7-7a.5.5 0 00-.708-.708L8 9.293 5.354 6.646a.5.5 0 10-.708.708l3 3a.5.5 0 00.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-bar-contract" viewBox="0 0 16 16" id="chevron-bar-contract" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.646 14.854a.5.5 0 00.708 0L8 11.207l3.646 3.647a.5.5 0 00.708-.708l-4-4a.5.5 0 00-.708 0l-4 4a.5.5 0 000 .708zm0-13.708a.5.5 0 01.708 0L8 4.793l3.646-3.647a.5.5 0 01.708.708l-4 4a.5.5 0 01-.708 0l-4-4a.5.5 0 010-.708zM1 8a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13A.5.5 0 011 8z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-bar-down" viewBox="0 0 16 16" id="chevron-bar-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.646 4.146a.5.5 0 01.708 0L8 7.793l3.646-3.647a.5.5 0 01.708.708l-4 4a.5.5 0 01-.708 0l-4-4a.5.5 0 010-.708zM1 11.5a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-bar-expand" viewBox="0 0 16 16" id="chevron-bar-expand" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.646 10.146a.5.5 0 01.708 0L8 13.793l3.646-3.647a.5.5 0 01.708.708l-4 4a.5.5 0 01-.708 0l-4-4a.5.5 0 010-.708zm0-4.292a.5.5 0 00.708 0L8 2.207l3.646 3.647a.5.5 0 00.708-.708l-4-4a.5.5 0 00-.708 0l-4 4a.5.5 0 000 .708zM1 8a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13A.5.5 0 011 8z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-bar-left" viewBox="0 0 16 16" id="chevron-bar-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11.854 3.646a.5.5 0 010 .708L8.207 8l3.647 3.646a.5.5 0 01-.708.708l-4-4a.5.5 0 010-.708l4-4a.5.5 0 01.708 0zM4.5 1a.5.5 0 00-.5.5v13a.5.5 0 001 0v-13a.5.5 0 00-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-bar-right" viewBox="0 0 16 16" id="chevron-bar-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.146 3.646a.5.5 0 000 .708L7.793 8l-3.647 3.646a.5.5 0 00.708.708l4-4a.5.5 0 000-.708l-4-4a.5.5 0 00-.708 0zM11.5 1a.5.5 0 01.5.5v13a.5.5 0 01-1 0v-13a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-bar-up" viewBox="0 0 16 16" id="chevron-bar-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.646 11.854a.5.5 0 00.708 0L8 8.207l3.646 3.647a.5.5 0 00.708-.708l-4-4a.5.5 0 00-.708 0l-4 4a.5.5 0 000 .708zM2.4 5.2c0 .22.18.4.4.4h10.4a.4.4 0 000-.8H2.8a.4.4 0 00-.4.4z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-compact-down" viewBox="0 0 16 16" id="chevron-compact-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.553 6.776a.5.5 0 01.67-.223L8 9.44l5.776-2.888a.5.5 0 11.448.894l-6 3a.5.5 0 01-.448 0l-6-3a.5.5 0 01-.223-.67z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-compact-left" viewBox="0 0 16 16" id="chevron-compact-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M9.224 1.553a.5.5 0 01.223.67L6.56 8l2.888 5.776a.5.5 0 11-.894.448l-3-6a.5.5 0 010-.448l3-6a.5.5 0 01.67-.223z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-compact-right" viewBox="0 0 16 16" id="chevron-compact-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.776 1.553a.5.5 0 01.671.223l3 6a.5.5 0 010 .448l-3 6a.5.5 0 11-.894-.448L9.44 8 6.553 2.224a.5.5 0 01.223-.671z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-compact-up" viewBox="0 0 16 16" id="chevron-compact-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.776 5.553a.5.5 0 01.448 0l6 3a.5.5 0 11-.448.894L8 6.56 2.224 9.447a.5.5 0 11-.448-.894l6-3z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-contract" viewBox="0 0 16 16" id="chevron-contract" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.646 13.854a.5.5 0 00.708 0L8 10.207l3.646 3.647a.5.5 0 00.708-.708l-4-4a.5.5 0 00-.708 0l-4 4a.5.5 0 000 .708zm0-11.708a.5.5 0 01.708 0L8 5.793l3.646-3.647a.5.5 0 01.708.708l-4 4a.5.5 0 01-.708 0l-4-4a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-double-down" viewBox="0 0 16 16" id="chevron-double-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.646 6.646a.5.5 0 01.708 0L8 12.293l5.646-5.647a.5.5 0 01.708.708l-6 6a.5.5 0 01-.708 0l-6-6a.5.5 0 010-.708z"/><path fill-rule="evenodd" d="M1.646 2.646a.5.5 0 01.708 0L8 8.293l5.646-5.647a.5.5 0 01.708.708l-6 6a.5.5 0 01-.708 0l-6-6a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-double-left" viewBox="0 0 16 16" id="chevron-double-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8.354 1.646a.5.5 0 010 .708L2.707 8l5.647 5.646a.5.5 0 01-.708.708l-6-6a.5.5 0 010-.708l6-6a.5.5 0 01.708 0z"/><path fill-rule="evenodd" d="M12.354 1.646a.5.5 0 010 .708L6.707 8l5.647 5.646a.5.5 0 01-.708.708l-6-6a.5.5 0 010-.708l6-6a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-double-right" viewBox="0 0 16 16" id="chevron-double-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.646 1.646a.5.5 0 01.708 0l6 6a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708L9.293 8 3.646 2.354a.5.5 0 010-.708z"/><path fill-rule="evenodd" d="M7.646 1.646a.5.5 0 01.708 0l6 6a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708L13.293 8 7.646 2.354a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-double-up" viewBox="0 0 16 16" id="chevron-double-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.646 2.646a.5.5 0 01.708 0l6 6a.5.5 0 01-.708.708L8 3.707 2.354 9.354a.5.5 0 11-.708-.708l6-6z"/><path fill-rule="evenodd" d="M7.646 6.646a.5.5 0 01.708 0l6 6a.5.5 0 01-.708.708L8 7.707l-5.646 5.647a.5.5 0 01-.708-.708l6-6z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-down" viewBox="0 0 16 16" id="chevron-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 01.708 0L8 10.293l5.646-5.647a.5.5 0 01.708.708l-6 6a.5.5 0 01-.708 0l-6-6a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-expand" viewBox="0 0 16 16" id="chevron-expand" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.646 9.146a.5.5 0 01.708 0L8 12.793l3.646-3.647a.5.5 0 01.708.708l-4 4a.5.5 0 01-.708 0l-4-4a.5.5 0 010-.708zm0-2.292a.5.5 0 00.708 0L8 3.207l3.646 3.647a.5.5 0 00.708-.708l-4-4a.5.5 0 00-.708 0l-4 4a.5.5 0 000 .708z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-left" viewBox="0 0 16 16" id="chevron-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11.354 1.646a.5.5 0 010 .708L5.707 8l5.647 5.646a.5.5 0 01-.708.708l-6-6a.5.5 0 010-.708l6-6a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-right" viewBox="0 0 16 16" id="chevron-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.646 1.646a.5.5 0 01.708 0l6 6a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708L10.293 8 4.646 2.354a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-up" viewBox="0 0 16 16" id="chevron-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.646 4.646a.5.5 0 01.708 0l6 6a.5.5 0 01-.708.708L8 5.707l-5.646 5.647a.5.5 0 01-.708-.708l6-6z"/></symbol><symbol fill="currentColor" class="bi bi-circle" viewBox="0 0 16 16" id="circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/></symbol><symbol fill="currentColor" class="bi bi-circle-fill" viewBox="0 0 16 16" id="circle-fill" xmlns="http://www.w3.org/2000/svg"><circle cx="8" cy="8" r="8"/></symbol><symbol fill="currentColor" class="bi bi-circle-half" viewBox="0 0 16 16" id="circle-half" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 108 1v14zm0 1A8 8 0 118 0a8 8 0 010 16z"/></symbol><symbol fill="currentColor" class="bi bi-circle-square" viewBox="0 0 16 16" id="circle-square" xmlns="http://www.w3.org/2000/svg"><path d="M0 6a6 6 0 1112 0A6 6 0 010 6z"/><path d="M12.93 5h1.57a.5.5 0 01.5.5v9a.5.5 0 01-.5.5h-9a.5.5 0 01-.5-.5v-1.57a6.953 6.953 0 01-1-.22v1.79A1.5 1.5 0 005.5 16h9a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 4h-1.79c.097.324.17.658.22 1z"/></symbol><symbol fill="currentColor" class="bi bi-clipboard" viewBox="0 0 16 16" id="clipboard" xmlns="http://www.w3.org/2000/svg"><path d="M4 1.5H3a2 2 0 00-2 2V14a2 2 0 002 2h10a2 2 0 002-2V3.5a2 2 0 00-2-2h-1v1h1a1 1 0 011 1V14a1 1 0 01-1 1H3a1 1 0 01-1-1V3.5a1 1 0 011-1h1v-1z"/><path d="M9.5 1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5h3zm-3-1A1.5 1.5 0 005 1.5v1A1.5 1.5 0 006.5 4h3A1.5 1.5 0 0011 2.5v-1A1.5 1.5 0 009.5 0h-3z"/></symbol><symbol fill="currentColor" class="bi bi-clipboard-check" viewBox="0 0 16 16" id="clipboard-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.854 7.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 9.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M4 1.5H3a2 2 0 00-2 2V14a2 2 0 002 2h10a2 2 0 002-2V3.5a2 2 0 00-2-2h-1v1h1a1 1 0 011 1V14a1 1 0 01-1 1H3a1 1 0 01-1-1V3.5a1 1 0 011-1h1v-1z"/><path d="M9.5 1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5h3zm-3-1A1.5 1.5 0 005 1.5v1A1.5 1.5 0 006.5 4h3A1.5 1.5 0 0011 2.5v-1A1.5 1.5 0 009.5 0h-3z"/></symbol><symbol fill="currentColor" class="bi bi-clipboard-data" viewBox="0 0 16 16" id="clipboard-data" xmlns="http://www.w3.org/2000/svg"><path d="M4 11a1 1 0 112 0v1a1 1 0 11-2 0v-1zm6-4a1 1 0 112 0v5a1 1 0 11-2 0V7zM7 9a1 1 0 012 0v3a1 1 0 11-2 0V9z"/><path d="M4 1.5H3a2 2 0 00-2 2V14a2 2 0 002 2h10a2 2 0 002-2V3.5a2 2 0 00-2-2h-1v1h1a1 1 0 011 1V14a1 1 0 01-1 1H3a1 1 0 01-1-1V3.5a1 1 0 011-1h1v-1z"/><path d="M9.5 1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5h3zm-3-1A1.5 1.5 0 005 1.5v1A1.5 1.5 0 006.5 4h3A1.5 1.5 0 0011 2.5v-1A1.5 1.5 0 009.5 0h-3z"/></symbol><symbol fill="currentColor" class="bi bi-clipboard-minus" viewBox="0 0 16 16" id="clipboard-minus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.5 9.5A.5.5 0 016 9h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M4 1.5H3a2 2 0 00-2 2V14a2 2 0 002 2h10a2 2 0 002-2V3.5a2 2 0 00-2-2h-1v1h1a1 1 0 011 1V14a1 1 0 01-1 1H3a1 1 0 01-1-1V3.5a1 1 0 011-1h1v-1z"/><path d="M9.5 1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5h3zm-3-1A1.5 1.5 0 005 1.5v1A1.5 1.5 0 006.5 4h3A1.5 1.5 0 0011 2.5v-1A1.5 1.5 0 009.5 0h-3z"/></symbol><symbol fill="currentColor" class="bi bi-clipboard-plus" viewBox="0 0 16 16" id="clipboard-plus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 7a.5.5 0 01.5.5V9H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V10H6a.5.5 0 010-1h1.5V7.5A.5.5 0 018 7z"/><path d="M4 1.5H3a2 2 0 00-2 2V14a2 2 0 002 2h10a2 2 0 002-2V3.5a2 2 0 00-2-2h-1v1h1a1 1 0 011 1V14a1 1 0 01-1 1H3a1 1 0 01-1-1V3.5a1 1 0 011-1h1v-1z"/><path d="M9.5 1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5h3zm-3-1A1.5 1.5 0 005 1.5v1A1.5 1.5 0 006.5 4h3A1.5 1.5 0 0011 2.5v-1A1.5 1.5 0 009.5 0h-3z"/></symbol><symbol fill="currentColor" class="bi bi-clipboard-x" viewBox="0 0 16 16" id="clipboard-x" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.146 7.146a.5.5 0 01.708 0L8 8.293l1.146-1.147a.5.5 0 11.708.708L8.707 9l1.147 1.146a.5.5 0 01-.708.708L8 9.707l-1.146 1.147a.5.5 0 01-.708-.708L7.293 9 6.146 7.854a.5.5 0 010-.708z"/><path d="M4 1.5H3a2 2 0 00-2 2V14a2 2 0 002 2h10a2 2 0 002-2V3.5a2 2 0 00-2-2h-1v1h1a1 1 0 011 1V14a1 1 0 01-1 1H3a1 1 0 01-1-1V3.5a1 1 0 011-1h1v-1z"/><path d="M9.5 1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5h3zm-3-1A1.5 1.5 0 005 1.5v1A1.5 1.5 0 006.5 4h3A1.5 1.5 0 0011 2.5v-1A1.5 1.5 0 009.5 0h-3z"/></symbol><symbol fill="currentColor" class="bi bi-clock" viewBox="0 0 16 16" id="clock" xmlns="http://www.w3.org/2000/svg"><path d="M8 3.5a.5.5 0 00-1 0V9a.5.5 0 00.252.434l3.5 2a.5.5 0 00.496-.868L8 8.71V3.5z"/><path d="M8 16A8 8 0 108 0a8 8 0 000 16zm7-8A7 7 0 111 8a7 7 0 0114 0z"/></symbol><symbol fill="currentColor" class="bi bi-clock-fill" viewBox="0 0 16 16" id="clock-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM8 3.5a.5.5 0 00-1 0V9a.5.5 0 00.252.434l3.5 2a.5.5 0 00.496-.868L8 8.71V3.5z"/></symbol><symbol fill="currentColor" class="bi bi-clock-history" viewBox="0 0 16 16" id="clock-history" xmlns="http://www.w3.org/2000/svg"><path d="M8.515 1.019A7 7 0 008 1V0a8 8 0 01.589.022l-.074.997zm2.004.45a7.003 7.003 0 00-.985-.299l.219-.976c.383.086.76.2 1.126.342l-.36.933zm1.37.71a7.01 7.01 0 00-.439-.27l.493-.87a8.025 8.025 0 01.979.654l-.615.789a6.996 6.996 0 00-.418-.302zm1.834 1.79a6.99 6.99 0 00-.653-.796l.724-.69c.27.285.52.59.747.91l-.818.576zm.744 1.352a7.08 7.08 0 00-.214-.468l.893-.45a7.976 7.976 0 01.45 1.088l-.95.313a7.023 7.023 0 00-.179-.483zm.53 2.507a6.991 6.991 0 00-.1-1.025l.985-.17c.067.386.106.778.116 1.17l-1 .025zm-.131 1.538c.033-.17.06-.339.081-.51l.993.123a7.957 7.957 0 01-.23 1.155l-.964-.267c.046-.165.086-.332.12-.501zm-.952 2.379c.184-.29.346-.594.486-.908l.914.405c-.16.36-.345.706-.555 1.038l-.845-.535zm-.964 1.205c.122-.122.239-.248.35-.378l.758.653a8.073 8.073 0 01-.401.432l-.707-.707z"/><path d="M8 1a7 7 0 104.95 11.95l.707.707A8.001 8.001 0 118 0v1z"/><path d="M7.5 3a.5.5 0 01.5.5v5.21l3.248 1.856a.5.5 0 01-.496.868l-3.5-2A.5.5 0 017 9V3.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-cloud" viewBox="0 0 16 16" id="cloud" xmlns="http://www.w3.org/2000/svg"><path d="M4.406 3.342A5.53 5.53 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 00-2.941 1.1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-arrow-down" viewBox="0 0 16 16" id="cloud-arrow-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.646 10.854a.5.5 0 00.708 0l2-2a.5.5 0 00-.708-.708L8.5 9.293V5.5a.5.5 0 00-1 0v3.793L6.354 8.146a.5.5 0 10-.708.708l2 2z"/><path d="M4.406 3.342A5.53 5.53 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 00-2.941 1.1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-arrow-down-fill" viewBox="0 0 16 16" id="cloud-arrow-down-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 2a5.53 5.53 0 00-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2zm2.354 6.854l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 11.708-.708L7.5 9.293V5.5a.5.5 0 011 0v3.793l1.146-1.147a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-arrow-up" viewBox="0 0 16 16" id="cloud-arrow-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.646 5.146a.5.5 0 01.708 0l2 2a.5.5 0 01-.708.708L8.5 6.707V10.5a.5.5 0 01-1 0V6.707L6.354 7.854a.5.5 0 11-.708-.708l2-2z"/><path d="M4.406 3.342A5.53 5.53 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 00-2.941 1.1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-arrow-up-fill" viewBox="0 0 16 16" id="cloud-arrow-up-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 2a5.53 5.53 0 00-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2zm2.354 5.146a.5.5 0 01-.708.708L8.5 6.707V10.5a.5.5 0 01-1 0V6.707L6.354 7.854a.5.5 0 11-.708-.708l2-2a.5.5 0 01.708 0l2 2z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-check" viewBox="0 0 16 16" id="cloud-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.354 6.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7 8.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M4.406 3.342A5.53 5.53 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 00-2.941 1.1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-check-fill" viewBox="0 0 16 16" id="cloud-check-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 2a5.53 5.53 0 00-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2zm2.354 4.854l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7 8.793l2.646-2.647a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-download" viewBox="0 0 16 16" id="cloud-download" xmlns="http://www.w3.org/2000/svg"><path d="M4.406 1.342A5.53 5.53 0 018 0c2.69 0 4.923 2 5.166 4.579C14.758 4.804 16 6.137 16 7.773 16 9.569 14.502 11 12.687 11H10a.5.5 0 010-1h2.688C13.979 10 15 8.988 15 7.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 2.825 10.328 1 8 1a4.53 4.53 0 00-2.941 1.1c-.757.652-1.153 1.438-1.153 2.055v.448l-.445.049C2.064 4.805 1 5.952 1 7.318 1 8.785 2.23 10 3.781 10H6a.5.5 0 010 1H3.781C1.708 11 0 9.366 0 7.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383z"/><path d="M7.646 15.854a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 14.293V5.5a.5.5 0 00-1 0v8.793l-2.146-2.147a.5.5 0 00-.708.708l3 3z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-download-fill" viewBox="0 0 16 16" id="cloud-download-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0a5.53 5.53 0 00-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 4.095 0 5.555 0 7.318 0 9.366 1.708 11 3.781 11H7.5V5.5a.5.5 0 011 0V11h4.188C14.502 11 16 9.57 16 7.773c0-1.636-1.242-2.969-2.834-3.194C12.923 1.999 10.69 0 8 0zm-.354 15.854a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 14.293V11h-1v3.293l-2.146-2.147a.5.5 0 00-.708.708l3 3z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-drizzle" viewBox="0 0 16 16" id="cloud-drizzle" xmlns="http://www.w3.org/2000/svg"><path d="M4.158 12.025a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm6 0a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm-3.5 1.5a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm6 0a.5.5 0 01.316.633l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.317zm.747-8.498a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 11H13a3 3 0 00.405-5.973zM8.5 2a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 2z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-drizzle-fill" viewBox="0 0 16 16" id="cloud-drizzle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.158 12.025a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm6 0a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm-3.5 1.5a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm6 0a.5.5 0 01.316.633l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.317zm.747-8.498a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 11H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-fill" viewBox="0 0 16 16" id="cloud-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.406 3.342A5.53 5.53 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-fog" viewBox="0 0 16 16" id="cloud-fog" xmlns="http://www.w3.org/2000/svg"><path d="M3 13.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm10.405-9.473a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 12H13a3 3 0 00.405-5.973zM8.5 3a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 3z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-fog-fill" viewBox="0 0 16 16" id="cloud-fog-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 13.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm10.405-9.473a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 12H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-fog2" viewBox="0 0 16 16" id="cloud-fog2" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 4a4.002 4.002 0 00-3.8 2.745.5.5 0 11-.949-.313 5.002 5.002 0 019.654.595A3 3 0 0113 13H.5a.5.5 0 010-1H13a2 2 0 00.001-4h-.026a.5.5 0 01-.5-.445A4 4 0 008.5 4zM0 8.5A.5.5 0 01.5 8h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-fog2-fill" viewBox="0 0 16 16" id="cloud-fog2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 3a5.001 5.001 0 014.905 4.027A3 3 0 0113 13h-1.5a.5.5 0 000-1H1.05a3.51 3.51 0 01-.713-1H9.5a.5.5 0 000-1H.035a3.53 3.53 0 010-1H7.5a.5.5 0 000-1H.337a3.5 3.5 0 013.57-1.977A5.001 5.001 0 018.5 3z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-hail" viewBox="0 0 16 16" id="cloud-hail" xmlns="http://www.w3.org/2000/svg"><path d="M13.405 4.527a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10.5H13a3 3 0 00.405-5.973zM8.5 1.5a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 01-.001 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 1.5zM3.75 15.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm.408-3.724a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zM7.75 15.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm.408-3.724a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm3.592 3.724a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm.408-3.724a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-hail-fill" viewBox="0 0 16 16" id="cloud-hail-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.75 15.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm.408-3.724a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zM7.75 15.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm.408-3.724a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm3.592 3.724a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm.408-3.724a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm1.247-6.999a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10.5H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-haze" viewBox="0 0 16 16" id="cloud-haze" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 3a4.002 4.002 0 00-3.8 2.745.5.5 0 11-.949-.313 5.002 5.002 0 019.654.595A3 3 0 0113 12H4.5a.5.5 0 010-1H13a2 2 0 00.001-4h-.026a.5.5 0 01-.5-.445A4 4 0 008.5 3zM0 7.5A.5.5 0 01.5 7h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm2 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm-2 4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-haze-1" viewBox="0 0 16 16" id="cloud-haze-1" xmlns="http://www.w3.org/2000/svg"><path d="M4 11.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm-3 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm2 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM13.405 4.027a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973zM8.5 1a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-haze-fill" viewBox="0 0 16 16" id="cloud-haze-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 11.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm-3 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm2 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM13.405 4.027a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-haze2-fill" viewBox="0 0 16 16" id="cloud-haze2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 2a5.001 5.001 0 014.905 4.027A3 3 0 0113 12H3.5A3.5 3.5 0 01.035 9H5.5a.5.5 0 000-1H.035a3.5 3.5 0 013.871-2.977A5.001 5.001 0 018.5 2zm-6 8a.5.5 0 000 1h9a.5.5 0 000-1h-9zM0 13.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-lightning" viewBox="0 0 16 16" id="cloud-lightning" xmlns="http://www.w3.org/2000/svg"><path d="M13.405 4.027a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973zM8.5 1a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 1zM7.053 11.276A.5.5 0 017.5 11h1a.5.5 0 01.474.658l-.28.842H9.5a.5.5 0 01.39.812l-2 2.5a.5.5 0 01-.875-.433L7.36 14H6.5a.5.5 0 01-.447-.724l1-2z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-lightning-fill" viewBox="0 0 16 16" id="cloud-lightning-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.053 11.276A.5.5 0 017.5 11h1a.5.5 0 01.474.658l-.28.842H9.5a.5.5 0 01.39.812l-2 2.5a.5.5 0 01-.875-.433L7.36 14H6.5a.5.5 0 01-.447-.724l1-2zm6.352-7.249a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-lightning-rain" viewBox="0 0 16 16" id="cloud-lightning-rain" xmlns="http://www.w3.org/2000/svg"><path d="M2.658 11.026a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm9.5 0a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm-7.5 1.5a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm9.5 0a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm-.753-8.499a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973zM8.5 1a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 1zM7.053 11.276A.5.5 0 017.5 11h1a.5.5 0 01.474.658l-.28.842H9.5a.5.5 0 01.39.812l-2 2.5a.5.5 0 01-.875-.433L7.36 14H6.5a.5.5 0 01-.447-.724l1-2z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-lightning-rain-fill" viewBox="0 0 16 16" id="cloud-lightning-rain-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.658 11.026a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm9.5 0a.5.5 0 01.316.632l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.316zm-7.5 1.5a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm9.5 0a.5.5 0 01.316.632l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.316zm-7.105-1.25A.5.5 0 017.5 11h1a.5.5 0 01.474.658l-.28.842H9.5a.5.5 0 01.39.812l-2 2.5a.5.5 0 01-.875-.433L7.36 14H6.5a.5.5 0 01-.447-.724l1-2zm6.352-7.249a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-minus" viewBox="0 0 16 16" id="cloud-minus" xmlns="http://www.w3.org/2000/svg"><path d="M4.406 3.342A5.53 5.53 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 00-2.941 1.1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-minus-fill" viewBox="0 0 16 16" id="cloud-minus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 2a5.53 5.53 0 00-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2zM6 7.5h4a.5.5 0 010 1H6a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-moon" viewBox="0 0 16 16" id="cloud-moon" xmlns="http://www.w3.org/2000/svg"><path d="M7 8a3.5 3.5 0 013.5 3.555.5.5 0 00.625.492A1.503 1.503 0 0113 13.5a1.5 1.5 0 01-1.5 1.5H3a2 2 0 11.1-3.998.5.5 0 00.509-.375A3.502 3.502 0 017 8zm4.473 3a4.5 4.5 0 00-8.72-.99A3 3 0 003 16h8.5a2.5 2.5 0 000-5h-.027z"/><path d="M11.286 1.778a.5.5 0 00-.565-.755 4.595 4.595 0 00-3.18 5.003 5.46 5.46 0 011.055.209A3.603 3.603 0 019.83 2.617a4.593 4.593 0 004.31 5.744 3.576 3.576 0 01-2.241.634c.162.317.295.652.394 1a4.59 4.59 0 003.624-2.04.5.5 0 00-.565-.755 3.593 3.593 0 01-4.065-5.422z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-moon-fill" viewBox="0 0 16 16" id="cloud-moon-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.473 11a4.5 4.5 0 00-8.72-.99A3 3 0 003 16h8.5a2.5 2.5 0 000-5h-.027z"/><path d="M11.286 1.778a.5.5 0 00-.565-.755 4.595 4.595 0 00-3.18 5.003 5.46 5.46 0 011.055.209A3.603 3.603 0 019.83 2.617a4.593 4.593 0 004.31 5.744 3.576 3.576 0 01-2.241.634c.162.317.295.652.394 1a4.59 4.59 0 003.624-2.04.5.5 0 00-.565-.755 3.593 3.593 0 01-4.065-5.422z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-plus" viewBox="0 0 16 16" id="cloud-plus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 5.5a.5.5 0 01.5.5v1.5H10a.5.5 0 010 1H8.5V10a.5.5 0 01-1 0V8.5H6a.5.5 0 010-1h1.5V6a.5.5 0 01.5-.5z"/><path d="M4.406 3.342A5.53 5.53 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 00-2.941 1.1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-plus-fill" viewBox="0 0 16 16" id="cloud-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 2a5.53 5.53 0 00-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2zm.5 4v1.5H10a.5.5 0 010 1H8.5V10a.5.5 0 01-1 0V8.5H6a.5.5 0 010-1h1.5V6a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-rain" viewBox="0 0 16 16" id="cloud-rain" xmlns="http://www.w3.org/2000/svg"><path d="M4.158 12.025a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm3 0a.5.5 0 01.316.633l-1 3a.5.5 0 01-.948-.316l1-3a.5.5 0 01.632-.317zm3 0a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm3 0a.5.5 0 01.316.633l-1 3a.5.5 0 11-.948-.316l1-3a.5.5 0 01.632-.317zm.247-6.998a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 11H13a3 3 0 00.405-5.973zM8.5 2a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 2z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-rain-fill" viewBox="0 0 16 16" id="cloud-rain-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.158 12.025a.5.5 0 01.316.633l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.317zm3 0a.5.5 0 01.316.633l-1 3a.5.5 0 11-.948-.316l1-3a.5.5 0 01.632-.317zm3 0a.5.5 0 01.316.633l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.317zm3 0a.5.5 0 01.316.633l-1 3a.5.5 0 11-.948-.316l1-3a.5.5 0 01.632-.317zm.247-6.998a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 11H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-rain-heavy" viewBox="0 0 16 16" id="cloud-rain-heavy" xmlns="http://www.w3.org/2000/svg"><path d="M4.176 11.032a.5.5 0 01.292.643l-1.5 4a.5.5 0 11-.936-.35l1.5-4a.5.5 0 01.644-.293zm3 0a.5.5 0 01.292.643l-1.5 4a.5.5 0 11-.936-.35l1.5-4a.5.5 0 01.644-.293zm3 0a.5.5 0 01.292.643l-1.5 4a.5.5 0 11-.936-.35l1.5-4a.5.5 0 01.644-.293zm3 0a.5.5 0 01.292.643l-1.5 4a.5.5 0 01-.936-.35l1.5-4a.5.5 0 01.644-.293zm.229-7.005a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973zM8.5 1a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-rain-heavy-fill" viewBox="0 0 16 16" id="cloud-rain-heavy-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.176 11.032a.5.5 0 01.292.643l-1.5 4a.5.5 0 01-.936-.35l1.5-4a.5.5 0 01.644-.293zm3 0a.5.5 0 01.292.643l-1.5 4a.5.5 0 01-.936-.35l1.5-4a.5.5 0 01.644-.293zm3 0a.5.5 0 01.292.643l-1.5 4a.5.5 0 01-.936-.35l1.5-4a.5.5 0 01.644-.293zm3 0a.5.5 0 01.292.643l-1.5 4a.5.5 0 01-.936-.35l1.5-4a.5.5 0 01.644-.293zm.229-7.005a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-slash" viewBox="0 0 16 16" id="cloud-slash" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.112 5.112a3.125 3.125 0 00-.17.613C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13H11l-1-1H3.781C2.231 12 1 10.785 1 9.318c0-1.365 1.064-2.513 2.46-2.666l.446-.05v-.447c0-.075.006-.152.018-.231l-.812-.812zm2.55-1.45l-.725-.725A5.512 5.512 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773a3.2 3.2 0 01-1.516 2.711l-.733-.733C14.498 11.378 15 10.626 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3c-.875 0-1.678.26-2.339.661z"/><path d="M13.646 14.354l-12-12 .708-.708 12 12-.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-slash-fill" viewBox="0 0 16 16" id="cloud-slash-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.112 5.112a3.125 3.125 0 00-.17.613C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13H11L3.112 5.112zm11.372 7.372L4.937 2.937A5.512 5.512 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773a3.2 3.2 0 01-1.516 2.711zm-.838 1.87l-12-12 .708-.708 12 12-.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-sleet" viewBox="0 0 16 16" id="cloud-sleet" xmlns="http://www.w3.org/2000/svg"><path d="M13.405 4.027a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973zM8.5 1a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 1zM2.375 13.5a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm1.849-2.447a.5.5 0 01.223.67l-.5 1a.5.5 0 11-.894-.447l.5-1a.5.5 0 01.67-.223zM6.375 13.5a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm1.849-2.447a.5.5 0 01.223.67l-.5 1a.5.5 0 11-.894-.447l.5-1a.5.5 0 01.67-.223zm2.151 2.447a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm1.849-2.447a.5.5 0 01.223.67l-.5 1a.5.5 0 11-.894-.447l.5-1a.5.5 0 01.67-.223z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-sleet-fill" viewBox="0 0 16 16" id="cloud-sleet-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.375 13.5a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 11-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 11-.248-.434l.495-.283-.495-.283a.25.25 0 11.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm1.849-2.447a.5.5 0 01.223.67l-.5 1a.5.5 0 01-.894-.447l.5-1a.5.5 0 01.67-.223zM6.375 13.5a.25.25 0 01.25.25v.57l.5-.287a.25.25 0 01.249.434l-.495.283.495.283a.25.25 0 11-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 11-.248-.434l.495-.283-.495-.283a.25.25 0 11.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm1.849-2.447a.5.5 0 01.223.67l-.5 1a.5.5 0 01-.894-.447l.5-1a.5.5 0 01.67-.223zm2.151 2.447a.25.25 0 01.25.25v.57l.5-.287a.25.25 0 01.249.434l-.495.283.495.283a.25.25 0 11-.248.434l-.501-.286v.569a.25.25 0 01-.5 0v-.57l-.501.287a.25.25 0 11-.248-.434l.495-.283-.495-.283a.25.25 0 11.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm1.849-2.447a.5.5 0 01.223.67l-.5 1a.5.5 0 11-.894-.447l.5-1a.5.5 0 01.67-.223zm1.181-7.026a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-snow" viewBox="0 0 16 16" id="cloud-snow" xmlns="http://www.w3.org/2000/svg"><path d="M13.405 4.277a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10.25H13a3 3 0 00.405-5.973zM8.5 1.25a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 01-.001 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 1.25zM2.625 11.5a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm2.75 2a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm5.5 0a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm-2.75-2a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm5.5 0a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-snow-fill" viewBox="0 0 16 16" id="cloud-snow-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.625 11.5a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm2.75 2a.25.25 0 01.25.25v.57l.5-.287a.25.25 0 01.249.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm5.5 0a.25.25 0 01.25.25v.57l.5-.287a.25.25 0 01.249.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 01-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm-2.75-2a.25.25 0 01.25.25v.57l.5-.287a.25.25 0 01.249.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm5.5 0a.25.25 0 01.25.25v.57l.5-.287a.25.25 0 01.249.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 01-.5 0v-.57l-.501.287a.25.25 0 11-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm-.22-7.223a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10.25H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-sun" viewBox="0 0 16 16" id="cloud-sun" xmlns="http://www.w3.org/2000/svg"><path d="M7 8a3.5 3.5 0 013.5 3.555.5.5 0 00.624.492A1.503 1.503 0 0113 13.5a1.5 1.5 0 01-1.5 1.5H3a2 2 0 11.1-3.998.5.5 0 00.51-.375A3.502 3.502 0 017 8zm4.473 3a4.5 4.5 0 00-8.72-.99A3 3 0 003 16h8.5a2.5 2.5 0 000-5h-.027z"/><path d="M10.5 1.5a.5.5 0 00-1 0v1a.5.5 0 001 0v-1zm3.743 1.964a.5.5 0 10-.707-.707l-.708.707a.5.5 0 00.708.708l.707-.708zm-7.779-.707a.5.5 0 00-.707.707l.707.708a.5.5 0 10.708-.708l-.708-.707zm1.734 3.374a2 2 0 113.296 2.198c.199.281.372.582.516.898a3 3 0 10-4.84-3.225c.352.011.696.055 1.028.129zm4.484 4.074c.6.215 1.125.59 1.522 1.072a.5.5 0 00.039-.742l-.707-.707a.5.5 0 00-.854.377zM14.5 6.5a.5.5 0 000 1h1a.5.5 0 000-1h-1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-sun-fill" viewBox="0 0 16 16" id="cloud-sun-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.473 11a4.5 4.5 0 00-8.72-.99A3 3 0 003 16h8.5a2.5 2.5 0 000-5h-.027z"/><path d="M10.5 1.5a.5.5 0 00-1 0v1a.5.5 0 001 0v-1zm3.743 1.964a.5.5 0 10-.707-.707l-.708.707a.5.5 0 00.708.708l.707-.708zm-7.779-.707a.5.5 0 00-.707.707l.707.708a.5.5 0 10.708-.708l-.708-.707zm1.734 3.374a2 2 0 113.296 2.198c.199.281.372.582.516.898a3 3 0 10-4.84-3.225c.352.011.696.055 1.028.129zm4.484 4.074c.6.215 1.125.59 1.522 1.072a.5.5 0 00.039-.742l-.707-.707a.5.5 0 00-.854.377zM14.5 6.5a.5.5 0 000 1h1a.5.5 0 000-1h-1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-upload" viewBox="0 0 16 16" id="cloud-upload" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.406 1.342A5.53 5.53 0 018 0c2.69 0 4.923 2 5.166 4.579C14.758 4.804 16 6.137 16 7.773 16 9.569 14.502 11 12.687 11H10a.5.5 0 010-1h2.688C13.979 10 15 8.988 15 7.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 2.825 10.328 1 8 1a4.53 4.53 0 00-2.941 1.1c-.757.652-1.153 1.438-1.153 2.055v.448l-.445.049C2.064 4.805 1 5.952 1 7.318 1 8.785 2.23 10 3.781 10H6a.5.5 0 010 1H3.781C1.708 11 0 9.366 0 7.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383z"/><path fill-rule="evenodd" d="M7.646 4.146a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 5.707V14.5a.5.5 0 01-1 0V5.707L5.354 7.854a.5.5 0 11-.708-.708l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-upload-fill" viewBox="0 0 16 16" id="cloud-upload-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0a5.53 5.53 0 00-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 4.095 0 5.555 0 7.318 0 9.366 1.708 11 3.781 11H7.5V5.707L5.354 7.854a.5.5 0 11-.708-.708l3-3a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 5.707V11h4.188C14.502 11 16 9.57 16 7.773c0-1.636-1.242-2.969-2.834-3.194C12.923 1.999 10.69 0 8 0zm-.5 14.5V11h1v3.5a.5.5 0 01-1 0z"/></symbol><symbol fill="currentColor" class="bi bi-clouds" viewBox="0 0 16 16" id="clouds" xmlns="http://www.w3.org/2000/svg"><path d="M16 7.5a2.5 2.5 0 01-1.456 2.272 3.513 3.513 0 00-.65-.824 1.5 1.5 0 00-.789-2.896.5.5 0 01-.627-.421 3 3 0 00-5.22-1.625 5.587 5.587 0 00-1.276.088 4.002 4.002 0 017.392.91A2.5 2.5 0 0116 7.5z"/><path d="M7 5a4.5 4.5 0 014.473 4h.027a2.5 2.5 0 010 5H3a3 3 0 01-.247-5.99A4.502 4.502 0 017 5zm3.5 4.5a3.5 3.5 0 00-6.89-.873.5.5 0 01-.51.375A2 2 0 103 13h8.5a1.5 1.5 0 10-.376-2.953.5.5 0 01-.624-.492V9.5z"/></symbol><symbol fill="currentColor" class="bi bi-clouds-fill" viewBox="0 0 16 16" id="clouds-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.473 9a4.5 4.5 0 00-8.72-.99A3 3 0 003 14h8.5a2.5 2.5 0 10-.027-5z"/><path d="M14.544 9.772a3.506 3.506 0 00-2.225-1.676 5.502 5.502 0 00-6.337-4.002 4.002 4.002 0 017.392.91 2.5 2.5 0 011.17 4.769z"/></symbol><symbol fill="currentColor" class="bi bi-cloudy" viewBox="0 0 16 16" id="cloudy" xmlns="http://www.w3.org/2000/svg"><path d="M13.405 8.527a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 14.5H13a3 3 0 00.405-5.973zM8.5 5.5a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 01-.001 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 5.5z"/></symbol><symbol fill="currentColor" class="bi bi-cloudy-fill" viewBox="0 0 16 16" id="cloudy-fill" xmlns="http://www.w3.org/2000/svg"><path d="M13.405 7.027a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 13H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-code" viewBox="0 0 16 16" id="code" xmlns="http://www.w3.org/2000/svg"><path d="M5.854 4.854a.5.5 0 10-.708-.708l-3.5 3.5a.5.5 0 000 .708l3.5 3.5a.5.5 0 00.708-.708L2.707 8l3.147-3.146zm4.292 0a.5.5 0 01.708-.708l3.5 3.5a.5.5 0 010 .708l-3.5 3.5a.5.5 0 01-.708-.708L13.293 8l-3.147-3.146z"/></symbol><symbol fill="currentColor" class="bi bi-code-slash" viewBox="0 0 16 16" id="code-slash" xmlns="http://www.w3.org/2000/svg"><path d="M10.478 1.647a.5.5 0 10-.956-.294l-4 13a.5.5 0 00.956.294l4-13zM4.854 4.146a.5.5 0 010 .708L1.707 8l3.147 3.146a.5.5 0 01-.708.708l-3.5-3.5a.5.5 0 010-.708l3.5-3.5a.5.5 0 01.708 0zm6.292 0a.5.5 0 000 .708L14.293 8l-3.147 3.146a.5.5 0 00.708.708l3.5-3.5a.5.5 0 000-.708l-3.5-3.5a.5.5 0 00-.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-code-square" viewBox="0 0 16 16" id="code-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M6.854 4.646a.5.5 0 010 .708L4.207 8l2.647 2.646a.5.5 0 01-.708.708l-3-3a.5.5 0 010-.708l3-3a.5.5 0 01.708 0zm2.292 0a.5.5 0 000 .708L11.793 8l-2.647 2.646a.5.5 0 00.708.708l3-3a.5.5 0 000-.708l-3-3a.5.5 0 00-.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-coin" viewBox="0 0 16 16" id="coin" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 9.511c.076.954.83 1.697 2.182 1.785V12h.6v-.709c1.4-.098 2.218-.846 2.218-1.932 0-.987-.626-1.496-1.745-1.76l-.473-.112V5.57c.6.068.982.396 1.074.85h1.052c-.076-.919-.864-1.638-2.126-1.716V4h-.6v.719c-1.195.117-2.01.836-2.01 1.853 0 .9.606 1.472 1.613 1.707l.397.098v2.034c-.615-.093-1.022-.43-1.114-.9H5.5zm2.177-2.166c-.59-.137-.91-.416-.91-.836 0-.47.345-.822.915-.925v1.76h-.005zm.692 1.193c.717.166 1.048.435 1.048.91 0 .542-.412.914-1.135.982V8.518l.087.02z"/><path fill-rule="evenodd" d="M8 15A7 7 0 108 1a7 7 0 000 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path fill-rule="evenodd" d="M8 13.5a5.5 5.5 0 100-11 5.5 5.5 0 000 11zm0 .5A6 6 0 108 2a6 6 0 000 12z"/></symbol><symbol fill="currentColor" class="bi bi-collection" viewBox="0 0 16 16" id="collection" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 3.5a.5.5 0 010-1h11a.5.5 0 010 1h-11zm2-2a.5.5 0 010-1h7a.5.5 0 010 1h-7zM0 13a1.5 1.5 0 001.5 1.5h13A1.5 1.5 0 0016 13V6a1.5 1.5 0 00-1.5-1.5h-13A1.5 1.5 0 000 6v7zm1.5.5A.5.5 0 011 13V6a.5.5 0 01.5-.5h13a.5.5 0 01.5.5v7a.5.5 0 01-.5.5h-13z"/></symbol><symbol fill="currentColor" class="bi bi-collection-fill" viewBox="0 0 16 16" id="collection-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 13a1.5 1.5 0 001.5 1.5h13A1.5 1.5 0 0016 13V6a1.5 1.5 0 00-1.5-1.5h-13A1.5 1.5 0 000 6v7zM2 3a.5.5 0 00.5.5h11a.5.5 0 000-1h-11A.5.5 0 002 3zm2-2a.5.5 0 00.5.5h7a.5.5 0 000-1h-7A.5.5 0 004 1z"/></symbol><symbol fill="currentColor" class="bi bi-collection-play" viewBox="0 0 16 16" id="collection-play" xmlns="http://www.w3.org/2000/svg"><path d="M2 3a.5.5 0 00.5.5h11a.5.5 0 000-1h-11A.5.5 0 002 3zm2-2a.5.5 0 00.5.5h7a.5.5 0 000-1h-7A.5.5 0 004 1zm2.765 5.576A.5.5 0 006 7v5a.5.5 0 00.765.424l4-2.5a.5.5 0 000-.848l-4-2.5z"/><path d="M1.5 14.5A1.5 1.5 0 010 13V6a1.5 1.5 0 011.5-1.5h13A1.5 1.5 0 0116 6v7a1.5 1.5 0 01-1.5 1.5h-13zm13-1a.5.5 0 00.5-.5V6a.5.5 0 00-.5-.5h-13A.5.5 0 001 6v7a.5.5 0 00.5.5h13z"/></symbol><symbol fill="currentColor" class="bi bi-collection-play-fill" viewBox="0 0 16 16" id="collection-play-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 3.5a.5.5 0 010-1h11a.5.5 0 010 1h-11zm2-2a.5.5 0 010-1h7a.5.5 0 010 1h-7zM0 13a1.5 1.5 0 001.5 1.5h13A1.5 1.5 0 0016 13V6a1.5 1.5 0 00-1.5-1.5h-13A1.5 1.5 0 000 6v7zm6.258-6.437a.5.5 0 01.507.013l4 2.5a.5.5 0 010 .848l-4 2.5A.5.5 0 016 12V7a.5.5 0 01.258-.437z"/></symbol><symbol fill="currentColor" class="bi bi-columns" viewBox="0 0 16 16" id="columns" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a1 1 0 011-1h14a1 1 0 011 1v12a1 1 0 01-1 1H1a1 1 0 01-1-1V2zm8.5 0v8H15V2H8.5zm0 9v3H15v-3H8.5zm-1-9H1v3h6.5V2zM1 14h6.5V6H1v8z"/></symbol><symbol fill="currentColor" class="bi bi-columns-gap" viewBox="0 0 16 16" id="columns-gap" xmlns="http://www.w3.org/2000/svg"><path d="M6 1v3H1V1h5zM1 0a1 1 0 00-1 1v3a1 1 0 001 1h5a1 1 0 001-1V1a1 1 0 00-1-1H1zm14 12v3h-5v-3h5zm-5-1a1 1 0 00-1 1v3a1 1 0 001 1h5a1 1 0 001-1v-3a1 1 0 00-1-1h-5zM6 8v7H1V8h5zM1 7a1 1 0 00-1 1v7a1 1 0 001 1h5a1 1 0 001-1V8a1 1 0 00-1-1H1zm14-6v7h-5V1h5zm-5-1a1 1 0 00-1 1v7a1 1 0 001 1h5a1 1 0 001-1V1a1 1 0 00-1-1h-5z"/></symbol><symbol fill="currentColor" class="bi bi-command" viewBox="0 0 16 16" id="command" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 2A1.5 1.5 0 015 3.5V5H3.5a1.5 1.5 0 110-3zM6 5V3.5A2.5 2.5 0 103.5 6H5v4H3.5A2.5 2.5 0 106 12.5V11h4v1.5a2.5 2.5 0 102.5-2.5H11V6h1.5A2.5 2.5 0 1010 3.5V5H6zm4 1v4H6V6h4zm1-1V3.5A1.5 1.5 0 1112.5 5H11zm0 6h1.5a1.5 1.5 0 11-1.5 1.5V11zm-6 0v1.5A1.5 1.5 0 113.5 11H5z"/></symbol><symbol fill="currentColor" class="bi bi-compass" viewBox="0 0 16 16" id="compass" xmlns="http://www.w3.org/2000/svg"><path d="M8 16.016a7.5 7.5 0 001.962-14.74A1 1 0 009 0H7a1 1 0 00-.962 1.276A7.5 7.5 0 008 16.016zm6.5-7.5a6.5 6.5 0 11-13 0 6.5 6.5 0 0113 0z"/><path d="M6.94 7.44l4.95-2.83-2.83 4.95-4.949 2.83 2.828-4.95z"/></symbol><symbol fill="currentColor" class="bi bi-compass-fill" viewBox="0 0 16 16" id="compass-fill" xmlns="http://www.w3.org/2000/svg"><path d="M15.5 8.516a7.5 7.5 0 11-9.462-7.24A1 1 0 017 0h2a1 1 0 01.962 1.276 7.503 7.503 0 015.538 7.24zm-3.61-3.905L6.94 7.439 4.11 12.39l4.95-2.828 2.828-4.95z"/></symbol><symbol fill="currentColor" class="bi bi-cone" viewBox="0 0 16 16" id="cone" xmlns="http://www.w3.org/2000/svg"><path d="M7.03 1.88c.252-1.01 1.688-1.01 1.94 0l2.905 11.62H14a.5.5 0 010 1H2a.5.5 0 010-1h2.125L7.03 1.88z"/></symbol><symbol fill="currentColor" class="bi bi-cone-striped" viewBox="0 0 16 16" id="cone-striped" xmlns="http://www.w3.org/2000/svg"><path d="M9.97 4.88l.953 3.811C10.159 8.878 9.14 9 8 9c-1.14 0-2.158-.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.275 3.9C6.8 3.965 7.382 4 8 4c.618 0 1.2-.036 1.725-.098zm4.396 8.613a.5.5 0 01.037.96l-6 2a.5.5 0 01-.316 0l-6-2a.5.5 0 01.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"/></symbol><symbol fill="currentColor" class="bi bi-controller" viewBox="0 0 16 16" id="controller" xmlns="http://www.w3.org/2000/svg"><path d="M11.5 6.027a.5.5 0 11-1 0 .5.5 0 011 0zm-1.5 1.5a.5.5 0 100-1 .5.5 0 000 1zm2.5-.5a.5.5 0 11-1 0 .5.5 0 011 0zm-1.5 1.5a.5.5 0 100-1 .5.5 0 000 1zm-6.5-3h1v1h1v1h-1v1h-1v-1h-1v-1h1v-1z"/><path d="M3.051 3.26a.5.5 0 01.354-.613l1.932-.518a.5.5 0 01.62.39c.655-.079 1.35-.117 2.043-.117.72 0 1.443.041 2.12.126a.5.5 0 01.622-.399l1.932.518a.5.5 0 01.306.729c.14.09.266.19.373.297.408.408.78 1.05 1.095 1.772.32.733.599 1.591.805 2.466.206.875.34 1.78.364 2.606.024.816-.059 1.602-.328 2.21a1.42 1.42 0 01-1.445.83c-.636-.067-1.115-.394-1.513-.773-.245-.232-.496-.526-.739-.808-.126-.148-.25-.292-.368-.423-.728-.804-1.597-1.527-3.224-1.527-1.627 0-2.496.723-3.224 1.527-.119.131-.242.275-.368.423-.243.282-.494.575-.739.808-.398.38-.877.706-1.513.773a1.42 1.42 0 01-1.445-.83c-.27-.608-.352-1.395-.329-2.21.024-.826.16-1.73.365-2.606.206-.875.486-1.733.805-2.466.315-.722.687-1.364 1.094-1.772a2.34 2.34 0 01.433-.335.504.504 0 01-.028-.079zm2.036.412c-.877.185-1.469.443-1.733.708-.276.276-.587.783-.885 1.465a13.748 13.748 0 00-.748 2.295 12.351 12.351 0 00-.339 2.406c-.022.755.062 1.368.243 1.776a.42.42 0 00.426.24c.327-.034.61-.199.929-.502.212-.202.4-.423.615-.674.133-.156.276-.323.44-.504C4.861 9.969 5.978 9.027 8 9.027s3.139.942 3.965 1.855c.164.181.307.348.44.504.214.251.403.472.615.674.318.303.601.468.929.503a.42.42 0 00.426-.241c.18-.408.265-1.02.243-1.776a12.354 12.354 0 00-.339-2.406 13.753 13.753 0 00-.748-2.295c-.298-.682-.61-1.19-.885-1.465-.264-.265-.856-.523-1.733-.708-.85-.179-1.877-.27-2.913-.27-1.036 0-2.063.091-2.913.27z"/></symbol><symbol fill="currentColor" class="bi bi-cpu" viewBox="0 0 16 16" id="cpu" xmlns="http://www.w3.org/2000/svg"><path d="M5 0a.5.5 0 01.5.5V2h1V.5a.5.5 0 011 0V2h1V.5a.5.5 0 011 0V2h1V.5a.5.5 0 011 0V2A2.5 2.5 0 0114 4.5h1.5a.5.5 0 010 1H14v1h1.5a.5.5 0 010 1H14v1h1.5a.5.5 0 010 1H14v1h1.5a.5.5 0 010 1H14a2.5 2.5 0 01-2.5 2.5v1.5a.5.5 0 01-1 0V14h-1v1.5a.5.5 0 01-1 0V14h-1v1.5a.5.5 0 01-1 0V14h-1v1.5a.5.5 0 01-1 0V14A2.5 2.5 0 012 11.5H.5a.5.5 0 010-1H2v-1H.5a.5.5 0 010-1H2v-1H.5a.5.5 0 010-1H2v-1H.5a.5.5 0 010-1H2A2.5 2.5 0 014.5 2V.5A.5.5 0 015 0zm-.5 3A1.5 1.5 0 003 4.5v7A1.5 1.5 0 004.5 13h7a1.5 1.5 0 001.5-1.5v-7A1.5 1.5 0 0011.5 3h-7zM5 6.5A1.5 1.5 0 016.5 5h3A1.5 1.5 0 0111 6.5v3A1.5 1.5 0 019.5 11h-3A1.5 1.5 0 015 9.5v-3zM6.5 6a.5.5 0 00-.5.5v3a.5.5 0 00.5.5h3a.5.5 0 00.5-.5v-3a.5.5 0 00-.5-.5h-3z"/></symbol><symbol fill="currentColor" class="bi bi-cpu-fill" viewBox="0 0 16 16" id="cpu-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 6a.5.5 0 00-.5.5v3a.5.5 0 00.5.5h3a.5.5 0 00.5-.5v-3a.5.5 0 00-.5-.5h-3z"/><path d="M5.5.5a.5.5 0 00-1 0V2A2.5 2.5 0 002 4.5H.5a.5.5 0 000 1H2v1H.5a.5.5 0 000 1H2v1H.5a.5.5 0 000 1H2v1H.5a.5.5 0 000 1H2A2.5 2.5 0 004.5 14v1.5a.5.5 0 001 0V14h1v1.5a.5.5 0 001 0V14h1v1.5a.5.5 0 001 0V14h1v1.5a.5.5 0 001 0V14a2.5 2.5 0 002.5-2.5h1.5a.5.5 0 000-1H14v-1h1.5a.5.5 0 000-1H14v-1h1.5a.5.5 0 000-1H14v-1h1.5a.5.5 0 000-1H14A2.5 2.5 0 0011.5 2V.5a.5.5 0 00-1 0V2h-1V.5a.5.5 0 00-1 0V2h-1V.5a.5.5 0 00-1 0V2h-1V.5zm1 4.5h3A1.5 1.5 0 0111 6.5v3A1.5 1.5 0 019.5 11h-3A1.5 1.5 0 015 9.5v-3A1.5 1.5 0 016.5 5z"/></symbol><symbol fill="currentColor" class="bi bi-credit-card" viewBox="0 0 16 16" id="credit-card" xmlns="http://www.w3.org/2000/svg"><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm2-1a1 1 0 00-1 1v1h14V4a1 1 0 00-1-1H2zm13 4H1v5a1 1 0 001 1h12a1 1 0 001-1V7z"/><path d="M2 10a1 1 0 011-1h1a1 1 0 011 1v1a1 1 0 01-1 1H3a1 1 0 01-1-1v-1z"/></symbol><symbol fill="currentColor" class="bi bi-credit-card-2-back" viewBox="0 0 16 16" id="credit-card-2-back" xmlns="http://www.w3.org/2000/svg"><path d="M11 5.5a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-1z"/><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm13 2v5H1V4a1 1 0 011-1h12a1 1 0 011 1zm-1 9H2a1 1 0 01-1-1v-1h14v1a1 1 0 01-1 1z"/></symbol><symbol fill="currentColor" class="bi bi-credit-card-2-back-fill" viewBox="0 0 16 16" id="credit-card-2-back-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v5H0V4zm11.5 1a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h2a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-2zM0 11v1a2 2 0 002 2h12a2 2 0 002-2v-1H0z"/></symbol><symbol fill="currentColor" class="bi bi-credit-card-2-front" viewBox="0 0 16 16" id="credit-card-2-front" xmlns="http://www.w3.org/2000/svg"><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/><path d="M2 5.5a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-1zm0 3a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zm3 0a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zm3 0a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zm3 0a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-credit-card-2-front-fill" viewBox="0 0 16 16" id="credit-card-2-front-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm2.5 1a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h2a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-2zm0 3a.5.5 0 000 1h5a.5.5 0 000-1h-5zm0 2a.5.5 0 000 1h1a.5.5 0 000-1h-1zm3 0a.5.5 0 000 1h1a.5.5 0 000-1h-1zm3 0a.5.5 0 000 1h1a.5.5 0 000-1h-1zm3 0a.5.5 0 000 1h1a.5.5 0 000-1h-1z"/></symbol><symbol fill="currentColor" class="bi bi-credit-card-fill" viewBox="0 0 16 16" id="credit-card-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v1H0V4zm0 3v5a2 2 0 002 2h12a2 2 0 002-2V7H0zm3 2h1a1 1 0 011 1v1a1 1 0 01-1 1H3a1 1 0 01-1-1v-1a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-crop" viewBox="0 0 16 16" id="crop" xmlns="http://www.w3.org/2000/svg"><path d="M3.5.5A.5.5 0 014 1v13h13a.5.5 0 010 1h-2v2a.5.5 0 01-1 0v-2H3.5a.5.5 0 01-.5-.5V4H1a.5.5 0 010-1h2V1a.5.5 0 01.5-.5zm2.5 3a.5.5 0 01.5-.5h8a.5.5 0 01.5.5v8a.5.5 0 01-1 0V4H6.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-cup" viewBox="0 0 16 16" id="cup" xmlns="http://www.w3.org/2000/svg"><path d="M1 2a1 1 0 011-1h11a1 1 0 011 1v1h.5A1.5 1.5 0 0116 4.5v7a1.5 1.5 0 01-1.5 1.5h-.55a2.5 2.5 0 01-2.45 2h-8A2.5 2.5 0 011 12.5V2zm13 10h.5a.5.5 0 00.5-.5v-7a.5.5 0 00-.5-.5H14v8zM13 2H2v10.5A1.5 1.5 0 003.5 14h8a1.5 1.5 0 001.5-1.5V2z"/></symbol><symbol fill="currentColor" class="bi bi-cup-fill" viewBox="0 0 16 16" id="cup-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1 2a1 1 0 011-1h11a1 1 0 011 1v1h.5A1.5 1.5 0 0116 4.5v7a1.5 1.5 0 01-1.5 1.5h-.55a2.5 2.5 0 01-2.45 2h-8A2.5 2.5 0 011 12.5V2zm13 10h.5a.5.5 0 00.5-.5v-7a.5.5 0 00-.5-.5H14v8z"/></symbol><symbol fill="currentColor" class="bi bi-cup-straw" viewBox="0 0 16 16" id="cup-straw" xmlns="http://www.w3.org/2000/svg"><path d="M13.902.334a.5.5 0 01-.28.65l-2.254.902-.4 1.927c.376.095.715.215.972.367.228.135.56.396.56.82 0 .046-.004.09-.011.132l-.962 9.068a1.28 1.28 0 01-.524.93c-.488.34-1.494.87-3.01.87-1.516 0-2.522-.53-3.01-.87a1.28 1.28 0 01-.524-.93L3.51 5.132A.78.78 0 013.5 5c0-.424.332-.685.56-.82.262-.154.607-.276.99-.372C5.824 3.614 6.867 3.5 8 3.5c.712 0 1.389.045 1.985.127l.464-2.215a.5.5 0 01.303-.356l2.5-1a.5.5 0 01.65.278zM9.768 4.607A13.991 13.991 0 008 4.5c-1.076 0-2.033.11-2.707.278A3.284 3.284 0 004.645 5c.146.073.362.15.648.222C5.967 5.39 6.924 5.5 8 5.5c.571 0 1.109-.03 1.588-.085l.18-.808zm.292 1.756C9.445 6.45 8.742 6.5 8 6.5c-1.133 0-2.176-.114-2.95-.308a5.514 5.514 0 01-.435-.127l.838 8.03c.013.121.06.186.102.215.357.249 1.168.69 2.438.69 1.27 0 2.081-.441 2.438-.69.042-.029.09-.094.102-.215l.852-8.03a5.517 5.517 0 01-.435.127 8.88 8.88 0 01-.89.17zM4.467 4.884s.003.002.005.006l-.005-.006zm7.066 0l-.005.006c.002-.004.005-.006.005-.006zM11.354 5a3.174 3.174 0 00-.604-.21l-.099.445.055-.013c.286-.072.502-.149.648-.222z"/></symbol><symbol fill="currentColor" class="bi bi-currency-bitcoin" viewBox="0 0 16 16" id="currency-bitcoin" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 13v1.25c0 .138.112.25.25.25h1a.25.25 0 00.25-.25V13h.5v1.25c0 .138.112.25.25.25h1a.25.25 0 00.25-.25V13h.084c1.992 0 3.416-1.033 3.416-2.82 0-1.502-1.007-2.323-2.186-2.44v-.088c.97-.242 1.683-.974 1.683-2.19C11.997 3.93 10.847 3 9.092 3H9V1.75a.25.25 0 00-.25-.25h-1a.25.25 0 00-.25.25V3h-.573V1.75a.25.25 0 00-.25-.25H5.75a.25.25 0 00-.25.25V3l-1.998.011a.25.25 0 00-.25.25v.989c0 .137.11.25.248.25l.755-.005a.75.75 0 01.745.75v5.505a.75.75 0 01-.75.75l-.748.011a.25.25 0 00-.25.25v1c0 .138.112.25.25.25L5.5 13zm1.427-8.513h1.719c.906 0 1.438.498 1.438 1.312 0 .871-.575 1.362-1.877 1.362h-1.28V4.487zm0 4.051h1.84c1.137 0 1.756.58 1.756 1.524 0 .953-.626 1.45-2.158 1.45H6.927V8.539z"/></symbol><symbol fill="currentColor" class="bi bi-currency-dollar" viewBox="0 0 16 16" id="currency-dollar" xmlns="http://www.w3.org/2000/svg"><path d="M4 10.781c.148 1.667 1.513 2.85 3.591 3.003V15h1.043v-1.216c2.27-.179 3.678-1.438 3.678-3.3 0-1.59-.947-2.51-2.956-3.028l-.722-.187V3.467c1.122.11 1.879.714 2.07 1.616h1.47c-.166-1.6-1.54-2.748-3.54-2.875V1H7.591v1.233c-1.939.23-3.27 1.472-3.27 3.156 0 1.454.966 2.483 2.661 2.917l.61.162v4.031c-1.149-.17-1.94-.8-2.131-1.718H4zm3.391-3.836c-1.043-.263-1.6-.825-1.6-1.616 0-.944.704-1.641 1.8-1.828v3.495l-.2-.05zm1.591 1.872c1.287.323 1.852.859 1.852 1.769 0 1.097-.826 1.828-2.2 1.939V8.73l.348.086z"/></symbol><symbol fill="currentColor" class="bi bi-currency-euro" viewBox="0 0 16 16" id="currency-euro" xmlns="http://www.w3.org/2000/svg"><path d="M4 9.42h1.063C5.4 12.323 7.317 14 10.34 14c.622 0 1.167-.068 1.659-.185v-1.3c-.484.119-1.045.17-1.659.17-2.1 0-3.455-1.198-3.775-3.264h4.017v-.928H6.497v-.936c0-.11 0-.219.008-.329h4.078v-.927H6.618c.388-1.898 1.719-2.985 3.723-2.985.614 0 1.175.05 1.659.177V2.194A6.617 6.617 0 0010.341 2c-2.928 0-4.82 1.569-5.244 4.3H4v.928h1.01v1.265H4v.928z"/></symbol><symbol fill="currentColor" class="bi bi-currency-exchange" viewBox="0 0 16 16" id="currency-exchange" xmlns="http://www.w3.org/2000/svg"><path d="M0 5a5.002 5.002 0 004.027 4.905 6.46 6.46 0 01.544-2.073C3.695 7.536 3.132 6.864 3 5.91h-.5v-.426h.466V5.05c0-.046 0-.093.004-.135H2.5v-.427h.511C3.236 3.24 4.213 2.5 5.681 2.5c.316 0 .59.031.819.085v.733a3.46 3.46 0 00-.815-.082c-.919 0-1.538.466-1.734 1.252h1.917v.427h-1.98c-.003.046-.003.097-.003.147v.422h1.983v.427H3.93c.118.602.468 1.03 1.005 1.229a6.5 6.5 0 014.97-3.113A5.002 5.002 0 000 5zm16 5.5a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0zm-7.75 1.322c.069.835.746 1.485 1.964 1.562V14h.54v-.62c1.259-.086 1.996-.74 1.996-1.69 0-.865-.563-1.31-1.57-1.54l-.426-.1V8.374c.54.06.884.347.966.745h.948c-.07-.804-.779-1.433-1.914-1.502V7h-.54v.629c-1.076.103-1.808.732-1.808 1.622 0 .787.544 1.288 1.45 1.493l.358.085v1.78c-.554-.08-.92-.376-1.003-.787H8.25zm1.96-1.895c-.532-.12-.82-.364-.82-.732 0-.41.311-.719.824-.809v1.54h-.005zm.622 1.044c.645.145.943.38.943.796 0 .474-.37.8-1.02.86v-1.674l.077.018z"/></symbol><symbol fill="currentColor" class="bi bi-currency-pound" viewBox="0 0 16 16" id="currency-pound" xmlns="http://www.w3.org/2000/svg"><path d="M4 8.585h1.969c.115.465.186.939.186 1.43 0 1.385-.736 2.496-2.075 2.771V14H12v-1.24H6.492v-.129c.825-.525 1.135-1.446 1.135-2.694 0-.465-.07-.913-.168-1.352h3.29v-.972H7.22c-.186-.723-.372-1.455-.372-2.247 0-1.274 1.047-2.066 2.58-2.066a5.32 5.32 0 012.103.465V2.456A5.629 5.629 0 009.348 2C6.865 2 5.322 3.291 5.322 5.366c0 .775.195 1.515.399 2.247H4v.972z"/></symbol><symbol fill="currentColor" class="bi bi-currency-yen" viewBox="0 0 16 16" id="currency-yen" xmlns="http://www.w3.org/2000/svg"><path d="M8.75 14v-2.629h2.446v-.967H8.75v-1.31h2.445v-.967H9.128L12.5 2h-1.699L8.047 7.327h-.086L5.207 2H3.5l3.363 6.127H4.778v.968H7.25v1.31H4.78v.966h2.47V14h1.502z"/></symbol><symbol fill="currentColor" class="bi bi-cursor" viewBox="0 0 16 16" id="cursor" xmlns="http://www.w3.org/2000/svg"><path d="M14.082 2.182a.5.5 0 01.103.557L8.528 15.467a.5.5 0 01-.917-.007L5.57 10.694.803 8.652a.5.5 0 01-.006-.916l12.728-5.657a.5.5 0 01.556.103zM2.25 8.184l3.897 1.67a.5.5 0 01.262.263l1.67 3.897L12.743 3.52 2.25 8.184z"/></symbol><symbol fill="currentColor" class="bi bi-cursor-fill" viewBox="0 0 16 16" id="cursor-fill" xmlns="http://www.w3.org/2000/svg"><path d="M14.082 2.182a.5.5 0 01.103.557L8.528 15.467a.5.5 0 01-.917-.007L5.57 10.694.803 8.652a.5.5 0 01-.006-.916l12.728-5.657a.5.5 0 01.556.103z"/></symbol><symbol fill="currentColor" class="bi bi-cursor-text" viewBox="0 0 16 16" id="cursor-text" xmlns="http://www.w3.org/2000/svg"><path d="M5 2a.5.5 0 01.5-.5c.862 0 1.573.287 2.06.566.174.099.321.198.44.286.119-.088.266-.187.44-.286A4.165 4.165 0 0110.5 1.5a.5.5 0 010 1c-.638 0-1.177.213-1.564.434a3.49 3.49 0 00-.436.294V7.5H9a.5.5 0 010 1h-.5v4.272c.1.08.248.187.436.294.387.221.926.434 1.564.434a.5.5 0 010 1 4.165 4.165 0 01-2.06-.566A4.561 4.561 0 018 13.65a4.561 4.561 0 01-.44.285 4.165 4.165 0 01-2.06.566.5.5 0 010-1c.638 0 1.177-.213 1.564-.434.188-.107.335-.214.436-.294V8.5H7a.5.5 0 010-1h.5V3.228a3.49 3.49 0 00-.436-.294A3.166 3.166 0 005.5 2.5.5.5 0 015 2zm3.352 1.355zm-.704 9.29z"/></symbol><symbol fill="currentColor" class="bi bi-dash" viewBox="0 0 16 16" id="dash" xmlns="http://www.w3.org/2000/svg"><path d="M4 8a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7A.5.5 0 014 8z"/></symbol><symbol fill="currentColor" class="bi bi-dash-circle" viewBox="0 0 16 16" id="dash-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4 8a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7A.5.5 0 014 8z"/></symbol><symbol fill="currentColor" class="bi bi-dash-circle-dotted" viewBox="0 0 16 16" id="dash-circle-dotted" xmlns="http://www.w3.org/2000/svg"><path d="M8 0c-.176 0-.35.006-.523.017l.064.998a7.117 7.117 0 01.918 0l.064-.998A8.113 8.113 0 008 0zM6.44.152c-.346.069-.684.16-1.012.27l.321.948c.287-.098.582-.177.884-.237L6.44.153zm4.132.271a7.946 7.946 0 00-1.011-.27l-.194.98c.302.06.597.14.884.237l.321-.947zm1.873.925a8 8 0 00-.906-.524l-.443.896c.275.136.54.29.793.459l.556-.831zM4.46.824c-.314.155-.616.33-.905.524l.556.83a7.07 7.07 0 01.793-.458L4.46.824zM2.725 1.985c-.262.23-.51.478-.74.74l.752.66c.202-.23.418-.446.648-.648l-.66-.752zm11.29.74a8.058 8.058 0 00-.74-.74l-.66.752c.23.202.447.418.648.648l.752-.66zm1.161 1.735a7.98 7.98 0 00-.524-.905l-.83.556c.169.253.322.518.458.793l.896-.443zM1.348 3.555c-.194.289-.37.591-.524.906l.896.443c.136-.275.29-.54.459-.793l-.831-.556zM.423 5.428a7.945 7.945 0 00-.27 1.011l.98.194c.06-.302.14-.597.237-.884l-.947-.321zM15.848 6.44a7.943 7.943 0 00-.27-1.012l-.948.321c.098.287.177.582.237.884l.98-.194zM.017 7.477a8.113 8.113 0 000 1.046l.998-.064a7.117 7.117 0 010-.918l-.998-.064zM16 8a8.1 8.1 0 00-.017-.523l-.998.064a7.11 7.11 0 010 .918l.998.064A8.1 8.1 0 0016 8zM.152 9.56c.069.346.16.684.27 1.012l.948-.321a6.944 6.944 0 01-.237-.884l-.98.194zm15.425 1.012c.112-.328.202-.666.27-1.011l-.98-.194c-.06.302-.14.597-.237.884l.947.321zM.824 11.54a8 8 0 00.524.905l.83-.556a6.999 6.999 0 01-.458-.793l-.896.443zm13.828.905c.194-.289.37-.591.524-.906l-.896-.443c-.136.275-.29.54-.459.793l.831.556zm-12.667.83c.23.262.478.51.74.74l.66-.752a7.047 7.047 0 01-.648-.648l-.752.66zm11.29.74c.262-.23.51-.478.74-.74l-.752-.66c-.201.23-.418.447-.648.648l.66.752zm-1.735 1.161c.314-.155.616-.33.905-.524l-.556-.83a7.07 7.07 0 01-.793.458l.443.896zm-7.985-.524c.289.194.591.37.906.524l.443-.896a6.998 6.998 0 01-.793-.459l-.556.831zm1.873.925c.328.112.666.202 1.011.27l.194-.98a6.953 6.953 0 01-.884-.237l-.321.947zm4.132.271a7.944 7.944 0 001.012-.27l-.321-.948a6.954 6.954 0 01-.884.237l.194.98zm-2.083.135a8.1 8.1 0 001.046 0l-.064-.998a7.11 7.11 0 01-.918 0l-.064.998zM4.5 7.5a.5.5 0 000 1h7a.5.5 0 000-1h-7z"/></symbol><symbol fill="currentColor" class="bi bi-dash-circle-fill" viewBox="0 0 16 16" id="dash-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM4.5 7.5a.5.5 0 000 1h7a.5.5 0 000-1h-7z"/></symbol><symbol fill="currentColor" class="bi bi-dash-lg" viewBox="0 0 16 16" id="dash-lg" xmlns="http://www.w3.org/2000/svg"><path d="M0 8a1 1 0 011-1h14a1 1 0 110 2H1a1 1 0 01-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-dash-square" viewBox="0 0 16 16" id="dash-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M4 8a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7A.5.5 0 014 8z"/></symbol><symbol fill="currentColor" class="bi bi-dash-square-dotted" viewBox="0 0 16 16" id="dash-square-dotted" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 0c-.166 0-.33.016-.487.048l.194.98A1.51 1.51 0 012.5 1h.458V0H2.5zm2.292 0h-.917v1h.917V0zm1.833 0h-.917v1h.917V0zm1.833 0h-.916v1h.916V0zm1.834 0h-.917v1h.917V0zm1.833 0h-.917v1h.917V0zM13.5 0h-.458v1h.458c.1 0 .199.01.293.029l.194-.981A2.51 2.51 0 0013.5 0zm2.079 1.11a2.511 2.511 0 00-.69-.689l-.556.831c.164.11.305.251.415.415l.83-.556zM1.11.421a2.511 2.511 0 00-.689.69l.831.556c.11-.164.251-.305.415-.415L1.11.422zM16 2.5c0-.166-.016-.33-.048-.487l-.98.194c.018.094.028.192.028.293v.458h1V2.5zM.048 2.013A2.51 2.51 0 000 2.5v.458h1V2.5c0-.1.01-.199.029-.293l-.981-.194zM0 3.875v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zM0 5.708v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zM0 7.542v.916h1v-.916H0zm15 .916h1v-.916h-1v.916zM0 9.375v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zm-16 .916v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zm-16 .917v.458c0 .166.016.33.048.487l.98-.194A1.51 1.51 0 011 13.5v-.458H0zm16 .458v-.458h-1v.458c0 .1-.01.199-.029.293l.981.194c.032-.158.048-.32.048-.487zM.421 14.89c.183.272.417.506.69.689l.556-.831a1.51 1.51 0 01-.415-.415l-.83.556zm14.469.689c.272-.183.506-.417.689-.69l-.831-.556c-.11.164-.251.305-.415.415l.556.83zm-12.877.373c.158.032.32.048.487.048h.458v-1H2.5c-.1 0-.199-.01-.293-.029l-.194.981zM13.5 16c.166 0 .33-.016.487-.048l-.194-.98A1.51 1.51 0 0113.5 15h-.458v1h.458zm-9.625 0h.917v-1h-.917v1zm1.833 0h.917v-1h-.917v1zm1.834 0h.916v-1h-.916v1zm1.833 0h.917v-1h-.917v1zm1.833 0h.917v-1h-.917v1zM4.5 7.5a.5.5 0 000 1h7a.5.5 0 000-1h-7z"/></symbol><symbol fill="currentColor" class="bi bi-dash-square-fill" viewBox="0 0 16 16" id="dash-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm2.5 7.5h7a.5.5 0 010 1h-7a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-diagram-2" viewBox="0 0 16 16" id="diagram-2" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 3.5A1.5 1.5 0 017.5 2h1A1.5 1.5 0 0110 3.5v1A1.5 1.5 0 018.5 6v1H11a.5.5 0 01.5.5v1a.5.5 0 01-1 0V8h-5v.5a.5.5 0 01-1 0v-1A.5.5 0 015 7h2.5V6A1.5 1.5 0 016 4.5v-1zM8.5 5a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1zM3 11.5A1.5 1.5 0 014.5 10h1A1.5 1.5 0 017 11.5v1A1.5 1.5 0 015.5 14h-1A1.5 1.5 0 013 12.5v-1zm1.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zm4.5.5a1.5 1.5 0 011.5-1.5h1a1.5 1.5 0 011.5 1.5v1a1.5 1.5 0 01-1.5 1.5h-1A1.5 1.5 0 019 12.5v-1zm1.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-diagram-2-fill" viewBox="0 0 16 16" id="diagram-2-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 3.5A1.5 1.5 0 017.5 2h1A1.5 1.5 0 0110 3.5v1A1.5 1.5 0 018.5 6v1H11a.5.5 0 01.5.5v1a.5.5 0 01-1 0V8h-5v.5a.5.5 0 01-1 0v-1A.5.5 0 015 7h2.5V6A1.5 1.5 0 016 4.5v-1zm-3 8A1.5 1.5 0 014.5 10h1A1.5 1.5 0 017 11.5v1A1.5 1.5 0 015.5 14h-1A1.5 1.5 0 013 12.5v-1zm6 0a1.5 1.5 0 011.5-1.5h1a1.5 1.5 0 011.5 1.5v1a1.5 1.5 0 01-1.5 1.5h-1A1.5 1.5 0 019 12.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-diagram-3" viewBox="0 0 16 16" id="diagram-3" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 3.5A1.5 1.5 0 017.5 2h1A1.5 1.5 0 0110 3.5v1A1.5 1.5 0 018.5 6v1H14a.5.5 0 01.5.5v1a.5.5 0 01-1 0V8h-5v.5a.5.5 0 01-1 0V8h-5v.5a.5.5 0 01-1 0v-1A.5.5 0 012 7h5.5V6A1.5 1.5 0 016 4.5v-1zM8.5 5a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1zM0 11.5A1.5 1.5 0 011.5 10h1A1.5 1.5 0 014 11.5v1A1.5 1.5 0 012.5 14h-1A1.5 1.5 0 010 12.5v-1zm1.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zm4.5.5A1.5 1.5 0 017.5 10h1a1.5 1.5 0 011.5 1.5v1A1.5 1.5 0 018.5 14h-1A1.5 1.5 0 016 12.5v-1zm1.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zm4.5.5a1.5 1.5 0 011.5-1.5h1a1.5 1.5 0 011.5 1.5v1a1.5 1.5 0 01-1.5 1.5h-1a1.5 1.5 0 01-1.5-1.5v-1zm1.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-diagram-3-fill" viewBox="0 0 16 16" id="diagram-3-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 3.5A1.5 1.5 0 017.5 2h1A1.5 1.5 0 0110 3.5v1A1.5 1.5 0 018.5 6v1H14a.5.5 0 01.5.5v1a.5.5 0 01-1 0V8h-5v.5a.5.5 0 01-1 0V8h-5v.5a.5.5 0 01-1 0v-1A.5.5 0 012 7h5.5V6A1.5 1.5 0 016 4.5v-1zm-6 8A1.5 1.5 0 011.5 10h1A1.5 1.5 0 014 11.5v1A1.5 1.5 0 012.5 14h-1A1.5 1.5 0 010 12.5v-1zm6 0A1.5 1.5 0 017.5 10h1a1.5 1.5 0 011.5 1.5v1A1.5 1.5 0 018.5 14h-1A1.5 1.5 0 016 12.5v-1zm6 0a1.5 1.5 0 011.5-1.5h1a1.5 1.5 0 011.5 1.5v1a1.5 1.5 0 01-1.5 1.5h-1a1.5 1.5 0 01-1.5-1.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-diamond" viewBox="0 0 16 16" id="diamond" xmlns="http://www.w3.org/2000/svg"><path d="M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.482 1.482 0 010-2.098L6.95.435zm1.4.7a.495.495 0 00-.7 0L1.134 7.65a.495.495 0 000 .7l6.516 6.516a.495.495 0 00.7 0l6.516-6.516a.495.495 0 000-.7L8.35 1.134z"/></symbol><symbol fill="currentColor" class="bi bi-diamond-fill" viewBox="0 0 16 16" id="diamond-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.482 1.482 0 010-2.098L6.95.435z"/></symbol><symbol fill="currentColor" class="bi bi-diamond-half" viewBox="0 0 16 16" id="diamond-half" xmlns="http://www.w3.org/2000/svg"><path d="M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098L9.05.435zM8 .989c.127 0 .253.049.35.145l6.516 6.516a.495.495 0 010 .7L8.35 14.866a.493.493 0 01-.35.145V.989z"/></symbol><symbol fill="currentColor" class="bi bi-dice-1" viewBox="0 0 16 16" id="dice-1" xmlns="http://www.w3.org/2000/svg"><circle cx="8" cy="8" r="1.5"/><path d="M13 1a2 2 0 012 2v10a2 2 0 01-2 2H3a2 2 0 01-2-2V3a2 2 0 012-2h10zM3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3z"/></symbol><symbol fill="currentColor" class="bi bi-dice-1-fill" viewBox="0 0 16 16" id="dice-1-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3zm5 9.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-dice-2" viewBox="0 0 16 16" id="dice-2" xmlns="http://www.w3.org/2000/svg"><path d="M13 1a2 2 0 012 2v10a2 2 0 01-2 2H3a2 2 0 01-2-2V3a2 2 0 012-2h10zM3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3z"/><path d="M5.5 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm8 8a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-dice-2-fill" viewBox="0 0 16 16" id="dice-2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 3a3 3 0 013-3h10a3 3 0 013 3v10a3 3 0 01-3 3H3a3 3 0 01-3-3V3zm5.5 1a1.5 1.5 0 10-3 0 1.5 1.5 0 003 0zm6.5 9.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/></symbol><symbol fill="currentColor" class="bi bi-dice-3" viewBox="0 0 16 16" id="dice-3" xmlns="http://www.w3.org/2000/svg"><path d="M13 1a2 2 0 012 2v10a2 2 0 01-2 2H3a2 2 0 01-2-2V3a2 2 0 012-2h10zM3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3z"/><path d="M5.5 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm8 8a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm-4-4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-dice-3-fill" viewBox="0 0 16 16" id="dice-3-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3zm2.5 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm8 8a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM8 9.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-dice-4" viewBox="0 0 16 16" id="dice-4" xmlns="http://www.w3.org/2000/svg"><path d="M13 1a2 2 0 012 2v10a2 2 0 01-2 2H3a2 2 0 01-2-2V3a2 2 0 012-2h10zM3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3z"/><path d="M5.5 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm8 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0 8a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm-8 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-dice-4-fill" viewBox="0 0 16 16" id="dice-4-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3zm1 5.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm8 0a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm1.5 6.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM4 13.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-dice-5" viewBox="0 0 16 16" id="dice-5" xmlns="http://www.w3.org/2000/svg"><path d="M13 1a2 2 0 012 2v10a2 2 0 01-2 2H3a2 2 0 01-2-2V3a2 2 0 012-2h10zM3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3z"/><path d="M5.5 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm8 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0 8a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm-8 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm4-4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-dice-5-fill" viewBox="0 0 16 16" id="dice-5-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3zm2.5 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm8 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM12 13.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zM5.5 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM8 9.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-dice-6" viewBox="0 0 16 16" id="dice-6" xmlns="http://www.w3.org/2000/svg"><path d="M13 1a2 2 0 012 2v10a2 2 0 01-2 2H3a2 2 0 01-2-2V3a2 2 0 012-2h10zM3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3z"/><path d="M5.5 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm8 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0 8a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0-4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm-8 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0-4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-dice-6-fill" viewBox="0 0 16 16" id="dice-6-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3zm1 5.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm8 0a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm1.5 6.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM12 9.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zM5.5 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM4 9.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-disc" viewBox="0 0 16 16" id="disc" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M10 8a2 2 0 11-4 0 2 2 0 014 0zM8 4a4 4 0 00-4 4 .5.5 0 01-1 0 5 5 0 015-5 .5.5 0 010 1zm4.5 3.5a.5.5 0 01.5.5 5 5 0 01-5 5 .5.5 0 010-1 4 4 0 004-4 .5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-disc-fill" viewBox="0 0 16 16" id="disc-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-6 0a2 2 0 10-4 0 2 2 0 004 0zM4 8a4 4 0 014-4 .5.5 0 000-1 5 5 0 00-5 5 .5.5 0 001 0zm9 0a.5.5 0 10-1 0 4 4 0 01-4 4 .5.5 0 000 1 5 5 0 005-5z"/></symbol><symbol fill="currentColor" class="bi bi-discord" viewBox="0 0 16 16" id="discord" xmlns="http://www.w3.org/2000/svg"><path d="M6.552 6.712c-.456 0-.816.4-.816.888s.368.888.816.888c.456 0 .816-.4.816-.888.008-.488-.36-.888-.816-.888zm2.92 0c-.456 0-.816.4-.816.888s.368.888.816.888c.456 0 .816-.4.816-.888s-.36-.888-.816-.888z"/><path d="M13.36 0H2.64C1.736 0 1 .736 1 1.648v10.816c0 .912.736 1.648 1.64 1.648h9.072l-.424-1.48 1.024.952.968.896L15 16V1.648C15 .736 14.264 0 13.36 0zm-3.088 10.448s-.288-.344-.528-.648c1.048-.296 1.448-.952 1.448-.952-.328.216-.64.368-.92.472-.4.168-.784.28-1.16.344a5.604 5.604 0 01-2.072-.008 6.716 6.716 0 01-1.176-.344 4.688 4.688 0 01-.584-.272c-.024-.016-.048-.024-.072-.04-.016-.008-.024-.016-.032-.024-.144-.08-.224-.136-.224-.136s.384.64 1.4.944c-.24.304-.536.664-.536.664-1.768-.056-2.44-1.216-2.44-1.216 0-2.576 1.152-4.664 1.152-4.664 1.152-.864 2.248-.84 2.248-.84l.08.096c-1.44.416-2.104 1.048-2.104 1.048s.176-.096.472-.232c.856-.376 1.536-.48 1.816-.504.048-.008.088-.016.136-.016a6.521 6.521 0 014.024.752s-.632-.6-1.992-1.016l.112-.128s1.096-.024 2.248.84c0 0 1.152 2.088 1.152 4.664 0 0-.68 1.16-2.448 1.216z"/></symbol><symbol fill="currentColor" class="bi bi-display" viewBox="0 0 16 16" id="display" xmlns="http://www.w3.org/2000/svg"><path d="M0 4s0-2 2-2h12s2 0 2 2v6s0 2-2 2h-4c0 .667.083 1.167.25 1.5H11a.5.5 0 010 1H5a.5.5 0 010-1h.75c.167-.333.25-.833.25-1.5H2s-2 0-2-2V4zm1.398-.855a.758.758 0 00-.254.302A1.46 1.46 0 001 4.01V10c0 .325.078.502.145.602.07.105.17.188.302.254a1.464 1.464 0 00.538.143L2.01 11H14c.325 0 .502-.078.602-.145a.758.758 0 00.254-.302 1.464 1.464 0 00.143-.538L15 9.99V4c0-.325-.078-.502-.145-.602a.757.757 0 00-.302-.254A1.46 1.46 0 0013.99 3H2c-.325 0-.502.078-.602.145z"/></symbol><symbol fill="currentColor" class="bi bi-display-fill" viewBox="0 0 16 16" id="display-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 12c0 .667-.083 1.167-.25 1.5H5a.5.5 0 000 1h6a.5.5 0 000-1h-.75c-.167-.333-.25-.833-.25-1.5h4c2 0 2-2 2-2V4c0-2-2-2-2-2H2C0 2 0 4 0 4v6c0 2 2 2 2 2h4z"/></symbol><symbol fill="currentColor" class="bi bi-distribute-horizontal" viewBox="0 0 16 16" id="distribute-horizontal" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M14.5 1a.5.5 0 00-.5.5v13a.5.5 0 001 0v-13a.5.5 0 00-.5-.5zm-13 0a.5.5 0 00-.5.5v13a.5.5 0 001 0v-13a.5.5 0 00-.5-.5z"/><path d="M6 13a1 1 0 001 1h2a1 1 0 001-1V3a1 1 0 00-1-1H7a1 1 0 00-1 1v10z"/></symbol><symbol fill="currentColor" class="bi bi-distribute-vertical" viewBox="0 0 16 16" id="distribute-vertical" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 1.5a.5.5 0 00.5.5h13a.5.5 0 000-1h-13a.5.5 0 00-.5.5zm0 13a.5.5 0 00.5.5h13a.5.5 0 000-1h-13a.5.5 0 00-.5.5z"/><path d="M2 7a1 1 0 011-1h10a1 1 0 011 1v2a1 1 0 01-1 1H3a1 1 0 01-1-1V7z"/></symbol><symbol fill="currentColor" class="bi bi-door-closed" viewBox="0 0 16 16" id="door-closed" xmlns="http://www.w3.org/2000/svg"><path d="M3 2a1 1 0 011-1h8a1 1 0 011 1v13h1.5a.5.5 0 010 1h-13a.5.5 0 010-1H3V2zm1 13h8V2H4v13z"/><path d="M9 9a1 1 0 102 0 1 1 0 00-2 0z"/></symbol><symbol fill="currentColor" class="bi bi-door-closed-fill" viewBox="0 0 16 16" id="door-closed-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 1a1 1 0 011 1v13h1.5a.5.5 0 010 1h-13a.5.5 0 010-1H3V2a1 1 0 011-1h8zm-2 9a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-door-open" viewBox="0 0 16 16" id="door-open" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 10c-.276 0-.5-.448-.5-1s.224-1 .5-1 .5.448.5 1-.224 1-.5 1z"/><path d="M10.828.122A.5.5 0 0111 .5V1h.5A1.5 1.5 0 0113 2.5V15h1.5a.5.5 0 010 1h-13a.5.5 0 010-1H3V1.5a.5.5 0 01.43-.495l7-1a.5.5 0 01.398.117zM11.5 2H11v13h1V2.5a.5.5 0 00-.5-.5zM4 1.934V15h6V1.077l-6 .857z"/></symbol><symbol fill="currentColor" class="bi bi-door-open-fill" viewBox="0 0 16 16" id="door-open-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 15a.5.5 0 000 1h13a.5.5 0 000-1H13V2.5A1.5 1.5 0 0011.5 1H11V.5a.5.5 0 00-.57-.495l-7 1A.5.5 0 003 1.5V15H1.5zM11 2h.5a.5.5 0 01.5.5V15h-1V2zm-2.5 8c-.276 0-.5-.448-.5-1s.224-1 .5-1 .5.448.5 1-.224 1-.5 1z"/></symbol><symbol fill="currentColor" class="bi bi-dot" viewBox="0 0 16 16" id="dot" xmlns="http://www.w3.org/2000/svg"><path d="M8 9.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/></symbol><symbol fill="currentColor" class="bi bi-download" viewBox="0 0 16 16" id="download" xmlns="http://www.w3.org/2000/svg"><path d="M.5 9.9a.5.5 0 01.5.5v2.5a1 1 0 001 1h12a1 1 0 001-1v-2.5a.5.5 0 011 0v2.5a2 2 0 01-2 2H2a2 2 0 01-2-2v-2.5a.5.5 0 01.5-.5z"/><path d="M7.646 11.854a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 10.293V1.5a.5.5 0 00-1 0v8.793L5.354 8.146a.5.5 0 10-.708.708l3 3z"/></symbol><symbol fill="currentColor" class="bi bi-droplet" viewBox="0 0 16 16" id="droplet" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.21.8C7.69.295 8 0 8 0c.109.363.234.708.371 1.038.812 1.946 2.073 3.35 3.197 4.6C12.878 7.096 14 8.345 14 10a6 6 0 01-12 0C2 6.668 5.58 2.517 7.21.8zm.413 1.021A31.25 31.25 0 005.794 3.99c-.726.95-1.436 2.008-1.96 3.07C3.304 8.133 3 9.138 3 10a5 5 0 0010 0c0-1.201-.796-2.157-2.181-3.7l-.03-.032C9.75 5.11 8.5 3.72 7.623 1.82z"/><path fill-rule="evenodd" d="M4.553 7.776c.82-1.641 1.717-2.753 2.093-3.13l.708.708c-.29.29-1.128 1.311-1.907 2.87l-.894-.448z"/></symbol><symbol fill="currentColor" class="bi bi-droplet-fill" viewBox="0 0 16 16" id="droplet-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 16a6 6 0 006-6c0-1.655-1.122-2.904-2.432-4.362C10.254 4.176 8.75 2.503 8 0c0 0-6 5.686-6 10a6 6 0 006 6zM6.646 4.646c-.376.377-1.272 1.489-2.093 3.13l.894.448c.78-1.559 1.616-2.58 1.907-2.87l-.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-droplet-half" viewBox="0 0 16 16" id="droplet-half" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.21.8C7.69.295 8 0 8 0c.109.363.234.708.371 1.038.812 1.946 2.073 3.35 3.197 4.6C12.878 7.096 14 8.345 14 10a6 6 0 01-12 0C2 6.668 5.58 2.517 7.21.8zm.413 1.021A31.25 31.25 0 005.794 3.99c-.726.95-1.436 2.008-1.96 3.07C3.304 8.133 3 9.138 3 10c0 0 2.5 1.5 5 .5s5-.5 5-.5c0-1.201-.796-2.157-2.181-3.7l-.03-.032C9.75 5.11 8.5 3.72 7.623 1.82z"/><path fill-rule="evenodd" d="M4.553 7.776c.82-1.641 1.717-2.753 2.093-3.13l.708.708c-.29.29-1.128 1.311-1.907 2.87l-.894-.448z"/></symbol><symbol fill="currentColor" class="bi bi-earbuds" viewBox="0 0 16 16" id="earbuds" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.825 4.138c.596 2.141-.36 3.593-2.389 4.117a4.432 4.432 0 01-2.018.054c-.048-.01.9 2.778 1.522 4.61l.41 1.205a.52.52 0 01-.346.659l-.593.19a.548.548 0 01-.69-.34L.184 6.99c-.696-2.137.662-4.309 2.564-4.8 2.029-.523 3.402 0 4.076 1.948zm-.868 2.221c.43-.112.561-.993.292-1.969-.269-.975-.836-1.675-1.266-1.563-.43.112-.561.994-.292 1.969.269.975.836 1.675 1.266 1.563zm3.218-2.221c-.596 2.141.36 3.593 2.389 4.117a4.434 4.434 0 002.018.054c.048-.01-.9 2.778-1.522 4.61l-.41 1.205a.52.52 0 00.346.659l.593.19c.289.092.6-.06.69-.34l2.536-7.643c.696-2.137-.662-4.309-2.564-4.8-2.029-.523-3.402 0-4.076 1.948zm.868 2.221c-.43-.112-.561-.993-.292-1.969.269-.975.836-1.675 1.266-1.563.43.112.561.994.292 1.969-.269.975-.836 1.675-1.266 1.563z"/></symbol><symbol fill="currentColor" class="bi bi-easel" viewBox="0 0 16 16" id="easel" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a.5.5 0 01.473.337L9.046 2H14a1 1 0 011 1v7a1 1 0 01-1 1h-1.85l1.323 3.837a.5.5 0 11-.946.326L11.092 11H8.5v3a.5.5 0 01-1 0v-3H4.908l-1.435 4.163a.5.5 0 11-.946-.326L3.85 11H2a1 1 0 01-1-1V3a1 1 0 011-1h4.954L7.527.337A.5.5 0 018 0zM2 3v7h12V3H2z"/></symbol><symbol fill="currentColor" class="bi bi-easel-fill" viewBox="0 0 16 16" id="easel-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.473.337a.5.5 0 00-.946 0L6.954 2H2a1 1 0 00-1 1v7a1 1 0 001 1h1.85l-1.323 3.837a.5.5 0 10.946.326L4.908 11H7.5v2.5a.5.5 0 001 0V11h2.592l1.435 4.163a.5.5 0 00.946-.326L12.15 11H14a1 1 0 001-1V3a1 1 0 00-1-1H9.046L8.473.337z"/></symbol><symbol fill="currentColor" class="bi bi-egg" viewBox="0 0 16 16" id="egg" xmlns="http://www.w3.org/2000/svg"><path d="M8 15a5 5 0 01-5-5c0-1.956.69-4.286 1.742-6.12.524-.913 1.112-1.658 1.704-2.164C7.044 1.206 7.572 1 8 1c.428 0 .956.206 1.554.716.592.506 1.18 1.251 1.704 2.164C12.31 5.714 13 8.044 13 10a5 5 0 01-5 5zm0 1a6 6 0 006-6c0-4.314-3-10-6-10S2 5.686 2 10a6 6 0 006 6z"/></symbol><symbol fill="currentColor" class="bi bi-egg-fill" viewBox="0 0 16 16" id="egg-fill" xmlns="http://www.w3.org/2000/svg"><path d="M14 10a6 6 0 01-12 0C2 5.686 5 0 8 0s6 5.686 6 10z"/></symbol><symbol fill="currentColor" class="bi bi-egg-fried" viewBox="0 0 16 16" id="egg-fried" xmlns="http://www.w3.org/2000/svg"><path d="M8 11a3 3 0 100-6 3 3 0 000 6z"/><path d="M13.997 5.17a5 5 0 00-8.101-4.09A5 5 0 001.28 9.342a5 5 0 008.336 5.109 3.5 3.5 0 005.201-4.065 3.001 3.001 0 00-.822-5.216zm-1-.034a1 1 0 00.668.977 2.001 2.001 0 01.547 3.478 1 1 0 00-.341 1.113 2.5 2.5 0 01-3.715 2.905 1 1 0 00-1.262.152 4 4 0 01-6.67-4.087 1 1 0 00-.2-1 4 4 0 013.693-6.61 1 1 0 00.8-.2 4 4 0 016.48 3.273z"/></symbol><symbol fill="currentColor" class="bi bi-eject" viewBox="0 0 16 16" id="eject" xmlns="http://www.w3.org/2000/svg"><path d="M7.27 1.047a1 1 0 011.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H1.656C.78 9.5.326 8.455.926 7.816L7.27 1.047zM14.346 8.5L8 1.731 1.654 8.5h12.692zM.5 11.5a1 1 0 011-1h13a1 1 0 011 1v1a1 1 0 01-1 1h-13a1 1 0 01-1-1v-1zm14 0h-13v1h13v-1z"/></symbol><symbol fill="currentColor" class="bi bi-eject-fill" viewBox="0 0 16 16" id="eject-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.27 1.047a1 1 0 011.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H1.656C.78 9.5.326 8.455.926 7.816L7.27 1.047zM.5 11.5a1 1 0 011-1h13a1 1 0 011 1v1a1 1 0 01-1 1h-13a1 1 0 01-1-1v-1z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-angry" viewBox="0 0 16 16" id="emoji-angry" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4.285 12.433a.5.5 0 00.683-.183A3.498 3.498 0 018 10.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 00.866-.5A4.498 4.498 0 008 9.5a4.5 4.5 0 00-3.898 2.25.5.5 0 00.183.683zm6.991-8.38a.5.5 0 11.448.894l-1.009.504c.176.27.285.64.285 1.049 0 .828-.448 1.5-1 1.5s-1-.672-1-1.5c0-.247.04-.48.11-.686a.502.502 0 01.166-.761l2-1zm-6.552 0a.5.5 0 00-.448.894l1.009.504A1.94 1.94 0 005 6.5C5 7.328 5.448 8 6 8s1-.672 1-1.5c0-.247-.04-.48-.11-.686a.502.502 0 00-.166-.761l-2-1z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-angry-fill" viewBox="0 0 16 16" id="emoji-angry-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM4.053 4.276a.5.5 0 01.67-.223l2 1a.5.5 0 01.166.76c.071.206.111.44.111.687C7 7.328 6.552 8 6 8s-1-.672-1-1.5c0-.408.109-.778.285-1.049l-1.009-.504a.5.5 0 01-.223-.67zm.232 8.157a.5.5 0 01-.183-.683A4.498 4.498 0 018 9.5a4.5 4.5 0 013.898 2.25.5.5 0 11-.866.5A3.498 3.498 0 008 10.5a3.498 3.498 0 00-3.032 1.75.5.5 0 01-.683.183zM10 8c-.552 0-1-.672-1-1.5 0-.247.04-.48.11-.686a.502.502 0 01.166-.761l2-1a.5.5 0 11.448.894l-1.009.504c.176.27.285.64.285 1.049 0 .828-.448 1.5-1 1.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-dizzy" viewBox="0 0 16 16" id="emoji-dizzy" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M9.146 5.146a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 01.708.708l-.647.646.647.646a.5.5 0 01-.708.708l-.646-.647-.646.647a.5.5 0 11-.708-.708l.647-.646-.647-.646a.5.5 0 010-.708zm-5 0a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 11.708.708l-.647.646.647.646a.5.5 0 11-.708.708L5.5 7.207l-.646.647a.5.5 0 11-.708-.708l.647-.646-.647-.646a.5.5 0 010-.708zM10 11a2 2 0 11-4 0 2 2 0 014 0z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-dizzy-fill" viewBox="0 0 16 16" id="emoji-dizzy-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM4.146 5.146a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 11.708.708l-.647.646.647.646a.5.5 0 11-.708.708L5.5 7.207l-.646.647a.5.5 0 11-.708-.708l.647-.646-.647-.646a.5.5 0 010-.708zm5 0a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 01.708.708l-.647.646.647.646a.5.5 0 01-.708.708l-.646-.647-.646.647a.5.5 0 11-.708-.708l.647-.646-.647-.646a.5.5 0 010-.708zM8 13a2 2 0 110-4 2 2 0 010 4z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-expressionless" viewBox="0 0 16 16" id="emoji-expressionless" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4 10.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm5 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-expressionless-fill" viewBox="0 0 16 16" id="emoji-expressionless-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM4.5 6h2a.5.5 0 010 1h-2a.5.5 0 010-1zm5 0h2a.5.5 0 010 1h-2a.5.5 0 010-1zm-5 4h7a.5.5 0 010 1h-7a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-frown" viewBox="0 0 16 16" id="emoji-frown" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4.285 12.433a.5.5 0 00.683-.183A3.498 3.498 0 018 10.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 00.866-.5A4.498 4.498 0 008 9.5a4.5 4.5 0 00-3.898 2.25.5.5 0 00.183.683zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm4 0c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-frown-fill" viewBox="0 0 16 16" id="emoji-frown-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm-2.715 5.933a.5.5 0 01-.183-.683A4.498 4.498 0 018 9.5a4.5 4.5 0 013.898 2.25.5.5 0 01-.866.5A3.498 3.498 0 008 10.5a3.498 3.498 0 00-3.032 1.75.5.5 0 01-.683.183zM10 8c-.552 0-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5S10.552 8 10 8z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-heart-eyes" viewBox="0 0 16 16" id="emoji-heart-eyes" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M11.315 10.014a.5.5 0 01.548.736A4.498 4.498 0 017.965 13a4.498 4.498 0 01-3.898-2.25.5.5 0 01.548-.736h.005l.017.005.067.015.252.055c.215.046.515.108.857.169.693.124 1.522.242 2.152.242.63 0 1.46-.118 2.152-.242a26.58 26.58 0 001.109-.224l.067-.015.017-.004.005-.002zM4.756 4.566c.763-1.424 4.02-.12.952 3.434-4.496-1.596-2.35-4.298-.952-3.434zm6.488 0c1.398-.864 3.544 1.838-.952 3.434-3.067-3.554.19-4.858.952-3.434z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-heart-eyes-fill" viewBox="0 0 16 16" id="emoji-heart-eyes-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a8 8 0 100 16A8 8 0 008 0zM4.756 4.566c.763-1.424 4.02-.12.952 3.434-4.496-1.596-2.35-4.298-.952-3.434zm6.559 5.448a.5.5 0 01.548.736A4.498 4.498 0 017.965 13a4.498 4.498 0 01-3.898-2.25.5.5 0 01.548-.736h.005l.017.005.067.015.252.055c.215.046.515.108.857.169.693.124 1.522.242 2.152.242.63 0 1.46-.118 2.152-.242a26.58 26.58 0 001.109-.224l.067-.015.017-.004.005-.002zm-.07-5.448c1.397-.864 3.543 1.838-.953 3.434-3.067-3.554.19-4.858.952-3.434z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-laughing" viewBox="0 0 16 16" id="emoji-laughing" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M12.331 9.5a1 1 0 010 1A4.998 4.998 0 018 13a4.998 4.998 0 01-4.33-2.5A1 1 0 014.535 9h6.93a1 1 0 01.866.5zM7 6.5c0 .828-.448 0-1 0s-1 .828-1 0S5.448 5 6 5s1 .672 1 1.5zm4 0c0 .828-.448 0-1 0s-1 .828-1 0S9.448 5 10 5s1 .672 1 1.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-laughing-fill" viewBox="0 0 16 16" id="emoji-laughing-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM7 6.5c0 .501-.164.396-.415.235C6.42 6.629 6.218 6.5 6 6.5c-.218 0-.42.13-.585.235C5.164 6.896 5 7 5 6.5 5 5.672 5.448 5 6 5s1 .672 1 1.5zm5.331 3a1 1 0 010 1A4.998 4.998 0 018 13a4.998 4.998 0 01-4.33-2.5A1 1 0 014.535 9h6.93a1 1 0 01.866.5zm-1.746-2.765C10.42 6.629 10.218 6.5 10 6.5c-.218 0-.42.13-.585.235C9.164 6.896 9 7 9 6.5c0-.828.448-1.5 1-1.5s1 .672 1 1.5c0 .501-.164.396-.415.235z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-neutral" viewBox="0 0 16 16" id="emoji-neutral" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4 10.5a.5.5 0 00.5.5h7a.5.5 0 000-1h-7a.5.5 0 00-.5.5zm3-4C7 5.672 6.552 5 6 5s-1 .672-1 1.5S5.448 8 6 8s1-.672 1-1.5zm4 0c0-.828-.448-1.5-1-1.5s-1 .672-1 1.5S9.448 8 10 8s1-.672 1-1.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-neutral-fill" viewBox="0 0 16 16" id="emoji-neutral-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm-3 4a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zM10 8c-.552 0-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5S10.552 8 10 8z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-smile" viewBox="0 0 16 16" id="emoji-smile" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4.285 9.567a.5.5 0 01.683.183A3.498 3.498 0 008 11.5a3.498 3.498 0 003.032-1.75.5.5 0 11.866.5A4.498 4.498 0 018 12.5a4.498 4.498 0 01-3.898-2.25.5.5 0 01.183-.683zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm4 0c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-smile-fill" viewBox="0 0 16 16" id="emoji-smile-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zM4.285 9.567a.5.5 0 01.683.183A3.498 3.498 0 008 11.5a3.498 3.498 0 003.032-1.75.5.5 0 11.866.5A4.498 4.498 0 018 12.5a4.498 4.498 0 01-3.898-2.25.5.5 0 01.183-.683zM10 8c-.552 0-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5S10.552 8 10 8z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-smile-upside-down" viewBox="0 0 16 16" id="emoji-smile-upside-down" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a7 7 0 100 14A7 7 0 008 1zm0-1a8 8 0 110 16A8 8 0 018 0z"/><path d="M4.285 6.433a.5.5 0 00.683-.183A3.498 3.498 0 018 4.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 00.866-.5A4.498 4.498 0 008 3.5a4.5 4.5 0 00-3.898 2.25.5.5 0 00.183.683zM7 9.5C7 8.672 6.552 8 6 8s-1 .672-1 1.5.448 1.5 1 1.5 1-.672 1-1.5zm4 0c0-.828-.448-1.5-1-1.5s-1 .672-1 1.5.448 1.5 1 1.5 1-.672 1-1.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-smile-upside-down-fill" viewBox="0 0 16 16" id="emoji-smile-upside-down-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a8 8 0 110 16A8 8 0 018 0zM7 9.5C7 8.672 6.552 8 6 8s-1 .672-1 1.5.448 1.5 1 1.5 1-.672 1-1.5zM4.285 6.433a.5.5 0 00.683-.183A3.498 3.498 0 018 4.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 00.866-.5A4.498 4.498 0 008 3.5a4.5 4.5 0 00-3.898 2.25.5.5 0 00.183.683zM10 8c-.552 0-1 .672-1 1.5s.448 1.5 1 1.5 1-.672 1-1.5S10.552 8 10 8z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-sunglasses" viewBox="0 0 16 16" id="emoji-sunglasses" xmlns="http://www.w3.org/2000/svg"><path d="M4.968 9.75a.5.5 0 10-.866.5A4.498 4.498 0 008 12.5a4.5 4.5 0 003.898-2.25.5.5 0 10-.866-.5A3.498 3.498 0 018 11.5a3.498 3.498 0 01-3.032-1.75zM7 5.116V5a1 1 0 00-1-1H3.28a1 1 0 00-.97 1.243l.311 1.242A2 2 0 004.561 8H5a2 2 0 001.994-1.839A2.99 2.99 0 018 6c.393 0 .74.064 1.006.161A2 2 0 0011 8h.438a2 2 0 001.94-1.515l.311-1.242A1 1 0 0012.72 4H10a1 1 0 00-1 1v.116A4.22 4.22 0 008 5c-.35 0-.69.04-1 .116z"/><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-1 0A7 7 0 101 8a7 7 0 0014 0z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-sunglasses-fill" viewBox="0 0 16 16" id="emoji-sunglasses-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM2.31 5.243A1 1 0 013.28 4H6a1 1 0 011 1v.116A4.22 4.22 0 018 5c.35 0 .69.04 1 .116V5a1 1 0 011-1h2.72a1 1 0 01.97 1.243l-.311 1.242A2 2 0 0111.439 8H11a2 2 0 01-1.994-1.839A2.99 2.99 0 008 6c-.393 0-.74.064-1.006.161A2 2 0 015 8h-.438a2 2 0 01-1.94-1.515L2.31 5.243zM4.969 9.75A3.498 3.498 0 008 11.5a3.498 3.498 0 003.032-1.75.5.5 0 11.866.5A4.498 4.498 0 018 12.5a4.498 4.498 0 01-3.898-2.25.5.5 0 01.866-.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-wink" viewBox="0 0 16 16" id="emoji-wink" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4.285 9.567a.5.5 0 01.683.183A3.498 3.498 0 008 11.5a3.498 3.498 0 003.032-1.75.5.5 0 11.866.5A4.498 4.498 0 018 12.5a4.498 4.498 0 01-3.898-2.25.5.5 0 01.183-.683zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm1.757-.437a.5.5 0 01.68.194.934.934 0 00.813.493c.339 0 .645-.19.813-.493a.5.5 0 11.874.486A1.934 1.934 0 0110.25 7.75c-.73 0-1.356-.412-1.687-1.007a.5.5 0 01.194-.68z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-wink-fill" viewBox="0 0 16 16" id="emoji-wink-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a8 8 0 110 16A8 8 0 018 0zM7 6.5C7 5.672 6.552 5 6 5s-1 .672-1 1.5S5.448 8 6 8s1-.672 1-1.5zM4.285 9.567a.5.5 0 00-.183.683A4.498 4.498 0 008 12.5a4.5 4.5 0 003.898-2.25.5.5 0 10-.866-.5A3.498 3.498 0 018 11.5a3.498 3.498 0 01-3.032-1.75.5.5 0 00-.683-.183zm5.152-3.31a.5.5 0 00-.874.486c.33.595.958 1.007 1.687 1.007.73 0 1.356-.412 1.687-1.007a.5.5 0 00-.874-.486.934.934 0 01-.813.493.934.934 0 01-.813-.493z"/></symbol><symbol fill="currentColor" class="bi bi-envelope" viewBox="0 0 16 16" id="envelope" xmlns="http://www.w3.org/2000/svg"><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm2-1a1 1 0 00-1 1v.217l7 4.2 7-4.2V4a1 1 0 00-1-1H2zm13 2.383l-4.758 2.855L15 11.114v-5.73zm-.034 6.878L9.271 8.82 8 9.583 6.728 8.82l-5.694 3.44A1 1 0 002 13h12a1 1 0 00.966-.739zM1 11.114l4.758-2.876L1 5.383v5.73z"/></symbol><symbol fill="currentColor" class="bi bi-envelope-fill" viewBox="0 0 16 16" id="envelope-fill" xmlns="http://www.w3.org/2000/svg"><path d="M.05 3.555A2 2 0 012 2h12a2 2 0 011.95 1.555L8 8.414.05 3.555zM0 4.697v7.104l5.803-3.558L0 4.697zM6.761 8.83l-6.57 4.027A2 2 0 002 14h12a2 2 0 001.808-1.144l-6.57-4.027L8 9.586l-1.239-.757zm3.436-.586L16 11.801V4.697l-5.803 3.546z"/></symbol><symbol fill="currentColor" class="bi bi-envelope-open" viewBox="0 0 16 16" id="envelope-open" xmlns="http://www.w3.org/2000/svg"><path d="M8.47 1.318a1 1 0 00-.94 0l-6 3.2A1 1 0 001 5.4v.818l5.724 3.465L8 8.917l1.276.766L15 6.218V5.4a1 1 0 00-.53-.882l-6-3.2zM15 7.388l-4.754 2.877L15 13.117v-5.73zm-.035 6.874L8 10.083l-6.965 4.18A1 1 0 002 15h12a1 1 0 00.965-.738zM1 13.117l4.754-2.852L1 7.387v5.73zM7.059.435a2 2 0 011.882 0l6 3.2A2 2 0 0116 5.4V14a2 2 0 01-2 2H2a2 2 0 01-2-2V5.4a2 2 0 011.059-1.765l6-3.2z"/></symbol><symbol fill="currentColor" class="bi bi-envelope-open-fill" viewBox="0 0 16 16" id="envelope-open-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.941.435a2 2 0 00-1.882 0l-6 3.2A2 2 0 000 5.4v.313l6.709 3.933L8 8.928l1.291.717L16 5.715V5.4a2 2 0 00-1.059-1.765l-6-3.2zM16 6.873l-5.693 3.337L16 13.372v-6.5zm-.059 7.611L8 10.072.059 14.484A2 2 0 002 16h12a2 2 0 001.941-1.516zM0 13.373l5.693-3.163L0 6.873v6.5z"/></symbol><symbol fill="currentColor" class="bi bi-eraser" viewBox="0 0 16 16" id="eraser" xmlns="http://www.w3.org/2000/svg"><path d="M8.086 2.207a2 2 0 012.828 0l3.879 3.879a2 2 0 010 2.828l-5.5 5.5A2 2 0 017.879 15H5.12a2 2 0 01-1.414-.586l-2.5-2.5a2 2 0 010-2.828l6.879-6.879zm2.121.707a1 1 0 00-1.414 0L4.16 7.547l5.293 5.293 4.633-4.633a1 1 0 000-1.414l-3.879-3.879zM8.746 13.547L3.453 8.254 1.914 9.793a1 1 0 000 1.414l2.5 2.5a1 1 0 00.707.293H7.88a1 1 0 00.707-.293l.16-.16z"/></symbol><symbol fill="currentColor" class="bi bi-eraser-fill" viewBox="0 0 16 16" id="eraser-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.086 2.207a2 2 0 012.828 0l3.879 3.879a2 2 0 010 2.828l-5.5 5.5A2 2 0 017.879 15H5.12a2 2 0 01-1.414-.586l-2.5-2.5a2 2 0 010-2.828l6.879-6.879zm.66 11.34L3.453 8.254 1.914 9.793a1 1 0 000 1.414l2.5 2.5a1 1 0 00.707.293H7.88a1 1 0 00.707-.293l.16-.16z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation" viewBox="0 0 16 16" id="exclamation" xmlns="http://www.w3.org/2000/svg"><path d="M7.002 11a1 1 0 112 0 1 1 0 01-2 0zM7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.553.553 0 01-1.1 0L7.1 4.995z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-circle" viewBox="0 0 16 16" id="exclamation-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M7.002 11a1 1 0 112 0 1 1 0 01-2 0zM7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-circle-fill" viewBox="0 0 16 16" id="exclamation-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM8 4a.905.905 0 00-.9.995l.35 3.507a.552.552 0 001.1 0l.35-3.507A.905.905 0 008 4zm.002 6a1 1 0 100 2 1 1 0 000-2z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-diamond" viewBox="0 0 16 16" id="exclamation-diamond" xmlns="http://www.w3.org/2000/svg"><path d="M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.482 1.482 0 010-2.098L6.95.435zm1.4.7a.495.495 0 00-.7 0L1.134 7.65a.495.495 0 000 .7l6.516 6.516a.495.495 0 00.7 0l6.516-6.516a.495.495 0 000-.7L8.35 1.134z"/><path d="M7.002 11a1 1 0 112 0 1 1 0 01-2 0zM7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-diamond-fill" viewBox="0 0 16 16" id="exclamation-diamond-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098L9.05.435zM8 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995A.905.905 0 018 4zm.002 6a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-lg" viewBox="0 0 16 16" id="exclamation-lg" xmlns="http://www.w3.org/2000/svg"><path d="M6.002 14a2 2 0 114 0 2 2 0 01-4 0zm.195-12.01a1.81 1.81 0 113.602 0l-.701 7.015a1.105 1.105 0 01-2.2 0l-.7-7.015z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-octagon" viewBox="0 0 16 16" id="exclamation-octagon" xmlns="http://www.w3.org/2000/svg"><path d="M4.54.146A.5.5 0 014.893 0h6.214a.5.5 0 01.353.146l4.394 4.394a.5.5 0 01.146.353v6.214a.5.5 0 01-.146.353l-4.394 4.394a.5.5 0 01-.353.146H4.893a.5.5 0 01-.353-.146L.146 11.46A.5.5 0 010 11.107V4.893a.5.5 0 01.146-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z"/><path d="M7.002 11a1 1 0 112 0 1 1 0 01-2 0zM7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-octagon-fill" viewBox="0 0 16 16" id="exclamation-octagon-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.46.146A.5.5 0 0011.107 0H4.893a.5.5 0 00-.353.146L.146 4.54A.5.5 0 000 4.893v6.214a.5.5 0 00.146.353l4.394 4.394a.5.5 0 00.353.146h6.214a.5.5 0 00.353-.146l4.394-4.394a.5.5 0 00.146-.353V4.893a.5.5 0 00-.146-.353L11.46.146zM8 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995A.905.905 0 018 4zm.002 6a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-square" viewBox="0 0 16 16" id="exclamation-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M7.002 11a1 1 0 112 0 1 1 0 01-2 0zM7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-square-fill" viewBox="0 0 16 16" id="exclamation-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm6 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995A.905.905 0 018 4zm.002 6a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-triangle" viewBox="0 0 16 16" id="exclamation-triangle" xmlns="http://www.w3.org/2000/svg"><path d="M7.938 2.016A.13.13 0 018.002 2a.13.13 0 01.063.016.146.146 0 01.054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 01-.054.06.116.116 0 01-.066.017H1.146a.115.115 0 01-.066-.017.163.163 0 01-.054-.06.176.176 0 01.002-.183L7.884 2.073a.147.147 0 01.054-.057zm1.044-.45a1.13 1.13 0 00-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 112 0 1 1 0 01-2 0zM7.1 5.995a.905.905 0 111.8 0l-.35 3.507a.552.552 0 01-1.1 0L7.1 5.995z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-triangle-fill" viewBox="0 0 16 16" id="exclamation-triangle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.982 1.566a1.13 1.13 0 00-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.566zM8 5c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 01-1.1 0L7.1 5.995A.905.905 0 018 5zm.002 6a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-exclude" viewBox="0 0 16 16" id="exclude" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h8a2 2 0 012 2v2h2a2 2 0 012 2v8a2 2 0 01-2 2H6a2 2 0 01-2-2v-2H2a2 2 0 01-2-2V2zm12 2H5a1 1 0 00-1 1v7h7a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-eye" viewBox="0 0 16 16" id="eye" xmlns="http://www.w3.org/2000/svg"><path d="M16 8s-3-5.5-8-5.5S0 8 0 8s3 5.5 8 5.5S16 8 16 8zM1.173 8a13.133 13.133 0 011.66-2.043C4.12 4.668 5.88 3.5 8 3.5c2.12 0 3.879 1.168 5.168 2.457A13.133 13.133 0 0114.828 8c-.058.087-.122.183-.195.288-.335.48-.83 1.12-1.465 1.755C11.879 11.332 10.119 12.5 8 12.5c-2.12 0-3.879-1.168-5.168-2.457A13.134 13.134 0 011.172 8z"/><path d="M8 5.5a2.5 2.5 0 100 5 2.5 2.5 0 000-5zM4.5 8a3.5 3.5 0 117 0 3.5 3.5 0 01-7 0z"/></symbol><symbol fill="currentColor" class="bi bi-eye-fill" viewBox="0 0 16 16" id="eye-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.5 8a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0z"/><path d="M0 8s3-5.5 8-5.5S16 8 16 8s-3 5.5-8 5.5S0 8 0 8zm8 3.5a3.5 3.5 0 100-7 3.5 3.5 0 000 7z"/></symbol><symbol fill="currentColor" class="bi bi-eye-slash" viewBox="0 0 16 16" id="eye-slash" xmlns="http://www.w3.org/2000/svg"><path d="M13.359 11.238C15.06 9.72 16 8 16 8s-3-5.5-8-5.5a7.028 7.028 0 00-2.79.588l.77.771A5.944 5.944 0 018 3.5c2.12 0 3.879 1.168 5.168 2.457A13.134 13.134 0 0114.828 8c-.058.087-.122.183-.195.288-.335.48-.83 1.12-1.465 1.755-.165.165-.337.328-.517.486l.708.709z"/><path d="M11.297 9.176a3.5 3.5 0 00-4.474-4.474l.823.823a2.5 2.5 0 012.829 2.829l.822.822zm-2.943 1.299l.822.822a3.5 3.5 0 01-4.474-4.474l.823.823a2.5 2.5 0 002.829 2.829z"/><path d="M3.35 5.47c-.18.16-.353.322-.518.487A13.134 13.134 0 001.172 8l.195.288c.335.48.83 1.12 1.465 1.755C4.121 11.332 5.881 12.5 8 12.5c.716 0 1.39-.133 2.02-.36l.77.772A7.029 7.029 0 018 13.5C3 13.5 0 8 0 8s.939-1.721 2.641-3.238l.708.709zm10.296 8.884l-12-12 .708-.708 12 12-.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-eye-slash-fill" viewBox="0 0 16 16" id="eye-slash-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.79 12.912l-1.614-1.615a3.5 3.5 0 01-4.474-4.474l-2.06-2.06C.938 6.278 0 8 0 8s3 5.5 8 5.5a7.029 7.029 0 002.79-.588zM5.21 3.088A7.028 7.028 0 018 2.5c5 0 8 5.5 8 5.5s-.939 1.721-2.641 3.238l-2.062-2.062a3.5 3.5 0 00-4.474-4.474L5.21 3.089z"/><path d="M5.525 7.646a2.5 2.5 0 002.829 2.829l-2.83-2.829zm4.95.708l-2.829-2.83a2.5 2.5 0 012.829 2.829zm3.171 6l-12-12 .708-.708 12 12-.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-eyedropper" viewBox="0 0 16 16" id="eyedropper" xmlns="http://www.w3.org/2000/svg"><path d="M13.354.646a1.207 1.207 0 00-1.708 0L8.5 3.793l-.646-.647a.5.5 0 10-.708.708L8.293 5l-7.147 7.146A.5.5 0 001 12.5v1.793l-.854.853a.5.5 0 10.708.707L1.707 15H3.5a.5.5 0 00.354-.146L11 7.707l1.146 1.147a.5.5 0 00.708-.708l-.647-.646 3.147-3.146a1.207 1.207 0 000-1.708l-2-2zM2 12.707l7-7L10.293 7l-7 7H2v-1.293z"/></symbol><symbol fill="currentColor" class="bi bi-eyeglasses" viewBox="0 0 16 16" id="eyeglasses" xmlns="http://www.w3.org/2000/svg"><path d="M4 6a2 2 0 110 4 2 2 0 010-4zm2.625.547a3 3 0 00-5.584.953H.5a.5.5 0 000 1h.541A3 3 0 007 8a1 1 0 012 0 3 3 0 005.959.5h.541a.5.5 0 000-1h-.541a3 3 0 00-5.584-.953A1.993 1.993 0 008 6c-.532 0-1.016.208-1.375.547zM14 8a2 2 0 11-4 0 2 2 0 014 0z"/></symbol><symbol fill="currentColor" class="bi bi-facebook" viewBox="0 0 16 16" id="facebook" xmlns="http://www.w3.org/2000/svg"><path d="M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951z"/></symbol><symbol fill="currentColor" class="bi bi-file" viewBox="0 0 16 16" id="file" xmlns="http://www.w3.org/2000/svg"><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-arrow-down" viewBox="0 0 16 16" id="file-arrow-down" xmlns="http://www.w3.org/2000/svg"><path d="M8 5a.5.5 0 01.5.5v3.793l1.146-1.147a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 11.708-.708L7.5 9.293V5.5A.5.5 0 018 5z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-arrow-down-fill" viewBox="0 0 16 16" id="file-arrow-down-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM8 5a.5.5 0 01.5.5v3.793l1.146-1.147a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 11.708-.708L7.5 9.293V5.5A.5.5 0 018 5z"/></symbol><symbol fill="currentColor" class="bi bi-file-arrow-up" viewBox="0 0 16 16" id="file-arrow-up" xmlns="http://www.w3.org/2000/svg"><path d="M8 11a.5.5 0 00.5-.5V6.707l1.146 1.147a.5.5 0 00.708-.708l-2-2a.5.5 0 00-.708 0l-2 2a.5.5 0 10.708.708L7.5 6.707V10.5a.5.5 0 00.5.5z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-arrow-up-fill" viewBox="0 0 16 16" id="file-arrow-up-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM7.5 6.707L6.354 7.854a.5.5 0 11-.708-.708l2-2a.5.5 0 01.708 0l2 2a.5.5 0 01-.708.708L8.5 6.707V10.5a.5.5 0 01-1 0V6.707z"/></symbol><symbol fill="currentColor" class="bi bi-file-bar-graph" viewBox="0 0 16 16" id="file-bar-graph" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 12a.5.5 0 01-.5-.5v-2a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-1zm3 0a.5.5 0 01-.5-.5v-4a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v4a.5.5 0 01-.5.5h-1zm3 0a.5.5 0 01-.5-.5v-6a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v6a.5.5 0 01-.5.5h-1z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-bar-graph-fill" viewBox="0 0 16 16" id="file-bar-graph-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zm-2 11.5v-6a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v6a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5zm-2.5.5a.5.5 0 01-.5-.5v-4a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v4a.5.5 0 01-.5.5h-1zm-3 0a.5.5 0 01-.5-.5v-2a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-binary" viewBox="0 0 16 16" id="file-binary" xmlns="http://www.w3.org/2000/svg"><path d="M5.526 13.09c.976 0 1.524-.79 1.524-2.205 0-1.412-.548-2.203-1.524-2.203-.978 0-1.526.79-1.526 2.203 0 1.415.548 2.206 1.526 2.206zm-.832-2.205c0-1.05.29-1.612.832-1.612.358 0 .607.247.733.721L4.7 11.137a6.749 6.749 0 01-.006-.252zm.832 1.614c-.36 0-.606-.246-.732-.718l1.556-1.145c.003.079.005.164.005.249 0 1.052-.29 1.614-.829 1.614zm5.329.501v-.595H9.73V8.772h-.69l-1.19.786v.688L8.986 9.5h.05v2.906h-1.18V13h3z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-binary-fill" viewBox="0 0 16 16" id="file-binary-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.526 9.273c-.542 0-.832.563-.832 1.612 0 .088.003.173.006.252l1.56-1.143c-.126-.474-.375-.72-.733-.72zm-.732 2.508c.126.472.372.718.732.718.54 0 .83-.563.83-1.614 0-.085-.003-.17-.006-.25l-1.556 1.146z"/><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM7.05 10.885c0 1.415-.548 2.206-1.524 2.206C4.548 13.09 4 12.3 4 10.885c0-1.412.548-2.203 1.526-2.203.976 0 1.524.79 1.524 2.203zm3.805 1.52V13h-3v-.595h1.181V9.5h-.05l-1.136.747v-.688l1.19-.786h.69v3.633h1.125z"/></symbol><symbol fill="currentColor" class="bi bi-file-break" viewBox="0 0 16 16" id="file-break" xmlns="http://www.w3.org/2000/svg"><path d="M0 10.5a.5.5 0 01.5-.5h15a.5.5 0 010 1H.5a.5.5 0 01-.5-.5zM12 0H4a2 2 0 00-2 2v7h1V2a1 1 0 011-1h8a1 1 0 011 1v7h1V2a2 2 0 00-2-2zm2 12h-1v2a1 1 0 01-1 1H4a1 1 0 01-1-1v-2H2v2a2 2 0 002 2h8a2 2 0 002-2v-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-break-fill" viewBox="0 0 16 16" id="file-break-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 0h8a2 2 0 012 2v7H2V2a2 2 0 012-2zM2 12h12v2a2 2 0 01-2 2H4a2 2 0 01-2-2v-2zM.5 10a.5.5 0 000 1h15a.5.5 0 000-1H.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-check" viewBox="0 0 16 16" id="file-check" xmlns="http://www.w3.org/2000/svg"><path d="M10.854 6.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 8.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-check-fill" viewBox="0 0 16 16" id="file-check-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zm-1.146 6.854l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 8.793l2.646-2.647a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-file-code" viewBox="0 0 16 16" id="file-code" xmlns="http://www.w3.org/2000/svg"><path d="M6.646 5.646a.5.5 0 11.708.708L5.707 8l1.647 1.646a.5.5 0 01-.708.708l-2-2a.5.5 0 010-.708l2-2zm2.708 0a.5.5 0 10-.708.708L10.293 8 8.646 9.646a.5.5 0 00.708.708l2-2a.5.5 0 000-.708l-2-2z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-code-fill" viewBox="0 0 16 16" id="file-code-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM6.646 5.646a.5.5 0 11.708.708L5.707 8l1.647 1.646a.5.5 0 01-.708.708l-2-2a.5.5 0 010-.708l2-2zm2.708 0l2 2a.5.5 0 010 .708l-2 2a.5.5 0 01-.708-.708L10.293 8 8.646 6.354a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-file-diff" viewBox="0 0 16 16" id="file-diff" xmlns="http://www.w3.org/2000/svg"><path d="M8 4a.5.5 0 01.5.5V6H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V7H6a.5.5 0 010-1h1.5V4.5A.5.5 0 018 4zm-2.5 6.5A.5.5 0 016 10h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-diff-fill" viewBox="0 0 16 16" id="file-diff-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM8.5 4.5V6H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V7H6a.5.5 0 010-1h1.5V4.5a.5.5 0 011 0zM6 10h4a.5.5 0 010 1H6a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark" viewBox="0 0 16 16" id="file-earmark" xmlns="http://www.w3.org/2000/svg"><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-arrow-down" viewBox="0 0 16 16" id="file-earmark-arrow-down" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 6.5a.5.5 0 00-1 0v3.793L6.354 9.146a.5.5 0 10-.708.708l2 2a.5.5 0 00.708 0l2-2a.5.5 0 00-.708-.708L8.5 10.293V6.5z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-arrow-down-fill" viewBox="0 0 16 16" id="file-earmark-arrow-down-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zm-1 4v3.793l1.146-1.147a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 01.708-.708L7.5 11.293V7.5a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-arrow-up" viewBox="0 0 16 16" id="file-earmark-arrow-up" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 11.5a.5.5 0 01-1 0V7.707L6.354 8.854a.5.5 0 11-.708-.708l2-2a.5.5 0 01.708 0l2 2a.5.5 0 01-.708.708L8.5 7.707V11.5z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-arrow-up-fill" viewBox="0 0 16 16" id="file-earmark-arrow-up-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM6.354 9.854a.5.5 0 01-.708-.708l2-2a.5.5 0 01.708 0l2 2a.5.5 0 01-.708.708L8.5 8.707V12.5a.5.5 0 01-1 0V8.707L6.354 9.854z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-bar-graph" viewBox="0 0 16 16" id="file-earmark-bar-graph" xmlns="http://www.w3.org/2000/svg"><path d="M10 13.5a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-6a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5v6zm-2.5.5a.5.5 0 01-.5-.5v-4a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v4a.5.5 0 01-.5.5h-1zm-3 0a.5.5 0 01-.5-.5v-2a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-1z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-bar-graph-fill" viewBox="0 0 16 16" id="file-earmark-bar-graph-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zm.5 10v-6a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v6a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5zm-2.5.5a.5.5 0 01-.5-.5v-4a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v4a.5.5 0 01-.5.5h-1zm-3 0a.5.5 0 01-.5-.5v-2a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-binary" viewBox="0 0 16 16" id="file-earmark-binary" xmlns="http://www.w3.org/2000/svg"><path d="M7.05 11.885c0 1.415-.548 2.206-1.524 2.206C4.548 14.09 4 13.3 4 11.885c0-1.412.548-2.203 1.526-2.203.976 0 1.524.79 1.524 2.203zm-1.524-1.612c-.542 0-.832.563-.832 1.612 0 .088.003.173.006.252l1.559-1.143c-.126-.474-.375-.72-.733-.72zm-.732 2.508c.126.472.372.718.732.718.54 0 .83-.563.83-1.614 0-.085-.003-.17-.006-.25l-1.556 1.146zm6.061.624V14h-3v-.595h1.181V10.5h-.05l-1.136.747v-.688l1.19-.786h.69v3.633h1.125z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-binary-fill" viewBox="0 0 16 16" id="file-earmark-binary-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.526 10.273c-.542 0-.832.563-.832 1.612 0 .088.003.173.006.252l1.559-1.143c-.126-.474-.375-.72-.733-.72zm-.732 2.508c.126.472.372.718.732.718.54 0 .83-.563.83-1.614 0-.085-.003-.17-.006-.25l-1.556 1.146z"/><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zm-2.45 8.385c0 1.415-.548 2.206-1.524 2.206C4.548 14.09 4 13.3 4 11.885c0-1.412.548-2.203 1.526-2.203.976 0 1.524.79 1.524 2.203zm3.805 1.52V14h-3v-.595h1.181V10.5h-.05l-1.136.747v-.688l1.19-.786h.69v3.633h1.125z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-break" viewBox="0 0 16 16" id="file-earmark-break" xmlns="http://www.w3.org/2000/svg"><path d="M14 4.5V9h-1V4.5h-2A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v7H2V2a2 2 0 012-2h5.5L14 4.5zM13 12h1v2a2 2 0 01-2 2H4a2 2 0 01-2-2v-2h1v2a1 1 0 001 1h8a1 1 0 001-1v-2zM.5 10a.5.5 0 000 1h15a.5.5 0 000-1H.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-break-fill" viewBox="0 0 16 16" id="file-earmark-break-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 0h5.293A1 1 0 0110 .293L13.707 4a1 1 0 01.293.707V9H2V2a2 2 0 012-2zm5.5 1.5v2a1 1 0 001 1h2l-3-3zM2 12h12v2a2 2 0 01-2 2H4a2 2 0 01-2-2v-2zM.5 10a.5.5 0 000 1h15a.5.5 0 000-1H.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-check" viewBox="0 0 16 16" id="file-earmark-check" xmlns="http://www.w3.org/2000/svg"><path d="M10.854 7.854a.5.5 0 00-.708-.708L7.5 9.793 6.354 8.646a.5.5 0 10-.708.708l1.5 1.5a.5.5 0 00.708 0l3-3z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-check-fill" viewBox="0 0 16 16" id="file-earmark-check-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zm1.354 4.354l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 9.793l2.646-2.647a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-code" viewBox="0 0 16 16" id="file-earmark-code" xmlns="http://www.w3.org/2000/svg"><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/><path d="M8.646 6.646a.5.5 0 01.708 0l2 2a.5.5 0 010 .708l-2 2a.5.5 0 01-.708-.708L10.293 9 8.646 7.354a.5.5 0 010-.708zm-1.292 0a.5.5 0 00-.708 0l-2 2a.5.5 0 000 .708l2 2a.5.5 0 00.708-.708L5.707 9l1.647-1.646a.5.5 0 000-.708z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-code-fill" viewBox="0 0 16 16" id="file-earmark-code-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM6.646 7.646a.5.5 0 11.708.708L5.707 10l1.647 1.646a.5.5 0 01-.708.708l-2-2a.5.5 0 010-.708l2-2zm2.708 0l2 2a.5.5 0 010 .708l-2 2a.5.5 0 01-.708-.708L10.293 10 8.646 8.354a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-diff" viewBox="0 0 16 16" id="file-earmark-diff" xmlns="http://www.w3.org/2000/svg"><path d="M8 5a.5.5 0 01.5.5V7H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V8H6a.5.5 0 010-1h1.5V5.5A.5.5 0 018 5zm-2.5 6.5A.5.5 0 016 11h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-diff-fill" viewBox="0 0 16 16" id="file-earmark-diff-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM8 6a.5.5 0 01.5.5V8H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V9H6a.5.5 0 010-1h1.5V6.5A.5.5 0 018 6zm-2.5 6.5A.5.5 0 016 12h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-easel" viewBox="0 0 16 16" id="file-earmark-easel" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 6a.5.5 0 10-1 0h-2A1.5 1.5 0 004 7.5v2A1.5 1.5 0 005.5 11h.473l-.447 1.342a.5.5 0 10.948.316L7.027 11H7.5v1a.5.5 0 001 0v-1h.473l.553 1.658a.5.5 0 10.948-.316L10.027 11h.473A1.5 1.5 0 0012 9.5v-2A1.5 1.5 0 0010.5 6h-2zM5 7.5a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-2z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-easel-fill" viewBox="0 0 16 16" id="file-earmark-easel-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5 7.5a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-2z"/><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM8.5 6h2A1.5 1.5 0 0112 7.5v2a1.5 1.5 0 01-1.5 1.5h-.473l.447 1.342a.5.5 0 01-.948.316L8.973 11H8.5v1a.5.5 0 01-1 0v-1h-.473l-.553 1.658a.5.5 0 11-.948-.316L5.973 11H5.5A1.5 1.5 0 014 9.5v-2A1.5 1.5 0 015.5 6h2a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-excel" viewBox="0 0 16 16" id="file-earmark-excel" xmlns="http://www.w3.org/2000/svg"><path d="M5.884 6.68a.5.5 0 10-.768.64L7.349 10l-2.233 2.68a.5.5 0 00.768.64L8 10.781l2.116 2.54a.5.5 0 00.768-.641L8.651 10l2.233-2.68a.5.5 0 00-.768-.64L8 9.219l-2.116-2.54z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-excel-fill" viewBox="0 0 16 16" id="file-earmark-excel-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM5.884 6.68L8 9.219l2.116-2.54a.5.5 0 11.768.641L8.651 10l2.233 2.68a.5.5 0 01-.768.64L8 10.781l-2.116 2.54a.5.5 0 01-.768-.641L7.349 10 5.116 7.32a.5.5 0 11.768-.64z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-fill" viewBox="0 0 16 16" id="file-earmark-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 0h5.293A1 1 0 0110 .293L13.707 4a1 1 0 01.293.707V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2zm5.5 1.5v2a1 1 0 001 1h2l-3-3z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-font" viewBox="0 0 16 16" id="file-earmark-font" xmlns="http://www.w3.org/2000/svg"><path d="M10.943 6H5.057L5 8h.5c.18-1.096.356-1.192 1.694-1.235l.293-.01v5.09c0 .47-.1.582-.898.655v.5H9.41v-.5c-.803-.073-.903-.184-.903-.654V6.755l.298.01c1.338.043 1.514.14 1.694 1.235h.5l-.057-2z"/><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-font-fill" viewBox="0 0 16 16" id="file-earmark-font-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM5.057 6h5.886L11 8h-.5c-.18-1.096-.356-1.192-1.694-1.235l-.298-.01v5.09c0 .47.1.582.903.655v.5H6.59v-.5c.799-.073.898-.184.898-.654V6.755l-.293.01C5.856 6.808 5.68 6.905 5.5 8H5l.057-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-image" viewBox="0 0 16 16" id="file-earmark-image" xmlns="http://www.w3.org/2000/svg"><path d="M6.502 7a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/><path d="M14 14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5V14zM4 1a1 1 0 00-1 1v10l2.224-2.224a.5.5 0 01.61-.075L8 11l2.157-3.02a.5.5 0 01.76-.063L13 10V4.5h-2A1.5 1.5 0 019.5 3V1H4z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-image-fill" viewBox="0 0 16 16" id="file-earmark-image-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 0h5.293A1 1 0 0110 .293L13.707 4a1 1 0 01.293.707v5.586l-2.73-2.73a1 1 0 00-1.52.127l-1.889 2.644-1.769-1.062a1 1 0 00-1.222.15L2 12.292V2a2 2 0 012-2zm5.5 1.5v2a1 1 0 001 1h2l-3-3zm-1.498 4a1.5 1.5 0 10-3 0 1.5 1.5 0 003 0z"/><path d="M10.564 8.27L14 11.708V14a2 2 0 01-2 2H4a2 2 0 01-2-2v-.293l3.578-3.577 2.56 1.536 2.426-3.395z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-lock" viewBox="0 0 16 16" id="file-earmark-lock" xmlns="http://www.w3.org/2000/svg"><path d="M10 7v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 114 0zM7 7v1h2V7a1 1 0 00-2 0zM6 9.3v2.4c0 .042.02.107.105.175A.637.637 0 006.5 12h3a.64.64 0 00.395-.125c.085-.068.105-.133.105-.175V9.3c0-.042-.02-.107-.105-.175A.637.637 0 009.5 9h-3a.637.637 0 00-.395.125C6.02 9.193 6 9.258 6 9.3z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-lock-fill" viewBox="0 0 16 16" id="file-earmark-lock-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 7a1 1 0 012 0v1H7V7zM6 9.3c0-.042.02-.107.105-.175A.637.637 0 016.5 9h3a.64.64 0 01.395.125c.085.068.105.133.105.175v2.4c0 .042-.02.107-.105.175A.637.637 0 019.5 12h-3a.637.637 0 01-.395-.125C6.02 11.807 6 11.742 6 11.7V9.3z"/><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM10 7v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 114 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-lock2" viewBox="0 0 16 16" id="file-earmark-lock2" xmlns="http://www.w3.org/2000/svg"><path d="M10 7v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 114 0zM7 7v1h2V7a1 1 0 00-2 0z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-lock2-fill" viewBox="0 0 16 16" id="file-earmark-lock2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 7a1 1 0 012 0v1H7V7z"/><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM10 7v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 114 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-medical" viewBox="0 0 16 16" id="file-earmark-medical" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 5.5a.5.5 0 00-1 0v.634l-.549-.317a.5.5 0 10-.5.866L6 7l-.549.317a.5.5 0 10.5.866l.549-.317V8.5a.5.5 0 101 0v-.634l.549.317a.5.5 0 10.5-.866L8 7l.549-.317a.5.5 0 10-.5-.866l-.549.317V5.5zm-2 4.5a.5.5 0 000 1h5a.5.5 0 000-1h-5zm0 2a.5.5 0 000 1h5a.5.5 0 000-1h-5z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-medical-fill" viewBox="0 0 16 16" id="file-earmark-medical-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zm-3 2v.634l.549-.317a.5.5 0 11.5.866L7 7l.549.317a.5.5 0 11-.5.866L6.5 7.866V8.5a.5.5 0 01-1 0v-.634l-.549.317a.5.5 0 11-.5-.866L5 7l-.549-.317a.5.5 0 01.5-.866l.549.317V5.5a.5.5 0 111 0zm-2 4.5h5a.5.5 0 010 1h-5a.5.5 0 010-1zm0 2h5a.5.5 0 010 1h-5a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-minus" viewBox="0 0 16 16" id="file-earmark-minus" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 9a.5.5 0 01.5-.5h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-minus-fill" viewBox="0 0 16 16" id="file-earmark-minus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM6 8.5h4a.5.5 0 010 1H6a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-music" viewBox="0 0 16 16" id="file-earmark-music" xmlns="http://www.w3.org/2000/svg"><path d="M11 6.64a1 1 0 00-1.243-.97l-1 .25A1 1 0 008 6.89v4.306A2.572 2.572 0 007 11c-.5 0-.974.134-1.338.377-.36.24-.662.628-.662 1.123s.301.883.662 1.123c.364.243.839.377 1.338.377.5 0 .974-.134 1.338-.377.36-.24.662-.628.662-1.123V8.89l2-.5V6.64z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-music-fill" viewBox="0 0 16 16" id="file-earmark-music-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM11 6.64v1.75l-2 .5v3.61c0 .495-.301.883-.662 1.123C7.974 13.866 7.499 14 7 14c-.5 0-.974-.134-1.338-.377-.36-.24-.662-.628-.662-1.123s.301-.883.662-1.123C6.026 11.134 6.501 11 7 11c.356 0 .7.068 1 .196V6.89a1 1 0 01.757-.97l1-.25A1 1 0 0111 6.64z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-pdf" viewBox="0 0 16 16" id="file-earmark-pdf" xmlns="http://www.w3.org/2000/svg"><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/><path d="M4.603 14.087a.81.81 0 01-.438-.42c-.195-.388-.13-.776.08-1.102.198-.307.526-.568.897-.787a7.68 7.68 0 011.482-.645 19.697 19.697 0 001.062-2.227 7.269 7.269 0 01-.43-1.295c-.086-.4-.119-.796-.046-1.136.075-.354.274-.672.65-.823.192-.077.4-.12.602-.077a.7.7 0 01.477.365c.088.164.12.356.127.538.007.188-.012.396-.047.614-.084.51-.27 1.134-.52 1.794a10.954 10.954 0 00.98 1.686 5.753 5.753 0 011.334.05c.364.066.734.195.96.465.12.144.193.32.2.518.007.192-.047.382-.138.563a1.04 1.04 0 01-.354.416.856.856 0 01-.51.138c-.331-.014-.654-.196-.933-.417a5.712 5.712 0 01-.911-.95 11.651 11.651 0 00-1.997.406 11.307 11.307 0 01-1.02 1.51c-.292.35-.609.656-.927.787a.793.793 0 01-.58.029zm1.379-1.901c-.166.076-.32.156-.459.238-.328.194-.541.383-.647.547-.094.145-.096.25-.04.361.01.022.02.036.026.044a.266.266 0 00.035-.012c.137-.056.355-.235.635-.572a8.18 8.18 0 00.45-.606zm1.64-1.33a12.71 12.71 0 011.01-.193 11.744 11.744 0 01-.51-.858 20.801 20.801 0 01-.5 1.05zm2.446.45c.15.163.296.3.435.41.24.19.407.253.498.256a.107.107 0 00.07-.015.307.307 0 00.094-.125.436.436 0 00.059-.2.095.095 0 00-.026-.063c-.052-.062-.2-.152-.518-.209a3.876 3.876 0 00-.612-.053zM8.078 7.8a6.7 6.7 0 00.2-.828c.031-.188.043-.343.038-.465a.613.613 0 00-.032-.198.517.517 0 00-.145.04c-.087.035-.158.106-.196.283-.04.192-.03.469.046.822.024.111.054.227.09.346z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-pdf-fill" viewBox="0 0 16 16" id="file-earmark-pdf-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.523 12.424c.14-.082.293-.162.459-.238a7.878 7.878 0 01-.45.606c-.28.337-.498.516-.635.572a.266.266 0 01-.035.012.282.282 0 01-.026-.044c-.056-.11-.054-.216.04-.36.106-.165.319-.354.647-.548zm2.455-1.647c-.119.025-.237.05-.356.078a21.148 21.148 0 00.5-1.05 12.045 12.045 0 00.51.858c-.217.032-.436.07-.654.114zm2.525.939a3.881 3.881 0 01-.435-.41c.228.005.434.022.612.054.317.057.466.147.518.209a.095.095 0 01.026.064.436.436 0 01-.06.2.307.307 0 01-.094.124.107.107 0 01-.069.015c-.09-.003-.258-.066-.498-.256zM8.278 6.97c-.04.244-.108.524-.2.829a4.86 4.86 0 01-.089-.346c-.076-.353-.087-.63-.046-.822.038-.177.11-.248.196-.283a.517.517 0 01.145-.04c.013.03.028.092.032.198.005.122-.007.277-.038.465z"/><path fill-rule="evenodd" d="M4 0h5.293A1 1 0 0110 .293L13.707 4a1 1 0 01.293.707V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2zm5.5 1.5v2a1 1 0 001 1h2l-3-3zM4.165 13.668c.09.18.23.343.438.419.207.075.412.04.58-.03.318-.13.635-.436.926-.786.333-.401.683-.927 1.021-1.51a11.651 11.651 0 011.997-.406c.3.383.61.713.91.95.28.22.603.403.934.417a.856.856 0 00.51-.138c.155-.101.27-.247.354-.416.09-.181.145-.37.138-.563a.844.844 0 00-.2-.518c-.226-.27-.596-.4-.96-.465a5.76 5.76 0 00-1.335-.05 10.954 10.954 0 01-.98-1.686c.25-.66.437-1.284.52-1.794.036-.218.055-.426.048-.614a1.238 1.238 0 00-.127-.538.7.7 0 00-.477-.365c-.202-.043-.41 0-.601.077-.377.15-.576.47-.651.823-.073.34-.04.736.046 1.136.088.406.238.848.43 1.295a19.697 19.697 0 01-1.062 2.227 7.662 7.662 0 00-1.482.645c-.37.22-.699.48-.897.787-.21.326-.275.714-.08 1.103z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-person" viewBox="0 0 16 16" id="file-earmark-person" xmlns="http://www.w3.org/2000/svg"><path d="M11 8a3 3 0 11-6 0 3 3 0 016 0z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2v9.255S12 12 8 12s-5 1.755-5 1.755V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-person-fill" viewBox="0 0 16 16" id="file-earmark-person-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM11 8a3 3 0 11-6 0 3 3 0 016 0zm2 5.755V14a1 1 0 01-1 1H4a1 1 0 01-1-1v-.245S4 12 8 12s5 1.755 5 1.755z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-play" viewBox="0 0 16 16" id="file-earmark-play" xmlns="http://www.w3.org/2000/svg"><path d="M6 6.883v4.234a.5.5 0 00.757.429l3.528-2.117a.5.5 0 000-.858L6.757 6.454a.5.5 0 00-.757.43z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-play-fill" viewBox="0 0 16 16" id="file-earmark-play-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM6 6.883a.5.5 0 01.757-.429l3.528 2.117a.5.5 0 010 .858l-3.528 2.117a.5.5 0 01-.757-.43V6.884z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-plus" viewBox="0 0 16 16" id="file-earmark-plus" xmlns="http://www.w3.org/2000/svg"><path d="M8 6.5a.5.5 0 01.5.5v1.5H10a.5.5 0 010 1H8.5V11a.5.5 0 01-1 0V9.5H6a.5.5 0 010-1h1.5V7a.5.5 0 01.5-.5z"/><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-plus-fill" viewBox="0 0 16 16" id="file-earmark-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM8.5 7v1.5H10a.5.5 0 010 1H8.5V11a.5.5 0 01-1 0V9.5H6a.5.5 0 010-1h1.5V7a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-post" viewBox="0 0 16 16" id="file-earmark-post" xmlns="http://www.w3.org/2000/svg"><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/><path d="M4 6.5a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v7a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-7zm0-3a.5.5 0 01.5-.5H7a.5.5 0 010 1H4.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-post-fill" viewBox="0 0 16 16" id="file-earmark-post-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zm-5-.5H7a.5.5 0 010 1H4.5a.5.5 0 010-1zm0 3h7a.5.5 0 01.5.5v7a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-7a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-ppt" viewBox="0 0 16 16" id="file-earmark-ppt" xmlns="http://www.w3.org/2000/svg"><path d="M7 5.5a1 1 0 00-1 1V13a.5.5 0 001 0v-2h1.188a2.75 2.75 0 000-5.5H7zM8.188 10H7V6.5h1.188a1.75 1.75 0 110 3.5z"/><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-ppt-fill" viewBox="0 0 16 16" id="file-earmark-ppt-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.188 10H7V6.5h1.188a1.75 1.75 0 110 3.5z"/><path d="M4 0h5.293A1 1 0 0110 .293L13.707 4a1 1 0 01.293.707V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2zm5.5 1.5v2a1 1 0 001 1h2l-3-3zM7 5.5a1 1 0 00-1 1V13a.5.5 0 001 0v-2h1.188a2.75 2.75 0 000-5.5H7z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-richtext" viewBox="0 0 16 16" id="file-earmark-richtext" xmlns="http://www.w3.org/2000/svg"><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/><path d="M4.5 12.5A.5.5 0 015 12h3a.5.5 0 010 1H5a.5.5 0 01-.5-.5zm0-2A.5.5 0 015 10h6a.5.5 0 010 1H5a.5.5 0 01-.5-.5zm1.639-3.708l1.33.886 1.854-1.855a.25.25 0 01.289-.047l1.888.974V8.5a.5.5 0 01-.5.5H5a.5.5 0 01-.5-.5V8s1.54-1.274 1.639-1.208zM6.25 6a.75.75 0 100-1.5.75.75 0 000 1.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-richtext-fill" viewBox="0 0 16 16" id="file-earmark-richtext-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM7 6.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm-.861 1.542l1.33.886 1.854-1.855a.25.25 0 01.289-.047l1.888.974V9.5a.5.5 0 01-.5.5H5a.5.5 0 01-.5-.5V9s1.54-1.274 1.639-1.208zM5 11h6a.5.5 0 010 1H5a.5.5 0 010-1zm0 2h3a.5.5 0 010 1H5a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-ruled" viewBox="0 0 16 16" id="file-earmark-ruled" xmlns="http://www.w3.org/2000/svg"><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V9H3V2a1 1 0 011-1h5.5v2zM3 12v-2h2v2H3zm0 1h2v2H4a1 1 0 01-1-1v-1zm3 2v-2h7v1a1 1 0 01-1 1H6zm7-3H6v-2h7v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-ruled-fill" viewBox="0 0 16 16" id="file-earmark-ruled-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM3 9h10v1H6v2h7v1H6v2H5v-2H3v-1h2v-2H3V9z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-slides" viewBox="0 0 16 16" id="file-earmark-slides" xmlns="http://www.w3.org/2000/svg"><path d="M5 6a.5.5 0 00-.496.438l-.5 4A.5.5 0 004.5 11h3v2.016c-.863.055-1.5.251-1.5.484 0 .276.895.5 2 .5s2-.224 2-.5c0-.233-.637-.429-1.5-.484V11h3a.5.5 0 00.496-.562l-.5-4A.5.5 0 0011 6H5zm2 3.78V7.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 010 .214l-2.13 1.28A.125.125 0 017 9.778z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-slides-fill" viewBox="0 0 16 16" id="file-earmark-slides-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 9.78V7.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 010 .214l-2.13 1.28A.125.125 0 017 9.778z"/><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM5 6h6a.5.5 0 01.496.438l.5 4A.5.5 0 0111.5 11h-3v2.016c.863.055 1.5.251 1.5.484 0 .276-.895.5-2 .5s-2-.224-2-.5c0-.233.637-.429 1.5-.484V11h-3a.5.5 0 01-.496-.562l.5-4A.5.5 0 015 6z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-spreadsheet" viewBox="0 0 16 16" id="file-earmark-spreadsheet" xmlns="http://www.w3.org/2000/svg"><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V9H3V2a1 1 0 011-1h5.5v2zM3 12v-2h2v2H3zm0 1h2v2H4a1 1 0 01-1-1v-1zm3 2v-2h3v2H6zm4 0v-2h3v1a1 1 0 01-1 1h-2zm3-3h-3v-2h3v2zm-7 0v-2h3v2H6z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-spreadsheet-fill" viewBox="0 0 16 16" id="file-earmark-spreadsheet-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 12v-2h3v2H6z"/><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM3 9h10v1h-3v2h3v1h-3v2H9v-2H6v2H5v-2H3v-1h2v-2H3V9z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-text" viewBox="0 0 16 16" id="file-earmark-text" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 7a.5.5 0 000 1h5a.5.5 0 000-1h-5zM5 9.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/><path d="M9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.5L9.5 0zm0 1v2A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-text-fill" viewBox="0 0 16 16" id="file-earmark-text-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM4.5 9a.5.5 0 010-1h7a.5.5 0 010 1h-7zM4 10.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm.5 2.5a.5.5 0 010-1h4a.5.5 0 010 1h-4z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-word" viewBox="0 0 16 16" id="file-earmark-word" xmlns="http://www.w3.org/2000/svg"><path d="M5.485 6.879a.5.5 0 10-.97.242l1.5 6a.5.5 0 00.967.01L8 9.402l1.018 3.73a.5.5 0 00.967-.01l1.5-6a.5.5 0 00-.97-.242l-1.036 4.144-.997-3.655a.5.5 0 00-.964 0l-.997 3.655L5.485 6.88z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-word-fill" viewBox="0 0 16 16" id="file-earmark-word-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM5.485 6.879l1.036 4.144.997-3.655a.5.5 0 01.964 0l.997 3.655 1.036-4.144a.5.5 0 01.97.242l-1.5 6a.5.5 0 01-.967.01L8 9.402l-1.018 3.73a.5.5 0 01-.967-.01l-1.5-6a.5.5 0 11.97-.242z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-x" viewBox="0 0 16 16" id="file-earmark-x" xmlns="http://www.w3.org/2000/svg"><path d="M6.854 7.146a.5.5 0 10-.708.708L7.293 9l-1.147 1.146a.5.5 0 00.708.708L8 9.707l1.146 1.147a.5.5 0 00.708-.708L8.707 9l1.147-1.146a.5.5 0 00-.708-.708L8 8.293 6.854 7.146z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-x-fill" viewBox="0 0 16 16" id="file-earmark-x-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM6.854 7.146L8 8.293l1.146-1.147a.5.5 0 11.708.708L8.707 9l1.147 1.146a.5.5 0 01-.708.708L8 9.707l-1.146 1.147a.5.5 0 01-.708-.708L7.293 9 6.146 7.854a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-zip" viewBox="0 0 16 16" id="file-earmark-zip" xmlns="http://www.w3.org/2000/svg"><path d="M5 7.5a1 1 0 011-1h1a1 1 0 011 1v.938l.4 1.599a1 1 0 01-.416 1.074l-.93.62a1 1 0 01-1.11 0l-.929-.62a1 1 0 01-.415-1.074L5 8.438V7.5zm2 0H6v.938a1 1 0 01-.03.243l-.4 1.598.93.62.929-.62-.4-1.598A1 1 0 017 8.438V7.5z"/><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1h-2v1h-1v1h1v1h-1v1h1v1H6V5H5V4h1V3H5V2h1V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-zip-fill" viewBox="0 0 16 16" id="file-earmark-zip-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 9.438V8.5h1v.938a1 1 0 00.03.243l.4 1.598-.93.62-.93-.62.4-1.598a1 1 0 00.03-.243z"/><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zm-4-.5V2h-1V1H6v1h1v1H6v1h1v1H6v1h1v1H5.5V6h-1V5h1V4h-1V3h1zm0 4.5h1a1 1 0 011 1v.938l.4 1.599a1 1 0 01-.416 1.074l-.93.62a1 1 0 01-1.109 0l-.93-.62a1 1 0 01-.415-1.074l.4-1.599V8.5a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-easel" viewBox="0 0 16 16" id="file-easel" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 5a.5.5 0 10-1 0h-2A1.5 1.5 0 004 6.5v2A1.5 1.5 0 005.5 10h.473l-.447 1.342a.5.5 0 10.948.316L7.027 10H7.5v1a.5.5 0 001 0v-1h.473l.553 1.658a.5.5 0 10.948-.316L10.027 10h.473A1.5 1.5 0 0012 8.5v-2A1.5 1.5 0 0010.5 5h-2zM5 6.5a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-2z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-easel-fill" viewBox="0 0 16 16" id="file-easel-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5 6.5a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-2z"/><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM8.5 5h2A1.5 1.5 0 0112 6.5v2a1.5 1.5 0 01-1.5 1.5h-.473l.447 1.342a.5.5 0 01-.948.316L8.973 10H8.5v1a.5.5 0 01-1 0v-1h-.473l-.553 1.658a.5.5 0 11-.948-.316L5.973 10H5.5A1.5 1.5 0 014 8.5v-2A1.5 1.5 0 015.5 5h2a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-excel" viewBox="0 0 16 16" id="file-excel" xmlns="http://www.w3.org/2000/svg"><path d="M5.18 4.616a.5.5 0 01.704.064L8 7.219l2.116-2.54a.5.5 0 11.768.641L8.651 8l2.233 2.68a.5.5 0 01-.768.64L8 8.781l-2.116 2.54a.5.5 0 01-.768-.641L7.349 8 5.116 5.32a.5.5 0 01.064-.704z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-excel-fill" viewBox="0 0 16 16" id="file-excel-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM5.884 4.68L8 7.219l2.116-2.54a.5.5 0 11.768.641L8.651 8l2.233 2.68a.5.5 0 01-.768.64L8 8.781l-2.116 2.54a.5.5 0 01-.768-.641L7.349 8 5.116 5.32a.5.5 0 11.768-.64z"/></symbol><symbol fill="currentColor" class="bi bi-file-fill" viewBox="0 0 16 16" id="file-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4 0h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-font" viewBox="0 0 16 16" id="file-font" xmlns="http://www.w3.org/2000/svg"><path d="M10.943 4H5.057L5 6h.5c.18-1.096.356-1.192 1.694-1.235l.293-.01v6.09c0 .47-.1.582-.898.655v.5H9.41v-.5c-.803-.073-.903-.184-.903-.654V4.755l.298.01c1.338.043 1.514.14 1.694 1.235h.5l-.057-2z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-font-fill" viewBox="0 0 16 16" id="file-font-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM5.057 4h5.886L11 6h-.5c-.18-1.096-.356-1.192-1.694-1.235l-.298-.01v6.09c0 .47.1.582.903.655v.5H6.59v-.5c.799-.073.898-.184.898-.654V4.755l-.293.01C5.856 4.808 5.68 4.905 5.5 6H5l.057-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-image" viewBox="0 0 16 16" id="file-image" xmlns="http://www.w3.org/2000/svg"><path d="M8.002 5.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM3 2a1 1 0 011-1h8a1 1 0 011 1v8l-2.083-2.083a.5.5 0 00-.76.063L8 11 5.835 9.7a.5.5 0 00-.611.076L3 12V2z"/></symbol><symbol fill="currentColor" class="bi bi-file-image-fill" viewBox="0 0 16 16" id="file-image-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 0h8a2 2 0 012 2v8.293l-2.73-2.73a1 1 0 00-1.52.127l-1.889 2.644-1.769-1.062a1 1 0 00-1.222.15L2 12.292V2a2 2 0 012-2zm4.002 5.5a1.5 1.5 0 10-3 0 1.5 1.5 0 003 0z"/><path d="M10.564 8.27L14 11.708V14a2 2 0 01-2 2H4a2 2 0 01-2-2v-.293l3.578-3.577 2.56 1.536 2.426-3.395z"/></symbol><symbol fill="currentColor" class="bi bi-file-lock" viewBox="0 0 16 16" id="file-lock" xmlns="http://www.w3.org/2000/svg"><path d="M8 5a1 1 0 011 1v1H7V6a1 1 0 011-1zm2 2.076V6a2 2 0 10-4 0v1.076c-.54.166-1 .597-1 1.224v2.4c0 .816.781 1.3 1.5 1.3h3c.719 0 1.5-.484 1.5-1.3V8.3c0-.627-.46-1.058-1-1.224zM6.105 8.125A.637.637 0 016.5 8h3a.64.64 0 01.395.125c.085.068.105.133.105.175v2.4c0 .042-.02.107-.105.175A.637.637 0 019.5 11h-3a.637.637 0 01-.395-.125C6.02 10.807 6 10.742 6 10.7V8.3c0-.042.02-.107.105-.175z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-lock-fill" viewBox="0 0 16 16" id="file-lock-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 6a1 1 0 012 0v1H7V6zM6 8.3c0-.042.02-.107.105-.175A.637.637 0 016.5 8h3a.64.64 0 01.395.125c.085.068.105.133.105.175v2.4c0 .042-.02.107-.105.175A.637.637 0 019.5 11h-3a.637.637 0 01-.395-.125C6.02 10.807 6 10.742 6 10.7V8.3z"/><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zm-2 6v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V8.3c0-.627.46-1.058 1-1.224V6a2 2 0 114 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-lock2" viewBox="0 0 16 16" id="file-lock2" xmlns="http://www.w3.org/2000/svg"><path d="M8 5a1 1 0 011 1v1H7V6a1 1 0 011-1zm2 2.076V6a2 2 0 10-4 0v1.076c-.54.166-1 .597-1 1.224v2.4c0 .816.781 1.3 1.5 1.3h3c.719 0 1.5-.484 1.5-1.3V8.3c0-.627-.46-1.058-1-1.224z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-lock2-fill" viewBox="0 0 16 16" id="file-lock2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 6a1 1 0 012 0v1H7V6z"/><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zm-2 6v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V8.3c0-.627.46-1.058 1-1.224V6a2 2 0 114 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-medical" viewBox="0 0 16 16" id="file-medical" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 4.5a.5.5 0 00-1 0v.634l-.549-.317a.5.5 0 10-.5.866L7 6l-.549.317a.5.5 0 10.5.866l.549-.317V7.5a.5.5 0 101 0v-.634l.549.317a.5.5 0 10.5-.866L9 6l.549-.317a.5.5 0 10-.5-.866l-.549.317V4.5zM5.5 9a.5.5 0 000 1h5a.5.5 0 000-1h-5zm0 2a.5.5 0 000 1h5a.5.5 0 000-1h-5z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-medical-fill" viewBox="0 0 16 16" id="file-medical-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM8.5 4.5v.634l.549-.317a.5.5 0 11.5.866L9 6l.549.317a.5.5 0 11-.5.866L8.5 6.866V7.5a.5.5 0 01-1 0v-.634l-.549.317a.5.5 0 11-.5-.866L7 6l-.549-.317a.5.5 0 01.5-.866l.549.317V4.5a.5.5 0 111 0zM5.5 9h5a.5.5 0 010 1h-5a.5.5 0 010-1zm0 2h5a.5.5 0 010 1h-5a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-minus" viewBox="0 0 16 16" id="file-minus" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 8a.5.5 0 01.5-.5h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-minus-fill" viewBox="0 0 16 16" id="file-minus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM6 7.5h4a.5.5 0 010 1H6a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-music" viewBox="0 0 16 16" id="file-music" xmlns="http://www.w3.org/2000/svg"><path d="M10.304 3.13a1 1 0 011.196.98v1.8l-2.5.5v5.09c0 .495-.301.883-.662 1.123C7.974 12.866 7.499 13 7 13c-.5 0-.974-.134-1.338-.377-.36-.24-.662-.628-.662-1.123s.301-.883.662-1.123C6.026 10.134 6.501 10 7 10c.356 0 .7.068 1 .196V4.41a1 1 0 01.804-.98l1.5-.3z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-music-fill" viewBox="0 0 16 16" id="file-music-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zm-.5 4.11v1.8l-2.5.5v5.09c0 .495-.301.883-.662 1.123C7.974 12.866 7.499 13 7 13c-.5 0-.974-.134-1.338-.377-.36-.24-.662-.628-.662-1.123s.301-.883.662-1.123C6.026 10.134 6.501 10 7 10c.356 0 .7.068 1 .196V4.41a1 1 0 01.804-.98l1.5-.3a1 1 0 011.196.98z"/></symbol><symbol fill="currentColor" class="bi bi-file-pdf" viewBox="0 0 16 16" id="file-pdf" xmlns="http://www.w3.org/2000/svg"><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/><path d="M4.603 12.087a.81.81 0 01-.438-.42c-.195-.388-.13-.776.08-1.102.198-.307.526-.568.897-.787a7.68 7.68 0 011.482-.645 19.701 19.701 0 001.062-2.227 7.269 7.269 0 01-.43-1.295c-.086-.4-.119-.796-.046-1.136.075-.354.274-.672.65-.823.192-.077.4-.12.602-.077a.7.7 0 01.477.365c.088.164.12.356.127.538.007.187-.012.395-.047.614-.084.51-.27 1.134-.52 1.794a10.954 10.954 0 00.98 1.686 5.753 5.753 0 011.334.05c.364.065.734.195.96.465.12.144.193.32.2.518.007.192-.047.382-.138.563a1.04 1.04 0 01-.354.416.856.856 0 01-.51.138c-.331-.014-.654-.196-.933-.417a5.716 5.716 0 01-.911-.95 11.642 11.642 0 00-1.997.406 11.311 11.311 0 01-1.021 1.51c-.29.35-.608.655-.926.787a.793.793 0 01-.58.029zm1.379-1.901c-.166.076-.32.156-.459.238-.328.194-.541.383-.647.547-.094.145-.096.25-.04.361.01.022.02.036.026.044a.27.27 0 00.035-.012c.137-.056.355-.235.635-.572a8.18 8.18 0 00.45-.606zm1.64-1.33a12.647 12.647 0 011.01-.193 11.666 11.666 0 01-.51-.858 20.741 20.741 0 01-.5 1.05zm2.446.45c.15.162.296.3.435.41.24.19.407.253.498.256a.107.107 0 00.07-.015.307.307 0 00.094-.125.436.436 0 00.059-.2.095.095 0 00-.026-.063c-.052-.062-.2-.152-.518-.209a3.881 3.881 0 00-.612-.053zM8.078 5.8a6.7 6.7 0 00.2-.828c.031-.188.043-.343.038-.465a.613.613 0 00-.032-.198.517.517 0 00-.145.04c-.087.035-.158.106-.196.283-.04.192-.03.469.046.822.024.111.054.227.09.346z"/></symbol><symbol fill="currentColor" class="bi bi-file-pdf-fill" viewBox="0 0 16 16" id="file-pdf-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.523 10.424c.14-.082.293-.162.459-.238a7.878 7.878 0 01-.45.606c-.28.337-.498.516-.635.572a.266.266 0 01-.035.012.282.282 0 01-.026-.044c-.056-.11-.054-.216.04-.36.106-.165.319-.354.647-.548zm2.455-1.647c-.119.025-.237.05-.356.078a21.035 21.035 0 00.5-1.05 11.96 11.96 0 00.51.858c-.217.032-.436.07-.654.114zm2.525.939a3.888 3.888 0 01-.435-.41c.228.005.434.022.612.054.317.057.466.147.518.209a.095.095 0 01.026.064.436.436 0 01-.06.2.307.307 0 01-.094.124.107.107 0 01-.069.015c-.09-.003-.258-.066-.498-.256zM8.278 4.97c-.04.244-.108.524-.2.829a4.86 4.86 0 01-.089-.346c-.076-.353-.087-.63-.046-.822.038-.177.11-.248.196-.283a.517.517 0 01.145-.04c.013.03.028.092.032.198.005.122-.007.277-.038.465z"/><path fill-rule="evenodd" d="M4 0h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2zm.165 11.668c.09.18.23.343.438.419.207.075.412.04.58-.03.318-.13.635-.436.926-.786.333-.401.683-.927 1.021-1.51a11.64 11.64 0 011.997-.406c.3.383.61.713.91.95.28.22.603.403.934.417a.856.856 0 00.51-.138c.155-.101.27-.247.354-.416.09-.181.145-.37.138-.563a.844.844 0 00-.2-.518c-.226-.27-.596-.4-.96-.465a5.76 5.76 0 00-1.335-.05 10.954 10.954 0 01-.98-1.686c.25-.66.437-1.284.52-1.794.036-.218.055-.426.048-.614a1.238 1.238 0 00-.127-.538.7.7 0 00-.477-.365c-.202-.043-.41 0-.601.077-.377.15-.576.47-.651.823-.073.34-.04.736.046 1.136.088.406.238.848.43 1.295a19.707 19.707 0 01-1.062 2.227 7.662 7.662 0 00-1.482.645c-.37.22-.699.48-.897.787-.21.326-.275.714-.08 1.103z"/></symbol><symbol fill="currentColor" class="bi bi-file-person" viewBox="0 0 16 16" id="file-person" xmlns="http://www.w3.org/2000/svg"><path d="M12 1a1 1 0 011 1v10.755S12 11 8 11s-5 1.755-5 1.755V2a1 1 0 011-1h8zM4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4z"/><path d="M8 10a3 3 0 100-6 3 3 0 000 6z"/></symbol><symbol fill="currentColor" class="bi bi-file-person-fill" viewBox="0 0 16 16" id="file-person-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zm-1 7a3 3 0 11-6 0 3 3 0 016 0zm-3 4c2.623 0 4.146.826 5 1.755V14a1 1 0 01-1 1H4a1 1 0 01-1-1v-1.245C3.854 11.825 5.377 11 8 11z"/></symbol><symbol fill="currentColor" class="bi bi-file-play" viewBox="0 0 16 16" id="file-play" xmlns="http://www.w3.org/2000/svg"><path d="M6 10.117V5.883a.5.5 0 01.757-.429l3.528 2.117a.5.5 0 010 .858l-3.528 2.117a.5.5 0 01-.757-.43z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-play-fill" viewBox="0 0 16 16" id="file-play-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM6 5.883a.5.5 0 01.757-.429l3.528 2.117a.5.5 0 010 .858l-3.528 2.117a.5.5 0 01-.757-.43V5.884z"/></symbol><symbol fill="currentColor" class="bi bi-file-plus" viewBox="0 0 16 16" id="file-plus" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 6a.5.5 0 00-1 0v1.5H6a.5.5 0 000 1h1.5V10a.5.5 0 001 0V8.5H10a.5.5 0 000-1H8.5V6z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-plus-fill" viewBox="0 0 16 16" id="file-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM8.5 6v1.5H10a.5.5 0 010 1H8.5V10a.5.5 0 01-1 0V8.5H6a.5.5 0 010-1h1.5V6a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-post" viewBox="0 0 16 16" id="file-post" xmlns="http://www.w3.org/2000/svg"><path d="M4 3.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-8z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-post-fill" viewBox="0 0 16 16" id="file-post-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM4.5 3h5a.5.5 0 010 1h-5a.5.5 0 010-1zm0 2h7a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-8a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-ppt" viewBox="0 0 16 16" id="file-ppt" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/><path d="M6 5a1 1 0 011-1h1.188a2.75 2.75 0 010 5.5H7v2a.5.5 0 01-1 0V5zm1 3.5h1.188a1.75 1.75 0 100-3.5H7v3.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-ppt-fill" viewBox="0 0 16 16" id="file-ppt-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.188 8.5H7V5h1.188a1.75 1.75 0 110 3.5z"/><path d="M4 0h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2zm3 4a1 1 0 00-1 1v6.5a.5.5 0 001 0v-2h1.188a2.75 2.75 0 000-5.5H7z"/></symbol><symbol fill="currentColor" class="bi bi-file-richtext" viewBox="0 0 16 16" id="file-richtext" xmlns="http://www.w3.org/2000/svg"><path d="M7 4.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm-.861 1.542l1.33.886 1.854-1.855a.25.25 0 01.289-.047l1.888.974V7.5a.5.5 0 01-.5.5H5a.5.5 0 01-.5-.5V7s1.54-1.274 1.639-1.208zM5 9a.5.5 0 000 1h6a.5.5 0 000-1H5zm0 2a.5.5 0 000 1h3a.5.5 0 000-1H5z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-richtext-fill" viewBox="0 0 16 16" id="file-richtext-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM7 4.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm-.861 1.542l1.33.886 1.854-1.855a.25.25 0 01.289-.047l1.888.974V7.5a.5.5 0 01-.5.5H5a.5.5 0 01-.5-.5V7s1.54-1.274 1.639-1.208zM5 9h6a.5.5 0 010 1H5a.5.5 0 010-1zm0 2h3a.5.5 0 010 1H5a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-ruled" viewBox="0 0 16 16" id="file-ruled" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm2-1a1 1 0 00-1 1v4h10V2a1 1 0 00-1-1H4zm9 6H6v2h7V7zm0 3H6v2h7v-2zm0 3H6v2h6a1 1 0 001-1v-1zm-8 2v-2H3v1a1 1 0 001 1h1zm-2-3h2v-2H3v2zm0-3h2V7H3v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-ruled-fill" viewBox="0 0 16 16" id="file-ruled-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v4h12V2a2 2 0 00-2-2zm2 7H6v2h8V7zm0 3H6v2h8v-2zm0 3H6v3h6a2 2 0 002-2v-1zm-9 3v-3H2v1a2 2 0 002 2h1zm-3-4h3v-2H2v2zm0-3h3V7H2v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-slides" viewBox="0 0 16 16" id="file-slides" xmlns="http://www.w3.org/2000/svg"><path d="M5 4a.5.5 0 00-.496.438l-.5 4A.5.5 0 004.5 9h3v2.016c-.863.055-1.5.251-1.5.484 0 .276.895.5 2 .5s2-.224 2-.5c0-.233-.637-.429-1.5-.484V9h3a.5.5 0 00.496-.562l-.5-4A.5.5 0 0011 4H5zm2 3.78V5.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 010 .214l-2.13 1.28A.125.125 0 017 7.778z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-slides-fill" viewBox="0 0 16 16" id="file-slides-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 7.78V5.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 010 .214l-2.13 1.28A.125.125 0 017 7.778z"/><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM5 4h6a.5.5 0 01.496.438l.5 4A.5.5 0 0111.5 9h-3v2.016c.863.055 1.5.251 1.5.484 0 .276-.895.5-2 .5s-2-.224-2-.5c0-.233.637-.429 1.5-.484V9h-3a.5.5 0 01-.496-.562l.5-4A.5.5 0 015 4z"/></symbol><symbol fill="currentColor" class="bi bi-file-spreadsheet" viewBox="0 0 16 16" id="file-spreadsheet" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm2-1a1 1 0 00-1 1v4h10V2a1 1 0 00-1-1H4zm9 6h-3v2h3V7zm0 3h-3v2h3v-2zm0 3h-3v2h2a1 1 0 001-1v-1zm-4 2v-2H6v2h3zm-4 0v-2H3v1a1 1 0 001 1h1zm-2-3h2v-2H3v2zm0-3h2V7H3v2zm3-2v2h3V7H6zm3 3H6v2h3v-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-spreadsheet-fill" viewBox="0 0 16 16" id="file-spreadsheet-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v4h12V2a2 2 0 00-2-2zm2 7h-4v2h4V7zm0 3h-4v2h4v-2zm0 3h-4v3h2a2 2 0 002-2v-1zm-5 3v-3H6v3h3zm-4 0v-3H2v1a2 2 0 002 2h1zm-3-4h3v-2H2v2zm0-3h3V7H2v2zm4 0V7h3v2H6zm0 1h3v2H6v-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-text" viewBox="0 0 16 16" id="file-text" xmlns="http://www.w3.org/2000/svg"><path d="M5 4a.5.5 0 000 1h6a.5.5 0 000-1H5zm-.5 2.5A.5.5 0 015 6h6a.5.5 0 010 1H5a.5.5 0 01-.5-.5zM5 8a.5.5 0 000 1h6a.5.5 0 000-1H5zm0 2a.5.5 0 000 1h3a.5.5 0 000-1H5z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-text-fill" viewBox="0 0 16 16" id="file-text-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM5 4h6a.5.5 0 010 1H5a.5.5 0 010-1zm-.5 2.5A.5.5 0 015 6h6a.5.5 0 010 1H5a.5.5 0 01-.5-.5zM5 8h6a.5.5 0 010 1H5a.5.5 0 010-1zm0 2h3a.5.5 0 010 1H5a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-word" viewBox="0 0 16 16" id="file-word" xmlns="http://www.w3.org/2000/svg"><path d="M4.879 4.515a.5.5 0 01.606.364l1.036 4.144.997-3.655a.5.5 0 01.964 0l.997 3.655 1.036-4.144a.5.5 0 01.97.242l-1.5 6a.5.5 0 01-.967.01L8 7.402l-1.018 3.73a.5.5 0 01-.967-.01l-1.5-6a.5.5 0 01.364-.606z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-word-fill" viewBox="0 0 16 16" id="file-word-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM5.485 4.879l1.036 4.144.997-3.655a.5.5 0 01.964 0l.997 3.655 1.036-4.144a.5.5 0 01.97.242l-1.5 6a.5.5 0 01-.967.01L8 7.402l-1.018 3.73a.5.5 0 01-.967-.01l-1.5-6a.5.5 0 11.97-.242z"/></symbol><symbol fill="currentColor" class="bi bi-file-x" viewBox="0 0 16 16" id="file-x" xmlns="http://www.w3.org/2000/svg"><path d="M6.146 6.146a.5.5 0 01.708 0L8 7.293l1.146-1.147a.5.5 0 11.708.708L8.707 8l1.147 1.146a.5.5 0 01-.708.708L8 8.707 6.854 9.854a.5.5 0 01-.708-.708L7.293 8 6.146 6.854a.5.5 0 010-.708z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-x-fill" viewBox="0 0 16 16" id="file-x-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM6.854 6.146L8 7.293l1.146-1.147a.5.5 0 11.708.708L8.707 8l1.147 1.146a.5.5 0 01-.708.708L8 8.707 6.854 9.854a.5.5 0 01-.708-.708L7.293 8 6.146 6.854a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-file-zip" viewBox="0 0 16 16" id="file-zip" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 7.5a1 1 0 011-1h1a1 1 0 011 1v.938l.4 1.599a1 1 0 01-.416 1.074l-.93.62a1 1 0 01-1.109 0l-.93-.62a1 1 0 01-.415-1.074l.4-1.599V7.5zm2 0h-1v.938a1 1 0 01-.03.243l-.4 1.598.93.62.93-.62-.4-1.598a1 1 0 01-.03-.243V7.5z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm5.5-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1H9v1H8v1h1v1H8v1h1v1H7.5V5h-1V4h1V3h-1V2h1V1z"/></symbol><symbol fill="currentColor" class="bi bi-file-zip-fill" viewBox="0 0 16 16" id="file-zip-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 9.438V8.5h-1v.938a1 1 0 01-.03.243l-.4 1.598.93.62.93-.62-.4-1.598a1 1 0 01-.03-.243z"/><path d="M4 0h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2zm2.5 8.5v.938l-.4 1.599a1 1 0 00.416 1.074l.93.62a1 1 0 001.109 0l.93-.62a1 1 0 00.415-1.074l-.4-1.599V8.5a1 1 0 00-1-1h-1a1 1 0 00-1 1zm1-5.5h-1v1h1v1h-1v1h1v1H9V6H8V5h1V4H8V3h1V2H8V1H6.5v1h1v1z"/></symbol><symbol fill="currentColor" class="bi bi-files" viewBox="0 0 16 16" id="files" xmlns="http://www.w3.org/2000/svg"><path d="M13 0H6a2 2 0 00-2 2 2 2 0 00-2 2v10a2 2 0 002 2h7a2 2 0 002-2 2 2 0 002-2V2a2 2 0 00-2-2zm0 13V4a2 2 0 00-2-2H5a1 1 0 011-1h7a1 1 0 011 1v10a1 1 0 01-1 1zM3 4a1 1 0 011-1h7a1 1 0 011 1v10a1 1 0 01-1 1H4a1 1 0 01-1-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-files-alt" viewBox="0 0 16 16" id="files-alt" xmlns="http://www.w3.org/2000/svg"><path d="M11 0H3a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2 2 2 0 002-2V4a2 2 0 00-2-2 2 2 0 00-2-2zm2 3a1 1 0 011 1v8a1 1 0 01-1 1V3zM2 2a1 1 0 011-1h8a1 1 0 011 1v12a1 1 0 01-1 1H3a1 1 0 01-1-1V2z"/></symbol><symbol fill="currentColor" class="bi bi-film" viewBox="0 0 16 16" id="film" xmlns="http://www.w3.org/2000/svg"><path d="M0 1a1 1 0 011-1h14a1 1 0 011 1v14a1 1 0 01-1 1H1a1 1 0 01-1-1V1zm4 0v6h8V1H4zm8 8H4v6h8V9zM1 1v2h2V1H1zm2 3H1v2h2V4zM1 7v2h2V7H1zm2 3H1v2h2v-2zm-2 3v2h2v-2H1zM15 1h-2v2h2V1zm-2 3v2h2V4h-2zm2 3h-2v2h2V7zm-2 3v2h2v-2h-2zm2 3h-2v2h2v-2z"/></symbol><symbol fill="currentColor" class="bi bi-filter" viewBox="0 0 16 16" id="filter" xmlns="http://www.w3.org/2000/svg"><path d="M6 10.5a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-filter-circle" viewBox="0 0 16 16" id="filter-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M7 11.5a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-filter-circle-fill" viewBox="0 0 16 16" id="filter-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM3.5 5h9a.5.5 0 010 1h-9a.5.5 0 010-1zM5 8.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm2 3a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-filter-left" viewBox="0 0 16 16" id="filter-left" xmlns="http://www.w3.org/2000/svg"><path d="M2 10.5a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-filter-right" viewBox="0 0 16 16" id="filter-right" xmlns="http://www.w3.org/2000/svg"><path d="M14 10.5a.5.5 0 00-.5-.5h-3a.5.5 0 000 1h3a.5.5 0 00.5-.5zm0-3a.5.5 0 00-.5-.5h-7a.5.5 0 000 1h7a.5.5 0 00.5-.5zm0-3a.5.5 0 00-.5-.5h-11a.5.5 0 000 1h11a.5.5 0 00.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-filter-square" viewBox="0 0 16 16" id="filter-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M6 11.5a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-filter-square-fill" viewBox="0 0 16 16" id="filter-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm.5 5h11a.5.5 0 010 1h-11a.5.5 0 010-1zM4 8.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm2 3a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-flag" viewBox="0 0 16 16" id="flag" xmlns="http://www.w3.org/2000/svg"><path d="M14.778.085A.5.5 0 0115 .5V8a.5.5 0 01-.314.464L14.5 8l.186.464-.003.001-.006.003-.023.009a12.435 12.435 0 01-.397.15c-.264.095-.631.223-1.047.35-.816.252-1.879.523-2.71.523-.847 0-1.548-.28-2.158-.525l-.028-.01C7.68 8.71 7.14 8.5 6.5 8.5c-.7 0-1.638.23-2.437.477A19.626 19.626 0 003 9.342V15.5a.5.5 0 01-1 0V.5a.5.5 0 011 0v.282c.226-.079.496-.17.79-.26C4.606.272 5.67 0 6.5 0c.84 0 1.524.277 2.121.519l.043.018C9.286.788 9.828 1 10.5 1c.7 0 1.638-.23 2.437-.477a19.587 19.587 0 001.349-.476l.019-.007.004-.002h.001M14 1.221c-.22.078-.48.167-.766.255-.81.252-1.872.523-2.734.523-.886 0-1.592-.286-2.203-.534l-.008-.003C7.662 1.21 7.139 1 6.5 1c-.669 0-1.606.229-2.415.478A21.294 21.294 0 003 1.845v6.433c.22-.078.48-.167.766-.255C4.576 7.77 5.638 7.5 6.5 7.5c.847 0 1.548.28 2.158.525l.028.01C9.32 8.29 9.86 8.5 10.5 8.5c.668 0 1.606-.229 2.415-.478A21.317 21.317 0 0014 7.655V1.222z"/></symbol><symbol fill="currentColor" class="bi bi-flag-fill" viewBox="0 0 16 16" id="flag-fill" xmlns="http://www.w3.org/2000/svg"><path d="M14.778.085A.5.5 0 0115 .5V8a.5.5 0 01-.314.464L14.5 8l.186.464-.003.001-.006.003-.023.009a12.435 12.435 0 01-.397.15c-.264.095-.631.223-1.047.35-.816.252-1.879.523-2.71.523-.847 0-1.548-.28-2.158-.525l-.028-.01C7.68 8.71 7.14 8.5 6.5 8.5c-.7 0-1.638.23-2.437.477A19.626 19.626 0 003 9.342V15.5a.5.5 0 01-1 0V.5a.5.5 0 011 0v.282c.226-.079.496-.17.79-.26C4.606.272 5.67 0 6.5 0c.84 0 1.524.277 2.121.519l.043.018C9.286.788 9.828 1 10.5 1c.7 0 1.638-.23 2.437-.477a19.587 19.587 0 001.349-.476l.019-.007.004-.002h.001"/></symbol><symbol fill="currentColor" class="bi bi-flower1" viewBox="0 0 16 16" id="flower1" xmlns="http://www.w3.org/2000/svg"><path d="M6.174 1.184a2 2 0 013.652 0A2 2 0 0112.99 3.01a2 2 0 011.826 3.164 2 2 0 010 3.652 2 2 0 01-1.826 3.164 2 2 0 01-3.164 1.826 2 2 0 01-3.652 0A2 2 0 013.01 12.99a2 2 0 01-1.826-3.164 2 2 0 010-3.652A2 2 0 013.01 3.01a2 2 0 013.164-1.826zM8 1a1 1 0 00-.998 1.03l.01.091c.012.077.029.176.054.296.049.241.122.542.213.887.182.688.428 1.513.676 2.314L8 5.762l.045-.144c.248-.8.494-1.626.676-2.314.091-.345.164-.646.213-.887a4.997 4.997 0 00.064-.386L9 2a1 1 0 00-1-1zM2 9l.03-.002.091-.01a4.99 4.99 0 00.296-.054c.241-.049.542-.122.887-.213a60.59 60.59 0 002.314-.676L5.762 8l-.144-.045a60.59 60.59 0 00-2.314-.676 16.705 16.705 0 00-.887-.213 4.99 4.99 0 00-.386-.064L2 7a1 1 0 100 2zm7 5l-.002-.03a5.005 5.005 0 00-.064-.386 16.398 16.398 0 00-.213-.888 60.582 60.582 0 00-.676-2.314L8 10.238l-.045.144c-.248.8-.494 1.626-.676 2.314-.091.345-.164.646-.213.887a4.996 4.996 0 00-.064.386L7 14a1 1 0 102 0zm-5.696-2.134l.025-.017a5.001 5.001 0 00.303-.248c.184-.164.408-.377.661-.629A60.614 60.614 0 005.96 9.23l.103-.111-.147.033a60.88 60.88 0 00-2.343.572c-.344.093-.64.18-.874.258a5.063 5.063 0 00-.367.138l-.027.014a1 1 0 101 1.732zM4.5 14.062a1 1 0 001.366-.366l.014-.027c.01-.02.021-.048.036-.084a5.09 5.09 0 00.102-.283c.078-.233.165-.53.258-.874a60.6 60.6 0 00.572-2.343l.033-.147-.11.102a60.848 60.848 0 00-1.743 1.667 17.07 17.07 0 00-.629.66 5.06 5.06 0 00-.248.304l-.017.025a1 1 0 00.366 1.366zm9.196-8.196a1 1 0 00-1-1.732l-.025.017a4.951 4.951 0 00-.303.248 16.69 16.69 0 00-.661.629A60.72 60.72 0 0010.04 6.77l-.102.111.147-.033a60.6 60.6 0 002.342-.572c.345-.093.642-.18.875-.258a4.993 4.993 0 00.367-.138.53.53 0 00.027-.014zM11.5 1.938a1 1 0 00-1.366.366l-.014.027c-.01.02-.021.048-.036.084a5.09 5.09 0 00-.102.283c-.078.233-.165.53-.258.875a60.62 60.62 0 00-.572 2.342l-.033.147.11-.102a60.848 60.848 0 001.743-1.667c.252-.253.465-.477.629-.66a5.001 5.001 0 00.248-.304l.017-.025a1 1 0 00-.366-1.366zM14 9a1 1 0 000-2l-.03.002a4.996 4.996 0 00-.386.064c-.242.049-.543.122-.888.213-.688.182-1.513.428-2.314.676L10.238 8l.144.045c.8.248 1.626.494 2.314.676.345.091.646.164.887.213a4.996 4.996 0 00.386.064L14 9zM1.938 4.5a1 1 0 00.393 1.38l.084.035c.072.03.166.064.283.103.233.078.53.165.874.258a60.88 60.88 0 002.343.572l.147.033-.103-.111a60.584 60.584 0 00-1.666-1.742 16.705 16.705 0 00-.66-.629 4.996 4.996 0 00-.304-.248l-.025-.017a1 1 0 00-1.366.366zm2.196-1.196l.017.025a4.996 4.996 0 00.248.303c.164.184.377.408.629.661A60.597 60.597 0 006.77 5.96l.111.102-.033-.147a60.602 60.602 0 00-.572-2.342c-.093-.345-.18-.642-.258-.875a5.006 5.006 0 00-.138-.367l-.014-.027a1 1 0 10-1.732 1zm9.928 8.196a1 1 0 00-.366-1.366l-.027-.014a5 5 0 00-.367-.138c-.233-.078-.53-.165-.875-.258a60.619 60.619 0 00-2.342-.572l-.147-.033.102.111a60.73 60.73 0 001.667 1.742c.253.252.477.465.66.629a4.946 4.946 0 00.304.248l.025.017a1 1 0 001.366-.366zm-3.928 2.196a1 1 0 001.732-1l-.017-.025a5.065 5.065 0 00-.248-.303 16.705 16.705 0 00-.629-.661A60.462 60.462 0 009.23 10.04l-.111-.102.033.147a60.6 60.6 0 00.572 2.342c.093.345.18.642.258.875a4.985 4.985 0 00.138.367.575.575 0 00.014.027zM8 9.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/></symbol><symbol fill="currentColor" class="bi bi-flower2" viewBox="0 0 16 16" id="flower2" xmlns="http://www.w3.org/2000/svg"><path d="M8 16a4 4 0 004-4 4 4 0 000-8 4 4 0 00-8 0 4 4 0 100 8 4 4 0 004 4zm3-12c0 .073-.01.155-.03.247-.544.241-1.091.638-1.598 1.084A2.987 2.987 0 008 5c-.494 0-.96.12-1.372.331-.507-.446-1.054-.843-1.597-1.084A1.117 1.117 0 015 4a3 3 0 016 0zm-.812 6.052A2.99 2.99 0 0011 8a2.99 2.99 0 00-.812-2.052c.215-.18.432-.346.647-.487C11.34 5.131 11.732 5 12 5a3 3 0 110 6c-.268 0-.66-.13-1.165-.461a6.833 6.833 0 01-.647-.487zm-3.56.617a3.001 3.001 0 002.744 0c.507.446 1.054.842 1.598 1.084.02.091.03.174.03.247a3 3 0 11-6 0c0-.073.01-.155.03-.247.544-.242 1.091-.638 1.598-1.084zm-.816-4.721A2.99 2.99 0 005 8c0 .794.308 1.516.812 2.052a6.83 6.83 0 01-.647.487C4.66 10.869 4.268 11 4 11a3 3 0 010-6c.268 0 .66.13 1.165.461.215.141.432.306.647.487zM8 9a1 1 0 110-2 1 1 0 010 2z"/></symbol><symbol fill="currentColor" class="bi bi-flower3" viewBox="0 0 16 16" id="flower3" xmlns="http://www.w3.org/2000/svg"><path d="M11.424 8c.437-.052.811-.136 1.04-.268a2 2 0 00-2-3.464c-.229.132-.489.414-.752.767C9.886 4.63 10 4.264 10 4a2 2 0 10-4 0c0 .264.114.63.288 1.035-.263-.353-.523-.635-.752-.767a2 2 0 00-2 3.464c.229.132.603.216 1.04.268-.437.052-.811.136-1.04.268a2 2 0 102 3.464c.229-.132.489-.414.752-.767C6.114 11.37 6 11.736 6 12a2 2 0 104 0c0-.264-.114-.63-.288-1.035.263.353.523.635.752.767a2 2 0 102-3.464c-.229-.132-.603-.216-1.04-.268zM9 4a1.468 1.468 0 01-.045.205c-.039.132-.1.295-.183.484a12.88 12.88 0 01-.637 1.223L8 6.142a21.73 21.73 0 01-.135-.23 12.88 12.88 0 01-.637-1.223 4.216 4.216 0 01-.183-.484A1.473 1.473 0 017 4a1 1 0 112 0zM3.67 5.5a1 1 0 011.366-.366 1.472 1.472 0 01.156.142c.094.1.204.233.326.4.245.333.502.747.742 1.163l.13.232a21.86 21.86 0 01-.265.002 12.88 12.88 0 01-1.379-.06 4.214 4.214 0 01-.51-.083 1.47 1.47 0 01-.2-.064A1 1 0 013.67 5.5zm1.366 5.366a1 1 0 01-1-1.732c.001 0 .016-.008.047-.02.037-.013.087-.028.153-.044.134-.032.305-.06.51-.083a12.88 12.88 0 011.379-.06c.09 0 .178 0 .266.002a21.82 21.82 0 01-.131.232c-.24.416-.497.83-.742 1.163a4.1 4.1 0 01-.327.4 1.483 1.483 0 01-.155.142zM9 12a1 1 0 01-2 0 1.476 1.476 0 01.045-.206c.039-.131.1-.294.183-.483.166-.378.396-.808.637-1.223L8 9.858l.135.23c.241.415.47.845.637 1.223.083.19.144.352.183.484A1.338 1.338 0 019 12zm3.33-6.5a1 1 0 01-.366 1.366 1.478 1.478 0 01-.2.064c-.134.032-.305.06-.51.083-.412.045-.898.061-1.379.06-.09 0-.178 0-.266-.002l.131-.232c.24-.416.497-.83.742-1.163a4.1 4.1 0 01.327-.4c.046-.05.085-.086.114-.11.026-.022.04-.03.041-.032a1 1 0 011.366.366zm-1.366 5.366a1.494 1.494 0 01-.155-.141 4.225 4.225 0 01-.327-.4A12.88 12.88 0 019.74 9.16a22 22 0 01-.13-.232l.265-.002c.48-.001.967.015 1.379.06.205.023.376.051.51.083.066.016.116.031.153.044l.048.02a1 1 0 11-1 1.732zM8 9a1 1 0 110-2 1 1 0 010 2z"/></symbol><symbol fill="currentColor" class="bi bi-folder" viewBox="0 0 16 16" id="folder" xmlns="http://www.w3.org/2000/svg"><path d="M.54 3.87L.5 3a2 2 0 012-2h3.672a2 2 0 011.414.586l.828.828A2 2 0 009.828 3h3.982a2 2 0 011.992 2.181l-.637 7A2 2 0 0113.174 14H2.826a2 2 0 01-1.991-1.819l-.637-7a1.99 1.99 0 01.342-1.31zM2.19 4a1 1 0 00-.996 1.09l.637 7a1 1 0 00.995.91h10.348a1 1 0 00.995-.91l.637-7A1 1 0 0013.81 4H2.19zm4.69-1.707A1 1 0 006.172 2H2.5a1 1 0 00-1 .981l.006.139C1.72 3.042 1.95 3 2.19 3h5.396l-.707-.707z"/></symbol><symbol fill="currentColor" class="bi bi-folder-check" viewBox="0 0 16 16" id="folder-check" xmlns="http://www.w3.org/2000/svg"><path d="M.5 3l.04.87a1.99 1.99 0 00-.342 1.311l.637 7A2 2 0 002.826 14H9v-1H2.826a1 1 0 01-.995-.91l-.637-7A1 1 0 012.19 4h11.62a1 1 0 01.996 1.09L14.54 8h1.005l.256-2.819A2 2 0 0013.81 3H9.828a2 2 0 01-1.414-.586l-.828-.828A2 2 0 006.172 1H2.5a2 2 0 00-2 2zm5.672-1a1 1 0 01.707.293L7.586 3H2.19c-.24 0-.47.042-.683.12L1.5 2.98a1 1 0 011-.98h3.672z"/><path d="M15.854 10.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.707 0l-1.5-1.5a.5.5 0 01.707-.708l1.146 1.147 2.646-2.647a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-folder-fill" viewBox="0 0 16 16" id="folder-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.828 3h3.982a2 2 0 011.992 2.181l-.637 7A2 2 0 0113.174 14H2.825a2 2 0 01-1.991-1.819l-.637-7a1.99 1.99 0 01.342-1.31L.5 3a2 2 0 012-2h3.672a2 2 0 011.414.586l.828.828A2 2 0 009.828 3zm-8.322.12C1.72 3.042 1.95 3 2.19 3h5.396l-.707-.707A1 1 0 006.172 2H2.5a1 1 0 00-1 .981l.006.139z"/></symbol><symbol fill="currentColor" class="bi bi-folder-minus" viewBox="0 0 16 16" id="folder-minus" xmlns="http://www.w3.org/2000/svg"><path d="M.5 3l.04.87a1.99 1.99 0 00-.342 1.311l.637 7A2 2 0 002.826 14H9v-1H2.826a1 1 0 01-.995-.91l-.637-7A1 1 0 012.19 4h11.62a1 1 0 01.996 1.09L14.54 8h1.005l.256-2.819A2 2 0 0013.81 3H9.828a2 2 0 01-1.414-.586l-.828-.828A2 2 0 006.172 1H2.5a2 2 0 00-2 2zm5.672-1a1 1 0 01.707.293L7.586 3H2.19c-.24 0-.47.042-.683.12L1.5 2.98a1 1 0 011-.98h3.672z"/><path d="M11 11.5a.5.5 0 01.5-.5h4a.5.5 0 110 1h-4a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-folder-plus" viewBox="0 0 16 16" id="folder-plus" xmlns="http://www.w3.org/2000/svg"><path d="M.5 3l.04.87a1.99 1.99 0 00-.342 1.311l.637 7A2 2 0 002.826 14H9v-1H2.826a1 1 0 01-.995-.91l-.637-7A1 1 0 012.19 4h11.62a1 1 0 01.996 1.09L14.54 8h1.005l.256-2.819A2 2 0 0013.81 3H9.828a2 2 0 01-1.414-.586l-.828-.828A2 2 0 006.172 1H2.5a2 2 0 00-2 2zm5.672-1a1 1 0 01.707.293L7.586 3H2.19c-.24 0-.47.042-.683.12L1.5 2.98a1 1 0 011-.98h3.672z"/><path d="M13.5 10a.5.5 0 01.5.5V12h1.5a.5.5 0 110 1H14v1.5a.5.5 0 11-1 0V13h-1.5a.5.5 0 010-1H13v-1.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-folder-symlink" viewBox="0 0 16 16" id="folder-symlink" xmlns="http://www.w3.org/2000/svg"><path d="M11.798 8.271l-3.182 1.97c-.27.166-.616-.036-.616-.372V9.1s-2.571-.3-4 2.4c.571-4.8 3.143-4.8 4-4.8v-.769c0-.336.346-.538.616-.371l3.182 1.969c.27.166.27.576 0 .742z"/><path d="M.5 3l.04.87a1.99 1.99 0 00-.342 1.311l.637 7A2 2 0 002.826 14h10.348a2 2 0 001.991-1.819l.637-7A2 2 0 0013.81 3H9.828a2 2 0 01-1.414-.586l-.828-.828A2 2 0 006.172 1H2.5a2 2 0 00-2 2zm.694 2.09A1 1 0 012.19 4h11.62a1 1 0 01.996 1.09l-.636 7a1 1 0 01-.996.91H2.826a1 1 0 01-.995-.91l-.637-7zM6.172 2a1 1 0 01.707.293L7.586 3H2.19c-.24 0-.47.042-.683.12L1.5 2.98a1 1 0 011-.98h3.672z"/></symbol><symbol fill="currentColor" class="bi bi-folder-symlink-fill" viewBox="0 0 16 16" id="folder-symlink-fill" xmlns="http://www.w3.org/2000/svg"><path d="M13.81 3H9.828a2 2 0 01-1.414-.586l-.828-.828A2 2 0 006.172 1H2.5a2 2 0 00-2 2l.04.87a1.99 1.99 0 00-.342 1.311l.637 7A2 2 0 002.826 14h10.348a2 2 0 001.991-1.819l.637-7A2 2 0 0013.81 3zM2.19 3c-.24 0-.47.042-.683.12L1.5 2.98a1 1 0 011-.98h3.672a1 1 0 01.707.293L7.586 3H2.19zm9.608 5.271l-3.182 1.97c-.27.166-.616-.036-.616-.372V9.1s-2.571-.3-4 2.4c.571-4.8 3.143-4.8 4-4.8v-.769c0-.336.346-.538.616-.371l3.182 1.969c.27.166.27.576 0 .742z"/></symbol><symbol fill="currentColor" class="bi bi-folder-x" viewBox="0 0 16 16" id="folder-x" xmlns="http://www.w3.org/2000/svg"><path d="M.54 3.87L.5 3a2 2 0 012-2h3.672a2 2 0 011.414.586l.828.828A2 2 0 009.828 3h3.982a2 2 0 011.992 2.181L15.546 8H14.54l.265-2.91A1 1 0 0013.81 4H2.19a1 1 0 00-.996 1.09l.637 7a1 1 0 00.995.91H9v1H2.826a2 2 0 01-1.991-1.819l-.637-7a1.99 1.99 0 01.342-1.31zm6.339-1.577A1 1 0 006.172 2H2.5a1 1 0 00-1 .981l.006.139C1.72 3.042 1.95 3 2.19 3h5.396l-.707-.707z"/><path d="M11.854 10.146a.5.5 0 00-.707.708L12.293 12l-1.146 1.146a.5.5 0 00.707.708L13 12.707l1.146 1.147a.5.5 0 00.708-.708L13.707 12l1.147-1.146a.5.5 0 00-.707-.708L13 11.293l-1.146-1.147z"/></symbol><symbol fill="currentColor" class="bi bi-folder2" viewBox="0 0 16 16" id="folder2" xmlns="http://www.w3.org/2000/svg"><path d="M1 3.5A1.5 1.5 0 012.5 2h2.764c.958 0 1.76.56 2.311 1.184C7.985 3.648 8.48 4 9 4h4.5A1.5 1.5 0 0115 5.5v7a1.5 1.5 0 01-1.5 1.5h-11A1.5 1.5 0 011 12.5v-9zM2.5 3a.5.5 0 00-.5.5V6h12v-.5a.5.5 0 00-.5-.5H9c-.964 0-1.71-.629-2.174-1.154C6.374 3.334 5.82 3 5.264 3H2.5zM14 7H2v5.5a.5.5 0 00.5.5h11a.5.5 0 00.5-.5V7z"/></symbol><symbol fill="currentColor" class="bi bi-folder2-open" viewBox="0 0 16 16" id="folder2-open" xmlns="http://www.w3.org/2000/svg"><path d="M1 3.5A1.5 1.5 0 012.5 2h2.764c.958 0 1.76.56 2.311 1.184C7.985 3.648 8.48 4 9 4h4.5A1.5 1.5 0 0115 5.5v.64c.57.265.94.876.856 1.546l-.64 5.124A2.5 2.5 0 0112.733 15H3.266a2.5 2.5 0 01-2.481-2.19l-.64-5.124A1.5 1.5 0 011 6.14V3.5zM2 6h12v-.5a.5.5 0 00-.5-.5H9c-.964 0-1.71-.629-2.174-1.154C6.374 3.334 5.82 3 5.264 3H2.5a.5.5 0 00-.5.5V6zm-.367 1a.5.5 0 00-.496.562l.64 5.124A1.5 1.5 0 003.266 14h9.468a1.5 1.5 0 001.489-1.314l.64-5.124A.5.5 0 0014.367 7H1.633z"/></symbol><symbol fill="currentColor" class="bi bi-fonts" viewBox="0 0 16 16" id="fonts" xmlns="http://www.w3.org/2000/svg"><path d="M12.258 3h-8.51l-.083 2.46h.479c.26-1.544.758-1.783 2.693-1.845l.424-.013v7.827c0 .663-.144.82-1.3.923v.52h4.082v-.52c-1.162-.103-1.306-.26-1.306-.923V3.602l.431.013c1.934.062 2.434.301 2.693 1.846h.479L12.258 3z"/></symbol><symbol fill="currentColor" class="bi bi-forward" viewBox="0 0 16 16" id="forward" xmlns="http://www.w3.org/2000/svg"><path d="M9.502 5.513a.144.144 0 00-.202.134V6.65a.5.5 0 01-.5.5H2.5v2.9h6.3a.5.5 0 01.5.5v1.003c0 .108.11.176.202.134l3.984-2.933a.51.51 0 01.042-.028.147.147 0 000-.252.51.51 0 01-.042-.028L9.502 5.513zM8.3 5.647a1.144 1.144 0 011.767-.96l3.994 2.94a1.147 1.147 0 010 1.946l-3.994 2.94a1.144 1.144 0 01-1.767-.96v-.503H2a.5.5 0 01-.5-.5v-3.9a.5.5 0 01.5-.5h6.3v-.503z"/></symbol><symbol fill="currentColor" class="bi bi-forward-fill" viewBox="0 0 16 16" id="forward-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.77 12.11l4.012-2.953a.647.647 0 000-1.114L9.771 5.09a.644.644 0 00-.971.557V6.65H2v3.9h6.8v1.003c0 .505.545.808.97.557z"/></symbol><symbol fill="currentColor" class="bi bi-front" viewBox="0 0 16 16" id="front" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h8a2 2 0 012 2v2h2a2 2 0 012 2v8a2 2 0 01-2 2H6a2 2 0 01-2-2v-2H2a2 2 0 01-2-2V2zm5 10v2a1 1 0 001 1h8a1 1 0 001-1V6a1 1 0 00-1-1h-2v5a2 2 0 01-2 2H5z"/></symbol><symbol fill="currentColor" class="bi bi-fullscreen" viewBox="0 0 16 16" id="fullscreen" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 1a.5.5 0 00-.5.5v4a.5.5 0 01-1 0v-4A1.5 1.5 0 011.5 0h4a.5.5 0 010 1h-4zM10 .5a.5.5 0 01.5-.5h4A1.5 1.5 0 0116 1.5v4a.5.5 0 01-1 0v-4a.5.5 0 00-.5-.5h-4a.5.5 0 01-.5-.5zM.5 10a.5.5 0 01.5.5v4a.5.5 0 00.5.5h4a.5.5 0 010 1h-4A1.5 1.5 0 010 14.5v-4a.5.5 0 01.5-.5zm15 0a.5.5 0 01.5.5v4a1.5 1.5 0 01-1.5 1.5h-4a.5.5 0 010-1h4a.5.5 0 00.5-.5v-4a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-fullscreen-exit" viewBox="0 0 16 16" id="fullscreen-exit" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 0a.5.5 0 01.5.5v4A1.5 1.5 0 014.5 6h-4a.5.5 0 010-1h4a.5.5 0 00.5-.5v-4a.5.5 0 01.5-.5zm5 0a.5.5 0 01.5.5v4a.5.5 0 00.5.5h4a.5.5 0 010 1h-4A1.5 1.5 0 0110 4.5v-4a.5.5 0 01.5-.5zM0 10.5a.5.5 0 01.5-.5h4A1.5 1.5 0 016 11.5v4a.5.5 0 01-1 0v-4a.5.5 0 00-.5-.5h-4a.5.5 0 01-.5-.5zm10 1a1.5 1.5 0 011.5-1.5h4a.5.5 0 010 1h-4a.5.5 0 00-.5.5v4a.5.5 0 01-1 0v-4z"/></symbol><symbol fill="currentColor" class="bi bi-funnel" viewBox="0 0 16 16" id="funnel" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 1.5A.5.5 0 012 1h12a.5.5 0 01.5.5v2a.5.5 0 01-.128.334L10 8.692V13.5a.5.5 0 01-.342.474l-3 1A.5.5 0 016 14.5V8.692L1.628 3.834A.5.5 0 011.5 3.5v-2zm1 .5v1.308l4.372 4.858A.5.5 0 017 8.5v5.306l2-.666V8.5a.5.5 0 01.128-.334L13.5 3.308V2h-11z"/></symbol><symbol fill="currentColor" class="bi bi-funnel-fill" viewBox="0 0 16 16" id="funnel-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 1.5A.5.5 0 012 1h12a.5.5 0 01.5.5v2a.5.5 0 01-.128.334L10 8.692V13.5a.5.5 0 01-.342.474l-3 1A.5.5 0 016 14.5V8.692L1.628 3.834A.5.5 0 011.5 3.5v-2z"/></symbol><symbol fill="currentColor" class="bi bi-gear" viewBox="0 0 16 16" id="gear" xmlns="http://www.w3.org/2000/svg"><path d="M8 4.754a3.246 3.246 0 100 6.492 3.246 3.246 0 000-6.492zM5.754 8a2.246 2.246 0 114.492 0 2.246 2.246 0 01-4.492 0z"/><path d="M9.796 1.343c-.527-1.79-3.065-1.79-3.592 0l-.094.319a.873.873 0 01-1.255.52l-.292-.16c-1.64-.892-3.433.902-2.54 2.541l.159.292a.873.873 0 01-.52 1.255l-.319.094c-1.79.527-1.79 3.065 0 3.592l.319.094a.873.873 0 01.52 1.255l-.16.292c-.892 1.64.901 3.434 2.541 2.54l.292-.159a.873.873 0 011.255.52l.094.319c.527 1.79 3.065 1.79 3.592 0l.094-.319a.873.873 0 011.255-.52l.292.16c1.64.893 3.434-.902 2.54-2.541l-.159-.292a.873.873 0 01.52-1.255l.319-.094c1.79-.527 1.79-3.065 0-3.592l-.319-.094a.873.873 0 01-.52-1.255l.16-.292c.893-1.64-.902-3.433-2.541-2.54l-.292.159a.873.873 0 01-1.255-.52l-.094-.319zm-2.633.283c.246-.835 1.428-.835 1.674 0l.094.319a1.873 1.873 0 002.693 1.115l.291-.16c.764-.415 1.6.42 1.184 1.185l-.159.292a1.873 1.873 0 001.116 2.692l.318.094c.835.246.835 1.428 0 1.674l-.319.094a1.873 1.873 0 00-1.115 2.693l.16.291c.415.764-.42 1.6-1.185 1.184l-.291-.159a1.873 1.873 0 00-2.693 1.116l-.094.318c-.246.835-1.428.835-1.674 0l-.094-.319a1.873 1.873 0 00-2.692-1.115l-.292.16c-.764.415-1.6-.42-1.184-1.185l.159-.291A1.873 1.873 0 001.945 8.93l-.319-.094c-.835-.246-.835-1.428 0-1.674l.319-.094A1.873 1.873 0 003.06 4.377l-.16-.292c-.415-.764.42-1.6 1.185-1.184l.292.159a1.873 1.873 0 002.692-1.115l.094-.319z"/></symbol><symbol fill="currentColor" class="bi bi-gear-fill" viewBox="0 0 16 16" id="gear-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.405 1.05c-.413-1.4-2.397-1.4-2.81 0l-.1.34a1.464 1.464 0 01-2.105.872l-.31-.17c-1.283-.698-2.686.705-1.987 1.987l.169.311c.446.82.023 1.841-.872 2.105l-.34.1c-1.4.413-1.4 2.397 0 2.81l.34.1a1.464 1.464 0 01.872 2.105l-.17.31c-.698 1.283.705 2.686 1.987 1.987l.311-.169a1.464 1.464 0 012.105.872l.1.34c.413 1.4 2.397 1.4 2.81 0l.1-.34a1.464 1.464 0 012.105-.872l.31.17c1.283.698 2.686-.705 1.987-1.987l-.169-.311a1.464 1.464 0 01.872-2.105l.34-.1c1.4-.413 1.4-2.397 0-2.81l-.34-.1a1.464 1.464 0 01-.872-2.105l.17-.31c.698-1.283-.705-2.686-1.987-1.987l-.311.169a1.464 1.464 0 01-2.105-.872l-.1-.34zM8 10.93a2.929 2.929 0 110-5.86 2.929 2.929 0 010 5.858z"/></symbol><symbol fill="currentColor" class="bi bi-gear-wide" viewBox="0 0 16 16" id="gear-wide" xmlns="http://www.w3.org/2000/svg"><path d="M8.932.727c-.243-.97-1.62-.97-1.864 0l-.071.286a.96.96 0 01-1.622.434l-.205-.211c-.695-.719-1.888-.03-1.613.931l.08.284a.96.96 0 01-1.186 1.187l-.284-.081c-.96-.275-1.65.918-.931 1.613l.211.205a.96.96 0 01-.434 1.622l-.286.071c-.97.243-.97 1.62 0 1.864l.286.071a.96.96 0 01.434 1.622l-.211.205c-.719.695-.03 1.888.931 1.613l.284-.08a.96.96 0 011.187 1.187l-.081.283c-.275.96.918 1.65 1.613.931l.205-.211a.96.96 0 011.622.434l.071.286c.243.97 1.62.97 1.864 0l.071-.286a.96.96 0 011.622-.434l.205.211c.695.719 1.888.03 1.613-.931l-.08-.284a.96.96 0 011.187-1.187l.283.081c.96.275 1.65-.918.931-1.613l-.211-.205a.96.96 0 01.434-1.622l.286-.071c.97-.243.97-1.62 0-1.864l-.286-.071a.96.96 0 01-.434-1.622l.211-.205c.719-.695.03-1.888-.931-1.613l-.284.08a.96.96 0 01-1.187-1.186l.081-.284c.275-.96-.918-1.65-1.613-.931l-.205.211a.96.96 0 01-1.622-.434L8.932.727zM8 12.997a4.998 4.998 0 110-9.995 4.998 4.998 0 010 9.996z"/></symbol><symbol fill="currentColor" class="bi bi-gear-wide-connected" viewBox="0 0 16 16" id="gear-wide-connected" xmlns="http://www.w3.org/2000/svg"><path d="M7.068.727c.243-.97 1.62-.97 1.864 0l.071.286a.96.96 0 001.622.434l.205-.211c.695-.719 1.888-.03 1.613.931l-.08.284a.96.96 0 001.187 1.187l.283-.081c.96-.275 1.65.918.931 1.613l-.211.205a.96.96 0 00.434 1.622l.286.071c.97.243.97 1.62 0 1.864l-.286.071a.96.96 0 00-.434 1.622l.211.205c.719.695.03 1.888-.931 1.613l-.284-.08a.96.96 0 00-1.187 1.187l.081.283c.275.96-.918 1.65-1.613.931l-.205-.211a.96.96 0 00-1.622.434l-.071.286c-.243.97-1.62.97-1.864 0l-.071-.286a.96.96 0 00-1.622-.434l-.205.211c-.695.719-1.888.03-1.613-.931l.08-.284a.96.96 0 00-1.186-1.187l-.284.081c-.96.275-1.65-.918-.931-1.613l.211-.205a.96.96 0 00-.434-1.622l-.286-.071c-.97-.243-.97-1.62 0-1.864l.286-.071a.96.96 0 00.434-1.622l-.211-.205c-.719-.695-.03-1.888.931-1.613l.284.08a.96.96 0 001.187-1.186l-.081-.284c-.275-.96.918-1.65 1.613-.931l.205.211a.96.96 0 001.622-.434l.071-.286zM12.973 8.5H8.25l-2.834 3.779A4.998 4.998 0 0012.973 8.5zm0-1a4.998 4.998 0 00-7.557-3.779l2.834 3.78h4.723zM5.048 3.967c-.03.021-.058.043-.087.065l.087-.065zm-.431.355A4.984 4.984 0 003.002 8c0 1.455.622 2.765 1.615 3.678L7.375 8 4.617 4.322zm.344 7.646l.087.065-.087-.065z"/></symbol><symbol fill="currentColor" class="bi bi-gem" viewBox="0 0 16 16" id="gem" xmlns="http://www.w3.org/2000/svg"><path d="M3.1.7a.5.5 0 01.4-.2h9a.5.5 0 01.4.2l2.976 3.974c.149.185.156.45.01.644L8.4 15.3a.5.5 0 01-.8 0L.1 5.3a.5.5 0 010-.6l3-4zm11.386 3.785l-1.806-2.41-.776 2.413 2.582-.003zm-3.633.004l.961-2.989H4.186l.963 2.995 5.704-.006zM5.47 5.495L8 13.366l2.532-7.876-5.062.005zm-1.371-.999l-.78-2.422-1.818 2.425 2.598-.003zM1.499 5.5l5.113 6.817-2.192-6.82L1.5 5.5zm7.889 6.817l5.123-6.83-2.928.002-2.195 6.828z"/></symbol><symbol fill="currentColor" class="bi bi-gender-ambiguous" viewBox="0 0 16 16" id="gender-ambiguous" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11.5 1a.5.5 0 010-1h4a.5.5 0 01.5.5v4a.5.5 0 01-1 0V1.707l-3.45 3.45A4 4 0 018.5 10.97V13H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V14H6a.5.5 0 010-1h1.5v-2.03a4 4 0 113.471-6.648L14.293 1H11.5zm-.997 4.346a3 3 0 10-5.006 3.309 3 3 0 005.006-3.31z"/></symbol><symbol fill="currentColor" class="bi bi-gender-female" viewBox="0 0 16 16" id="gender-female" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 1a4 4 0 100 8 4 4 0 000-8zM3 5a5 5 0 115.5 4.975V12h2a.5.5 0 010 1h-2v2.5a.5.5 0 01-1 0V13h-2a.5.5 0 010-1h2V9.975A5 5 0 013 5z"/></symbol><symbol fill="currentColor" class="bi bi-gender-male" viewBox="0 0 16 16" id="gender-male" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M9.5 2a.5.5 0 010-1h5a.5.5 0 01.5.5v5a.5.5 0 01-1 0V2.707L9.871 6.836a5 5 0 11-.707-.707L13.293 2H9.5zM6 6a4 4 0 100 8 4 4 0 000-8z"/></symbol><symbol fill="currentColor" class="bi bi-gender-trans" viewBox="0 0 16 16" id="gender-trans" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M0 .5A.5.5 0 01.5 0h3a.5.5 0 010 1H1.707L3.5 2.793l.646-.647a.5.5 0 11.708.708l-.647.646.822.822A3.99 3.99 0 018 3c1.18 0 2.239.51 2.971 1.322L14.293 1H11.5a.5.5 0 010-1h4a.5.5 0 01.5.5v4a.5.5 0 01-1 0V1.707l-3.45 3.45A4 4 0 018.5 10.97V13H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V14H6a.5.5 0 010-1h1.5v-2.03a4 4 0 01-3.05-5.814l-.95-.949-.646.647a.5.5 0 11-.708-.708l.647-.646L1 1.707V3.5a.5.5 0 01-1 0v-3zm5.49 4.856a3 3 0 105.02 3.288 3 3 0 00-5.02-3.288z"/></symbol><symbol fill="currentColor" class="bi bi-geo" viewBox="0 0 16 16" id="geo" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 1a3 3 0 100 6 3 3 0 000-6zM4 4a4 4 0 114.5 3.969V13.5a.5.5 0 01-1 0V7.97A4 4 0 014 3.999zm2.493 8.574a.5.5 0 01-.411.575c-.712.118-1.28.295-1.655.493a1.319 1.319 0 00-.37.265.301.301 0 00-.057.09V14l.002.008a.147.147 0 00.016.033.617.617 0 00.145.15c.165.13.435.27.813.395.751.25 1.82.414 3.024.414s2.273-.163 3.024-.414c.378-.126.648-.265.813-.395a.619.619 0 00.146-.15.148.148 0 00.015-.033L12 14v-.004a.301.301 0 00-.057-.09 1.318 1.318 0 00-.37-.264c-.376-.198-.943-.375-1.655-.493a.5.5 0 11.164-.986c.77.127 1.452.328 1.957.594C12.5 13 13 13.4 13 14c0 .426-.26.752-.544.977-.29.228-.68.413-1.116.558-.878.293-2.059.465-3.34.465-1.281 0-2.462-.172-3.34-.465-.436-.145-.826-.33-1.116-.558C3.26 14.752 3 14.426 3 14c0-.599.5-1 .961-1.243.505-.266 1.187-.467 1.957-.594a.5.5 0 01.575.411z"/></symbol><symbol fill="currentColor" class="bi bi-geo-alt" viewBox="0 0 16 16" id="geo-alt" xmlns="http://www.w3.org/2000/svg"><path d="M12.166 8.94c-.524 1.062-1.234 2.12-1.96 3.07A31.493 31.493 0 018 14.58a31.481 31.481 0 01-2.206-2.57c-.726-.95-1.436-2.008-1.96-3.07C3.304 7.867 3 6.862 3 6a5 5 0 0110 0c0 .862-.305 1.867-.834 2.94zM8 16s6-5.686 6-10A6 6 0 002 6c0 4.314 6 10 6 10z"/><path d="M8 8a2 2 0 110-4 2 2 0 010 4zm0 1a3 3 0 100-6 3 3 0 000 6z"/></symbol><symbol fill="currentColor" class="bi bi-geo-alt-fill" viewBox="0 0 16 16" id="geo-alt-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16s6-5.686 6-10A6 6 0 002 6c0 4.314 6 10 6 10zm0-7a3 3 0 110-6 3 3 0 010 6z"/></symbol><symbol fill="currentColor" class="bi bi-geo-fill" viewBox="0 0 16 16" id="geo-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4 4a4 4 0 114.5 3.969V13.5a.5.5 0 01-1 0V7.97A4 4 0 014 3.999zm2.493 8.574a.5.5 0 01-.411.575c-.712.118-1.28.295-1.655.493a1.319 1.319 0 00-.37.265.301.301 0 00-.057.09V14l.002.008a.147.147 0 00.016.033.617.617 0 00.145.15c.165.13.435.27.813.395.751.25 1.82.414 3.024.414s2.273-.163 3.024-.414c.378-.126.648-.265.813-.395a.619.619 0 00.146-.15.148.148 0 00.015-.033L12 14v-.004a.301.301 0 00-.057-.09 1.318 1.318 0 00-.37-.264c-.376-.198-.943-.375-1.655-.493a.5.5 0 11.164-.986c.77.127 1.452.328 1.957.594C12.5 13 13 13.4 13 14c0 .426-.26.752-.544.977-.29.228-.68.413-1.116.558-.878.293-2.059.465-3.34.465-1.281 0-2.462-.172-3.34-.465-.436-.145-.826-.33-1.116-.558C3.26 14.752 3 14.426 3 14c0-.599.5-1 .961-1.243.505-.266 1.187-.467 1.957-.594a.5.5 0 01.575.411z"/></symbol><symbol fill="currentColor" class="bi bi-gift" viewBox="0 0 16 16" id="gift" xmlns="http://www.w3.org/2000/svg"><path d="M3 2.5a2.5 2.5 0 015 0 2.5 2.5 0 015 0v.006c0 .07 0 .27-.038.494H15a1 1 0 011 1v2a1 1 0 01-1 1v7.5a1.5 1.5 0 01-1.5 1.5h-11A1.5 1.5 0 011 14.5V7a1 1 0 01-1-1V4a1 1 0 011-1h2.038A2.968 2.968 0 013 2.506V2.5zm1.068.5H7v-.5a1.5 1.5 0 10-3 0c0 .085.002.274.045.43a.522.522 0 00.023.07zM9 3h2.932a.56.56 0 00.023-.07c.043-.156.045-.345.045-.43a1.5 1.5 0 00-3 0V3zM1 4v2h6V4H1zm8 0v2h6V4H9zm5 3H9v8h4.5a.5.5 0 00.5-.5V7zm-7 8V7H2v7.5a.5.5 0 00.5.5H7z"/></symbol><symbol fill="currentColor" class="bi bi-gift-fill" viewBox="0 0 16 16" id="gift-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 2.5a2.5 2.5 0 015 0 2.5 2.5 0 015 0v.006c0 .07 0 .27-.038.494H15a1 1 0 011 1v1a1 1 0 01-1 1H1a1 1 0 01-1-1V4a1 1 0 011-1h2.038A2.968 2.968 0 013 2.506V2.5zm1.068.5H7v-.5a1.5 1.5 0 10-3 0c0 .085.002.274.045.43a.522.522 0 00.023.07zM9 3h2.932a.56.56 0 00.023-.07c.043-.156.045-.345.045-.43a1.5 1.5 0 00-3 0V3zm6 4v7.5a1.5 1.5 0 01-1.5 1.5H9V7h6zM2.5 16A1.5 1.5 0 011 14.5V7h6v9H2.5z"/></symbol><symbol fill="currentColor" class="bi bi-github" viewBox="0 0 16 16" id="github" xmlns="http://www.w3.org/2000/svg"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0016 8c0-4.42-3.58-8-8-8z"/></symbol><symbol fill="currentColor" class="bi bi-globe" viewBox="0 0 16 16" id="globe" xmlns="http://www.w3.org/2000/svg"><path d="M0 8a8 8 0 1116 0A8 8 0 010 8zm7.5-6.923c-.67.204-1.335.82-1.887 1.855A7.97 7.97 0 005.145 4H7.5V1.077zM4.09 4a9.267 9.267 0 01.64-1.539 6.7 6.7 0 01.597-.933A7.025 7.025 0 002.255 4H4.09zm-.582 3.5c.03-.877.138-1.718.312-2.5H1.674a6.958 6.958 0 00-.656 2.5h2.49zM4.847 5a12.5 12.5 0 00-.338 2.5H7.5V5H4.847zM8.5 5v2.5h2.99a12.495 12.495 0 00-.337-2.5H8.5zM4.51 8.5a12.5 12.5 0 00.337 2.5H7.5V8.5H4.51zm3.99 0V11h2.653c.187-.765.306-1.608.338-2.5H8.5zM5.145 12c.138.386.295.744.468 1.068.552 1.035 1.218 1.65 1.887 1.855V12H5.145zm.182 2.472a6.696 6.696 0 01-.597-.933A9.268 9.268 0 014.09 12H2.255a7.024 7.024 0 003.072 2.472zM3.82 11a13.652 13.652 0 01-.312-2.5h-2.49c.062.89.291 1.733.656 2.5H3.82zm6.853 3.472A7.024 7.024 0 0013.745 12H11.91a9.27 9.27 0 01-.64 1.539 6.688 6.688 0 01-.597.933zM8.5 12v2.923c.67-.204 1.335-.82 1.887-1.855.173-.324.33-.682.468-1.068H8.5zm3.68-1h2.146c.365-.767.594-1.61.656-2.5h-2.49a13.65 13.65 0 01-.312 2.5zm2.802-3.5a6.959 6.959 0 00-.656-2.5H12.18c.174.782.282 1.623.312 2.5h2.49zM11.27 2.461c.247.464.462.98.64 1.539h1.835a7.024 7.024 0 00-3.072-2.472c.218.284.418.598.597.933zM10.855 4a7.966 7.966 0 00-.468-1.068C9.835 1.897 9.17 1.282 8.5 1.077V4h2.355z"/></symbol><symbol fill="currentColor" class="bi bi-globe2" viewBox="0 0 16 16" id="globe2" xmlns="http://www.w3.org/2000/svg"><path d="M0 8a8 8 0 1116 0A8 8 0 010 8zm7.5-6.923c-.67.204-1.335.82-1.887 1.855-.143.268-.276.56-.395.872.705.157 1.472.257 2.282.287V1.077zM4.249 3.539c.142-.384.304-.744.481-1.078a6.7 6.7 0 01.597-.933A7.01 7.01 0 003.051 3.05c.362.184.763.349 1.198.49zM3.509 7.5c.036-1.07.188-2.087.436-3.008a9.124 9.124 0 01-1.565-.667A6.964 6.964 0 001.018 7.5h2.49zm1.4-2.741a12.344 12.344 0 00-.4 2.741H7.5V5.091c-.91-.03-1.783-.145-2.591-.332zM8.5 5.09V7.5h2.99a12.342 12.342 0 00-.399-2.741c-.808.187-1.681.301-2.591.332zM4.51 8.5c.035.987.176 1.914.399 2.741A13.612 13.612 0 017.5 10.91V8.5H4.51zm3.99 0v2.409c.91.03 1.783.145 2.591.332.223-.827.364-1.754.4-2.741H8.5zm-3.282 3.696c.12.312.252.604.395.872.552 1.035 1.218 1.65 1.887 1.855V11.91c-.81.03-1.577.13-2.282.287zm.11 2.276a6.696 6.696 0 01-.598-.933 8.853 8.853 0 01-.481-1.079 8.38 8.38 0 00-1.198.49 7.01 7.01 0 002.276 1.522zm-1.383-2.964A13.36 13.36 0 013.508 8.5h-2.49a6.963 6.963 0 001.362 3.675c.47-.258.995-.482 1.565-.667zm6.728 2.964a7.009 7.009 0 002.275-1.521 8.376 8.376 0 00-1.197-.49 8.853 8.853 0 01-.481 1.078 6.688 6.688 0 01-.597.933zM8.5 11.909v3.014c.67-.204 1.335-.82 1.887-1.855.143-.268.276-.56.395-.872A12.63 12.63 0 008.5 11.91zm3.555-.401c.57.185 1.095.409 1.565.667A6.963 6.963 0 0014.982 8.5h-2.49a13.36 13.36 0 01-.437 3.008zM14.982 7.5a6.963 6.963 0 00-1.362-3.675c-.47.258-.995.482-1.565.667.248.92.4 1.938.437 3.008h2.49zM11.27 2.461c.177.334.339.694.482 1.078a8.368 8.368 0 001.196-.49 7.01 7.01 0 00-2.275-1.52c.218.283.418.597.597.932zm-.488 1.343a7.765 7.765 0 00-.395-.872C9.835 1.897 9.17 1.282 8.5 1.077V4.09c.81-.03 1.577-.13 2.282-.287z"/></symbol><symbol fill="currentColor" class="bi bi-google" viewBox="0 0 16 16" id="google" xmlns="http://www.w3.org/2000/svg"><path d="M15.545 6.558a9.42 9.42 0 01.139 1.626c0 2.434-.87 4.492-2.384 5.885h.002C11.978 15.292 10.158 16 8 16A8 8 0 118 0a7.689 7.689 0 015.352 2.082l-2.284 2.284A4.347 4.347 0 008 3.166c-2.087 0-3.86 1.408-4.492 3.304a4.792 4.792 0 000 3.063h.003c.635 1.893 2.405 3.301 4.492 3.301 1.078 0 2.004-.276 2.722-.764h-.003a3.702 3.702 0 001.599-2.431H8v-3.08h7.545z"/></symbol><symbol fill="currentColor" class="bi bi-graph-down" viewBox="0 0 16 16" id="graph-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M0 0h1v15h15v1H0V0zm10 11.5a.5.5 0 00.5.5h4a.5.5 0 00.5-.5v-4a.5.5 0 00-1 0v2.6l-3.613-4.417a.5.5 0 00-.74-.037L7.06 8.233 3.404 3.206a.5.5 0 00-.808.588l4 5.5a.5.5 0 00.758.06l2.609-2.61L13.445 11H10.5a.5.5 0 00-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-graph-up" viewBox="0 0 16 16" id="graph-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M0 0h1v15h15v1H0V0zm10 3.5a.5.5 0 01.5-.5h4a.5.5 0 01.5.5v4a.5.5 0 01-1 0V4.9l-3.613 4.417a.5.5 0 01-.74.037L7.06 6.767l-3.656 5.027a.5.5 0 01-.808-.588l4-5.5a.5.5 0 01.758-.06l2.609 2.61L13.445 4H10.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-grid" viewBox="0 0 16 16" id="grid" xmlns="http://www.w3.org/2000/svg"><path d="M1 2.5A1.5 1.5 0 012.5 1h3A1.5 1.5 0 017 2.5v3A1.5 1.5 0 015.5 7h-3A1.5 1.5 0 011 5.5v-3zM2.5 2a.5.5 0 00-.5.5v3a.5.5 0 00.5.5h3a.5.5 0 00.5-.5v-3a.5.5 0 00-.5-.5h-3zm6.5.5A1.5 1.5 0 0110.5 1h3A1.5 1.5 0 0115 2.5v3A1.5 1.5 0 0113.5 7h-3A1.5 1.5 0 019 5.5v-3zm1.5-.5a.5.5 0 00-.5.5v3a.5.5 0 00.5.5h3a.5.5 0 00.5-.5v-3a.5.5 0 00-.5-.5h-3zM1 10.5A1.5 1.5 0 012.5 9h3A1.5 1.5 0 017 10.5v3A1.5 1.5 0 015.5 15h-3A1.5 1.5 0 011 13.5v-3zm1.5-.5a.5.5 0 00-.5.5v3a.5.5 0 00.5.5h3a.5.5 0 00.5-.5v-3a.5.5 0 00-.5-.5h-3zm6.5.5A1.5 1.5 0 0110.5 9h3a1.5 1.5 0 011.5 1.5v3a1.5 1.5 0 01-1.5 1.5h-3A1.5 1.5 0 019 13.5v-3zm1.5-.5a.5.5 0 00-.5.5v3a.5.5 0 00.5.5h3a.5.5 0 00.5-.5v-3a.5.5 0 00-.5-.5h-3z"/></symbol><symbol fill="currentColor" class="bi bi-grid-1x2" viewBox="0 0 16 16" id="grid-1x2" xmlns="http://www.w3.org/2000/svg"><path d="M6 1H1v14h5V1zm9 0h-5v5h5V1zm0 9v5h-5v-5h5zM0 1a1 1 0 011-1h5a1 1 0 011 1v14a1 1 0 01-1 1H1a1 1 0 01-1-1V1zm9 0a1 1 0 011-1h5a1 1 0 011 1v5a1 1 0 01-1 1h-5a1 1 0 01-1-1V1zm1 8a1 1 0 00-1 1v5a1 1 0 001 1h5a1 1 0 001-1v-5a1 1 0 00-1-1h-5z"/></symbol><symbol fill="currentColor" class="bi bi-grid-1x2-fill" viewBox="0 0 16 16" id="grid-1x2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 1a1 1 0 011-1h5a1 1 0 011 1v14a1 1 0 01-1 1H1a1 1 0 01-1-1V1zm9 0a1 1 0 011-1h5a1 1 0 011 1v5a1 1 0 01-1 1h-5a1 1 0 01-1-1V1zm0 9a1 1 0 011-1h5a1 1 0 011 1v5a1 1 0 01-1 1h-5a1 1 0 01-1-1v-5z"/></symbol><symbol fill="currentColor" class="bi bi-grid-3x2" viewBox="0 0 16 16" id="grid-3x2" xmlns="http://www.w3.org/2000/svg"><path d="M0 3.5A1.5 1.5 0 011.5 2h13A1.5 1.5 0 0116 3.5v8a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 11.5v-8zM1.5 3a.5.5 0 00-.5.5V7h4V3H1.5zM5 8H1v3.5a.5.5 0 00.5.5H5V8zm1 0v4h4V8H6zm4-1V3H6v4h4zm1 1v4h3.5a.5.5 0 00.5-.5V8h-4zm0-1h4V3.5a.5.5 0 00-.5-.5H11v4z"/></symbol><symbol fill="currentColor" class="bi bi-grid-3x2-gap" viewBox="0 0 16 16" id="grid-3x2-gap" xmlns="http://www.w3.org/2000/svg"><path d="M4 4v2H2V4h2zm1 7V9a1 1 0 00-1-1H2a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm0-5V4a1 1 0 00-1-1H2a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm5 5V9a1 1 0 00-1-1H7a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm0-5V4a1 1 0 00-1-1H7a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zM9 4v2H7V4h2zm5 0h-2v2h2V4zM4 9v2H2V9h2zm5 0v2H7V9h2zm5 0v2h-2V9h2zm-3-5a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1h-2a1 1 0 01-1-1V4zm1 4a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1V9a1 1 0 00-1-1h-2z"/></symbol><symbol fill="currentColor" class="bi bi-grid-3x2-gap-fill" viewBox="0 0 16 16" id="grid-3x2-gap-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1 4a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H2a1 1 0 01-1-1V4zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H7a1 1 0 01-1-1V4zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1h-2a1 1 0 01-1-1V4zM1 9a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H2a1 1 0 01-1-1V9zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H7a1 1 0 01-1-1V9zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1h-2a1 1 0 01-1-1V9z"/></symbol><symbol fill="currentColor" class="bi bi-grid-3x3" viewBox="0 0 16 16" id="grid-3x3" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A1.5 1.5 0 011.5 0h13A1.5 1.5 0 0116 1.5v13a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 14.5v-13zM1.5 1a.5.5 0 00-.5.5V5h4V1H1.5zM5 6H1v4h4V6zm1 4h4V6H6v4zm-1 1H1v3.5a.5.5 0 00.5.5H5v-4zm1 0v4h4v-4H6zm5 0v4h3.5a.5.5 0 00.5-.5V11h-4zm0-1h4V6h-4v4zm0-5h4V1.5a.5.5 0 00-.5-.5H11v4zm-1 0V1H6v4h4z"/></symbol><symbol fill="currentColor" class="bi bi-grid-3x3-gap" viewBox="0 0 16 16" id="grid-3x3-gap" xmlns="http://www.w3.org/2000/svg"><path d="M4 2v2H2V2h2zm1 12v-2a1 1 0 00-1-1H2a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm0-5V7a1 1 0 00-1-1H2a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm0-5V2a1 1 0 00-1-1H2a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm5 10v-2a1 1 0 00-1-1H7a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm0-5V7a1 1 0 00-1-1H7a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm0-5V2a1 1 0 00-1-1H7a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zM9 2v2H7V2h2zm5 0v2h-2V2h2zM4 7v2H2V7h2zm5 0v2H7V7h2zm5 0h-2v2h2V7zM4 12v2H2v-2h2zm5 0v2H7v-2h2zm5 0v2h-2v-2h2zM12 1a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1V2a1 1 0 00-1-1h-2zm-1 6a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1h-2a1 1 0 01-1-1V7zm1 4a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1v-2a1 1 0 00-1-1h-2z"/></symbol><symbol fill="currentColor" class="bi bi-grid-3x3-gap-fill" viewBox="0 0 16 16" id="grid-3x3-gap-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1 2a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H2a1 1 0 01-1-1V2zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H7a1 1 0 01-1-1V2zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1h-2a1 1 0 01-1-1V2zM1 7a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H2a1 1 0 01-1-1V7zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H7a1 1 0 01-1-1V7zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1h-2a1 1 0 01-1-1V7zM1 12a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H2a1 1 0 01-1-1v-2zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H7a1 1 0 01-1-1v-2zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1h-2a1 1 0 01-1-1v-2z"/></symbol><symbol fill="currentColor" class="bi bi-grid-fill" viewBox="0 0 16 16" id="grid-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1 2.5A1.5 1.5 0 012.5 1h3A1.5 1.5 0 017 2.5v3A1.5 1.5 0 015.5 7h-3A1.5 1.5 0 011 5.5v-3zm8 0A1.5 1.5 0 0110.5 1h3A1.5 1.5 0 0115 2.5v3A1.5 1.5 0 0113.5 7h-3A1.5 1.5 0 019 5.5v-3zm-8 8A1.5 1.5 0 012.5 9h3A1.5 1.5 0 017 10.5v3A1.5 1.5 0 015.5 15h-3A1.5 1.5 0 011 13.5v-3zm8 0A1.5 1.5 0 0110.5 9h3a1.5 1.5 0 011.5 1.5v3a1.5 1.5 0 01-1.5 1.5h-3A1.5 1.5 0 019 13.5v-3z"/></symbol><symbol fill="currentColor" class="bi bi-grip-horizontal" viewBox="0 0 16 16" id="grip-horizontal" xmlns="http://www.w3.org/2000/svg"><path d="M2 8a1 1 0 110 2 1 1 0 010-2zm0-3a1 1 0 110 2 1 1 0 010-2zm3 3a1 1 0 110 2 1 1 0 010-2zm0-3a1 1 0 110 2 1 1 0 010-2zm3 3a1 1 0 110 2 1 1 0 010-2zm0-3a1 1 0 110 2 1 1 0 010-2zm3 3a1 1 0 110 2 1 1 0 010-2zm0-3a1 1 0 110 2 1 1 0 010-2zm3 3a1 1 0 110 2 1 1 0 010-2zm0-3a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-grip-vertical" viewBox="0 0 16 16" id="grip-vertical" xmlns="http://www.w3.org/2000/svg"><path d="M7 2a1 1 0 11-2 0 1 1 0 012 0zm3 0a1 1 0 11-2 0 1 1 0 012 0zM7 5a1 1 0 11-2 0 1 1 0 012 0zm3 0a1 1 0 11-2 0 1 1 0 012 0zM7 8a1 1 0 11-2 0 1 1 0 012 0zm3 0a1 1 0 11-2 0 1 1 0 012 0zm-3 3a1 1 0 11-2 0 1 1 0 012 0zm3 0a1 1 0 11-2 0 1 1 0 012 0zm-3 3a1 1 0 11-2 0 1 1 0 012 0zm3 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-hammer" viewBox="0 0 16 16" id="hammer" xmlns="http://www.w3.org/2000/svg"><path d="M9.972 2.508a.5.5 0 00-.16-.556l-.178-.129a5.009 5.009 0 00-2.076-.783C6.215.862 4.504 1.229 2.84 3.133H1.786a.5.5 0 00-.354.147L.146 4.567a.5.5 0 000 .706l2.571 2.579a.5.5 0 00.708 0l1.286-1.29a.5.5 0 00.146-.353V5.57l8.387 8.873A.5.5 0 0014 14.5l1.5-1.5a.5.5 0 00.017-.689l-9.129-8.63c.747-.456 1.772-.839 3.112-.839a.5.5 0 00.472-.334z"/></symbol><symbol fill="currentColor" class="bi bi-hand-index" viewBox="0 0 16 16" id="hand-index" xmlns="http://www.w3.org/2000/svg"><path d="M6.75 1a.75.75 0 01.75.75V8a.5.5 0 001 0V5.467l.086-.004c.317-.012.637-.008.816.027.134.027.294.096.448.182.077.042.15.147.15.314V8a.5.5 0 101 0V6.435a4.9 4.9 0 01.106-.01c.316-.024.584-.01.708.04.118.046.3.207.486.43.081.096.15.19.2.259V8.5a.5.5 0 001 0v-1h.342a1 1 0 01.995 1.1l-.271 2.715a2.5 2.5 0 01-.317.991l-1.395 2.442a.5.5 0 01-.434.252H6.035a.5.5 0 01-.416-.223l-1.433-2.15a1.5 1.5 0 01-.243-.666l-.345-3.105a.5.5 0 01.399-.546L5 8.11V9a.5.5 0 001 0V1.75A.75.75 0 016.75 1zM8.5 4.466V1.75a1.75 1.75 0 10-3.5 0v5.34l-1.2.24a1.5 1.5 0 00-1.196 1.636l.345 3.106a2.5 2.5 0 00.405 1.11l1.433 2.15A1.5 1.5 0 006.035 16h6.385a1.5 1.5 0 001.302-.756l1.395-2.441a3.5 3.5 0 00.444-1.389l.271-2.715a2 2 0 00-1.99-2.199h-.581a5.114 5.114 0 00-.195-.248c-.191-.229-.51-.568-.88-.716-.364-.146-.846-.132-1.158-.108l-.132.012a1.26 1.26 0 00-.56-.642 2.632 2.632 0 00-.738-.288c-.31-.062-.739-.058-1.05-.046l-.048.002zm2.094 2.025z"/></symbol><symbol fill="currentColor" class="bi bi-hand-index-fill" viewBox="0 0 16 16" id="hand-index-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 4.466V1.75a1.75 1.75 0 10-3.5 0v5.34l-1.2.24a1.5 1.5 0 00-1.196 1.636l.345 3.106a2.5 2.5 0 00.405 1.11l1.433 2.15A1.5 1.5 0 006.035 16h6.385a1.5 1.5 0 001.302-.756l1.395-2.441a3.5 3.5 0 00.444-1.389l.271-2.715a2 2 0 00-1.99-2.199h-.581a5.114 5.114 0 00-.195-.248c-.191-.229-.51-.568-.88-.716-.364-.146-.846-.132-1.158-.108l-.132.012a1.26 1.26 0 00-.56-.642 2.632 2.632 0 00-.738-.288c-.31-.062-.739-.058-1.05-.046l-.048.002z"/></symbol><symbol fill="currentColor" class="bi bi-hand-index-thumb" viewBox="0 0 16 16" id="hand-index-thumb" xmlns="http://www.w3.org/2000/svg"><path d="M6.75 1a.75.75 0 01.75.75V8a.5.5 0 001 0V5.467l.086-.004c.317-.012.637-.008.816.027.134.027.294.096.448.182.077.042.15.147.15.314V8a.5.5 0 001 0V6.435l.106-.01c.316-.024.584-.01.708.04.118.046.3.207.486.43.081.096.15.19.2.259V8.5a.5.5 0 101 0v-1h.342a1 1 0 01.995 1.1l-.271 2.715a2.5 2.5 0 01-.317.991l-1.395 2.442a.5.5 0 01-.434.252H6.118a.5.5 0 01-.447-.276l-1.232-2.465-2.512-4.185a.517.517 0 01.809-.631l2.41 2.41A.5.5 0 006 9.5V1.75A.75.75 0 016.75 1zM8.5 4.466V1.75a1.75 1.75 0 10-3.5 0v6.543L3.443 6.736A1.517 1.517 0 001.07 8.588l2.491 4.153 1.215 2.43A1.5 1.5 0 006.118 16h6.302a1.5 1.5 0 001.302-.756l1.395-2.441a3.5 3.5 0 00.444-1.389l.271-2.715a2 2 0 00-1.99-2.199h-.581a5.114 5.114 0 00-.195-.248c-.191-.229-.51-.568-.88-.716-.364-.146-.846-.132-1.158-.108l-.132.012a1.26 1.26 0 00-.56-.642 2.632 2.632 0 00-.738-.288c-.31-.062-.739-.058-1.05-.046l-.048.002zm2.094 2.025z"/></symbol><symbol fill="currentColor" class="bi bi-hand-index-thumb-fill" viewBox="0 0 16 16" id="hand-index-thumb-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 1.75v2.716l.047-.002c.312-.012.742-.016 1.051.046.28.056.543.18.738.288.273.152.456.385.56.642l.132-.012c.312-.024.794-.038 1.158.108.37.148.689.487.88.716.075.09.141.175.195.248h.582a2 2 0 011.99 2.199l-.272 2.715a3.5 3.5 0 01-.444 1.389l-1.395 2.441A1.5 1.5 0 0112.42 16H6.118a1.5 1.5 0 01-1.342-.83l-1.215-2.43L1.07 8.589a1.517 1.517 0 012.373-1.852L5 8.293V1.75a1.75 1.75 0 013.5 0z"/></symbol><symbol fill="currentColor" class="bi bi-hand-thumbs-down" viewBox="0 0 16 16" id="hand-thumbs-down" xmlns="http://www.w3.org/2000/svg"><path d="M8.864 15.674c-.956.24-1.843-.484-1.908-1.42-.072-1.05-.23-2.015-.428-2.59-.125-.36-.479-1.012-1.04-1.638-.557-.624-1.282-1.179-2.131-1.41C2.685 8.432 2 7.85 2 7V3c0-.845.682-1.464 1.448-1.546 1.07-.113 1.564-.415 2.068-.723l.048-.029c.272-.166.578-.349.97-.484C6.931.08 7.395 0 8 0h3.5c.937 0 1.599.478 1.934 1.064.164.287.254.607.254.913 0 .152-.023.312-.077.464.201.262.38.577.488.9.11.33.172.762.004 1.15.069.13.12.268.159.403.077.27.113.567.113.856 0 .289-.036.586-.113.856-.035.12-.08.244-.138.363.394.571.418 1.2.234 1.733-.206.592-.682 1.1-1.2 1.272-.847.283-1.803.276-2.516.211a9.877 9.877 0 01-.443-.05 9.364 9.364 0 01-.062 4.51c-.138.508-.55.848-1.012.964l-.261.065zM11.5 1H8c-.51 0-.863.068-1.14.163-.281.097-.506.229-.776.393l-.04.025c-.555.338-1.198.73-2.49.868-.333.035-.554.29-.554.55V7c0 .255.226.543.62.65 1.095.3 1.977.997 2.614 1.709.635.71 1.064 1.475 1.238 1.977.243.7.407 1.768.482 2.85.025.362.36.595.667.518l.262-.065c.16-.04.258-.144.288-.255a8.34 8.34 0 00-.145-4.726.5.5 0 01.595-.643h.003l.014.004.058.013a8.912 8.912 0 001.036.157c.663.06 1.457.054 2.11-.163.175-.059.45-.301.57-.651.107-.308.087-.67-.266-1.021L12.793 7l.353-.354c.043-.042.105-.14.154-.315.048-.167.075-.37.075-.581 0-.211-.027-.414-.075-.581-.05-.174-.111-.273-.154-.315l-.353-.354.353-.354c.047-.047.109-.176.005-.488a2.224 2.224 0 00-.505-.804l-.353-.354.353-.354c.006-.005.041-.05.041-.17a.866.866 0 00-.121-.415C12.4 1.272 12.063 1 11.5 1z"/></symbol><symbol fill="currentColor" class="bi bi-hand-thumbs-down-fill" viewBox="0 0 16 16" id="hand-thumbs-down-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.956 14.534c.065.936.952 1.659 1.908 1.42l.261-.065a1.378 1.378 0 001.012-.965c.22-.816.533-2.512.062-4.51.136.02.285.037.443.051.713.065 1.669.071 2.516-.211.518-.173.994-.68 1.2-1.272a1.896 1.896 0 00-.234-1.734c.058-.118.103-.242.138-.362.077-.27.113-.568.113-.856 0-.29-.036-.586-.113-.857a2.094 2.094 0 00-.16-.403c.169-.387.107-.82-.003-1.149a3.162 3.162 0 00-.488-.9c.054-.153.076-.313.076-.465a1.86 1.86 0 00-.253-.912C13.1.757 12.437.28 11.5.28H8c-.605 0-1.07.08-1.466.217a4.823 4.823 0 00-.97.485l-.048.029c-.504.308-.999.61-2.068.723C2.682 1.815 2 2.434 2 3.279v4c0 .851.685 1.433 1.357 1.616.849.232 1.574.787 2.132 1.41.56.626.914 1.28 1.039 1.638.199.575.356 1.54.428 2.591z"/></symbol><symbol fill="currentColor" class="bi bi-hand-thumbs-up" viewBox="0 0 16 16" id="hand-thumbs-up" xmlns="http://www.w3.org/2000/svg"><path d="M8.864.046C7.908-.193 7.02.53 6.956 1.466c-.072 1.051-.23 2.016-.428 2.59-.125.36-.479 1.013-1.04 1.639-.557.623-1.282 1.178-2.131 1.41C2.685 7.288 2 7.87 2 8.72v4.001c0 .845.682 1.464 1.448 1.545 1.07.114 1.564.415 2.068.723l.048.03c.272.165.578.348.97.484.397.136.861.217 1.466.217h3.5c.937 0 1.599-.477 1.934-1.064a1.86 1.86 0 00.254-.912c0-.152-.023-.312-.077-.464.201-.263.38-.578.488-.901.11-.33.172-.762.004-1.149.069-.13.12-.269.159-.403.077-.27.113-.568.113-.857 0-.288-.036-.585-.113-.856a2.144 2.144 0 00-.138-.362 1.9 1.9 0 00.234-1.734c-.206-.592-.682-1.1-1.2-1.272-.847-.282-1.803-.276-2.516-.211a9.84 9.84 0 00-.443.05 9.365 9.365 0 00-.062-4.509A1.38 1.38 0 009.125.111L8.864.046zM11.5 14.721H8c-.51 0-.863-.069-1.14-.164-.281-.097-.506-.228-.776-.393l-.04-.024c-.555-.339-1.198-.731-2.49-.868-.333-.036-.554-.29-.554-.55V8.72c0-.254.226-.543.62-.65 1.095-.3 1.977-.996 2.614-1.708.635-.71 1.064-1.475 1.238-1.978.243-.7.407-1.768.482-2.85.025-.362.36-.594.667-.518l.262.066c.16.04.258.143.288.255a8.34 8.34 0 01-.145 4.725.5.5 0 00.595.644l.003-.001.014-.003.058-.014a8.908 8.908 0 011.036-.157c.663-.06 1.457-.054 2.11.164.175.058.45.3.57.65.107.308.087.67-.266 1.022l-.353.353.353.354c.043.043.105.141.154.315.048.167.075.37.075.581 0 .212-.027.414-.075.582-.05.174-.111.272-.154.315l-.353.353.353.354c.047.047.109.177.005.488a2.224 2.224 0 01-.505.805l-.353.353.353.354c.006.005.041.05.041.17a.866.866 0 01-.121.416c-.165.288-.503.56-1.066.56z"/></symbol><symbol fill="currentColor" class="bi bi-hand-thumbs-up-fill" viewBox="0 0 16 16" id="hand-thumbs-up-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.956 1.745C7.021.81 7.908.087 8.864.325l.261.066c.463.116.874.456 1.012.965.22.816.533 2.511.062 4.51a9.84 9.84 0 01.443-.051c.713-.065 1.669-.072 2.516.21.518.173.994.681 1.2 1.273.184.532.16 1.162-.234 1.733.058.119.103.242.138.363.077.27.113.567.113.856 0 .289-.036.586-.113.856-.039.135-.09.273-.16.404.169.387.107.819-.003 1.148a3.163 3.163 0 01-.488.901c.054.152.076.312.076.465 0 .305-.089.625-.253.912C13.1 15.522 12.437 16 11.5 16H8c-.605 0-1.07-.081-1.466-.218a4.82 4.82 0 01-.97-.484l-.048-.03c-.504-.307-.999-.609-2.068-.722C2.682 14.464 2 13.846 2 13V9c0-.85.685-1.432 1.357-1.615.849-.232 1.574-.787 2.132-1.41.56-.627.914-1.28 1.039-1.639.199-.575.356-1.539.428-2.59z"/></symbol><symbol fill="currentColor" class="bi bi-handbag" viewBox="0 0 16 16" id="handbag" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a2 2 0 012 2v2H6V3a2 2 0 012-2zm3 4V3a3 3 0 10-6 0v2H3.36a1.5 1.5 0 00-1.483 1.277L.85 13.13A2.5 2.5 0 003.322 16h9.355a2.5 2.5 0 002.473-2.87l-1.028-6.853A1.5 1.5 0 0012.64 5H11zm-1 1v1.5a.5.5 0 001 0V6h1.639a.5.5 0 01.494.426l1.028 6.851A1.5 1.5 0 0112.678 15H3.322a1.5 1.5 0 01-1.483-1.723l1.028-6.851A.5.5 0 013.36 6H5v1.5a.5.5 0 101 0V6h4z"/></symbol><symbol fill="currentColor" class="bi bi-handbag-fill" viewBox="0 0 16 16" id="handbag-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a2 2 0 00-2 2v2H5V3a3 3 0 116 0v2h-1V3a2 2 0 00-2-2zM5 5H3.36a1.5 1.5 0 00-1.483 1.277L.85 13.13A2.5 2.5 0 003.322 16h9.355a2.5 2.5 0 002.473-2.87l-1.028-6.853A1.5 1.5 0 0012.64 5H11v1.5a.5.5 0 01-1 0V5H6v1.5a.5.5 0 01-1 0V5z"/></symbol><symbol fill="currentColor" class="bi bi-hash" viewBox="0 0 16 16" id="hash" xmlns="http://www.w3.org/2000/svg"><path d="M8.39 12.648a1.32 1.32 0 00-.015.18c0 .305.21.508.5.508.266 0 .492-.172.555-.477l.554-2.703h1.204c.421 0 .617-.234.617-.547 0-.312-.188-.53-.617-.53h-.985l.516-2.524h1.265c.43 0 .618-.227.618-.547 0-.313-.188-.524-.618-.524h-1.046l.476-2.304a1.06 1.06 0 00.016-.164.51.51 0 00-.516-.516.54.54 0 00-.539.43l-.523 2.554H7.617l.477-2.304c.008-.04.015-.118.015-.164a.512.512 0 00-.523-.516.539.539 0 00-.531.43L6.53 5.484H5.414c-.43 0-.617.22-.617.532 0 .312.187.539.617.539h.906l-.515 2.523H4.609c-.421 0-.609.219-.609.531 0 .313.188.547.61.547h.976l-.516 2.492c-.008.04-.015.125-.015.18 0 .305.21.508.5.508.265 0 .492-.172.554-.477l.555-2.703h2.242l-.515 2.492zm-1-6.109h2.266l-.515 2.563H6.859l.532-2.563z"/></symbol><symbol fill="currentColor" class="bi bi-hdd" viewBox="0 0 16 16" id="hdd" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 11a.5.5 0 100-1 .5.5 0 000 1zM3 10.5a.5.5 0 11-1 0 .5.5 0 011 0z"/><path d="M16 11a2 2 0 01-2 2H2a2 2 0 01-2-2V9.51c0-.418.105-.83.305-1.197l2.472-4.531A1.5 1.5 0 014.094 3h7.812a1.5 1.5 0 011.317.782l2.472 4.53c.2.368.305.78.305 1.198V11zM3.655 4.26L1.592 8.043C1.724 8.014 1.86 8 2 8h12c.14 0 .276.014.408.042L12.345 4.26a.5.5 0 00-.439-.26H4.094a.5.5 0 00-.44.26zM1 10v1a1 1 0 001 1h12a1 1 0 001-1v-1a1 1 0 00-1-1H2a1 1 0 00-1 1z"/></symbol><symbol fill="currentColor" class="bi bi-hdd-fill" viewBox="0 0 16 16" id="hdd-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 10a2 2 0 012-2h12a2 2 0 012 2v1a2 2 0 01-2 2H2a2 2 0 01-2-2v-1zm2.5 1a.5.5 0 100-1 .5.5 0 000 1zm2 0a.5.5 0 100-1 .5.5 0 000 1zM.91 7.204A2.993 2.993 0 012 7h12c.384 0 .752.072 1.09.204l-1.867-3.422A1.5 1.5 0 0011.906 3H4.094a1.5 1.5 0 00-1.317.782L.91 7.204z"/></symbol><symbol fill="currentColor" class="bi bi-hdd-network" viewBox="0 0 16 16" id="hdd-network" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 5a.5.5 0 100-1 .5.5 0 000 1zM3 4.5a.5.5 0 11-1 0 .5.5 0 011 0z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v1a2 2 0 01-2 2H8.5v3a1.5 1.5 0 011.5 1.5h5.5a.5.5 0 010 1H10A1.5 1.5 0 018.5 14h-1A1.5 1.5 0 016 12.5H.5a.5.5 0 010-1H6A1.5 1.5 0 017.5 10V7H2a2 2 0 01-2-2V4zm1 0v1a1 1 0 001 1h12a1 1 0 001-1V4a1 1 0 00-1-1H2a1 1 0 00-1 1zm6 7.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-hdd-network-fill" viewBox="0 0 16 16" id="hdd-network-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 00-2 2v1a2 2 0 002 2h5.5v3A1.5 1.5 0 006 11.5H.5a.5.5 0 000 1H6A1.5 1.5 0 007.5 14h1a1.5 1.5 0 001.5-1.5h5.5a.5.5 0 000-1H10A1.5 1.5 0 008.5 10V7H14a2 2 0 002-2V4a2 2 0 00-2-2H2zm.5 3a.5.5 0 110-1 .5.5 0 010 1zm2 0a.5.5 0 110-1 .5.5 0 010 1z"/></symbol><symbol fill="currentColor" class="bi bi-hdd-rack" viewBox="0 0 16 16" id="hdd-rack" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 5a.5.5 0 100-1 .5.5 0 000 1zM3 4.5a.5.5 0 11-1 0 .5.5 0 011 0zm2 7a.5.5 0 11-1 0 .5.5 0 011 0zm-2.5.5a.5.5 0 100-1 .5.5 0 000 1z"/><path d="M2 2a2 2 0 00-2 2v1a2 2 0 002 2h1v2H2a2 2 0 00-2 2v1a2 2 0 002 2h12a2 2 0 002-2v-1a2 2 0 00-2-2h-1V7h1a2 2 0 002-2V4a2 2 0 00-2-2H2zm13 2v1a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12a1 1 0 011 1zm0 7v1a1 1 0 01-1 1H2a1 1 0 01-1-1v-1a1 1 0 011-1h12a1 1 0 011 1zm-3-4v2H4V7h8z"/></symbol><symbol fill="currentColor" class="bi bi-hdd-rack-fill" viewBox="0 0 16 16" id="hdd-rack-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 00-2 2v1a2 2 0 002 2h1v2H2a2 2 0 00-2 2v1a2 2 0 002 2h12a2 2 0 002-2v-1a2 2 0 00-2-2h-1V7h1a2 2 0 002-2V4a2 2 0 00-2-2H2zm.5 3a.5.5 0 110-1 .5.5 0 010 1zm2 0a.5.5 0 110-1 .5.5 0 010 1zm-2 7a.5.5 0 110-1 .5.5 0 010 1zm2 0a.5.5 0 110-1 .5.5 0 010 1zM12 7v2H4V7h8z"/></symbol><symbol fill="currentColor" class="bi bi-hdd-stack" viewBox="0 0 16 16" id="hdd-stack" xmlns="http://www.w3.org/2000/svg"><path d="M14 10a1 1 0 011 1v1a1 1 0 01-1 1H2a1 1 0 01-1-1v-1a1 1 0 011-1h12zM2 9a2 2 0 00-2 2v1a2 2 0 002 2h12a2 2 0 002-2v-1a2 2 0 00-2-2H2z"/><path d="M5 11.5a.5.5 0 11-1 0 .5.5 0 011 0zm-2 0a.5.5 0 11-1 0 .5.5 0 011 0zM14 3a1 1 0 011 1v1a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v1a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/><path d="M5 4.5a.5.5 0 11-1 0 .5.5 0 011 0zm-2 0a.5.5 0 11-1 0 .5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-hdd-stack-fill" viewBox="0 0 16 16" id="hdd-stack-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 9a2 2 0 00-2 2v1a2 2 0 002 2h12a2 2 0 002-2v-1a2 2 0 00-2-2H2zm.5 3a.5.5 0 110-1 .5.5 0 010 1zm2 0a.5.5 0 110-1 .5.5 0 010 1zM2 2a2 2 0 00-2 2v1a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm.5 3a.5.5 0 110-1 .5.5 0 010 1zm2 0a.5.5 0 110-1 .5.5 0 010 1z"/></symbol><symbol fill="currentColor" class="bi bi-headphones" viewBox="0 0 16 16" id="headphones" xmlns="http://www.w3.org/2000/svg"><path d="M8 3a5 5 0 00-5 5v1h1a1 1 0 011 1v3a1 1 0 01-1 1H3a1 1 0 01-1-1V8a6 6 0 1112 0v5a1 1 0 01-1 1h-1a1 1 0 01-1-1v-3a1 1 0 011-1h1V8a5 5 0 00-5-5z"/></symbol><symbol fill="currentColor" class="bi bi-headset" viewBox="0 0 16 16" id="headset" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a5 5 0 00-5 5v1h1a1 1 0 011 1v3a1 1 0 01-1 1H3a1 1 0 01-1-1V6a6 6 0 1112 0v6a2.5 2.5 0 01-2.5 2.5H9.366a1 1 0 01-.866.5h-1a1 1 0 110-2h1a1 1 0 01.866.5H11.5A1.5 1.5 0 0013 12h-1a1 1 0 01-1-1V8a1 1 0 011-1h1V6a5 5 0 00-5-5z"/></symbol><symbol fill="currentColor" class="bi bi-headset-vr" viewBox="0 0 16 16" id="headset-vr" xmlns="http://www.w3.org/2000/svg"><path d="M8 1.248c1.857 0 3.526.641 4.65 1.794a4.978 4.978 0 012.518 1.09C13.907 1.482 11.295 0 8 0 4.75 0 2.12 1.48.844 4.122a4.979 4.979 0 012.289-1.047C4.236 1.872 5.974 1.248 8 1.248z"/><path d="M12 12a3.988 3.988 0 01-2.786-1.13l-.002-.002a1.612 1.612 0 00-.276-.167A2.164 2.164 0 008 10.5c-.414 0-.729.103-.935.201a1.612 1.612 0 00-.277.167l-.002.002A4 4 0 114 4h8a4 4 0 010 8z"/></symbol><symbol fill="currentColor" class="bi bi-heart" viewBox="0 0 16 16" id="heart" xmlns="http://www.w3.org/2000/svg"><path d="M8 2.748l-.717-.737C5.6.281 2.514.878 1.4 3.053c-.523 1.023-.641 2.5.314 4.385.92 1.815 2.834 3.989 6.286 6.357 3.452-2.368 5.365-4.542 6.286-6.357.955-1.886.838-3.362.314-4.385C13.486.878 10.4.28 8.717 2.01L8 2.748zM8 15C-7.333 4.868 3.279-3.04 7.824 1.143c.06.055.119.112.176.171a3.12 3.12 0 01.176-.17C12.72-3.042 23.333 4.867 8 15z"/></symbol><symbol fill="currentColor" class="bi bi-heart-fill" viewBox="0 0 16 16" id="heart-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 1.314C12.438-3.248 23.534 4.735 8 15-7.534 4.736 3.562-3.248 8 1.314z"/></symbol><symbol fill="currentColor" class="bi bi-heart-half" viewBox="0 0 16 16" id="heart-half" xmlns="http://www.w3.org/2000/svg"><path d="M8 2.748v11.047c3.452-2.368 5.365-4.542 6.286-6.357.955-1.886.838-3.362.314-4.385C13.486.878 10.4.28 8.717 2.01L8 2.748zM8 15C-7.333 4.868 3.279-3.04 7.824 1.143c.06.055.119.112.176.171a3.12 3.12 0 01.176-.17C12.72-3.042 23.333 4.867 8 15z"/></symbol><symbol fill="currentColor" class="bi bi-heptagon" viewBox="0 0 16 16" id="heptagon" xmlns="http://www.w3.org/2000/svg"><path d="M7.779.052a.5.5 0 01.442 0l6.015 2.97a.5.5 0 01.267.34l1.485 6.676a.5.5 0 01-.093.415l-4.162 5.354a.5.5 0 01-.395.193H4.662a.5.5 0 01-.395-.193L.105 10.453a.5.5 0 01-.093-.415l1.485-6.676a.5.5 0 01.267-.34L7.779.053zM2.422 3.813l-1.383 6.212L4.907 15h6.186l3.868-4.975-1.383-6.212L8 1.058 2.422 3.813z"/></symbol><symbol fill="currentColor" class="bi bi-heptagon-fill" viewBox="0 0 16 16" id="heptagon-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.779.052a.5.5 0 01.442 0l6.015 2.97a.5.5 0 01.267.34l1.485 6.676a.5.5 0 01-.093.415l-4.162 5.354a.5.5 0 01-.395.193H4.662a.5.5 0 01-.395-.193L.105 10.453a.5.5 0 01-.093-.415l1.485-6.676a.5.5 0 01.267-.34L7.779.053z"/></symbol><symbol fill="currentColor" class="bi bi-heptagon-half" viewBox="0 0 16 16" id="heptagon-half" xmlns="http://www.w3.org/2000/svg"><path d="M7.779.052a.5.5 0 01.442 0l6.015 2.97a.5.5 0 01.267.34l1.485 6.676a.5.5 0 01-.093.415l-4.162 5.354a.5.5 0 01-.395.193H4.662a.5.5 0 01-.395-.193L.105 10.453a.5.5 0 01-.093-.415l1.485-6.676a.5.5 0 01.267-.34L7.779.053zM8 15h3.093l3.868-4.975-1.383-6.212L8 1.058V15z"/></symbol><symbol fill="currentColor" class="bi bi-hexagon" viewBox="0 0 16 16" id="hexagon" xmlns="http://www.w3.org/2000/svg"><path d="M14 4.577v6.846L8 15l-6-3.577V4.577L8 1l6 3.577zM8.5.134a1 1 0 00-1 0l-6 3.577a1 1 0 00-.5.866v6.846a1 1 0 00.5.866l6 3.577a1 1 0 001 0l6-3.577a1 1 0 00.5-.866V4.577a1 1 0 00-.5-.866L8.5.134z"/></symbol><symbol fill="currentColor" class="bi bi-hexagon-fill" viewBox="0 0 16 16" id="hexagon-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8.5.134a1 1 0 00-1 0l-6 3.577a1 1 0 00-.5.866v6.846a1 1 0 00.5.866l6 3.577a1 1 0 001 0l6-3.577a1 1 0 00.5-.866V4.577a1 1 0 00-.5-.866L8.5.134z"/></symbol><symbol fill="currentColor" class="bi bi-hexagon-half" viewBox="0 0 16 16" id="hexagon-half" xmlns="http://www.w3.org/2000/svg"><path d="M14 4.577v6.846L8 15V1l6 3.577zM8.5.134a1 1 0 00-1 0l-6 3.577a1 1 0 00-.5.866v6.846a1 1 0 00.5.866l6 3.577a1 1 0 001 0l6-3.577a1 1 0 00.5-.866V4.577a1 1 0 00-.5-.866L8.5.134z"/></symbol><symbol fill="currentColor" class="bi bi-hourglass" viewBox="0 0 16 16" id="hourglass" xmlns="http://www.w3.org/2000/svg"><path d="M2 1.5a.5.5 0 01.5-.5h11a.5.5 0 010 1h-1v1a4.5 4.5 0 01-2.557 4.06c-.29.139-.443.377-.443.59v.7c0 .213.154.451.443.59A4.5 4.5 0 0112.5 13v1h1a.5.5 0 010 1h-11a.5.5 0 110-1h1v-1a4.5 4.5 0 012.557-4.06c.29-.139.443-.377.443-.59v-.7c0-.213-.154-.451-.443-.59A4.5 4.5 0 013.5 3V2h-1a.5.5 0 01-.5-.5zm2.5.5v1a3.5 3.5 0 001.989 3.158c.533.256 1.011.791 1.011 1.491v.702c0 .7-.478 1.235-1.011 1.491A3.5 3.5 0 004.5 13v1h7v-1a3.5 3.5 0 00-1.989-3.158C8.978 9.586 8.5 9.052 8.5 8.351v-.702c0-.7.478-1.235 1.011-1.491A3.5 3.5 0 0011.5 3V2h-7z"/></symbol><symbol fill="currentColor" class="bi bi-hourglass-bottom" viewBox="0 0 16 16" id="hourglass-bottom" xmlns="http://www.w3.org/2000/svg"><path d="M2 1.5a.5.5 0 01.5-.5h11a.5.5 0 010 1h-1v1a4.5 4.5 0 01-2.557 4.06c-.29.139-.443.377-.443.59v.7c0 .213.154.451.443.59A4.5 4.5 0 0112.5 13v1h1a.5.5 0 010 1h-11a.5.5 0 110-1h1v-1a4.5 4.5 0 012.557-4.06c.29-.139.443-.377.443-.59v-.7c0-.213-.154-.451-.443-.59A4.5 4.5 0 013.5 3V2h-1a.5.5 0 01-.5-.5zm2.5.5v1a3.5 3.5 0 001.989 3.158c.533.256 1.011.791 1.011 1.491v.702s.18.149.5.149.5-.15.5-.15v-.7c0-.701.478-1.236 1.011-1.492A3.5 3.5 0 0011.5 3V2h-7z"/></symbol><symbol fill="currentColor" class="bi bi-hourglass-split" viewBox="0 0 16 16" id="hourglass-split" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 15a.5.5 0 110-1h1v-1a4.5 4.5 0 012.557-4.06c.29-.139.443-.377.443-.59v-.7c0-.213-.154-.451-.443-.59A4.5 4.5 0 013.5 3V2h-1a.5.5 0 010-1h11a.5.5 0 010 1h-1v1a4.5 4.5 0 01-2.557 4.06c-.29.139-.443.377-.443.59v.7c0 .213.154.451.443.59A4.5 4.5 0 0112.5 13v1h1a.5.5 0 010 1h-11zm2-13v1c0 .537.12 1.045.337 1.5h6.326c.216-.455.337-.963.337-1.5V2h-7zm3 6.35c0 .701-.478 1.236-1.011 1.492A3.5 3.5 0 004.5 13s.866-1.299 3-1.48V8.35zm1 0v3.17c2.134.181 3 1.48 3 1.48a3.5 3.5 0 00-1.989-3.158C8.978 9.586 8.5 9.052 8.5 8.351z"/></symbol><symbol fill="currentColor" class="bi bi-hourglass-top" viewBox="0 0 16 16" id="hourglass-top" xmlns="http://www.w3.org/2000/svg"><path d="M2 14.5a.5.5 0 00.5.5h11a.5.5 0 100-1h-1v-1a4.5 4.5 0 00-2.557-4.06c-.29-.139-.443-.377-.443-.59v-.7c0-.213.154-.451.443-.59A4.5 4.5 0 0012.5 3V2h1a.5.5 0 000-1h-11a.5.5 0 000 1h1v1a4.5 4.5 0 002.557 4.06c.29.139.443.377.443.59v.7c0 .213-.154.451-.443.59A4.5 4.5 0 003.5 13v1h-1a.5.5 0 00-.5.5zm2.5-.5v-1a3.5 3.5 0 011.989-3.158c.533-.256 1.011-.79 1.011-1.491v-.702s.18.101.5.101.5-.1.5-.1v.7c0 .701.478 1.236 1.011 1.492A3.5 3.5 0 0111.5 13v1h-7z"/></symbol><symbol fill="currentColor" class="bi bi-house" viewBox="0 0 16 16" id="house" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 13.5V7h1v6.5a.5.5 0 00.5.5h9a.5.5 0 00.5-.5V7h1v6.5a1.5 1.5 0 01-1.5 1.5h-9A1.5 1.5 0 012 13.5zm11-11V6l-2-2V2.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5z"/><path fill-rule="evenodd" d="M7.293 1.5a1 1 0 011.414 0l6.647 6.646a.5.5 0 01-.708.708L8 2.207 1.354 8.854a.5.5 0 11-.708-.708L7.293 1.5z"/></symbol><symbol fill="currentColor" class="bi bi-house-door" viewBox="0 0 16 16" id="house-door" xmlns="http://www.w3.org/2000/svg"><path d="M8.354 1.146a.5.5 0 00-.708 0l-6 6A.5.5 0 001.5 7.5v7a.5.5 0 00.5.5h4.5a.5.5 0 00.5-.5v-4h2v4a.5.5 0 00.5.5H14a.5.5 0 00.5-.5v-7a.5.5 0 00-.146-.354L13 5.793V2.5a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5v1.293L8.354 1.146zM2.5 14V7.707l5.5-5.5 5.5 5.5V14H10v-4a.5.5 0 00-.5-.5h-3a.5.5 0 00-.5.5v4H2.5z"/></symbol><symbol fill="currentColor" class="bi bi-house-door-fill" viewBox="0 0 16 16" id="house-door-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 00.5.5h4a.5.5 0 00.5-.5v-7a.5.5 0 00-.146-.354L13 5.793V2.5a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5v1.293L8.354 1.146a.5.5 0 00-.708 0l-6 6A.5.5 0 001.5 7.5v7a.5.5 0 00.5.5h4a.5.5 0 00.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-house-fill" viewBox="0 0 16 16" id="house-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 3.293l6 6V13.5a1.5 1.5 0 01-1.5 1.5h-9A1.5 1.5 0 012 13.5V9.293l6-6zm5-.793V6l-2-2V2.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5z"/><path fill-rule="evenodd" d="M7.293 1.5a1 1 0 011.414 0l6.647 6.646a.5.5 0 01-.708.708L8 2.207 1.354 8.854a.5.5 0 11-.708-.708L7.293 1.5z"/></symbol><symbol fill="currentColor" class="bi bi-hr" viewBox="0 0 16 16" id="hr" xmlns="http://www.w3.org/2000/svg"><path d="M12 3H4a1 1 0 00-1 1v2.5H2V4a2 2 0 012-2h8a2 2 0 012 2v2.5h-1V4a1 1 0 00-1-1zM2 9.5h1V12a1 1 0 001 1h8a1 1 0 001-1V9.5h1V12a2 2 0 01-2 2H4a2 2 0 01-2-2V9.5zm-1.5-2a.5.5 0 000 1h15a.5.5 0 000-1H.5z"/></symbol><symbol fill="currentColor" class="bi bi-hurricane" viewBox="0 0 16 16" id="hurricane" xmlns="http://www.w3.org/2000/svg"><path d="M6.999 2.6A5.5 5.5 0 0115 7.5a.5.5 0 001 0 6.5 6.5 0 10-13 0 5 5 0 006.001 4.9A5.5 5.5 0 011 7.5a.5.5 0 00-1 0 6.5 6.5 0 1013 0 5 5 0 00-6.001-4.9zM10 7.5a2 2 0 11-4 0 2 2 0 014 0z"/></symbol><symbol fill="currentColor" class="bi bi-image" viewBox="0 0 16 16" id="image" xmlns="http://www.w3.org/2000/svg"><path d="M6.002 5.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/><path d="M2.002 1a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V3a2 2 0 00-2-2h-12zm12 1a1 1 0 011 1v6.5l-3.777-1.947a.5.5 0 00-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 00-.63.062L1.002 12V3a1 1 0 011-1h12z"/></symbol><symbol fill="currentColor" class="bi bi-image-alt" viewBox="0 0 16 16" id="image-alt" xmlns="http://www.w3.org/2000/svg"><path d="M7 2.5a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0zm4.225 4.053a.5.5 0 00-.577.093l-3.71 4.71-2.66-2.772a.5.5 0 00-.63.062L.002 13v2a1 1 0 001 1h14a1 1 0 001-1v-4.5l-4.777-3.947z"/></symbol><symbol fill="currentColor" class="bi bi-image-fill" viewBox="0 0 16 16" id="image-fill" xmlns="http://www.w3.org/2000/svg"><path d="M.002 3a2 2 0 012-2h12a2 2 0 012 2v10a2 2 0 01-2 2h-12a2 2 0 01-2-2V3zm1 9v1a1 1 0 001 1h12a1 1 0 001-1V9.5l-3.777-1.947a.5.5 0 00-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 00-.63.062L1.002 12zm5-6.5a1.5 1.5 0 10-3 0 1.5 1.5 0 003 0z"/></symbol><symbol fill="currentColor" class="bi bi-images" viewBox="0 0 16 16" id="images" xmlns="http://www.w3.org/2000/svg"><path d="M4.502 9a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/><path d="M14.002 13a2 2 0 01-2 2h-10a2 2 0 01-2-2V5A2 2 0 012 3a2 2 0 012-2h10a2 2 0 012 2v8a2 2 0 01-1.998 2zM14 2H4a1 1 0 00-1 1h9.002a2 2 0 012 2v7A1 1 0 0015 11V3a1 1 0 00-1-1zM2.002 4a1 1 0 00-1 1v8l2.646-2.354a.5.5 0 01.63-.062l2.66 1.773 3.71-3.71a.5.5 0 01.577-.094l1.777 1.947V5a1 1 0 00-1-1h-10z"/></symbol><symbol fill="currentColor" class="bi bi-inbox" viewBox="0 0 16 16" id="inbox" xmlns="http://www.w3.org/2000/svg"><path d="M4.98 4a.5.5 0 00-.39.188L1.54 8H6a.5.5 0 01.5.5 1.5 1.5 0 103 0A.5.5 0 0110 8h4.46l-3.05-3.812A.5.5 0 0011.02 4H4.98zm9.954 5H10.45a2.5 2.5 0 01-4.9 0H1.066l.32 2.562a.5.5 0 00.497.438h12.234a.5.5 0 00.496-.438L14.933 9zM3.809 3.563A1.5 1.5 0 014.981 3h6.038a1.5 1.5 0 011.172.563l3.7 4.625a.5.5 0 01.105.374l-.39 3.124A1.5 1.5 0 0114.117 13H1.883a1.5 1.5 0 01-1.489-1.314l-.39-3.124a.5.5 0 01.106-.374l3.7-4.625z"/></symbol><symbol fill="currentColor" class="bi bi-inbox-fill" viewBox="0 0 16 16" id="inbox-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.98 4a.5.5 0 00-.39.188L1.54 8H6a.5.5 0 01.5.5 1.5 1.5 0 103 0A.5.5 0 0110 8h4.46l-3.05-3.812A.5.5 0 0011.02 4H4.98zm-1.17-.437A1.5 1.5 0 014.98 3h6.04a1.5 1.5 0 011.17.563l3.7 4.625a.5.5 0 01.106.374l-.39 3.124A1.5 1.5 0 0114.117 13H1.883a1.5 1.5 0 01-1.489-1.314l-.39-3.124a.5.5 0 01.106-.374l3.7-4.625z"/></symbol><symbol fill="currentColor" class="bi bi-inboxes" viewBox="0 0 16 16" id="inboxes" xmlns="http://www.w3.org/2000/svg"><path d="M4.98 1a.5.5 0 00-.39.188L1.54 5H6a.5.5 0 01.5.5 1.5 1.5 0 003 0A.5.5 0 0110 5h4.46l-3.05-3.812A.5.5 0 0011.02 1H4.98zm9.954 5H10.45a2.5 2.5 0 01-4.9 0H1.066l.32 2.562A.5.5 0 001.884 9h12.234a.5.5 0 00.496-.438L14.933 6zM3.809.563A1.5 1.5 0 014.981 0h6.038a1.5 1.5 0 011.172.563l3.7 4.625a.5.5 0 01.105.374l-.39 3.124A1.5 1.5 0 0114.117 10H1.883A1.5 1.5 0 01.394 8.686l-.39-3.124a.5.5 0 01.106-.374L3.81.563zM.125 11.17A.5.5 0 01.5 11H6a.5.5 0 01.5.5 1.5 1.5 0 003 0 .5.5 0 01.5-.5h5.5a.5.5 0 01.496.562l-.39 3.124A1.5 1.5 0 0114.117 16H1.883a1.5 1.5 0 01-1.489-1.314l-.39-3.124a.5.5 0 01.121-.393zm.941.83l.32 2.562a.5.5 0 00.497.438h12.234a.5.5 0 00.496-.438l.32-2.562H10.45a2.5 2.5 0 01-4.9 0H1.066z"/></symbol><symbol fill="currentColor" class="bi bi-inboxes-fill" viewBox="0 0 16 16" id="inboxes-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.98 1a.5.5 0 00-.39.188L1.54 5H6a.5.5 0 01.5.5 1.5 1.5 0 003 0A.5.5 0 0110 5h4.46l-3.05-3.812A.5.5 0 0011.02 1H4.98zM3.81.563A1.5 1.5 0 014.98 0h6.04a1.5 1.5 0 011.17.563l3.7 4.625a.5.5 0 01.106.374l-.39 3.124A1.5 1.5 0 0114.117 10H1.883A1.5 1.5 0 01.394 8.686l-.39-3.124a.5.5 0 01.106-.374L3.81.563zM.125 11.17A.5.5 0 01.5 11H6a.5.5 0 01.5.5 1.5 1.5 0 003 0 .5.5 0 01.5-.5h5.5a.5.5 0 01.496.562l-.39 3.124A1.5 1.5 0 0114.117 16H1.883a1.5 1.5 0 01-1.489-1.314l-.39-3.124a.5.5 0 01.121-.393z"/></symbol><symbol fill="currentColor" class="bi bi-info" viewBox="0 0 16 16" id="info" xmlns="http://www.w3.org/2000/svg"><path d="M8.93 6.588l-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 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-info-circle" viewBox="0 0 16 16" id="info-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M8.93 6.588l-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 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-info-circle-fill" viewBox="0 0 16 16" id="info-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zm.93-9.412l-1 4.705c-.07.34.029.533.304.533.194 0 .487-.07.686-.246l-.088.416c-.287.346-.92.598-1.465.598-.703 0-1.002-.422-.808-1.319l.738-3.468c.064-.293.006-.399-.287-.47l-.451-.081.082-.381 2.29-.287zM8 5.5a1 1 0 110-2 1 1 0 010 2z"/></symbol><symbol fill="currentColor" class="bi bi-info-lg" viewBox="0 0 16 16" id="info-lg" xmlns="http://www.w3.org/2000/svg"><path d="M10.277 5.433l-4.031.505-.145.67.794.145c.516.123.619.309.505.824L6.101 13.68c-.34 1.578.186 2.32 1.423 2.32.959 0 2.072-.443 2.577-1.052l.155-.732c-.35.31-.866.434-1.206.434-.485 0-.66-.34-.536-.939l1.763-8.278zm.122-3.673a1.76 1.76 0 11-3.52 0 1.76 1.76 0 013.52 0z"/></symbol><symbol fill="currentColor" class="bi bi-info-square" viewBox="0 0 16 16" id="info-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M8.93 6.588l-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 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-info-square-fill" viewBox="0 0 16 16" id="info-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm8.93 4.588l-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.588zM8 5.5a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-input-cursor" viewBox="0 0 16 16" id="input-cursor" xmlns="http://www.w3.org/2000/svg"><path d="M10 5h4a1 1 0 011 1v4a1 1 0 01-1 1h-4v1h4a2 2 0 002-2V6a2 2 0 00-2-2h-4v1zM6 5V4H2a2 2 0 00-2 2v4a2 2 0 002 2h4v-1H2a1 1 0 01-1-1V6a1 1 0 011-1h4z"/><path fill-rule="evenodd" d="M8 1a.5.5 0 01.5.5v13a.5.5 0 01-1 0v-13A.5.5 0 018 1z"/></symbol><symbol fill="currentColor" class="bi bi-input-cursor-text" viewBox="0 0 16 16" id="input-cursor-text" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5 2a.5.5 0 01.5-.5c.862 0 1.573.287 2.06.566.174.099.321.198.44.286.119-.088.266-.187.44-.286A4.165 4.165 0 0110.5 1.5a.5.5 0 010 1c-.638 0-1.177.213-1.564.434a3.49 3.49 0 00-.436.294V7.5H9a.5.5 0 010 1h-.5v4.272c.1.08.248.187.436.294.387.221.926.434 1.564.434a.5.5 0 010 1 4.165 4.165 0 01-2.06-.566A4.561 4.561 0 018 13.65a4.561 4.561 0 01-.44.285 4.165 4.165 0 01-2.06.566.5.5 0 010-1c.638 0 1.177-.213 1.564-.434.188-.107.335-.214.436-.294V8.5H7a.5.5 0 010-1h.5V3.228a3.49 3.49 0 00-.436-.294A3.166 3.166 0 005.5 2.5.5.5 0 015 2z"/><path d="M10 5h4a1 1 0 011 1v4a1 1 0 01-1 1h-4v1h4a2 2 0 002-2V6a2 2 0 00-2-2h-4v1zM6 5V4H2a2 2 0 00-2 2v4a2 2 0 002 2h4v-1H2a1 1 0 01-1-1V6a1 1 0 011-1h4z"/></symbol><symbol fill="currentColor" class="bi bi-instagram" viewBox="0 0 16 16" id="instagram" xmlns="http://www.w3.org/2000/svg"><path d="M8 0C5.829 0 5.556.01 4.703.048 3.85.088 3.269.222 2.76.42a3.917 3.917 0 00-1.417.923A3.927 3.927 0 00.42 2.76C.222 3.268.087 3.85.048 4.7.01 5.555 0 5.827 0 8.001c0 2.172.01 2.444.048 3.297.04.852.174 1.433.372 1.942.205.526.478.972.923 1.417.444.445.89.719 1.416.923.51.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.444-.01 3.298-.048c.851-.04 1.434-.174 1.943-.372a3.916 3.916 0 001.416-.923c.445-.445.718-.891.923-1.417.197-.509.332-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.299c-.04-.851-.175-1.433-.372-1.941a3.926 3.926 0 00-.923-1.417A3.911 3.911 0 0013.24.42c-.51-.198-1.092-.333-1.943-.372C10.443.01 10.172 0 7.998 0h.003zm-.717 1.442h.718c2.136 0 2.389.007 3.232.046.78.035 1.204.166 1.486.275.373.145.64.319.92.599.28.28.453.546.598.92.11.281.24.705.275 1.485.039.843.047 1.096.047 3.231s-.008 2.389-.047 3.232c-.035.78-.166 1.203-.275 1.485a2.47 2.47 0 01-.599.919c-.28.28-.546.453-.92.598-.28.11-.704.24-1.485.276-.843.038-1.096.047-3.232.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.478 2.478 0 01-.92-.598 2.48 2.48 0 01-.6-.92c-.109-.281-.24-.705-.275-1.485-.038-.843-.046-1.096-.046-3.233 0-2.136.008-2.388.046-3.231.036-.78.166-1.204.276-1.486.145-.373.319-.64.599-.92.28-.28.546-.453.92-.598.282-.11.705-.24 1.485-.276.738-.034 1.024-.044 2.515-.045v.002zm4.988 1.328a.96.96 0 100 1.92.96.96 0 000-1.92zm-4.27 1.122a4.109 4.109 0 100 8.217 4.109 4.109 0 000-8.217zm0 1.441a2.667 2.667 0 110 5.334 2.667 2.667 0 010-5.334z"/></symbol><symbol fill="currentColor" class="bi bi-intersect" viewBox="0 0 16 16" id="intersect" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h8a2 2 0 012 2v2h2a2 2 0 012 2v8a2 2 0 01-2 2H6a2 2 0 01-2-2v-2H2a2 2 0 01-2-2V2zm5 10v2a1 1 0 001 1h8a1 1 0 001-1V6a1 1 0 00-1-1h-2v5a2 2 0 01-2 2H5zm6-8V2a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h2V6a2 2 0 012-2h5z"/></symbol><symbol fill="currentColor" class="bi bi-journal" viewBox="0 0 16 16" id="journal" xmlns="http://www.w3.org/2000/svg"><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-album" viewBox="0 0 16 16" id="journal-album" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 4a.5.5 0 00-.5.5v5a.5.5 0 00.5.5h5a.5.5 0 00.5-.5v-5a.5.5 0 00-.5-.5h-5zm1 7a.5.5 0 000 1h3a.5.5 0 000-1h-3z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-arrow-down" viewBox="0 0 16 16" id="journal-arrow-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 5a.5.5 0 01.5.5v3.793l1.146-1.147a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 11.708-.708L7.5 9.293V5.5A.5.5 0 018 5z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-arrow-up" viewBox="0 0 16 16" id="journal-arrow-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 11a.5.5 0 00.5-.5V6.707l1.146 1.147a.5.5 0 00.708-.708l-2-2a.5.5 0 00-.708 0l-2 2a.5.5 0 10.708.708L7.5 6.707V10.5a.5.5 0 00.5.5z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-bookmark" viewBox="0 0 16 16" id="journal-bookmark" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 8V1h1v6.117L8.743 6.07a.5.5 0 01.514 0L11 7.117V1h1v7a.5.5 0 01-.757.429L9 7.083 6.757 8.43A.5.5 0 016 8z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-bookmark-fill" viewBox="0 0 16 16" id="journal-bookmark-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 1h6v7a.5.5 0 01-.757.429L9 7.083 6.757 8.43A.5.5 0 016 8V1z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-check" viewBox="0 0 16 16" id="journal-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.854 6.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 8.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-code" viewBox="0 0 16 16" id="journal-code" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8.646 5.646a.5.5 0 01.708 0l2 2a.5.5 0 010 .708l-2 2a.5.5 0 01-.708-.708L10.293 8 8.646 6.354a.5.5 0 010-.708zm-1.292 0a.5.5 0 00-.708 0l-2 2a.5.5 0 000 .708l2 2a.5.5 0 00.708-.708L5.707 8l1.647-1.646a.5.5 0 000-.708z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-medical" viewBox="0 0 16 16" id="journal-medical" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 4a.5.5 0 01.5.5v.634l.549-.317a.5.5 0 11.5.866L9 6l.549.317a.5.5 0 11-.5.866L8.5 6.866V7.5a.5.5 0 01-1 0v-.634l-.549.317a.5.5 0 11-.5-.866L7 6l-.549-.317a.5.5 0 01.5-.866l.549.317V4.5A.5.5 0 018 4zM5 9.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-minus" viewBox="0 0 16 16" id="journal-minus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.5 8a.5.5 0 01.5-.5h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-plus" viewBox="0 0 16 16" id="journal-plus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 5.5a.5.5 0 01.5.5v1.5H10a.5.5 0 010 1H8.5V10a.5.5 0 01-1 0V8.5H6a.5.5 0 010-1h1.5V6a.5.5 0 01.5-.5z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-richtext" viewBox="0 0 16 16" id="journal-richtext" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 3.75a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm-.861 1.542l1.33.886 1.854-1.855a.25.25 0 01.289-.047L11 4.75V7a.5.5 0 01-.5.5h-5A.5.5 0 015 7v-.5s1.54-1.274 1.639-1.208zM5 9.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-text" viewBox="0 0 16 16" id="journal-text" xmlns="http://www.w3.org/2000/svg"><path d="M5 10.5a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm0-2a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0-2a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0-2a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-x" viewBox="0 0 16 16" id="journal-x" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.146 6.146a.5.5 0 01.708 0L8 7.293l1.146-1.147a.5.5 0 11.708.708L8.707 8l1.147 1.146a.5.5 0 01-.708.708L8 8.707 6.854 9.854a.5.5 0 01-.708-.708L7.293 8 6.146 6.854a.5.5 0 010-.708z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journals" viewBox="0 0 16 16" id="journals" xmlns="http://www.w3.org/2000/svg"><path d="M5 0h8a2 2 0 012 2v10a2 2 0 01-2 2 2 2 0 01-2 2H3a2 2 0 01-2-2h1a1 1 0 001 1h8a1 1 0 001-1V4a1 1 0 00-1-1H3a1 1 0 00-1 1H1a2 2 0 012-2h8a2 2 0 012 2v9a1 1 0 001-1V2a1 1 0 00-1-1H5a1 1 0 00-1 1H3a2 2 0 012-2z"/><path d="M1 6v-.5a.5.5 0 011 0V6h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V9h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 2.5v.5H.5a.5.5 0 000 1h2a.5.5 0 000-1H2v-.5a.5.5 0 00-1 0z"/></symbol><symbol fill="currentColor" class="bi bi-joystick" viewBox="0 0 16 16" id="joystick" xmlns="http://www.w3.org/2000/svg"><path d="M10 2a2 2 0 01-1.5 1.937v5.087c.863.083 1.5.377 1.5.726 0 .414-.895.75-2 .75s-2-.336-2-.75c0-.35.637-.643 1.5-.726V3.937A2 2 0 1110 2z"/><path d="M0 9.665v1.717a1 1 0 00.553.894l6.553 3.277a2 2 0 001.788 0l6.553-3.277a1 1 0 00.553-.894V9.665c0-.1-.06-.19-.152-.23L9.5 6.715v.993l5.227 2.178a.125.125 0 01.001.23l-5.94 2.546a2 2 0 01-1.576 0l-5.94-2.546a.125.125 0 01.001-.23L6.5 7.708l-.013-.988L.152 9.435a.25.25 0 00-.152.23z"/></symbol><symbol fill="currentColor" class="bi bi-justify" viewBox="0 0 16 16" id="justify" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 12.5a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-justify-left" viewBox="0 0 16 16" id="justify-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 12.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-justify-right" viewBox="0 0 16 16" id="justify-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 12.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-4-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-kanban" viewBox="0 0 16 16" id="kanban" xmlns="http://www.w3.org/2000/svg"><path d="M13.5 1a1 1 0 011 1v12a1 1 0 01-1 1h-11a1 1 0 01-1-1V2a1 1 0 011-1h11zm-11-1a2 2 0 00-2 2v12a2 2 0 002 2h11a2 2 0 002-2V2a2 2 0 00-2-2h-11z"/><path d="M6.5 3a1 1 0 011-1h1a1 1 0 011 1v3a1 1 0 01-1 1h-1a1 1 0 01-1-1V3zm-4 0a1 1 0 011-1h1a1 1 0 011 1v7a1 1 0 01-1 1h-1a1 1 0 01-1-1V3zm8 0a1 1 0 011-1h1a1 1 0 011 1v10a1 1 0 01-1 1h-1a1 1 0 01-1-1V3z"/></symbol><symbol fill="currentColor" class="bi bi-kanban-fill" viewBox="0 0 16 16" id="kanban-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 0a2 2 0 00-2 2v12a2 2 0 002 2h11a2 2 0 002-2V2a2 2 0 00-2-2h-11zm5 2h1a1 1 0 011 1v3a1 1 0 01-1 1h-1a1 1 0 01-1-1V3a1 1 0 011-1zm-5 1a1 1 0 011-1h1a1 1 0 011 1v7a1 1 0 01-1 1h-1a1 1 0 01-1-1V3zm9-1h1a1 1 0 011 1v10a1 1 0 01-1 1h-1a1 1 0 01-1-1V3a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-key" viewBox="0 0 16 16" id="key" xmlns="http://www.w3.org/2000/svg"><path d="M0 8a4 4 0 017.465-2H14a.5.5 0 01.354.146l1.5 1.5a.5.5 0 010 .708l-1.5 1.5a.5.5 0 01-.708 0L13 9.207l-.646.647a.5.5 0 01-.708 0L11 9.207l-.646.647a.5.5 0 01-.708 0L9 9.207l-.646.647A.5.5 0 018 10h-.535A4 4 0 010 8zm4-3a3 3 0 102.712 4.285A.5.5 0 017.163 9h.63l.853-.854a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 01.708 0l.646.647.793-.793-1-1h-6.63a.5.5 0 01-.451-.285A3 3 0 004 5z"/><path d="M4 8a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-key-fill" viewBox="0 0 16 16" id="key-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 11.5a3.5 3.5 0 113.163-5H14L15.5 8 14 9.5l-1-1-1 1-1-1-1 1-1-1-1 1H6.663a3.5 3.5 0 01-3.163 2zM2.5 9a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-keyboard" viewBox="0 0 16 16" id="keyboard" xmlns="http://www.w3.org/2000/svg"><path d="M14 5a1 1 0 011 1v5a1 1 0 01-1 1H2a1 1 0 01-1-1V6a1 1 0 011-1h12zM2 4a2 2 0 00-2 2v5a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2H2z"/><path d="M13 10.25a.25.25 0 01.25-.25h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5a.25.25 0 01-.25-.25v-.5zm0-2a.25.25 0 01.25-.25h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5a.25.25 0 01-.25-.25v-.5zm-5 0A.25.25 0 018.25 8h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 018 8.75v-.5zm2 0a.25.25 0 01.25-.25h1.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-1.5a.25.25 0 01-.25-.25v-.5zm1 2a.25.25 0 01.25-.25h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5a.25.25 0 01-.25-.25v-.5zm-5-2A.25.25 0 016.25 8h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 016 8.75v-.5zm-2 0A.25.25 0 014.25 8h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 014 8.75v-.5zm-2 0A.25.25 0 012.25 8h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 012 8.75v-.5zm11-2a.25.25 0 01.25-.25h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5a.25.25 0 01-.25-.25v-.5zm-2 0a.25.25 0 01.25-.25h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5a.25.25 0 01-.25-.25v-.5zm-2 0A.25.25 0 019.25 6h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 019 6.75v-.5zm-2 0A.25.25 0 017.25 6h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 017 6.75v-.5zm-2 0A.25.25 0 015.25 6h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 015 6.75v-.5zm-3 0A.25.25 0 012.25 6h1.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-1.5A.25.25 0 012 6.75v-.5zm0 4a.25.25 0 01.25-.25h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5a.25.25 0 01-.25-.25v-.5zm2 0a.25.25 0 01.25-.25h5.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-5.5a.25.25 0 01-.25-.25v-.5z"/></symbol><symbol fill="currentColor" class="bi bi-keyboard-fill" viewBox="0 0 16 16" id="keyboard-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 6a2 2 0 012-2h12a2 2 0 012 2v5a2 2 0 01-2 2H2a2 2 0 01-2-2V6zm13 .25v.5c0 .138.112.25.25.25h.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-.5a.25.25 0 00-.25.25zM2.25 8a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 003 8.75v-.5A.25.25 0 002.75 8h-.5zM4 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 005 8.75v-.5A.25.25 0 004.75 8h-.5a.25.25 0 00-.25.25zM6.25 8a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 007 8.75v-.5A.25.25 0 006.75 8h-.5zM8 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 009 8.75v-.5A.25.25 0 008.75 8h-.5a.25.25 0 00-.25.25zM13.25 8a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-.5zm0 2a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-.5zm-3-2a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h1.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-1.5zm.75 2.25v.5c0 .138.112.25.25.25h.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-.5a.25.25 0 00-.25.25zM11.25 6a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-.5zM9 6.25v.5c0 .138.112.25.25.25h.5a.25.25 0 00.25-.25v-.5A.25.25 0 009.75 6h-.5a.25.25 0 00-.25.25zM7.25 6a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 008 6.75v-.5A.25.25 0 007.75 6h-.5zM5 6.25v.5c0 .138.112.25.25.25h.5A.25.25 0 006 6.75v-.5A.25.25 0 005.75 6h-.5a.25.25 0 00-.25.25zM2.25 6a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h1.5A.25.25 0 004 6.75v-.5A.25.25 0 003.75 6h-1.5zM2 10.25v.5c0 .138.112.25.25.25h.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-.5a.25.25 0 00-.25.25zM4.25 10a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h5.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-5.5z"/></symbol><symbol fill="currentColor" class="bi bi-ladder" viewBox="0 0 16 16" id="ladder" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 1a.5.5 0 01.5.5V2h6v-.5a.5.5 0 011 0v14a.5.5 0 01-1 0V15H5v.5a.5.5 0 01-1 0v-14a.5.5 0 01.5-.5zM5 14h6v-2H5v2zm0-3h6V9H5v2zm0-3h6V6H5v2zm0-3h6V3H5v2z"/></symbol><symbol fill="currentColor" class="bi bi-lamp" viewBox="0 0 16 16" id="lamp" xmlns="http://www.w3.org/2000/svg"><path d="M13 3v4H3V3h10zM3 2a1 1 0 00-1 1v4a1 1 0 001 1h10a1 1 0 001-1V3a1 1 0 00-1-1H3zm4.5-1l.276-.553a.25.25 0 01.448 0L8.5 1h-1zm-.012 9h1.024c.337.646.677 1.33.95 1.949.176.396.318.75.413 1.042.048.146.081.266.102.36A1.347 1.347 0 0110 13.5c0 .665-.717 1.5-2 1.5s-2-.835-2-1.5c0 0 0-.013.004-.039.003-.027.01-.063.02-.11.02-.094.053-.214.1-.36.096-.291.238-.646.413-1.042.274-.62.614-1.303.95-1.949zm1.627-1h-2.23C6.032 10.595 5 12.69 5 13.5 5 14.88 6.343 16 8 16s3-1.12 3-2.5c0-.81-1.032-2.905-1.885-4.5z"/></symbol><symbol fill="currentColor" class="bi bi-lamp-fill" viewBox="0 0 16 16" id="lamp-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 3a1 1 0 011-1h10a1 1 0 011 1v4a1 1 0 01-1 1H3a1 1 0 01-1-1V3zm5.5-2l.276-.553a.25.25 0 01.448 0L8.5 1h-1zm-.615 8h2.23C9.968 10.595 11 12.69 11 13.5c0 1.38-1.343 2.5-3 2.5s-3-1.12-3-2.5c0-.81 1.032-2.905 1.885-4.5z"/></symbol><symbol fill="currentColor" class="bi bi-laptop" viewBox="0 0 16 16" id="laptop" xmlns="http://www.w3.org/2000/svg"><path d="M13.5 3a.5.5 0 01.5.5V11H2V3.5a.5.5 0 01.5-.5h11zm-11-1A1.5 1.5 0 001 3.5V12h14V3.5A1.5 1.5 0 0013.5 2h-11zM0 12.5h16a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 12.5z"/></symbol><symbol fill="currentColor" class="bi bi-laptop-fill" viewBox="0 0 16 16" id="laptop-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 2A1.5 1.5 0 001 3.5V12h14V3.5A1.5 1.5 0 0013.5 2h-11zM0 12.5h16a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 12.5z"/></symbol><symbol fill="currentColor" class="bi bi-layer-backward" viewBox="0 0 16 16" id="layer-backward" xmlns="http://www.w3.org/2000/svg"><path d="M8.354 15.854a.5.5 0 01-.708 0l-3-3a.5.5 0 010-.708l1-1a.5.5 0 01.708 0l.646.647V4H1a1 1 0 01-1-1V1a1 1 0 011-1h14a1 1 0 011 1v2a1 1 0 01-1 1H9v7.793l.646-.647a.5.5 0 01.708 0l1 1a.5.5 0 010 .708l-3 3z"/><path d="M1 9a1 1 0 01-1-1V6a1 1 0 011-1h4.5a.5.5 0 010 1H1v2h4.5a.5.5 0 010 1H1zm9.5 0a.5.5 0 010-1H15V6h-4.5a.5.5 0 010-1H15a1 1 0 011 1v2a1 1 0 01-1 1h-4.5z"/></symbol><symbol fill="currentColor" class="bi bi-layer-forward" viewBox="0 0 16 16" id="layer-forward" xmlns="http://www.w3.org/2000/svg"><path d="M8.354.146a.5.5 0 00-.708 0l-3 3a.5.5 0 000 .708l1 1a.5.5 0 00.708 0L7 4.207V12H1a1 1 0 00-1 1v2a1 1 0 001 1h14a1 1 0 001-1v-2a1 1 0 00-1-1H9V4.207l.646.647a.5.5 0 00.708 0l1-1a.5.5 0 000-.708l-3-3z"/><path d="M1 7a1 1 0 00-1 1v2a1 1 0 001 1h4.5a.5.5 0 000-1H1V8h4.5a.5.5 0 000-1H1zm9.5 0a.5.5 0 000 1H15v2h-4.5a.5.5 0 000 1H15a1 1 0 001-1V8a1 1 0 00-1-1h-4.5z"/></symbol><symbol fill="currentColor" class="bi bi-layers" viewBox="0 0 16 16" id="layers" xmlns="http://www.w3.org/2000/svg"><path d="M8.235 1.559a.5.5 0 00-.47 0l-7.5 4a.5.5 0 000 .882L3.188 8 .264 9.559a.5.5 0 000 .882l7.5 4a.5.5 0 00.47 0l7.5-4a.5.5 0 000-.882L12.813 8l2.922-1.559a.5.5 0 000-.882l-7.5-4zm3.515 7.008L14.438 10 8 13.433 1.562 10 4.25 8.567l3.515 1.874a.5.5 0 00.47 0l3.515-1.874zM8 9.433L1.562 6 8 2.567 14.438 6 8 9.433z"/></symbol><symbol fill="currentColor" class="bi bi-layers-fill" viewBox="0 0 16 16" id="layers-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.765 1.559a.5.5 0 01.47 0l7.5 4a.5.5 0 010 .882l-7.5 4a.5.5 0 01-.47 0l-7.5-4a.5.5 0 010-.882l7.5-4z"/><path d="M2.125 8.567l-1.86.992a.5.5 0 000 .882l7.5 4a.5.5 0 00.47 0l7.5-4a.5.5 0 000-.882l-1.86-.992-5.17 2.756a1.5 1.5 0 01-1.41 0l-5.17-2.756z"/></symbol><symbol fill="currentColor" class="bi bi-layers-half" viewBox="0 0 16 16" id="layers-half" xmlns="http://www.w3.org/2000/svg"><path d="M8.235 1.559a.5.5 0 00-.47 0l-7.5 4a.5.5 0 000 .882L3.188 8 .264 9.559a.5.5 0 000 .882l7.5 4a.5.5 0 00.47 0l7.5-4a.5.5 0 000-.882L12.813 8l2.922-1.559a.5.5 0 000-.882l-7.5-4zM8 9.433L1.562 6 8 2.567 14.438 6 8 9.433z"/></symbol><symbol fill="currentColor" class="bi bi-layout-sidebar" viewBox="0 0 16 16" id="layout-sidebar" xmlns="http://www.w3.org/2000/svg"><path d="M0 3a2 2 0 012-2h12a2 2 0 012 2v10a2 2 0 01-2 2H2a2 2 0 01-2-2V3zm5-1v12h9a1 1 0 001-1V3a1 1 0 00-1-1H5zM4 2H2a1 1 0 00-1 1v10a1 1 0 001 1h2V2z"/></symbol><symbol fill="currentColor" class="bi bi-layout-sidebar-inset" viewBox="0 0 16 16" id="layout-sidebar-inset" xmlns="http://www.w3.org/2000/svg"><path d="M14 2a1 1 0 011 1v10a1 1 0 01-1 1H2a1 1 0 01-1-1V3a1 1 0 011-1h12zM2 1a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V3a2 2 0 00-2-2H2z"/><path d="M3 4a1 1 0 011-1h2a1 1 0 011 1v8a1 1 0 01-1 1H4a1 1 0 01-1-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-layout-sidebar-inset-reverse" viewBox="0 0 16 16" id="layout-sidebar-inset-reverse" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a1 1 0 00-1 1v10a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2zm12-1a2 2 0 012 2v10a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h12z"/><path d="M13 4a1 1 0 00-1-1h-2a1 1 0 00-1 1v8a1 1 0 001 1h2a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-layout-sidebar-reverse" viewBox="0 0 16 16" id="layout-sidebar-reverse" xmlns="http://www.w3.org/2000/svg"><path d="M16 3a2 2 0 00-2-2H2a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V3zm-5-1v12H2a1 1 0 01-1-1V3a1 1 0 011-1h9zm1 0h2a1 1 0 011 1v10a1 1 0 01-1 1h-2V2z"/></symbol><symbol fill="currentColor" class="bi bi-layout-split" viewBox="0 0 16 16" id="layout-split" xmlns="http://www.w3.org/2000/svg"><path d="M0 3a2 2 0 012-2h12a2 2 0 012 2v10a2 2 0 01-2 2H2a2 2 0 01-2-2V3zm8.5-1v12H14a1 1 0 001-1V3a1 1 0 00-1-1H8.5zm-1 0H2a1 1 0 00-1 1v10a1 1 0 001 1h5.5V2z"/></symbol><symbol fill="currentColor" class="bi bi-layout-text-sidebar" viewBox="0 0 16 16" id="layout-text-sidebar" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 3a.5.5 0 000 1h5a.5.5 0 000-1h-5zm0 3a.5.5 0 000 1h5a.5.5 0 000-1h-5zM3 9.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm.5 2.5a.5.5 0 000 1h5a.5.5 0 000-1h-5z"/><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm12-1v14h2a1 1 0 001-1V2a1 1 0 00-1-1h-2zm-1 0H2a1 1 0 00-1 1v12a1 1 0 001 1h9V1z"/></symbol><symbol fill="currentColor" class="bi bi-layout-text-sidebar-reverse" viewBox="0 0 16 16" id="layout-text-sidebar-reverse" xmlns="http://www.w3.org/2000/svg"><path d="M12.5 3a.5.5 0 010 1h-5a.5.5 0 010-1h5zm0 3a.5.5 0 010 1h-5a.5.5 0 010-1h5zm.5 3.5a.5.5 0 00-.5-.5h-5a.5.5 0 000 1h5a.5.5 0 00.5-.5zm-.5 2.5a.5.5 0 010 1h-5a.5.5 0 010-1h5z"/><path d="M16 2a2 2 0 00-2-2H2a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2zM4 1v14H2a1 1 0 01-1-1V2a1 1 0 011-1h2zm1 0h9a1 1 0 011 1v12a1 1 0 01-1 1H5V1z"/></symbol><symbol fill="currentColor" class="bi bi-layout-text-window" viewBox="0 0 16 16" id="layout-text-window" xmlns="http://www.w3.org/2000/svg"><path d="M3 6.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 3a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm.5 2.5a.5.5 0 000 1h5a.5.5 0 000-1h-5z"/><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm12 1a1 1 0 011 1v1H1V2a1 1 0 011-1h12zm1 3v10a1 1 0 01-1 1h-2V4h3zm-4 0v11H2a1 1 0 01-1-1V4h10z"/></symbol><symbol fill="currentColor" class="bi bi-layout-text-window-reverse" viewBox="0 0 16 16" id="layout-text-window-reverse" xmlns="http://www.w3.org/2000/svg"><path d="M13 6.5a.5.5 0 00-.5-.5h-5a.5.5 0 000 1h5a.5.5 0 00.5-.5zm0 3a.5.5 0 00-.5-.5h-5a.5.5 0 000 1h5a.5.5 0 00.5-.5zm-.5 2.5a.5.5 0 010 1h-5a.5.5 0 010-1h5z"/><path d="M14 0a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2a2 2 0 012-2h12zM2 1a1 1 0 00-1 1v1h14V2a1 1 0 00-1-1H2zM1 4v10a1 1 0 001 1h2V4H1zm4 0v11h9a1 1 0 001-1V4H5z"/></symbol><symbol fill="currentColor" class="bi bi-layout-three-columns" viewBox="0 0 16 16" id="layout-three-columns" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A1.5 1.5 0 011.5 0h13A1.5 1.5 0 0116 1.5v13a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 14.5v-13zM1.5 1a.5.5 0 00-.5.5v13a.5.5 0 00.5.5H5V1H1.5zM10 15V1H6v14h4zm1 0h3.5a.5.5 0 00.5-.5v-13a.5.5 0 00-.5-.5H11v14z"/></symbol><symbol fill="currentColor" class="bi bi-layout-wtf" viewBox="0 0 16 16" id="layout-wtf" xmlns="http://www.w3.org/2000/svg"><path d="M5 1v8H1V1h4zM1 0a1 1 0 00-1 1v8a1 1 0 001 1h4a1 1 0 001-1V1a1 1 0 00-1-1H1zm13 2v5H9V2h5zM9 1a1 1 0 00-1 1v5a1 1 0 001 1h5a1 1 0 001-1V2a1 1 0 00-1-1H9zM5 13v2H3v-2h2zm-2-1a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1v-2a1 1 0 00-1-1H3zm12-1v2H9v-2h6zm-6-1a1 1 0 00-1 1v2a1 1 0 001 1h6a1 1 0 001-1v-2a1 1 0 00-1-1H9z"/></symbol><symbol fill="currentColor" class="bi bi-life-preserver" viewBox="0 0 16 16" id="life-preserver" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zm6.43-5.228a7.025 7.025 0 01-3.658 3.658l-1.115-2.788a4.015 4.015 0 001.985-1.985l2.788 1.115zM5.228 14.43a7.025 7.025 0 01-3.658-3.658l2.788-1.115a4.015 4.015 0 001.985 1.985L5.228 14.43zm9.202-9.202l-2.788 1.115a4.015 4.015 0 00-1.985-1.985l1.115-2.788a7.025 7.025 0 013.658 3.658zm-8.087-.87a4.015 4.015 0 00-1.985 1.985L1.57 5.228A7.025 7.025 0 015.228 1.57l1.115 2.788zM8 11a3 3 0 110-6 3 3 0 010 6z"/></symbol><symbol fill="currentColor" class="bi bi-lightbulb" viewBox="0 0 16 16" id="lightbulb" xmlns="http://www.w3.org/2000/svg"><path d="M2 6a6 6 0 1110.174 4.31c-.203.196-.359.4-.453.619l-.762 1.769A.5.5 0 0110.5 13a.5.5 0 010 1 .5.5 0 010 1l-.224.447a1 1 0 01-.894.553H6.618a1 1 0 01-.894-.553L5.5 15a.5.5 0 010-1 .5.5 0 010-1 .5.5 0 01-.46-.302l-.761-1.77a1.964 1.964 0 00-.453-.618A5.984 5.984 0 012 6zm6-5a5 5 0 00-3.479 8.592c.263.254.514.564.676.941L5.83 12h4.342l.632-1.467c.162-.377.413-.687.676-.941A5 5 0 008 1z"/></symbol><symbol fill="currentColor" class="bi bi-lightbulb-fill" viewBox="0 0 16 16" id="lightbulb-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 6a6 6 0 1110.174 4.31c-.203.196-.359.4-.453.619l-.762 1.769A.5.5 0 0110.5 13h-5a.5.5 0 01-.46-.302l-.761-1.77a1.964 1.964 0 00-.453-.618A5.984 5.984 0 012 6zm3 8.5a.5.5 0 01.5-.5h5a.5.5 0 010 1l-.224.447a1 1 0 01-.894.553H6.618a1 1 0 01-.894-.553L5.5 15a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-lightbulb-off" viewBox="0 0 16 16" id="lightbulb-off" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2.23 4.35A6.004 6.004 0 002 6c0 1.691.7 3.22 1.826 4.31.203.196.359.4.453.619l.762 1.769A.5.5 0 005.5 13a.5.5 0 000 1 .5.5 0 000 1l.224.447a1 1 0 00.894.553h2.764a1 1 0 00.894-.553L10.5 15a.5.5 0 000-1 .5.5 0 000-1 .5.5 0 00.288-.091L9.878 12H5.83l-.632-1.467a2.954 2.954 0 00-.676-.941 4.984 4.984 0 01-1.455-4.405l-.837-.836zm1.588-2.653l.708.707a5 5 0 017.07 7.07l.707.707a6 6 0 00-8.484-8.484zm-2.172-.051a.5.5 0 01.708 0l12 12a.5.5 0 01-.708.708l-12-12a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-lightbulb-off-fill" viewBox="0 0 16 16" id="lightbulb-off-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 6c0-.572.08-1.125.23-1.65l8.558 8.559A.5.5 0 0110.5 13h-5a.5.5 0 01-.46-.302l-.761-1.77a1.964 1.964 0 00-.453-.618A5.984 5.984 0 012 6zm10.303 4.181L3.818 1.697a6 6 0 018.484 8.484zM5 14.5a.5.5 0 01.5-.5h5a.5.5 0 010 1l-.224.447a1 1 0 01-.894.553H6.618a1 1 0 01-.894-.553L5.5 15a.5.5 0 01-.5-.5zM2.354 1.646a.5.5 0 10-.708.708l12 12a.5.5 0 00.708-.708l-12-12z"/></symbol><symbol fill="currentColor" class="bi bi-lightning" viewBox="0 0 16 16" id="lightning" xmlns="http://www.w3.org/2000/svg"><path d="M5.52.359A.5.5 0 016 0h4a.5.5 0 01.474.658L8.694 6H12.5a.5.5 0 01.395.807l-7 9a.5.5 0 01-.873-.454L6.823 9.5H3.5a.5.5 0 01-.48-.641l2.5-8.5zM6.374 1L4.168 8.5H7.5a.5.5 0 01.478.647L6.78 13.04 11.478 7H8a.5.5 0 01-.474-.658L9.306 1H6.374z"/></symbol><symbol fill="currentColor" class="bi bi-lightning-charge" viewBox="0 0 16 16" id="lightning-charge" xmlns="http://www.w3.org/2000/svg"><path d="M11.251.068a.5.5 0 01.227.58L9.677 6.5H13a.5.5 0 01.364.843l-8 8.5a.5.5 0 01-.842-.49L6.323 9.5H3a.5.5 0 01-.364-.843l8-8.5a.5.5 0 01.615-.09zM4.157 8.5H7a.5.5 0 01.478.647L6.11 13.59l5.732-6.09H9a.5.5 0 01-.478-.647L9.89 2.41 4.157 8.5z"/></symbol><symbol fill="currentColor" class="bi bi-lightning-charge-fill" viewBox="0 0 16 16" id="lightning-charge-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.251.068a.5.5 0 01.227.58L9.677 6.5H13a.5.5 0 01.364.843l-8 8.5a.5.5 0 01-.842-.49L6.323 9.5H3a.5.5 0 01-.364-.843l8-8.5a.5.5 0 01.615-.09z"/></symbol><symbol fill="currentColor" class="bi bi-lightning-fill" viewBox="0 0 16 16" id="lightning-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.52.359A.5.5 0 016 0h4a.5.5 0 01.474.658L8.694 6H12.5a.5.5 0 01.395.807l-7 9a.5.5 0 01-.873-.454L6.823 9.5H3.5a.5.5 0 01-.48-.641l2.5-8.5z"/></symbol><symbol fill="currentColor" class="bi bi-link" viewBox="0 0 16 16" id="link" xmlns="http://www.w3.org/2000/svg"><path d="M6.354 5.5H4a3 3 0 000 6h3a3 3 0 002.83-4H9c-.086 0-.17.01-.25.031A2 2 0 017 10.5H4a2 2 0 110-4h1.535c.218-.376.495-.714.82-1z"/><path d="M9 5.5a3 3 0 00-2.83 4h1.098A2 2 0 019 6.5h3a2 2 0 110 4h-1.535a4.02 4.02 0 01-.82 1H12a3 3 0 100-6H9z"/></symbol><symbol fill="currentColor" class="bi bi-link-45deg" viewBox="0 0 16 16" id="link-45deg" xmlns="http://www.w3.org/2000/svg"><path d="M4.715 6.542L3.343 7.914a3 3 0 104.243 4.243l1.828-1.829A3 3 0 008.586 5.5L8 6.086a1.002 1.002 0 00-.154.199 2 2 0 01.861 3.337L6.88 11.45a2 2 0 11-2.83-2.83l.793-.792a4.018 4.018 0 01-.128-1.287z"/><path d="M6.586 4.672A3 3 0 007.414 9.5l.775-.776a2 2 0 01-.896-3.346L9.12 3.55a2 2 0 112.83 2.83l-.793.792c.112.42.155.855.128 1.287l1.372-1.372a3 3 0 10-4.243-4.243L6.586 4.672z"/></symbol><symbol fill="currentColor" class="bi bi-linkedin" viewBox="0 0 16 16" id="linkedin" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.146C0 .513.526 0 1.175 0h13.65C15.474 0 16 .513 16 1.146v13.708c0 .633-.526 1.146-1.175 1.146H1.175C.526 16 0 15.487 0 14.854V1.146zm4.943 12.248V6.169H2.542v7.225h2.401zm-1.2-8.212c.837 0 1.358-.554 1.358-1.248-.015-.709-.52-1.248-1.342-1.248-.822 0-1.359.54-1.359 1.248 0 .694.521 1.248 1.327 1.248h.016zm4.908 8.212V9.359c0-.216.016-.432.08-.586.173-.431.568-.878 1.232-.878.869 0 1.216.662 1.216 1.634v3.865h2.401V9.25c0-2.22-1.184-3.252-2.764-3.252-1.274 0-1.845.7-2.165 1.193v.025h-.016a5.54 5.54 0 01.016-.025V6.169h-2.4c.03.678 0 7.225 0 7.225h2.4z"/></symbol><symbol fill="currentColor" class="bi bi-list" viewBox="0 0 16 16" id="list" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2.5 12a.5.5 0 01.5-.5h10a.5.5 0 010 1H3a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h10a.5.5 0 010 1H3a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h10a.5.5 0 010 1H3a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-list-check" viewBox="0 0 16 16" id="list-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5 11.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM3.854 2.146a.5.5 0 010 .708l-1.5 1.5a.5.5 0 01-.708 0l-.5-.5a.5.5 0 11.708-.708L2 3.293l1.146-1.147a.5.5 0 01.708 0zm0 4a.5.5 0 010 .708l-1.5 1.5a.5.5 0 01-.708 0l-.5-.5a.5.5 0 11.708-.708L2 7.293l1.146-1.147a.5.5 0 01.708 0zm0 4a.5.5 0 010 .708l-1.5 1.5a.5.5 0 01-.708 0l-.5-.5a.5.5 0 01.708-.708l.146.147 1.146-1.147a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-list-nested" viewBox="0 0 16 16" id="list-nested" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.5 11.5A.5.5 0 015 11h10a.5.5 0 010 1H5a.5.5 0 01-.5-.5zm-2-4A.5.5 0 013 7h10a.5.5 0 010 1H3a.5.5 0 01-.5-.5zm-2-4A.5.5 0 011 3h10a.5.5 0 010 1H1a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-list-ol" viewBox="0 0 16 16" id="list-ol" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5 11.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5z"/><path d="M1.713 11.865v-.474H2c.217 0 .363-.137.363-.317 0-.185-.158-.31-.361-.31-.223 0-.367.152-.373.31h-.59c.016-.467.373-.787.986-.787.588-.002.954.291.957.703a.595.595 0 01-.492.594v.033a.615.615 0 01.569.631c.003.533-.502.8-1.051.8-.656 0-1-.37-1.008-.794h.582c.008.178.186.306.422.309.254 0 .424-.145.422-.35-.002-.195-.155-.348-.414-.348h-.3zm-.004-4.699h-.604v-.035c0-.408.295-.844.958-.844.583 0 .96.326.96.756 0 .389-.257.617-.476.848l-.537.572v.03h1.054V9H1.143v-.395l.957-.99c.138-.142.293-.304.293-.508 0-.18-.147-.32-.342-.32a.33.33 0 00-.342.338v.041zM2.564 5h-.635V2.924h-.031l-.598.42v-.567l.629-.443h.635V5z"/></symbol><symbol fill="currentColor" class="bi bi-list-stars" viewBox="0 0 16 16" id="list-stars" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5 11.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5z"/><path d="M2.242 2.194a.27.27 0 01.516 0l.162.53c.035.115.14.194.258.194h.551c.259 0 .37.333.164.493l-.468.363a.277.277 0 00-.094.3l.173.569c.078.256-.213.462-.423.3l-.417-.324a.267.267 0 00-.328 0l-.417.323c-.21.163-.5-.043-.423-.299l.173-.57a.277.277 0 00-.094-.299l-.468-.363c-.206-.16-.095-.493.164-.493h.55a.271.271 0 00.259-.194l.162-.53zm0 4a.27.27 0 01.516 0l.162.53c.035.115.14.194.258.194h.551c.259 0 .37.333.164.493l-.468.363a.277.277 0 00-.094.3l.173.569c.078.255-.213.462-.423.3l-.417-.324a.267.267 0 00-.328 0l-.417.323c-.21.163-.5-.043-.423-.299l.173-.57a.277.277 0 00-.094-.299l-.468-.363c-.206-.16-.095-.493.164-.493h.55a.271.271 0 00.259-.194l.162-.53zm0 4a.27.27 0 01.516 0l.162.53c.035.115.14.194.258.194h.551c.259 0 .37.333.164.493l-.468.363a.277.277 0 00-.094.3l.173.569c.078.255-.213.462-.423.3l-.417-.324a.267.267 0 00-.328 0l-.417.323c-.21.163-.5-.043-.423-.299l.173-.57a.277.277 0 00-.094-.299l-.468-.363c-.206-.16-.095-.493.164-.493h.55a.271.271 0 00.259-.194l.162-.53z"/></symbol><symbol fill="currentColor" class="bi bi-list-task" viewBox="0 0 16 16" id="list-task" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 2.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5V3a.5.5 0 00-.5-.5H2zM3 3H2v1h1V3z"/><path d="M5 3.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM5.5 7a.5.5 0 000 1h9a.5.5 0 000-1h-9zm0 4a.5.5 0 000 1h9a.5.5 0 000-1h-9z"/><path fill-rule="evenodd" d="M1.5 7a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H2a.5.5 0 01-.5-.5V7zM2 7h1v1H2V7zm0 3.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5H2zm1 .5H2v1h1v-1z"/></symbol><symbol fill="currentColor" class="bi bi-list-ul" viewBox="0 0 16 16" id="list-ul" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5 11.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm-3 1a1 1 0 100-2 1 1 0 000 2zm0 4a1 1 0 100-2 1 1 0 000 2zm0 4a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-lock" viewBox="0 0 16 16" id="lock" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a2 2 0 012 2v4H6V3a2 2 0 012-2zm3 6V3a3 3 0 00-6 0v4a2 2 0 00-2 2v5a2 2 0 002 2h6a2 2 0 002-2V9a2 2 0 00-2-2zM5 8h6a1 1 0 011 1v5a1 1 0 01-1 1H5a1 1 0 01-1-1V9a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-lock-fill" viewBox="0 0 16 16" id="lock-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a2 2 0 012 2v4H6V3a2 2 0 012-2zm3 6V3a3 3 0 00-6 0v4a2 2 0 00-2 2v5a2 2 0 002 2h6a2 2 0 002-2V9a2 2 0 00-2-2z"/></symbol><symbol fill="currentColor" class="bi bi-mailbox" viewBox="0 0 16 16" id="mailbox" xmlns="http://www.w3.org/2000/svg"><path d="M4 4a3 3 0 00-3 3v6h6V7a3 3 0 00-3-3zm0-1h8a4 4 0 014 4v6a1 1 0 01-1 1H1a1 1 0 01-1-1V7a4 4 0 014-4zm2.646 1A3.99 3.99 0 018 7v6h7V7a3 3 0 00-3-3H6.646z"/><path d="M11.793 8.5H9v-1h5a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.354-.146l-.853-.854zM5 7c0 .552-.448 0-1 0s-1 .552-1 0a1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-mailbox2" viewBox="0 0 16 16" id="mailbox2" xmlns="http://www.w3.org/2000/svg"><path d="M9 8.5h2.793l.853.854A.5.5 0 0013 9.5h1a.5.5 0 00.5-.5V8a.5.5 0 00-.5-.5H9v1z"/><path d="M12 3H4a4 4 0 00-4 4v6a1 1 0 001 1h14a1 1 0 001-1V7a4 4 0 00-4-4zM8 7a3.99 3.99 0 00-1.354-3H12a3 3 0 013 3v6H8V7zm-3.415.157C4.42 7.087 4.218 7 4 7c-.218 0-.42.086-.585.157C3.164 7.264 3 7.334 3 7a1 1 0 012 0c0 .334-.164.264-.415.157z"/></symbol><symbol fill="currentColor" class="bi bi-map" viewBox="0 0 16 16" id="map" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15.817.113A.5.5 0 0116 .5v14a.5.5 0 01-.402.49l-5 1a.502.502 0 01-.196 0L5.5 15.01l-4.902.98A.5.5 0 010 15.5v-14a.5.5 0 01.402-.49l5-1a.5.5 0 01.196 0L10.5.99l4.902-.98a.5.5 0 01.415.103zM10 1.91l-4-.8v12.98l4 .8V1.91zm1 12.98l4-.8V1.11l-4 .8v12.98zm-6-.8V1.11l-4 .8v12.98l4-.8z"/></symbol><symbol fill="currentColor" class="bi bi-map-fill" viewBox="0 0 16 16" id="map-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M16 .5a.5.5 0 00-.598-.49L10.5.99 5.598.01a.5.5 0 00-.196 0l-5 1A.5.5 0 000 1.5v14a.5.5 0 00.598.49l4.902-.98 4.902.98a.502.502 0 00.196 0l5-1A.5.5 0 0016 14.5V.5zM5 14.09V1.11l.5-.1.5.1v12.98l-.402-.08a.498.498 0 00-.196 0L5 14.09zm5 .8V1.91l.402.08a.5.5 0 00.196 0L11 1.91v12.98l-.5.1-.5-.1z"/></symbol><symbol fill="currentColor" class="bi bi-markdown" viewBox="0 0 16 16" id="markdown" xmlns="http://www.w3.org/2000/svg"><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/><path fill-rule="evenodd" d="M9.146 8.146a.5.5 0 01.708 0L11.5 9.793l1.646-1.647a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 010-.708z"/><path fill-rule="evenodd" d="M11.5 5a.5.5 0 01.5.5v4a.5.5 0 01-1 0v-4a.5.5 0 01.5-.5z"/><path d="M3.56 11V7.01h.056l1.428 3.239h.774l1.42-3.24h.056V11h1.073V5.001h-1.2l-1.71 3.894h-.039l-1.71-3.894H2.5V11h1.06z"/></symbol><symbol fill="currentColor" class="bi bi-markdown-fill" viewBox="0 0 16 16" id="markdown-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm11.5 1a.5.5 0 00-.5.5v3.793L9.854 8.146a.5.5 0 10-.708.708l2 2a.5.5 0 00.708 0l2-2a.5.5 0 00-.708-.708L12 9.293V5.5a.5.5 0 00-.5-.5zM3.56 7.01h.056l1.428 3.239h.774l1.42-3.24h.056V11h1.073V5.001h-1.2l-1.71 3.894h-.039l-1.71-3.894H2.5V11h1.06V7.01z"/></symbol><symbol fill="currentColor" class="bi bi-mask" viewBox="0 0 16 16" id="mask" xmlns="http://www.w3.org/2000/svg"><path d="M6.225 1.227A7.5 7.5 0 0110.5 8a7.5 7.5 0 01-4.275 6.773 7 7 0 100-13.546zM4.187.966a8 8 0 117.627 14.069A8 8 0 014.186.964z"/></symbol><symbol fill="currentColor" class="bi bi-mastodon" viewBox="0 0 16 16" id="mastodon" xmlns="http://www.w3.org/2000/svg"><path d="M11.19 12.195c2.016-.24 3.77-1.475 3.99-2.603.348-1.778.32-4.339.32-4.339 0-3.47-2.286-4.488-2.286-4.488C12.062.238 10.083.017 8.027 0h-.05C5.92.017 3.942.238 2.79.765c0 0-2.285 1.017-2.285 4.488l-.002.662c-.004.64-.007 1.35.011 2.091.083 3.394.626 6.74 3.78 7.57 1.454.383 2.703.463 3.709.408 1.823-.1 2.847-.647 2.847-.647l-.06-1.317s-1.303.41-2.767.36c-1.45-.05-2.98-.156-3.215-1.928a3.614 3.614 0 01-.033-.496s1.424.346 3.228.428c1.103.05 2.137-.064 3.188-.189zm1.613-2.47H11.13v-4.08c0-.859-.364-1.295-1.091-1.295-.804 0-1.207.517-1.207 1.541v2.233H7.168V5.89c0-1.024-.403-1.541-1.207-1.541-.727 0-1.091.436-1.091 1.296v4.079H3.197V5.522c0-.859.22-1.541.66-2.046.456-.505 1.052-.764 1.793-.764.856 0 1.504.328 1.933.983L8 4.39l.417-.695c.429-.655 1.077-.983 1.934-.983.74 0 1.336.259 1.791.764.442.505.661 1.187.661 2.046v4.203z"/></symbol><symbol fill="currentColor" class="bi bi-megaphone" viewBox="0 0 16 16" id="megaphone" xmlns="http://www.w3.org/2000/svg"><path d="M13 2.5a1.5 1.5 0 013 0v11a1.5 1.5 0 01-3 0v-.214c-2.162-1.241-4.49-1.843-6.912-2.083l.405 2.712A1 1 0 015.51 15.1h-.548a1 1 0 01-.916-.599l-1.85-3.49a68.14 68.14 0 00-.202-.003A2.014 2.014 0 010 9V7a2.02 2.02 0 011.992-2.013 74.663 74.663 0 002.483-.075c3.043-.154 6.148-.849 8.525-2.199V2.5zm1 0v11a.5.5 0 001 0v-11a.5.5 0 00-1 0zm-1 1.35c-2.344 1.205-5.209 1.842-8 2.033v4.233c.18.01.359.022.537.036 2.568.189 5.093.744 7.463 1.993V3.85zm-9 6.215v-4.13a95.09 95.09 0 01-1.992.052A1.02 1.02 0 001 7v2c0 .55.448 1.002 1.006 1.009A60.49 60.49 0 014 10.065zm-.657.975l1.609 3.037.01.024h.548l-.002-.014-.443-2.966a68.019 68.019 0 00-1.722-.082z"/></symbol><symbol fill="currentColor" class="bi bi-megaphone-fill" viewBox="0 0 16 16" id="megaphone-fill" xmlns="http://www.w3.org/2000/svg"><path d="M13 2.5a1.5 1.5 0 013 0v11a1.5 1.5 0 01-3 0v-11zm-1 .724c-2.067.95-4.539 1.481-7 1.656v6.237a25.222 25.222 0 011.088.085c2.053.204 4.038.668 5.912 1.56V3.224zm-8 7.841V4.934c-.68.027-1.399.043-2.008.053A2.02 2.02 0 000 7v2c0 1.106.896 1.996 1.994 2.009a68.14 68.14 0 01.496.008 64 64 0 011.51.048zm1.39 1.081c.285.021.569.047.85.078l.253 1.69a1 1 0 01-.983 1.187h-.548a1 1 0 01-.916-.599l-1.314-2.48a65.81 65.81 0 011.692.064c.327.017.65.037.966.06z"/></symbol><symbol fill="currentColor" class="bi bi-menu-app" viewBox="0 0 16 16" id="menu-app" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A1.5 1.5 0 011.5 0h2A1.5 1.5 0 015 1.5v2A1.5 1.5 0 013.5 5h-2A1.5 1.5 0 010 3.5v-2zM1.5 1a.5.5 0 00-.5.5v2a.5.5 0 00.5.5h2a.5.5 0 00.5-.5v-2a.5.5 0 00-.5-.5h-2zM0 8a2 2 0 012-2h12a2 2 0 012 2v5a2 2 0 01-2 2H2a2 2 0 01-2-2V8zm1 3v2a1 1 0 001 1h12a1 1 0 001-1v-2H1zm14-1V8a1 1 0 00-1-1H2a1 1 0 00-1 1v2h14zM2 8.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-menu-app-fill" viewBox="0 0 16 16" id="menu-app-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A1.5 1.5 0 011.5 0h2A1.5 1.5 0 015 1.5v2A1.5 1.5 0 013.5 5h-2A1.5 1.5 0 010 3.5v-2zM0 8a2 2 0 012-2h12a2 2 0 012 2v5a2 2 0 01-2 2H2a2 2 0 01-2-2V8zm1 3v2a1 1 0 001 1h12a1 1 0 001-1v-2H1zm14-1V8a1 1 0 00-1-1H2a1 1 0 00-1 1v2h14zM2 8.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-menu-button" viewBox="0 0 16 16" id="menu-button" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A1.5 1.5 0 011.5 0h8A1.5 1.5 0 0111 1.5v2A1.5 1.5 0 019.5 5h-8A1.5 1.5 0 010 3.5v-2zM1.5 1a.5.5 0 00-.5.5v2a.5.5 0 00.5.5h8a.5.5 0 00.5-.5v-2a.5.5 0 00-.5-.5h-8z"/><path d="M7.823 2.823l-.396-.396A.25.25 0 017.604 2h.792a.25.25 0 01.177.427l-.396.396a.25.25 0 01-.354 0zM0 8a2 2 0 012-2h12a2 2 0 012 2v5a2 2 0 01-2 2H2a2 2 0 01-2-2V8zm1 3v2a1 1 0 001 1h12a1 1 0 001-1v-2H1zm14-1V8a1 1 0 00-1-1H2a1 1 0 00-1 1v2h14zM2 8.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-menu-button-fill" viewBox="0 0 16 16" id="menu-button-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 0A1.5 1.5 0 000 1.5v2A1.5 1.5 0 001.5 5h8A1.5 1.5 0 0011 3.5v-2A1.5 1.5 0 009.5 0h-8zm5.927 2.427A.25.25 0 017.604 2h.792a.25.25 0 01.177.427l-.396.396a.25.25 0 01-.354 0l-.396-.396zM0 8a2 2 0 012-2h12a2 2 0 012 2v5a2 2 0 01-2 2H2a2 2 0 01-2-2V8zm1 3v2a1 1 0 001 1h12a1 1 0 001-1v-2H1zm14-1V8a1 1 0 00-1-1H2a1 1 0 00-1 1v2h14zM2 8.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-menu-button-wide" viewBox="0 0 16 16" id="menu-button-wide" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A1.5 1.5 0 011.5 0h13A1.5 1.5 0 0116 1.5v2A1.5 1.5 0 0114.5 5h-13A1.5 1.5 0 010 3.5v-2zM1.5 1a.5.5 0 00-.5.5v2a.5.5 0 00.5.5h13a.5.5 0 00.5-.5v-2a.5.5 0 00-.5-.5h-13z"/><path d="M2 2.5a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3a.5.5 0 01-.5-.5zm10.823.323l-.396-.396A.25.25 0 0112.604 2h.792a.25.25 0 01.177.427l-.396.396a.25.25 0 01-.354 0zM0 8a2 2 0 012-2h12a2 2 0 012 2v5a2 2 0 01-2 2H2a2 2 0 01-2-2V8zm1 3v2a1 1 0 001 1h12a1 1 0 001-1v-2H1zm14-1V8a1 1 0 00-1-1H2a1 1 0 00-1 1v2h14zM2 8.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-menu-button-wide-fill" viewBox="0 0 16 16" id="menu-button-wide-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 0A1.5 1.5 0 000 1.5v2A1.5 1.5 0 001.5 5h13A1.5 1.5 0 0016 3.5v-2A1.5 1.5 0 0014.5 0h-13zm1 2h3a.5.5 0 010 1h-3a.5.5 0 010-1zm9.927.427A.25.25 0 0112.604 2h.792a.25.25 0 01.177.427l-.396.396a.25.25 0 01-.354 0l-.396-.396zM0 8a2 2 0 012-2h12a2 2 0 012 2v5a2 2 0 01-2 2H2a2 2 0 01-2-2V8zm1 3v2a1 1 0 001 1h12a1 1 0 001-1v-2H1zm14-1V8a1 1 0 00-1-1H2a1 1 0 00-1 1v2h14zM2 8.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-menu-down" viewBox="0 0 16 16" id="menu-down" xmlns="http://www.w3.org/2000/svg"><path d="M7.646.146a.5.5 0 01.708 0L10.207 2H14a2 2 0 012 2v9a2 2 0 01-2 2H2a2 2 0 01-2-2V4a2 2 0 012-2h3.793L7.646.146zM1 7v3h14V7H1zm14-1V4a1 1 0 00-1-1h-3.793a1 1 0 01-.707-.293L8 1.207l-1.5 1.5A1 1 0 015.793 3H2a1 1 0 00-1 1v2h14zm0 5H1v2a1 1 0 001 1h12a1 1 0 001-1v-2zM2 4.5a.5.5 0 01.5-.5h8a.5.5 0 010 1h-8a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-menu-up" viewBox="0 0 16 16" id="menu-up" xmlns="http://www.w3.org/2000/svg"><path d="M7.646 15.854a.5.5 0 00.708 0L10.207 14H14a2 2 0 002-2V3a2 2 0 00-2-2H2a2 2 0 00-2 2v9a2 2 0 002 2h3.793l1.853 1.854zM1 9V6h14v3H1zm14 1v2a1 1 0 01-1 1h-3.793a1 1 0 00-.707.293l-1.5 1.5-1.5-1.5A1 1 0 005.793 13H2a1 1 0 01-1-1v-2h14zm0-5H1V3a1 1 0 011-1h12a1 1 0 011 1v2zM2 11.5a.5.5 0 00.5.5h8a.5.5 0 000-1h-8a.5.5 0 00-.5.5zm0-4a.5.5 0 00.5.5h11a.5.5 0 000-1h-11a.5.5 0 00-.5.5zm0-4a.5.5 0 00.5.5h6a.5.5 0 000-1h-6a.5.5 0 00-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-messenger" viewBox="0 0 16 16" id="messenger" xmlns="http://www.w3.org/2000/svg"><path d="M0 7.76C0 3.301 3.493 0 8 0s8 3.301 8 7.76-3.493 7.76-8 7.76c-.81 0-1.586-.107-2.316-.307a.639.639 0 00-.427.03l-1.588.702a.64.64 0 01-.898-.566l-.044-1.423a.639.639 0 00-.215-.456C.956 12.108 0 10.092 0 7.76zm5.546-1.459l-2.35 3.728c-.225.358.214.761.551.506l2.525-1.916a.48.48 0 01.578-.002l1.869 1.402a1.2 1.2 0 001.735-.32l2.35-3.728c.226-.358-.214-.761-.551-.506L9.728 7.381a.48.48 0 01-.578.002L7.281 5.98a1.2 1.2 0 00-1.735.32z"/></symbol><symbol fill="currentColor" class="bi bi-mic" viewBox="0 0 16 16" id="mic" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 6.5A.5.5 0 014 7v1a4 4 0 008 0V7a.5.5 0 011 0v1a5 5 0 01-4.5 4.975V15h3a.5.5 0 010 1h-7a.5.5 0 010-1h3v-2.025A5 5 0 013 8V7a.5.5 0 01.5-.5z"/><path d="M10 8a2 2 0 11-4 0V3a2 2 0 114 0v5zM8 0a3 3 0 00-3 3v5a3 3 0 006 0V3a3 3 0 00-3-3z"/></symbol><symbol fill="currentColor" class="bi bi-mic-fill" viewBox="0 0 16 16" id="mic-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5 3a3 3 0 016 0v5a3 3 0 01-6 0V3z"/><path d="M3.5 6.5A.5.5 0 014 7v1a4 4 0 008 0V7a.5.5 0 011 0v1a5 5 0 01-4.5 4.975V15h3a.5.5 0 010 1h-7a.5.5 0 010-1h3v-2.025A5 5 0 013 8V7a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-mic-mute" viewBox="0 0 16 16" id="mic-mute" xmlns="http://www.w3.org/2000/svg"><path d="M13 8c0 .564-.094 1.107-.266 1.613l-.814-.814A4.02 4.02 0 0012 8V7a.5.5 0 011 0v1zm-5 4c.818 0 1.578-.245 2.212-.667l.718.719a4.973 4.973 0 01-2.43.923V15h3a.5.5 0 010 1h-7a.5.5 0 010-1h3v-2.025A5 5 0 013 8V7a.5.5 0 011 0v1a4 4 0 004 4zm3-9v4.879l-1-1V3a2 2 0 00-3.997-.118l-.845-.845A3.001 3.001 0 0111 3z"/><path d="M9.486 10.607l-.748-.748A2 2 0 016 8v-.878l-1-1V8a3 3 0 004.486 2.607zm-7.84-9.253l12 12 .708-.708-12-12-.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-mic-mute-fill" viewBox="0 0 16 16" id="mic-mute-fill" xmlns="http://www.w3.org/2000/svg"><path d="M13 8c0 .564-.094 1.107-.266 1.613l-.814-.814A4.02 4.02 0 0012 8V7a.5.5 0 011 0v1zm-5 4c.818 0 1.578-.245 2.212-.667l.718.719a4.973 4.973 0 01-2.43.923V15h3a.5.5 0 010 1h-7a.5.5 0 010-1h3v-2.025A5 5 0 013 8V7a.5.5 0 011 0v1a4 4 0 004 4zm3-9v4.879L5.158 2.037A3.001 3.001 0 0111 3z"/><path d="M9.486 10.607L5 6.12V8a3 3 0 004.486 2.607zm-7.84-9.253l12 12 .708-.708-12-12-.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-minecart" viewBox="0 0 16 16" id="minecart" xmlns="http://www.w3.org/2000/svg"><path d="M4 15a1 1 0 110-2 1 1 0 010 2zm0 1a2 2 0 100-4 2 2 0 000 4zm8-1a1 1 0 110-2 1 1 0 010 2zm0 1a2 2 0 100-4 2 2 0 000 4zM.115 3.18A.5.5 0 01.5 3h15a.5.5 0 01.491.592l-1.5 8A.5.5 0 0114 12H2a.5.5 0 01-.491-.408l-1.5-8a.5.5 0 01.106-.411zm.987.82l1.313 7h11.17l1.313-7H1.102z"/></symbol><symbol fill="currentColor" class="bi bi-minecart-loaded" viewBox="0 0 16 16" id="minecart-loaded" xmlns="http://www.w3.org/2000/svg"><path d="M4 15a1 1 0 110-2 1 1 0 010 2zm0 1a2 2 0 100-4 2 2 0 000 4zm8-1a1 1 0 110-2 1 1 0 010 2zm0 1a2 2 0 100-4 2 2 0 000 4zM.115 3.18A.5.5 0 01.5 3h15a.5.5 0 01.491.592l-1.5 8A.5.5 0 0114 12H2a.5.5 0 01-.491-.408l-1.5-8a.5.5 0 01.106-.411zm.987.82l1.313 7h11.17l1.313-7H1.102z"/><path fill-rule="evenodd" d="M6 1a2.498 2.498 0 014 0c.818 0 1.545.394 2 1 .67 0 1.552.57 2 1h-2c-.314 0-.611-.15-.8-.4-.274-.365-.71-.6-1.2-.6-.314 0-.611-.15-.8-.4a1.497 1.497 0 00-2.4 0c-.189.25-.486.4-.8.4-.507 0-.955.251-1.228.638-.09.13-.194.25-.308.362H3c.13-.147.401-.432.562-.545a1.63 1.63 0 00.393-.393A2.498 2.498 0 016 1z"/></symbol><symbol fill="currentColor" class="bi bi-moisture" viewBox="0 0 16 16" id="moisture" xmlns="http://www.w3.org/2000/svg"><path d="M13.5 0a.5.5 0 000 1H15v2.75h-.5a.5.5 0 000 1h.5V7.5h-1.5a.5.5 0 000 1H15v2.75h-.5a.5.5 0 000 1h.5V15h-1.5a.5.5 0 000 1h2a.5.5 0 00.5-.5V.5a.5.5 0 00-.5-.5h-2zM7 1.5l.364-.343a.5.5 0 00-.728 0l-.002.002-.006.007-.022.023-.08.088a28.458 28.458 0 00-1.274 1.517c-.769.983-1.714 2.325-2.385 3.727C2.368 7.564 2 8.682 2 9.733 2 12.614 4.212 15 7 15s5-2.386 5-5.267c0-1.05-.368-2.169-.867-3.212-.671-1.402-1.616-2.744-2.385-3.727a28.458 28.458 0 00-1.354-1.605l-.022-.023-.006-.007-.002-.001L7 1.5zm0 0l-.364-.343L7 1.5zm-.016.766L7 2.247l.016.019c.24.274.572.667.944 1.144.611.781 1.32 1.776 1.901 2.827H4.14c.58-1.051 1.29-2.046 1.9-2.827.373-.477.706-.87.945-1.144zM3 9.733c0-.755.244-1.612.638-2.496h6.724c.395.884.638 1.741.638 2.496C11 12.117 9.182 14 7 14s-4-1.883-4-4.267z"/></symbol><symbol fill="currentColor" class="bi bi-moon" viewBox="0 0 16 16" id="moon" xmlns="http://www.w3.org/2000/svg"><path d="M6 .278a.768.768 0 01.08.858 7.208 7.208 0 00-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 01.81.316.733.733 0 01-.031.893A8.349 8.349 0 018.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 016 .278zM4.858 1.311A7.269 7.269 0 001.025 7.71c0 4.02 3.279 7.276 7.319 7.276a7.316 7.316 0 005.205-2.162c-.337.042-.68.063-1.029.063-4.61 0-8.343-3.714-8.343-8.29 0-1.167.242-2.278.681-3.286z"/></symbol><symbol fill="currentColor" class="bi bi-moon-fill" viewBox="0 0 16 16" id="moon-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 .278a.768.768 0 01.08.858 7.208 7.208 0 00-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 01.81.316.733.733 0 01-.031.893A8.349 8.349 0 018.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 016 .278z"/></symbol><symbol fill="currentColor" class="bi bi-moon-stars" viewBox="0 0 16 16" id="moon-stars" xmlns="http://www.w3.org/2000/svg"><path d="M6 .278a.768.768 0 01.08.858 7.208 7.208 0 00-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 01.81.316.733.733 0 01-.031.893A8.349 8.349 0 018.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 016 .278zM4.858 1.311A7.269 7.269 0 001.025 7.71c0 4.02 3.279 7.276 7.319 7.276a7.316 7.316 0 005.205-2.162c-.337.042-.68.063-1.029.063-4.61 0-8.343-3.714-8.343-8.29 0-1.167.242-2.278.681-3.286z"/><path d="M10.794 3.148a.217.217 0 01.412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 010 .412l-1.162.387a1.734 1.734 0 00-1.097 1.097l-.387 1.162a.217.217 0 01-.412 0l-.387-1.162A1.734 1.734 0 009.31 6.593l-1.162-.387a.217.217 0 010-.412l1.162-.387a1.734 1.734 0 001.097-1.097l.387-1.162zM13.863.099a.145.145 0 01.274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 010 .274l-.774.258a1.156 1.156 0 00-.732.732l-.258.774a.145.145 0 01-.274 0l-.258-.774a1.156 1.156 0 00-.732-.732l-.774-.258a.145.145 0 010-.274l.774-.258c.346-.115.617-.386.732-.732L13.863.1z"/></symbol><symbol fill="currentColor" class="bi bi-moon-stars-fill" viewBox="0 0 16 16" id="moon-stars-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 .278a.768.768 0 01.08.858 7.208 7.208 0 00-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 01.81.316.733.733 0 01-.031.893A8.349 8.349 0 018.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 016 .278z"/><path d="M10.794 3.148a.217.217 0 01.412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 010 .412l-1.162.387a1.734 1.734 0 00-1.097 1.097l-.387 1.162a.217.217 0 01-.412 0l-.387-1.162A1.734 1.734 0 009.31 6.593l-1.162-.387a.217.217 0 010-.412l1.162-.387a1.734 1.734 0 001.097-1.097l.387-1.162zM13.863.099a.145.145 0 01.274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 010 .274l-.774.258a1.156 1.156 0 00-.732.732l-.258.774a.145.145 0 01-.274 0l-.258-.774a1.156 1.156 0 00-.732-.732l-.774-.258a.145.145 0 010-.274l.774-.258c.346-.115.617-.386.732-.732L13.863.1z"/></symbol><symbol fill="currentColor" class="bi bi-mouse" viewBox="0 0 16 16" id="mouse" xmlns="http://www.w3.org/2000/svg"><path d="M8 3a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 3zm4 8a4 4 0 01-8 0V5a4 4 0 118 0v6zM8 0a5 5 0 00-5 5v6a5 5 0 0010 0V5a5 5 0 00-5-5z"/></symbol><symbol fill="currentColor" class="bi bi-mouse-fill" viewBox="0 0 16 16" id="mouse-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 5a5 5 0 0110 0v6a5 5 0 01-10 0V5zm5.5-1.5a.5.5 0 00-1 0v2a.5.5 0 001 0v-2z"/></symbol><symbol fill="currentColor" class="bi bi-mouse2" viewBox="0 0 16 16" id="mouse2" xmlns="http://www.w3.org/2000/svg"><path d="M3 5.188C3 2.341 5.22 0 8 0s5 2.342 5 5.188v5.625C13 13.658 10.78 16 8 16s-5-2.342-5-5.188V5.189zm4.5-4.155C5.541 1.289 4 3.035 4 5.188V5.5h3.5V1.033zm1 0V5.5H12v-.313c0-2.152-1.541-3.898-3.5-4.154zM12 6.5H4v4.313C4 13.145 5.81 15 8 15s4-1.855 4-4.188V6.5z"/></symbol><symbol fill="currentColor" class="bi bi-mouse2-fill" viewBox="0 0 16 16" id="mouse2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.5.026C4.958.286 3 2.515 3 5.188V5.5h4.5V.026zm1 0V5.5H13v-.312C13 2.515 11.042.286 8.5.026zM13 6.5H3v4.313C3 13.658 5.22 16 8 16s5-2.342 5-5.188V6.5z"/></symbol><symbol fill="currentColor" class="bi bi-mouse3" viewBox="0 0 16 16" id="mouse3" xmlns="http://www.w3.org/2000/svg"><path d="M7 0c-.593 0-1.104.157-1.527.463-.418.302-.717.726-.93 1.208C4.123 2.619 4 3.879 4 5.187v.504L3.382 6A2.5 2.5 0 002 8.236v2.576C2 13.659 4.22 16 7 16h2c2.78 0 5-2.342 5-5.188V7.51a.71.71 0 000-.02V5.186c0-1.13-.272-2.044-.748-2.772-.474-.726-1.13-1.235-1.849-1.59C9.981.123 8.26 0 7 0zm2.5 6.099V1.232c.51.11 1.008.267 1.46.49.596.293 1.099.694 1.455 1.24.355.543.585 1.262.585 2.225v1.69l-3.5-.778zm-1-5.025v4.803L5 5.099c.006-1.242.134-2.293.457-3.024.162-.366.363-.63.602-.801C6.292 1.105 6.593 1 7 1c.468 0 .98.018 1.5.074zM5 6.124L13 7.9v2.912C13 13.145 11.19 15 9 15H7c-2.19 0-4-1.855-4-4.188V8.236a1.5 1.5 0 01.83-1.342l.187-.093c.01.265.024.58.047.92.062.938.19 2.12.462 2.937a.5.5 0 10.948-.316c-.227-.683-.35-1.75-.413-2.688a29.17 29.17 0 01-.06-1.528v-.002z"/></symbol><symbol fill="currentColor" class="bi bi-mouse3-fill" viewBox="0 0 16 16" id="mouse3-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5.069A15.328 15.328 0 007 0c-.593 0-1.104.157-1.527.463-.418.302-.717.726-.93 1.208-.386.873-.522 2.01-.54 3.206l4.497 1V.069zM3.71 5.836L3.381 6A2.5 2.5 0 002 8.236v2.576C2 13.659 4.22 16 7 16h2c2.78 0 5-2.342 5-5.188V8.123l-9-2v.003l.008.353c.007.3.023.715.053 1.175.063.937.186 2.005.413 2.688a.5.5 0 11-.948.316c-.273-.817-.4-2-.462-2.937A30.16 30.16 0 014 6.003c0-.034.003-.067.01-.1l-.3-.067zM14 7.1V5.187c0-1.13-.272-2.044-.748-2.772-.474-.726-1.13-1.235-1.849-1.59A7.495 7.495 0 009.5.212v5.887l4.5 1z"/></symbol><symbol fill="currentColor" class="bi bi-music-note" viewBox="0 0 16 16" id="music-note" xmlns="http://www.w3.org/2000/svg"><path d="M9 13c0 1.105-1.12 2-2.5 2S4 14.105 4 13s1.12-2 2.5-2 2.5.895 2.5 2z"/><path fill-rule="evenodd" d="M9 3v10H8V3h1z"/><path d="M8 2.82a1 1 0 01.804-.98l3-.6A1 1 0 0113 2.22V4L8 5V2.82z"/></symbol><symbol fill="currentColor" class="bi bi-music-note-beamed" viewBox="0 0 16 16" id="music-note-beamed" xmlns="http://www.w3.org/2000/svg"><path d="M6 13c0 1.105-1.12 2-2.5 2S1 14.105 1 13c0-1.104 1.12-2 2.5-2s2.5.896 2.5 2zm9-2c0 1.105-1.12 2-2.5 2s-2.5-.895-2.5-2 1.12-2 2.5-2 2.5.895 2.5 2z"/><path fill-rule="evenodd" d="M14 11V2h1v9h-1zM6 3v10H5V3h1z"/><path d="M5 2.905a1 1 0 01.9-.995l8-.8a1 1 0 011.1.995V3L5 4V2.905z"/></symbol><symbol fill="currentColor" class="bi bi-music-note-list" viewBox="0 0 16 16" id="music-note-list" xmlns="http://www.w3.org/2000/svg"><path d="M12 13c0 1.105-1.12 2-2.5 2S7 14.105 7 13s1.12-2 2.5-2 2.5.895 2.5 2z"/><path fill-rule="evenodd" d="M12 3v10h-1V3h1z"/><path d="M11 2.82a1 1 0 01.804-.98l3-.6A1 1 0 0116 2.22V4l-5 1V2.82z"/><path fill-rule="evenodd" d="M0 11.5a.5.5 0 01.5-.5H4a.5.5 0 010 1H.5a.5.5 0 01-.5-.5zm0-4A.5.5 0 01.5 7H8a.5.5 0 010 1H.5a.5.5 0 01-.5-.5zm0-4A.5.5 0 01.5 3H8a.5.5 0 010 1H.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-music-player" viewBox="0 0 16 16" id="music-player" xmlns="http://www.w3.org/2000/svg"><path d="M4 3a1 1 0 011-1h6a1 1 0 011 1v3a1 1 0 01-1 1H5a1 1 0 01-1-1V3zm1 0v3h6V3H5zm3 9a1 1 0 100-2 1 1 0 000 2z"/><path d="M11 11a3 3 0 11-6 0 3 3 0 016 0zm-3 2a2 2 0 100-4 2 2 0 000 4z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm2-1a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1H4z"/></symbol><symbol fill="currentColor" class="bi bi-music-player-fill" viewBox="0 0 16 16" id="music-player-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 12a1 1 0 100-2 1 1 0 000 2z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm1 2h6a1 1 0 011 1v2.5a1 1 0 01-1 1H5a1 1 0 01-1-1V3a1 1 0 011-1zm3 12a3 3 0 110-6 3 3 0 010 6z"/></symbol><symbol fill="currentColor" class="bi bi-newspaper" viewBox="0 0 16 16" id="newspaper" xmlns="http://www.w3.org/2000/svg"><path d="M0 2.5A1.5 1.5 0 011.5 1h11A1.5 1.5 0 0114 2.5v10.528c0 .3-.05.654-.238.972h.738a.5.5 0 00.5-.5v-9a.5.5 0 011 0v9a1.5 1.5 0 01-1.5 1.5H1.497A1.497 1.497 0 010 13.5v-11zM12 14c.37 0 .654-.211.853-.441.092-.106.147-.279.147-.531V2.5a.5.5 0 00-.5-.5h-11a.5.5 0 00-.5.5v11c0 .278.223.5.497.5H12z"/><path d="M2 3h10v2H2V3zm0 3h4v3H2V6zm0 4h4v1H2v-1zm0 2h4v1H2v-1zm5-6h2v1H7V6zm3 0h2v1h-2V6zM7 8h2v1H7V8zm3 0h2v1h-2V8zm-3 2h2v1H7v-1zm3 0h2v1h-2v-1zm-3 2h2v1H7v-1zm3 0h2v1h-2v-1z"/></symbol><symbol fill="currentColor" class="bi bi-node-minus" viewBox="0 0 16 16" id="node-minus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11 4a4 4 0 100 8 4 4 0 000-8zM6.025 7.5a5 5 0 110 1H4A1.5 1.5 0 012.5 10h-1A1.5 1.5 0 010 8.5v-1A1.5 1.5 0 011.5 6h1A1.5 1.5 0 014 7.5h2.025zM1.5 7a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zM8 8a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5A.5.5 0 018 8z"/></symbol><symbol fill="currentColor" class="bi bi-node-minus-fill" viewBox="0 0 16 16" id="node-minus-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M16 8a5 5 0 01-9.975.5H4A1.5 1.5 0 012.5 10h-1A1.5 1.5 0 010 8.5v-1A1.5 1.5 0 011.5 6h1A1.5 1.5 0 014 7.5h2.025A5 5 0 0116 8zm-2 0a.5.5 0 00-.5-.5h-5a.5.5 0 000 1h5A.5.5 0 0014 8z"/></symbol><symbol fill="currentColor" class="bi bi-node-plus" viewBox="0 0 16 16" id="node-plus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11 4a4 4 0 100 8 4 4 0 000-8zM6.025 7.5a5 5 0 110 1H4A1.5 1.5 0 012.5 10h-1A1.5 1.5 0 010 8.5v-1A1.5 1.5 0 011.5 6h1A1.5 1.5 0 014 7.5h2.025zM11 5a.5.5 0 01.5.5v2h2a.5.5 0 010 1h-2v2a.5.5 0 01-1 0v-2h-2a.5.5 0 010-1h2v-2A.5.5 0 0111 5zM1.5 7a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-node-plus-fill" viewBox="0 0 16 16" id="node-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11 13a5 5 0 10-4.975-5.5H4A1.5 1.5 0 002.5 6h-1A1.5 1.5 0 000 7.5v1A1.5 1.5 0 001.5 10h1A1.5 1.5 0 004 8.5h2.025A5 5 0 0011 13zm.5-7.5v2h2a.5.5 0 010 1h-2v2a.5.5 0 01-1 0v-2h-2a.5.5 0 010-1h2v-2a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-nut" viewBox="0 0 16 16" id="nut" xmlns="http://www.w3.org/2000/svg"><path d="M11.42 2l3.428 6-3.428 6H4.58L1.152 8 4.58 2h6.84zM4.58 1a1 1 0 00-.868.504l-3.428 6a1 1 0 000 .992l3.428 6A1 1 0 004.58 15h6.84a1 1 0 00.868-.504l3.429-6a1 1 0 000-.992l-3.429-6A1 1 0 0011.42 1H4.58z"/><path d="M6.848 5.933a2.5 2.5 0 102.5 4.33 2.5 2.5 0 00-2.5-4.33zm-1.78 3.915a3.5 3.5 0 116.061-3.5 3.5 3.5 0 01-6.062 3.5z"/></symbol><symbol fill="currentColor" class="bi bi-nut-fill" viewBox="0 0 16 16" id="nut-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.58 1a1 1 0 00-.868.504l-3.428 6a1 1 0 000 .992l3.428 6A1 1 0 004.58 15h6.84a1 1 0 00.868-.504l3.429-6a1 1 0 000-.992l-3.429-6A1 1 0 0011.42 1H4.58zm5.018 9.696a3 3 0 11-3-5.196 3 3 0 013 5.196z"/></symbol><symbol fill="currentColor" class="bi bi-octagon" viewBox="0 0 16 16" id="octagon" xmlns="http://www.w3.org/2000/svg"><path d="M4.54.146A.5.5 0 014.893 0h6.214a.5.5 0 01.353.146l4.394 4.394a.5.5 0 01.146.353v6.214a.5.5 0 01-.146.353l-4.394 4.394a.5.5 0 01-.353.146H4.893a.5.5 0 01-.353-.146L.146 11.46A.5.5 0 010 11.107V4.893a.5.5 0 01.146-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z"/></symbol><symbol fill="currentColor" class="bi bi-octagon-fill" viewBox="0 0 16 16" id="octagon-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.107 0a.5.5 0 01.353.146l4.394 4.394a.5.5 0 01.146.353v6.214a.5.5 0 01-.146.353l-4.394 4.394a.5.5 0 01-.353.146H4.893a.5.5 0 01-.353-.146L.146 11.46A.5.5 0 010 11.107V4.893a.5.5 0 01.146-.353L4.54.146A.5.5 0 014.893 0h6.214z"/></symbol><symbol fill="currentColor" class="bi bi-octagon-half" viewBox="0 0 16 16" id="octagon-half" xmlns="http://www.w3.org/2000/svg"><path d="M4.54.146A.5.5 0 014.893 0h6.214a.5.5 0 01.353.146l4.394 4.394a.5.5 0 01.146.353v6.214a.5.5 0 01-.146.353l-4.394 4.394a.5.5 0 01-.353.146H4.893a.5.5 0 01-.353-.146L.146 11.46A.5.5 0 010 11.107V4.893a.5.5 0 01.146-.353L4.54.146zM8 15h2.9l4.1-4.1V5.1L10.9 1H8v14z"/></symbol><symbol fill="currentColor" class="bi bi-option" viewBox="0 0 16 16" id="option" xmlns="http://www.w3.org/2000/svg"><path d="M1 2.5a.5.5 0 01.5-.5h3.797a.5.5 0 01.439.26L11 13h3.5a.5.5 0 010 1h-3.797a.5.5 0 01-.439-.26L5 3H1.5a.5.5 0 01-.5-.5zm10 0a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-outlet" viewBox="0 0 16 16" id="outlet" xmlns="http://www.w3.org/2000/svg"><path d="M3.34 2.994c.275-.338.68-.494 1.074-.494h7.172c.393 0 .798.156 1.074.494.578.708 1.84 2.534 1.84 5.006 0 2.472-1.262 4.297-1.84 5.006-.276.338-.68.494-1.074.494H4.414c-.394 0-.799-.156-1.074-.494C2.762 12.297 1.5 10.472 1.5 8c0-2.472 1.262-4.297 1.84-5.006zm1.074.506a.376.376 0 00-.299.126C3.599 4.259 2.5 5.863 2.5 8c0 2.137 1.099 3.74 1.615 4.374.06.073.163.126.3.126h7.17c.137 0 .24-.053.3-.126.516-.633 1.615-2.237 1.615-4.374 0-2.137-1.099-3.74-1.615-4.374a.376.376 0 00-.3-.126h-7.17z"/><path d="M6 5.5a.5.5 0 01.5.5v1.5a.5.5 0 01-1 0V6a.5.5 0 01.5-.5zm4 0a.5.5 0 01.5.5v1.5a.5.5 0 01-1 0V6a.5.5 0 01.5-.5zM7 10v1h2v-1a1 1 0 00-2 0z"/></symbol><symbol fill="currentColor" class="bi bi-paint-bucket" viewBox="0 0 16 16" id="paint-bucket" xmlns="http://www.w3.org/2000/svg"><path d="M6.192 2.78c-.458-.677-.927-1.248-1.35-1.643a2.972 2.972 0 00-.71-.515c-.217-.104-.56-.205-.882-.02-.367.213-.427.63-.43.896-.003.304.064.664.173 1.044.196.687.556 1.528 1.035 2.402L.752 8.22c-.277.277-.269.656-.218.918.055.283.187.593.36.903.348.627.92 1.361 1.626 2.068.707.707 1.441 1.278 2.068 1.626.31.173.62.305.903.36.262.05.64.059.918-.218l5.615-5.615c.118.257.092.512.05.939-.03.292-.068.665-.073 1.176v.123h.003a1 1 0 001.993 0H14v-.057a1.01 1.01 0 00-.004-.117c-.055-1.25-.7-2.738-1.86-3.494a4.322 4.322 0 00-.211-.434c-.349-.626-.92-1.36-1.627-2.067-.707-.707-1.441-1.279-2.068-1.627-.31-.172-.62-.304-.903-.36-.262-.05-.64-.058-.918.219l-.217.216zM4.16 1.867c.381.356.844.922 1.311 1.632l-.704.705c-.382-.727-.66-1.402-.813-1.938a3.283 3.283 0 01-.131-.673c.091.061.204.15.337.274zm.394 3.965c.54.852 1.107 1.567 1.607 2.033a.5.5 0 10.682-.732c-.453-.422-1.017-1.136-1.564-2.027l1.088-1.088c.054.12.115.243.183.365.349.627.92 1.361 1.627 2.068.706.707 1.44 1.278 2.068 1.626.122.068.244.13.365.183l-4.861 4.862a.571.571 0 01-.068-.01c-.137-.027-.342-.104-.608-.252-.524-.292-1.186-.8-1.846-1.46-.66-.66-1.168-1.32-1.46-1.846-.147-.265-.225-.47-.251-.607a.573.573 0 01-.01-.068l3.048-3.047zm2.87-1.935a2.44 2.44 0 01-.241-.561c.135.033.324.11.562.241.524.292 1.186.8 1.846 1.46.45.45.83.901 1.118 1.31a3.497 3.497 0 00-1.066.091 11.27 11.27 0 01-.76-.694c-.66-.66-1.167-1.322-1.458-1.847z"/></symbol><symbol fill="currentColor" class="bi bi-palette" viewBox="0 0 16 16" id="palette" xmlns="http://www.w3.org/2000/svg"><path d="M8 5a1.5 1.5 0 100-3 1.5 1.5 0 000 3zm4 3a1.5 1.5 0 100-3 1.5 1.5 0 000 3zM5.5 7a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm.5 6a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/><path d="M16 8c0 3.15-1.866 2.585-3.567 2.07C11.42 9.763 10.465 9.473 10 10c-.603.683-.475 1.819-.351 2.92C9.826 14.495 9.996 16 8 16a8 8 0 118-8zm-8 7c.611 0 .654-.171.655-.176.078-.146.124-.464.07-1.119-.014-.168-.037-.37-.061-.591-.052-.464-.112-1.005-.118-1.462-.01-.707.083-1.61.704-2.314.369-.417.845-.578 1.272-.618.404-.038.812.026 1.16.104.343.077.702.186 1.025.284l.028.008c.346.105.658.199.953.266.653.148.904.083.991.024C14.717 9.38 15 9.161 15 8a7 7 0 10-7 7z"/></symbol><symbol fill="currentColor" class="bi bi-palette-fill" viewBox="0 0 16 16" id="palette-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12.433 10.07C14.133 10.585 16 11.15 16 8a8 8 0 10-8 8c1.996 0 1.826-1.504 1.649-3.08-.124-1.101-.252-2.237.351-2.92.465-.527 1.42-.237 2.433.07zM8 5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm4.5 3a1.5 1.5 0 110-3 1.5 1.5 0 010 3zM5 6.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm.5 6.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-palette2" viewBox="0 0 16 16" id="palette2" xmlns="http://www.w3.org/2000/svg"><path d="M0 .5A.5.5 0 01.5 0h5a.5.5 0 01.5.5v5.277l4.147-4.131a.5.5 0 01.707 0l3.535 3.536a.5.5 0 010 .708L10.261 10H15.5a.5.5 0 01.5.5v5a.5.5 0 01-.5.5H3a2.99 2.99 0 01-2.121-.879A2.99 2.99 0 010 13.044m6-.21l7.328-7.3-2.829-2.828L6 7.188v5.647zM4.5 13a1.5 1.5 0 10-3 0 1.5 1.5 0 003 0zM15 15v-4H9.258l-4.015 4H15zM0 .5v12.495V.5z"/><path d="M0 12.995V13a3.07 3.07 0 000-.005z"/></symbol><symbol fill="currentColor" class="bi bi-paperclip" viewBox="0 0 16 16" id="paperclip" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 3a2.5 2.5 0 015 0v9a1.5 1.5 0 01-3 0V5a.5.5 0 011 0v7a.5.5 0 001 0V3a1.5 1.5 0 10-3 0v9a2.5 2.5 0 005 0V5a.5.5 0 011 0v7a3.5 3.5 0 11-7 0V3z"/></symbol><symbol fill="currentColor" class="bi bi-paragraph" viewBox="0 0 16 16" id="paragraph" xmlns="http://www.w3.org/2000/svg"><path d="M10.5 15a.5.5 0 01-.5-.5V2H9v12.5a.5.5 0 01-1 0V9H7a4 4 0 110-8h5.5a.5.5 0 010 1H11v12.5a.5.5 0 01-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-patch-check" viewBox="0 0 16 16" id="patch-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.354 6.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7 8.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M10.273 2.513l-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 012.924 2.924l-.01.89.636.622a2.89 2.89 0 010 4.134l-.637.622.011.89a2.89 2.89 0 01-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 01-4.134 0l-.622-.637-.89.011a2.89 2.89 0 01-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 010-4.134l.637-.622-.011-.89a2.89 2.89 0 012.924-2.924l.89.01.622-.636a2.89 2.89 0 014.134 0l-.715.698a1.89 1.89 0 00-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 00-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 000 2.704l.944.92-.016 1.32a1.89 1.89 0 001.912 1.911l1.318-.016.921.944a1.89 1.89 0 002.704 0l.92-.944 1.32.016a1.89 1.89 0 001.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 000-2.704l-.944-.92.016-1.32a1.89 1.89 0 00-1.912-1.911l-1.318.016z"/></symbol><symbol fill="currentColor" class="bi bi-patch-check-fill" viewBox="0 0 16 16" id="patch-check-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.067.87a2.89 2.89 0 00-4.134 0l-.622.638-.89-.011a2.89 2.89 0 00-2.924 2.924l.01.89-.636.622a2.89 2.89 0 000 4.134l.637.622-.011.89a2.89 2.89 0 002.924 2.924l.89-.01.622.636a2.89 2.89 0 004.134 0l.622-.637.89.011a2.89 2.89 0 002.924-2.924l-.01-.89.636-.622a2.89 2.89 0 000-4.134l-.637-.622.011-.89a2.89 2.89 0 00-2.924-2.924l-.89.01-.622-.636zm.287 5.984l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7 8.793l2.646-2.647a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-patch-exclamation" viewBox="0 0 16 16" id="patch-exclamation" xmlns="http://www.w3.org/2000/svg"><path d="M7.001 11a1 1 0 112 0 1 1 0 01-2 0zM7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.553.553 0 01-1.1 0L7.1 4.995z"/><path d="M10.273 2.513l-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 012.924 2.924l-.01.89.636.622a2.89 2.89 0 010 4.134l-.637.622.011.89a2.89 2.89 0 01-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 01-4.134 0l-.622-.637-.89.011a2.89 2.89 0 01-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 010-4.134l.637-.622-.011-.89a2.89 2.89 0 012.924-2.924l.89.01.622-.636a2.89 2.89 0 014.134 0l-.715.698a1.89 1.89 0 00-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 00-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 000 2.704l.944.92-.016 1.32a1.89 1.89 0 001.912 1.911l1.318-.016.921.944a1.89 1.89 0 002.704 0l.92-.944 1.32.016a1.89 1.89 0 001.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 000-2.704l-.944-.92.016-1.32a1.89 1.89 0 00-1.912-1.911l-1.318.016z"/></symbol><symbol fill="currentColor" class="bi bi-patch-exclamation-fill" viewBox="0 0 16 16" id="patch-exclamation-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.067.87a2.89 2.89 0 00-4.134 0l-.622.638-.89-.011a2.89 2.89 0 00-2.924 2.924l.01.89-.636.622a2.89 2.89 0 000 4.134l.637.622-.011.89a2.89 2.89 0 002.924 2.924l.89-.01.622.636a2.89 2.89 0 004.134 0l.622-.637.89.011a2.89 2.89 0 002.924-2.924l-.01-.89.636-.622a2.89 2.89 0 000-4.134l-.637-.622.011-.89a2.89 2.89 0 00-2.924-2.924l-.89.01-.622-.636zM8 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995A.905.905 0 018 4zm.002 6a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-patch-minus" viewBox="0 0 16 16" id="patch-minus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.5 8a.5.5 0 01.5-.5h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M10.273 2.513l-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 012.924 2.924l-.01.89.636.622a2.89 2.89 0 010 4.134l-.637.622.011.89a2.89 2.89 0 01-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 01-4.134 0l-.622-.637-.89.011a2.89 2.89 0 01-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 010-4.134l.637-.622-.011-.89a2.89 2.89 0 012.924-2.924l.89.01.622-.636a2.89 2.89 0 014.134 0l-.715.698a1.89 1.89 0 00-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 00-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 000 2.704l.944.92-.016 1.32a1.89 1.89 0 001.912 1.911l1.318-.016.921.944a1.89 1.89 0 002.704 0l.92-.944 1.32.016a1.89 1.89 0 001.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 000-2.704l-.944-.92.016-1.32a1.89 1.89 0 00-1.912-1.911l-1.318.016z"/></symbol><symbol fill="currentColor" class="bi bi-patch-minus-fill" viewBox="0 0 16 16" id="patch-minus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.067.87a2.89 2.89 0 00-4.134 0l-.622.638-.89-.011a2.89 2.89 0 00-2.924 2.924l.01.89-.636.622a2.89 2.89 0 000 4.134l.637.622-.011.89a2.89 2.89 0 002.924 2.924l.89-.01.622.636a2.89 2.89 0 004.134 0l.622-.637.89.011a2.89 2.89 0 002.924-2.924l-.01-.89.636-.622a2.89 2.89 0 000-4.134l-.637-.622.011-.89a2.89 2.89 0 00-2.924-2.924l-.89.01-.622-.636zM6 7.5h4a.5.5 0 010 1H6a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-patch-plus" viewBox="0 0 16 16" id="patch-plus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 5.5a.5.5 0 01.5.5v1.5H10a.5.5 0 010 1H8.5V10a.5.5 0 01-1 0V8.5H6a.5.5 0 010-1h1.5V6a.5.5 0 01.5-.5z"/><path d="M10.273 2.513l-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 012.924 2.924l-.01.89.636.622a2.89 2.89 0 010 4.134l-.637.622.011.89a2.89 2.89 0 01-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 01-4.134 0l-.622-.637-.89.011a2.89 2.89 0 01-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 010-4.134l.637-.622-.011-.89a2.89 2.89 0 012.924-2.924l.89.01.622-.636a2.89 2.89 0 014.134 0l-.715.698a1.89 1.89 0 00-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 00-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 000 2.704l.944.92-.016 1.32a1.89 1.89 0 001.912 1.911l1.318-.016.921.944a1.89 1.89 0 002.704 0l.92-.944 1.32.016a1.89 1.89 0 001.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 000-2.704l-.944-.92.016-1.32a1.89 1.89 0 00-1.912-1.911l-1.318.016z"/></symbol><symbol fill="currentColor" class="bi bi-patch-plus-fill" viewBox="0 0 16 16" id="patch-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.067.87a2.89 2.89 0 00-4.134 0l-.622.638-.89-.011a2.89 2.89 0 00-2.924 2.924l.01.89-.636.622a2.89 2.89 0 000 4.134l.637.622-.011.89a2.89 2.89 0 002.924 2.924l.89-.01.622.636a2.89 2.89 0 004.134 0l.622-.637.89.011a2.89 2.89 0 002.924-2.924l-.01-.89.636-.622a2.89 2.89 0 000-4.134l-.637-.622.011-.89a2.89 2.89 0 00-2.924-2.924l-.89.01-.622-.636zM8.5 6v1.5H10a.5.5 0 010 1H8.5V10a.5.5 0 01-1 0V8.5H6a.5.5 0 010-1h1.5V6a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-patch-question" viewBox="0 0 16 16" id="patch-question" xmlns="http://www.w3.org/2000/svg"><path d="M8.05 9.6c.336 0 .504-.24.554-.627.04-.534.198-.815.847-1.26.673-.475 1.049-1.09 1.049-1.986 0-1.325-.92-2.227-2.262-2.227-1.02 0-1.792.492-2.1 1.29A1.71 1.71 0 006 5.48c0 .393.203.64.545.64.272 0 .455-.147.564-.51.158-.592.525-.915 1.074-.915.61 0 1.03.446 1.03 1.084 0 .563-.208.885-.822 1.325-.619.433-.926.914-.926 1.64v.111c0 .428.208.745.585.745z"/><path d="M10.273 2.513l-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 012.924 2.924l-.01.89.636.622a2.89 2.89 0 010 4.134l-.637.622.011.89a2.89 2.89 0 01-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 01-4.134 0l-.622-.637-.89.011a2.89 2.89 0 01-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 010-4.134l.637-.622-.011-.89a2.89 2.89 0 012.924-2.924l.89.01.622-.636a2.89 2.89 0 014.134 0l-.715.698a1.89 1.89 0 00-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 00-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 000 2.704l.944.92-.016 1.32a1.89 1.89 0 001.912 1.911l1.318-.016.921.944a1.89 1.89 0 002.704 0l.92-.944 1.32.016a1.89 1.89 0 001.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 000-2.704l-.944-.92.016-1.32a1.89 1.89 0 00-1.912-1.911l-1.318.016z"/><path d="M7.001 11a1 1 0 112 0 1 1 0 01-2 0z"/></symbol><symbol fill="currentColor" class="bi bi-patch-question-fill" viewBox="0 0 16 16" id="patch-question-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.933.87a2.89 2.89 0 014.134 0l.622.638.89-.011a2.89 2.89 0 012.924 2.924l-.01.89.636.622a2.89 2.89 0 010 4.134l-.637.622.011.89a2.89 2.89 0 01-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 01-4.134 0l-.622-.637-.89.011a2.89 2.89 0 01-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 010-4.134l.637-.622-.011-.89a2.89 2.89 0 012.924-2.924l.89.01.622-.636zM7.002 11a1 1 0 102 0 1 1 0 00-2 0zm1.602-2.027c.04-.534.198-.815.846-1.26.674-.475 1.05-1.09 1.05-1.986 0-1.325-.92-2.227-2.262-2.227-1.02 0-1.792.492-2.1 1.29A1.71 1.71 0 006 5.48c0 .393.203.64.545.64.272 0 .455-.147.564-.51.158-.592.525-.915 1.074-.915.61 0 1.03.446 1.03 1.084 0 .563-.208.885-.822 1.325-.619.433-.926.914-.926 1.64v.111c0 .428.208.745.585.745.336 0 .504-.24.554-.627z"/></symbol><symbol fill="currentColor" class="bi bi-pause" viewBox="0 0 16 16" id="pause" xmlns="http://www.w3.org/2000/svg"><path d="M6 3.5a.5.5 0 01.5.5v8a.5.5 0 01-1 0V4a.5.5 0 01.5-.5zm4 0a.5.5 0 01.5.5v8a.5.5 0 01-1 0V4a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-pause-btn" viewBox="0 0 16 16" id="pause-btn" xmlns="http://www.w3.org/2000/svg"><path d="M6.25 5C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 102.5 0v-3.5C7.5 5.56 6.94 5 6.25 5zm3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 102.5 0v-3.5C11 5.56 10.44 5 9.75 5z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-pause-btn-fill" viewBox="0 0 16 16" id="pause-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm6.25-7C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 102.5 0v-3.5C7.5 5.56 6.94 5 6.25 5zm3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 102.5 0v-3.5C11 5.56 10.44 5 9.75 5z"/></symbol><symbol fill="currentColor" class="bi bi-pause-circle" viewBox="0 0 16 16" id="pause-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M5 6.25a1.25 1.25 0 112.5 0v3.5a1.25 1.25 0 11-2.5 0v-3.5zm3.5 0a1.25 1.25 0 112.5 0v3.5a1.25 1.25 0 11-2.5 0v-3.5z"/></symbol><symbol fill="currentColor" class="bi bi-pause-circle-fill" viewBox="0 0 16 16" id="pause-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM6.25 5C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 102.5 0v-3.5C7.5 5.56 6.94 5 6.25 5zm3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 102.5 0v-3.5C11 5.56 10.44 5 9.75 5z"/></symbol><symbol fill="currentColor" class="bi bi-pause-fill" viewBox="0 0 16 16" id="pause-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 3.5A1.5 1.5 0 017 5v6a1.5 1.5 0 01-3 0V5a1.5 1.5 0 011.5-1.5zm5 0A1.5 1.5 0 0112 5v6a1.5 1.5 0 01-3 0V5a1.5 1.5 0 011.5-1.5z"/></symbol><symbol fill="currentColor" class="bi bi-peace" viewBox="0 0 16 16" id="peace" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 1.018a7 7 0 00-4.79 11.566L7.5 7.793V1.018zm1 0v6.775l4.79 4.79A7 7 0 008.5 1.018zm4.084 12.273L8.5 9.207v5.775a6.97 6.97 0 004.084-1.691zM7.5 14.982V9.207l-4.084 4.084A6.97 6.97 0 007.5 14.982zM0 8a8 8 0 1116 0A8 8 0 010 8z"/></symbol><symbol fill="currentColor" class="bi bi-peace-fill" viewBox="0 0 16 16" id="peace-fill" xmlns="http://www.w3.org/2000/svg"><path d="M14 13.292A8 8 0 008.5.015v7.778l5.5 5.5zm-.708.708L8.5 9.206v6.778a7.967 7.967 0 004.792-1.986zM7.5 15.985V9.207L2.708 14A7.967 7.967 0 007.5 15.985zM2 13.292A8 8 0 017.5.015v7.778l-5.5 5.5z"/></symbol><symbol fill="currentColor" class="bi bi-pen" viewBox="0 0 16 16" id="pen" xmlns="http://www.w3.org/2000/svg"><path d="M13.498.795l.149-.149a1.207 1.207 0 111.707 1.708l-.149.148a1.5 1.5 0 01-.059 2.059L4.854 14.854a.5.5 0 01-.233.131l-4 1a.5.5 0 01-.606-.606l1-4a.5.5 0 01.131-.232l9.642-9.642a.5.5 0 00-.642.056L6.854 4.854a.5.5 0 11-.708-.708L9.44.854A1.5 1.5 0 0111.5.796a1.5 1.5 0 011.998-.001zm-.644.766a.5.5 0 00-.707 0L1.95 11.756l-.764 3.057 3.057-.764L14.44 3.854a.5.5 0 000-.708l-1.585-1.585z"/></symbol><symbol fill="currentColor" class="bi bi-pen-fill" viewBox="0 0 16 16" id="pen-fill" xmlns="http://www.w3.org/2000/svg"><path d="M13.498.795l.149-.149a1.207 1.207 0 111.707 1.708l-.149.148a1.5 1.5 0 01-.059 2.059L4.854 14.854a.5.5 0 01-.233.131l-4 1a.5.5 0 01-.606-.606l1-4a.5.5 0 01.131-.232l9.642-9.642a.5.5 0 00-.642.056L6.854 4.854a.5.5 0 11-.708-.708L9.44.854A1.5 1.5 0 0111.5.796a1.5 1.5 0 011.998-.001z"/></symbol><symbol fill="currentColor" class="bi bi-pencil" viewBox="0 0 16 16" id="pencil" xmlns="http://www.w3.org/2000/svg"><path d="M12.146.146a.5.5 0 01.708 0l3 3a.5.5 0 010 .708l-10 10a.5.5 0 01-.168.11l-5 2a.5.5 0 01-.65-.65l2-5a.5.5 0 01.11-.168l10-10zM11.207 2.5L13.5 4.793 14.793 3.5 12.5 1.207 11.207 2.5zm1.586 3L10.5 3.207 4 9.707V10h.5a.5.5 0 01.5.5v.5h.5a.5.5 0 01.5.5v.5h.293l6.5-6.5zm-9.761 5.175l-.106.106-1.528 3.821 3.821-1.528.106-.106A.5.5 0 015 12.5V12h-.5a.5.5 0 01-.5-.5V11h-.5a.5.5 0 01-.468-.325z"/></symbol><symbol fill="currentColor" class="bi bi-pencil-fill" viewBox="0 0 16 16" id="pencil-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12.854.146a.5.5 0 00-.707 0L10.5 1.793 14.207 5.5l1.647-1.646a.5.5 0 000-.708l-3-3zm.646 6.061L9.793 2.5 3.293 9H3.5a.5.5 0 01.5.5v.5h.5a.5.5 0 01.5.5v.5h.5a.5.5 0 01.5.5v.5h.5a.5.5 0 01.5.5v.207l6.5-6.5zm-7.468 7.468A.5.5 0 016 13.5V13h-.5a.5.5 0 01-.5-.5V12h-.5a.5.5 0 01-.5-.5V11h-.5a.5.5 0 01-.5-.5V10h-.5a.499.499 0 01-.175-.032l-.179.178a.5.5 0 00-.11.168l-2 5a.5.5 0 00.65.65l5-2a.5.5 0 00.168-.11l.178-.178z"/></symbol><symbol fill="currentColor" class="bi bi-pencil-square" viewBox="0 0 16 16" id="pencil-square" xmlns="http://www.w3.org/2000/svg"><path d="M15.502 1.94a.5.5 0 010 .706L14.459 3.69l-2-2L13.502.646a.5.5 0 01.707 0l1.293 1.293zm-1.75 2.456l-2-2L4.939 9.21a.5.5 0 00-.121.196l-.805 2.414a.25.25 0 00.316.316l2.414-.805a.5.5 0 00.196-.12l6.813-6.814z"/><path fill-rule="evenodd" d="M1 13.5A1.5 1.5 0 002.5 15h11a1.5 1.5 0 001.5-1.5v-6a.5.5 0 00-1 0v6a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5v-11a.5.5 0 01.5-.5H9a.5.5 0 000-1H2.5A1.5 1.5 0 001 2.5v11z"/></symbol><symbol fill="currentColor" class="bi bi-pentagon" viewBox="0 0 16 16" id="pentagon" xmlns="http://www.w3.org/2000/svg"><path d="M8 1.288l6.842 5.56L12.267 15H3.733L1.158 6.847 8 1.288zM16 6.5L8 0 0 6.5 3 16h10l3-9.5z"/></symbol><symbol fill="currentColor" class="bi bi-pentagon-fill" viewBox="0 0 16 16" id="pentagon-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 0l8 6.5-3 9.5H3L0 6.5 8 0z"/></symbol><symbol fill="currentColor" class="bi bi-pentagon-half" viewBox="0 0 16 16" id="pentagon-half" xmlns="http://www.w3.org/2000/svg"><path d="M8 1.288l6.842 5.56L12.267 15H8V1.288zM16 6.5L8 0 0 6.5 3 16h10l3-9.5z"/></symbol><symbol fill="currentColor" class="bi bi-people" viewBox="0 0 16 16" id="people" xmlns="http://www.w3.org/2000/svg"><path d="M15 14s1 0 1-1-1-4-5-4-5 3-5 4 1 1 1 1h8zm-7.978-1A.261.261 0 017 12.996c.001-.264.167-1.03.76-1.72C8.312 10.629 9.282 10 11 10c1.717 0 2.687.63 3.24 1.276.593.69.758 1.457.76 1.72l-.008.002a.274.274 0 01-.014.002H7.022zM11 7a2 2 0 100-4 2 2 0 000 4zm3-2a3 3 0 11-6 0 3 3 0 016 0zM6.936 9.28a5.88 5.88 0 00-1.23-.247A7.35 7.35 0 005 9c-4 0-5 3-5 4 0 .667.333 1 1 1h4.216A2.238 2.238 0 015 13c0-1.01.377-2.042 1.09-2.904.243-.294.526-.569.846-.816zM4.92 10A5.493 5.493 0 004 13H1c0-.26.164-1.03.76-1.724.545-.636 1.492-1.256 3.16-1.275zM1.5 5.5a3 3 0 116 0 3 3 0 01-6 0zm3-2a2 2 0 100 4 2 2 0 000-4z"/></symbol><symbol fill="currentColor" class="bi bi-people-fill" viewBox="0 0 16 16" id="people-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1H7zm4-6a3 3 0 100-6 3 3 0 000 6z"/><path fill-rule="evenodd" d="M5.216 14A2.238 2.238 0 015 13c0-1.355.68-2.75 1.936-3.72A6.325 6.325 0 005 9c-4 0-5 3-5 4s1 1 1 1h4.216z"/><path d="M4.5 8a2.5 2.5 0 100-5 2.5 2.5 0 000 5z"/></symbol><symbol fill="currentColor" class="bi bi-percent" viewBox="0 0 16 16" id="percent" xmlns="http://www.w3.org/2000/svg"><path d="M13.442 2.558a.625.625 0 010 .884l-10 10a.625.625 0 11-.884-.884l10-10a.625.625 0 01.884 0zM4.5 6a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm0 1a2.5 2.5 0 100-5 2.5 2.5 0 000 5zm7 6a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm0 1a2.5 2.5 0 100-5 2.5 2.5 0 000 5z"/></symbol><symbol fill="currentColor" class="bi bi-person" viewBox="0 0 16 16" id="person" xmlns="http://www.w3.org/2000/svg"><path d="M8 8a3 3 0 100-6 3 3 0 000 6zm2-3a2 2 0 11-4 0 2 2 0 014 0zm4 8c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4zm-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10z"/></symbol><symbol fill="currentColor" class="bi bi-person-badge" viewBox="0 0 16 16" id="person-badge" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 2a.5.5 0 000 1h3a.5.5 0 000-1h-3zM11 8a3 3 0 11-6 0 3 3 0 016 0z"/><path d="M4.5 0A2.5 2.5 0 002 2.5V14a2 2 0 002 2h8a2 2 0 002-2V2.5A2.5 2.5 0 0011.5 0h-7zM3 2.5A1.5 1.5 0 014.5 1h7A1.5 1.5 0 0113 2.5v10.795a4.2 4.2 0 00-.776-.492C11.392 12.387 10.063 12 8 12s-3.392.387-4.224.803a4.2 4.2 0 00-.776.492V2.5z"/></symbol><symbol fill="currentColor" class="bi bi-person-badge-fill" viewBox="0 0 16 16" id="person-badge-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm4.5 0a.5.5 0 000 1h3a.5.5 0 000-1h-3zM8 11a3 3 0 100-6 3 3 0 000 6zm5 2.755C12.146 12.825 10.623 12 8 12s-4.146.826-5 1.755V14a1 1 0 001 1h8a1 1 0 001-1v-.245z"/></symbol><symbol fill="currentColor" class="bi bi-person-bounding-box" viewBox="0 0 16 16" id="person-bounding-box" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 1a.5.5 0 00-.5.5v3a.5.5 0 01-1 0v-3A1.5 1.5 0 011.5 0h3a.5.5 0 010 1h-3zM11 .5a.5.5 0 01.5-.5h3A1.5 1.5 0 0116 1.5v3a.5.5 0 01-1 0v-3a.5.5 0 00-.5-.5h-3a.5.5 0 01-.5-.5zM.5 11a.5.5 0 01.5.5v3a.5.5 0 00.5.5h3a.5.5 0 010 1h-3A1.5 1.5 0 010 14.5v-3a.5.5 0 01.5-.5zm15 0a.5.5 0 01.5.5v3a1.5 1.5 0 01-1.5 1.5h-3a.5.5 0 010-1h3a.5.5 0 00.5-.5v-3a.5.5 0 01.5-.5z"/><path d="M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H3zm8-9a3 3 0 11-6 0 3 3 0 016 0z"/></symbol><symbol fill="currentColor" class="bi bi-person-check" viewBox="0 0 16 16" id="person-check" xmlns="http://www.w3.org/2000/svg"><path d="M6 8a3 3 0 100-6 3 3 0 000 6zm2-3a2 2 0 11-4 0 2 2 0 014 0zm4 8c0 1-1 1-1 1H1s-1 0-1-1 1-4 6-4 6 3 6 4zm-1-.004c-.001-.246-.154-.986-.832-1.664C9.516 10.68 8.289 10 6 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10z"/><path fill-rule="evenodd" d="M15.854 5.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 01.708-.708L12.5 7.793l2.646-2.647a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-person-check-fill" viewBox="0 0 16 16" id="person-check-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15.854 5.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 01.708-.708L12.5 7.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 100-6 3 3 0 000 6z"/></symbol><symbol fill="currentColor" class="bi bi-person-circle" viewBox="0 0 16 16" id="person-circle" xmlns="http://www.w3.org/2000/svg"><path d="M11 6a3 3 0 11-6 0 3 3 0 016 0z"/><path fill-rule="evenodd" d="M0 8a8 8 0 1116 0A8 8 0 010 8zm8-7a7 7 0 00-5.468 11.37C3.242 11.226 4.805 10 8 10s4.757 1.225 5.468 2.37A7 7 0 008 1z"/></symbol><symbol fill="currentColor" class="bi bi-person-dash" viewBox="0 0 16 16" id="person-dash" xmlns="http://www.w3.org/2000/svg"><path d="M6 8a3 3 0 100-6 3 3 0 000 6zm2-3a2 2 0 11-4 0 2 2 0 014 0zm4 8c0 1-1 1-1 1H1s-1 0-1-1 1-4 6-4 6 3 6 4zm-1-.004c-.001-.246-.154-.986-.832-1.664C9.516 10.68 8.289 10 6 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10z"/><path fill-rule="evenodd" d="M11 7.5a.5.5 0 01.5-.5h4a.5.5 0 010 1h-4a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-person-dash-fill" viewBox="0 0 16 16" id="person-dash-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11 7.5a.5.5 0 01.5-.5h4a.5.5 0 010 1h-4a.5.5 0 01-.5-.5z"/><path d="M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 100-6 3 3 0 000 6z"/></symbol><symbol fill="currentColor" class="bi bi-person-fill" viewBox="0 0 16 16" id="person-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H3zm5-6a3 3 0 100-6 3 3 0 000 6z"/></symbol><symbol fill="currentColor" class="bi bi-person-lines-fill" viewBox="0 0 16 16" id="person-lines-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 8a3 3 0 100-6 3 3 0 000 6zm-5 6s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zM11 3.5a.5.5 0 01.5-.5h4a.5.5 0 010 1h-4a.5.5 0 01-.5-.5zm.5 2.5a.5.5 0 000 1h4a.5.5 0 000-1h-4zm2 3a.5.5 0 000 1h2a.5.5 0 000-1h-2zm0 3a.5.5 0 000 1h2a.5.5 0 000-1h-2z"/></symbol><symbol fill="currentColor" class="bi bi-person-plus" viewBox="0 0 16 16" id="person-plus" xmlns="http://www.w3.org/2000/svg"><path d="M6 8a3 3 0 100-6 3 3 0 000 6zm2-3a2 2 0 11-4 0 2 2 0 014 0zm4 8c0 1-1 1-1 1H1s-1 0-1-1 1-4 6-4 6 3 6 4zm-1-.004c-.001-.246-.154-.986-.832-1.664C9.516 10.68 8.289 10 6 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10z"/><path fill-rule="evenodd" d="M13.5 5a.5.5 0 01.5.5V7h1.5a.5.5 0 010 1H14v1.5a.5.5 0 01-1 0V8h-1.5a.5.5 0 010-1H13V5.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-person-plus-fill" viewBox="0 0 16 16" id="person-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 100-6 3 3 0 000 6z"/><path fill-rule="evenodd" d="M13.5 5a.5.5 0 01.5.5V7h1.5a.5.5 0 010 1H14v1.5a.5.5 0 01-1 0V8h-1.5a.5.5 0 010-1H13V5.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-person-square" viewBox="0 0 16 16" id="person-square" xmlns="http://www.w3.org/2000/svg"><path d="M11 6a3 3 0 11-6 0 3 3 0 016 0z"/><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm12 1a1 1 0 011 1v12a1 1 0 01-1 1v-1c0-1-1-4-6-4s-6 3-6 4v1a1 1 0 01-1-1V2a1 1 0 011-1h12z"/></symbol><symbol fill="currentColor" class="bi bi-person-x" viewBox="0 0 16 16" id="person-x" xmlns="http://www.w3.org/2000/svg"><path d="M6 8a3 3 0 100-6 3 3 0 000 6zm2-3a2 2 0 11-4 0 2 2 0 014 0zm4 8c0 1-1 1-1 1H1s-1 0-1-1 1-4 6-4 6 3 6 4zm-1-.004c-.001-.246-.154-.986-.832-1.664C9.516 10.68 8.289 10 6 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10z"/><path fill-rule="evenodd" d="M12.146 5.146a.5.5 0 01.708 0L14 6.293l1.146-1.147a.5.5 0 01.708.708L14.707 7l1.147 1.146a.5.5 0 01-.708.708L14 7.707l-1.146 1.147a.5.5 0 01-.708-.708L13.293 7l-1.147-1.146a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-person-x-fill" viewBox="0 0 16 16" id="person-x-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 100-6 3 3 0 000 6zm6.146-2.854a.5.5 0 01.708 0L14 6.293l1.146-1.147a.5.5 0 01.708.708L14.707 7l1.147 1.146a.5.5 0 01-.708.708L14 7.707l-1.146 1.147a.5.5 0 01-.708-.708L13.293 7l-1.147-1.146a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-phone" viewBox="0 0 16 16" id="phone" xmlns="http://www.w3.org/2000/svg"><path d="M11 1a1 1 0 011 1v12a1 1 0 01-1 1H5a1 1 0 01-1-1V2a1 1 0 011-1h6zM5 0a2 2 0 00-2 2v12a2 2 0 002 2h6a2 2 0 002-2V2a2 2 0 00-2-2H5z"/><path d="M8 14a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-phone-fill" viewBox="0 0 16 16" id="phone-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 2a2 2 0 012-2h6a2 2 0 012 2v12a2 2 0 01-2 2H5a2 2 0 01-2-2V2zm6 11a1 1 0 10-2 0 1 1 0 002 0z"/></symbol><symbol fill="currentColor" class="bi bi-phone-landscape" viewBox="0 0 16 16" id="phone-landscape" xmlns="http://www.w3.org/2000/svg"><path d="M1 4.5a1 1 0 011-1h12a1 1 0 011 1v6a1 1 0 01-1 1H2a1 1 0 01-1-1v-6zm-1 6a2 2 0 002 2h12a2 2 0 002-2v-6a2 2 0 00-2-2H2a2 2 0 00-2 2v6z"/><path d="M14 7.5a1 1 0 10-2 0 1 1 0 002 0z"/></symbol><symbol fill="currentColor" class="bi bi-phone-landscape-fill" viewBox="0 0 16 16" id="phone-landscape-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 12.5a2 2 0 01-2-2v-6a2 2 0 012-2h12a2 2 0 012 2v6a2 2 0 01-2 2H2zm11-6a1 1 0 100 2 1 1 0 000-2z"/></symbol><symbol fill="currentColor" class="bi bi-phone-vibrate" viewBox="0 0 16 16" id="phone-vibrate" xmlns="http://www.w3.org/2000/svg"><path d="M10 3a1 1 0 011 1v8a1 1 0 01-1 1H6a1 1 0 01-1-1V4a1 1 0 011-1h4zM6 2a2 2 0 00-2 2v8a2 2 0 002 2h4a2 2 0 002-2V4a2 2 0 00-2-2H6z"/><path d="M8 12a1 1 0 100-2 1 1 0 000 2zM1.599 4.058a.5.5 0 01.208.676A6.967 6.967 0 001 8c0 1.18.292 2.292.807 3.266a.5.5 0 01-.884.468A7.968 7.968 0 010 8c0-1.347.334-2.619.923-3.734a.5.5 0 01.676-.208zm12.802 0a.5.5 0 01.676.208A7.967 7.967 0 0116 8a7.967 7.967 0 01-.923 3.734.5.5 0 01-.884-.468A6.967 6.967 0 0015 8c0-1.18-.292-2.292-.807-3.266a.5.5 0 01.208-.676zM3.057 5.534a.5.5 0 01.284.648A4.986 4.986 0 003 8c0 .642.12 1.255.34 1.818a.5.5 0 11-.93.364A5.986 5.986 0 012 8c0-.769.145-1.505.41-2.182a.5.5 0 01.647-.284zm9.886 0a.5.5 0 01.648.284C13.855 6.495 14 7.231 14 8c0 .769-.145 1.505-.41 2.182a.5.5 0 01-.93-.364C12.88 9.255 13 8.642 13 8c0-.642-.12-1.255-.34-1.818a.5.5 0 01.283-.648z"/></symbol><symbol fill="currentColor" class="bi bi-phone-vibrate-fill" viewBox="0 0 16 16" id="phone-vibrate-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 4a2 2 0 012-2h4a2 2 0 012 2v8a2 2 0 01-2 2H6a2 2 0 01-2-2V4zm5 7a1 1 0 10-2 0 1 1 0 002 0zM1.807 4.734a.5.5 0 10-.884-.468A7.967 7.967 0 000 8c0 1.347.334 2.618.923 3.734a.5.5 0 10.884-.468A6.967 6.967 0 011 8c0-1.18.292-2.292.807-3.266zm13.27-.468a.5.5 0 00-.884.468C14.708 5.708 15 6.819 15 8c0 1.18-.292 2.292-.807 3.266a.5.5 0 00.884.468A7.967 7.967 0 0016 8a7.967 7.967 0 00-.923-3.734zM3.34 6.182a.5.5 0 10-.93-.364A5.986 5.986 0 002 8c0 .769.145 1.505.41 2.182a.5.5 0 10.93-.364A4.986 4.986 0 013 8c0-.642.12-1.255.34-1.818zm10.25-.364a.5.5 0 00-.93.364c.22.563.34 1.176.34 1.818 0 .642-.12 1.255-.34 1.818a.5.5 0 00.93.364C13.856 9.505 14 8.769 14 8c0-.769-.145-1.505-.41-2.182z"/></symbol><symbol fill="currentColor" class="bi bi-pie-chart" viewBox="0 0 16 16" id="pie-chart" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 1.018a7 7 0 00-4.79 11.566L7.5 7.793V1.018zm1 0V7.5h6.482A7.001 7.001 0 008.5 1.018zM14.982 8.5H8.207l-4.79 4.79A7 7 0 0014.982 8.5zM0 8a8 8 0 1116 0A8 8 0 010 8z"/></symbol><symbol fill="currentColor" class="bi bi-pie-chart-fill" viewBox="0 0 16 16" id="pie-chart-fill" xmlns="http://www.w3.org/2000/svg"><path d="M15.985 8.5H8.207l-5.5 5.5a8 8 0 0013.277-5.5zM2 13.292A8 8 0 017.5.015v7.778l-5.5 5.5zM8.5.015V7.5h7.485A8.001 8.001 0 008.5.015z"/></symbol><symbol fill="currentColor" class="bi bi-piggy-bank" viewBox="0 0 16 16" id="piggy-bank" xmlns="http://www.w3.org/2000/svg"><path d="M5 6.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm1.138-1.496A6.613 6.613 0 017.964 4.5c.666 0 1.303.097 1.893.273a.5.5 0 00.286-.958A7.602 7.602 0 007.964 3.5c-.734 0-1.441.103-2.102.292a.5.5 0 10.276.962z"/><path fill-rule="evenodd" d="M7.964 1.527c-2.977 0-5.571 1.704-6.32 4.125h-.55A1 1 0 00.11 6.824l.254 1.46a1.5 1.5 0 001.478 1.243h.263c.3.513.688.978 1.145 1.382l-.729 2.477a.5.5 0 00.48.641h2a.5.5 0 00.471-.332l.482-1.351c.635.173 1.31.267 2.011.267.707 0 1.388-.095 2.028-.272l.543 1.372a.5.5 0 00.465.316h2a.5.5 0 00.478-.645l-.761-2.506C13.81 9.895 14.5 8.559 14.5 7.069c0-.145-.007-.29-.02-.431.261-.11.508-.266.705-.444.315.306.815.306.815-.417 0 .223-.5.223-.461-.026a.95.95 0 00.09-.255.7.7 0 00-.202-.645.58.58 0 00-.707-.098.735.735 0 00-.375.562c-.024.243.082.48.32.654a2.112 2.112 0 01-.259.153c-.534-2.664-3.284-4.595-6.442-4.595zM2.516 6.26c.455-2.066 2.667-3.733 5.448-3.733 3.146 0 5.536 2.114 5.536 4.542 0 1.254-.624 2.41-1.67 3.248a.5.5 0 00-.165.535l.66 2.175h-.985l-.59-1.487a.5.5 0 00-.629-.288c-.661.23-1.39.359-2.157.359a6.558 6.558 0 01-2.157-.359.5.5 0 00-.635.304l-.525 1.471h-.979l.633-2.15a.5.5 0 00-.17-.534 4.649 4.649 0 01-1.284-1.541.5.5 0 00-.446-.275h-.56a.5.5 0 01-.492-.414l-.254-1.46h.933a.5.5 0 00.488-.393zm12.621-.857a.565.565 0 01-.098.21.704.704 0 01-.044-.025c-.146-.09-.157-.175-.152-.223a.236.236 0 01.117-.173c.049-.027.08-.021.113.012a.202.202 0 01.064.199z"/></symbol><symbol fill="currentColor" class="bi bi-piggy-bank-fill" viewBox="0 0 16 16" id="piggy-bank-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.964 1.527c-2.977 0-5.571 1.704-6.32 4.125h-.55A1 1 0 00.11 6.824l.254 1.46a1.5 1.5 0 001.478 1.243h.263c.3.513.688.978 1.145 1.382l-.729 2.477a.5.5 0 00.48.641h2a.5.5 0 00.471-.332l.482-1.351c.635.173 1.31.267 2.011.267.707 0 1.388-.095 2.028-.272l.543 1.372a.5.5 0 00.465.316h2a.5.5 0 00.478-.645l-.761-2.506C13.81 9.895 14.5 8.559 14.5 7.069c0-.145-.007-.29-.02-.431.261-.11.508-.266.705-.444.315.306.815.306.815-.417 0 .223-.5.223-.461-.026a.95.95 0 00.09-.255.7.7 0 00-.202-.645.58.58 0 00-.707-.098.735.735 0 00-.375.562c-.024.243.082.48.32.654a2.112 2.112 0 01-.259.153c-.534-2.664-3.284-4.595-6.442-4.595zm7.173 3.876a.565.565 0 01-.098.21.704.704 0 01-.044-.025c-.146-.09-.157-.175-.152-.223a.236.236 0 01.117-.173c.049-.027.08-.021.113.012a.202.202 0 01.064.199zm-8.999-.65A6.613 6.613 0 017.964 4.5c.666 0 1.303.097 1.893.273a.5.5 0 10.286-.958A7.601 7.601 0 007.964 3.5c-.734 0-1.441.103-2.102.292a.5.5 0 10.276.962zM5 6.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0z"/></symbol><symbol fill="currentColor" class="bi bi-pin" viewBox="0 0 16 16" id="pin" xmlns="http://www.w3.org/2000/svg"><path d="M4.146.146A.5.5 0 014.5 0h7a.5.5 0 01.5.5c0 .68-.342 1.174-.646 1.479-.126.125-.25.224-.354.298v4.431l.078.048c.203.127.476.314.751.555C12.36 7.775 13 8.527 13 9.5a.5.5 0 01-.5.5h-4v4.5c0 .276-.224 1.5-.5 1.5s-.5-1.224-.5-1.5V10h-4a.5.5 0 01-.5-.5c0-.973.64-1.725 1.17-2.189A5.921 5.921 0 015 6.708V2.277a2.77 2.77 0 01-.354-.298C4.342 1.674 4 1.179 4 .5a.5.5 0 01.146-.354zm1.58 1.408l-.002-.001.002.001zm-.002-.001l.002.001A.5.5 0 016 2v5a.5.5 0 01-.276.447h-.002l-.012.007-.054.03a4.922 4.922 0 00-.827.58c-.318.278-.585.596-.725.936h7.792c-.14-.34-.407-.658-.725-.936a4.915 4.915 0 00-.881-.61l-.012-.006h-.002A.5.5 0 0110 7V2a.5.5 0 01.295-.458 1.775 1.775 0 00.351-.271c.08-.08.155-.17.214-.271H5.14c.06.1.133.191.214.271a1.78 1.78 0 00.37.282z"/></symbol><symbol fill="currentColor" class="bi bi-pin-angle" viewBox="0 0 16 16" id="pin-angle" xmlns="http://www.w3.org/2000/svg"><path d="M9.828.722a.5.5 0 01.354.146l4.95 4.95a.5.5 0 010 .707c-.48.48-1.072.588-1.503.588-.177 0-.335-.018-.46-.039l-3.134 3.134a5.927 5.927 0 01.16 1.013c.046.702-.032 1.687-.72 2.375a.5.5 0 01-.707 0l-2.829-2.828-3.182 3.182c-.195.195-1.219.902-1.414.707-.195-.195.512-1.22.707-1.414l3.182-3.182-2.828-2.829a.5.5 0 010-.707c.688-.688 1.673-.767 2.375-.72a5.922 5.922 0 011.013.16l3.134-3.133a2.772 2.772 0 01-.04-.461c0-.43.108-1.022.589-1.503a.5.5 0 01.353-.146zm.122 2.112v-.002.002zm0-.002v.002a.5.5 0 01-.122.51L6.293 6.878a.5.5 0 01-.511.12H5.78l-.014-.004a4.507 4.507 0 00-.288-.076 4.922 4.922 0 00-.765-.116c-.422-.028-.836.008-1.175.15l5.51 5.509c.141-.34.177-.753.149-1.175a4.924 4.924 0 00-.192-1.054l-.004-.013v-.001a.5.5 0 01.12-.512l3.536-3.535a.5.5 0 01.532-.115l.096.022c.087.017.208.034.344.034.114 0 .23-.011.343-.04L9.927 2.028c-.029.113-.04.23-.04.343a1.779 1.779 0 00.062.46z"/></symbol><symbol fill="currentColor" class="bi bi-pin-angle-fill" viewBox="0 0 16 16" id="pin-angle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.828.722a.5.5 0 01.354.146l4.95 4.95a.5.5 0 010 .707c-.48.48-1.072.588-1.503.588-.177 0-.335-.018-.46-.039l-3.134 3.134a5.927 5.927 0 01.16 1.013c.046.702-.032 1.687-.72 2.375a.5.5 0 01-.707 0l-2.829-2.828-3.182 3.182c-.195.195-1.219.902-1.414.707-.195-.195.512-1.22.707-1.414l3.182-3.182-2.828-2.829a.5.5 0 010-.707c.688-.688 1.673-.767 2.375-.72a5.922 5.922 0 011.013.16l3.134-3.133a2.772 2.772 0 01-.04-.461c0-.43.108-1.022.589-1.503a.5.5 0 01.353-.146z"/></symbol><symbol fill="currentColor" class="bi bi-pin-fill" viewBox="0 0 16 16" id="pin-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.146.146A.5.5 0 014.5 0h7a.5.5 0 01.5.5c0 .68-.342 1.174-.646 1.479-.126.125-.25.224-.354.298v4.431l.078.048c.203.127.476.314.751.555C12.36 7.775 13 8.527 13 9.5a.5.5 0 01-.5.5h-4v4.5c0 .276-.224 1.5-.5 1.5s-.5-1.224-.5-1.5V10h-4a.5.5 0 01-.5-.5c0-.973.64-1.725 1.17-2.189A5.921 5.921 0 015 6.708V2.277a2.77 2.77 0 01-.354-.298C4.342 1.674 4 1.179 4 .5a.5.5 0 01.146-.354z"/></symbol><symbol fill="currentColor" class="bi bi-pin-map" viewBox="0 0 16 16" id="pin-map" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.1 11.2a.5.5 0 01.4-.2H6a.5.5 0 010 1H3.75L1.5 15h13l-2.25-3H10a.5.5 0 010-1h2.5a.5.5 0 01.4.2l3 4a.5.5 0 01-.4.8H.5a.5.5 0 01-.4-.8l3-4z"/><path fill-rule="evenodd" d="M8 1a3 3 0 100 6 3 3 0 000-6zM4 4a4 4 0 114.5 3.969V13.5a.5.5 0 01-1 0V7.97A4 4 0 014 3.999z"/></symbol><symbol fill="currentColor" class="bi bi-pin-map-fill" viewBox="0 0 16 16" id="pin-map-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.1 11.2a.5.5 0 01.4-.2H6a.5.5 0 010 1H3.75L1.5 15h13l-2.25-3H10a.5.5 0 010-1h2.5a.5.5 0 01.4.2l3 4a.5.5 0 01-.4.8H.5a.5.5 0 01-.4-.8l3-4z"/><path fill-rule="evenodd" d="M4 4a4 4 0 114.5 3.969V13.5a.5.5 0 01-1 0V7.97A4 4 0 014 3.999z"/></symbol><symbol fill="currentColor" class="bi bi-pip" viewBox="0 0 16 16" id="pip" xmlns="http://www.w3.org/2000/svg"><path d="M0 3.5A1.5 1.5 0 011.5 2h13A1.5 1.5 0 0116 3.5v9a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 12.5v-9zM1.5 3a.5.5 0 00-.5.5v9a.5.5 0 00.5.5h13a.5.5 0 00.5-.5v-9a.5.5 0 00-.5-.5h-13z"/><path d="M8 8.5a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v3a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-3z"/></symbol><symbol fill="currentColor" class="bi bi-pip-fill" viewBox="0 0 16 16" id="pip-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 2A1.5 1.5 0 000 3.5v9A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 2h-13zm7 6h5a.5.5 0 01.5.5v3a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-3a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-play" viewBox="0 0 16 16" id="play" xmlns="http://www.w3.org/2000/svg"><path d="M10.804 8L5 4.633v6.734L10.804 8zm.792-.696a.802.802 0 010 1.392l-6.363 3.692C4.713 12.69 4 12.345 4 11.692V4.308c0-.653.713-.998 1.233-.696l6.363 3.692z"/></symbol><symbol fill="currentColor" class="bi bi-play-btn" viewBox="0 0 16 16" id="play-btn" xmlns="http://www.w3.org/2000/svg"><path d="M6.79 5.093A.5.5 0 006 5.5v5a.5.5 0 00.79.407l3.5-2.5a.5.5 0 000-.814l-3.5-2.5z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-play-btn-fill" viewBox="0 0 16 16" id="play-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm6.79-6.907A.5.5 0 006 5.5v5a.5.5 0 00.79.407l3.5-2.5a.5.5 0 000-.814l-3.5-2.5z"/></symbol><symbol fill="currentColor" class="bi bi-play-circle" viewBox="0 0 16 16" id="play-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M6.271 5.055a.5.5 0 01.52.038l3.5 2.5a.5.5 0 010 .814l-3.5 2.5A.5.5 0 016 10.5v-5a.5.5 0 01.271-.445z"/></symbol><symbol fill="currentColor" class="bi bi-play-circle-fill" viewBox="0 0 16 16" id="play-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM6.79 5.093A.5.5 0 006 5.5v5a.5.5 0 00.79.407l3.5-2.5a.5.5 0 000-.814l-3.5-2.5z"/></symbol><symbol fill="currentColor" class="bi bi-play-fill" viewBox="0 0 16 16" id="play-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.596 8.697l-6.363 3.692c-.54.313-1.233-.066-1.233-.697V4.308c0-.63.692-1.01 1.233-.696l6.363 3.692a.802.802 0 010 1.393z"/></symbol><symbol fill="currentColor" class="bi bi-plug" viewBox="0 0 16 16" id="plug" xmlns="http://www.w3.org/2000/svg"><path d="M6 0a.5.5 0 01.5.5V3h3V.5a.5.5 0 011 0V3h1a.5.5 0 01.5.5v3A3.5 3.5 0 018.5 10c-.002.434-.01.845-.04 1.22-.041.514-.126 1.003-.317 1.424a2.083 2.083 0 01-.97 1.028C6.725 13.9 6.169 14 5.5 14c-.998 0-1.61.33-1.974.718A1.922 1.922 0 003 16H2c0-.616.232-1.367.797-1.968C3.374 13.42 4.261 13 5.5 13c.581 0 .962-.088 1.218-.219.241-.123.4-.3.514-.55.121-.266.193-.621.23-1.09.027-.34.035-.718.037-1.141A3.5 3.5 0 014 6.5v-3a.5.5 0 01.5-.5h1V.5A.5.5 0 016 0zM5 4v2.5A2.5 2.5 0 007.5 9h1A2.5 2.5 0 0011 6.5V4H5z"/></symbol><symbol fill="currentColor" class="bi bi-plug-fill" viewBox="0 0 16 16" id="plug-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 0a.5.5 0 01.5.5V3h3V.5a.5.5 0 011 0V3h1a.5.5 0 01.5.5v3A3.5 3.5 0 018.5 10c-.002.434-.01.845-.04 1.22-.041.514-.126 1.003-.317 1.424a2.083 2.083 0 01-.97 1.028C6.725 13.9 6.169 14 5.5 14c-.998 0-1.61.33-1.974.718A1.922 1.922 0 003 16H2c0-.616.232-1.367.797-1.968C3.374 13.42 4.261 13 5.5 13c.581 0 .962-.088 1.218-.219.241-.123.4-.3.514-.55.121-.266.193-.621.23-1.09.027-.34.035-.718.037-1.141A3.5 3.5 0 014 6.5v-3a.5.5 0 01.5-.5h1V.5A.5.5 0 016 0z"/></symbol><symbol fill="currentColor" class="bi bi-plus" viewBox="0 0 16 16" id="plus" xmlns="http://www.w3.org/2000/svg"><path d="M8 4a.5.5 0 01.5.5v3h3a.5.5 0 010 1h-3v3a.5.5 0 01-1 0v-3h-3a.5.5 0 010-1h3v-3A.5.5 0 018 4z"/></symbol><symbol fill="currentColor" class="bi bi-plus-circle" viewBox="0 0 16 16" id="plus-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M8 4a.5.5 0 01.5.5v3h3a.5.5 0 010 1h-3v3a.5.5 0 01-1 0v-3h-3a.5.5 0 010-1h3v-3A.5.5 0 018 4z"/></symbol><symbol fill="currentColor" class="bi bi-plus-circle-dotted" viewBox="0 0 16 16" id="plus-circle-dotted" xmlns="http://www.w3.org/2000/svg"><path d="M8 0c-.176 0-.35.006-.523.017l.064.998a7.117 7.117 0 01.918 0l.064-.998A8.113 8.113 0 008 0zM6.44.152c-.346.069-.684.16-1.012.27l.321.948c.287-.098.582-.177.884-.237L6.44.153zm4.132.271a7.946 7.946 0 00-1.011-.27l-.194.98c.302.06.597.14.884.237l.321-.947zm1.873.925a8 8 0 00-.906-.524l-.443.896c.275.136.54.29.793.459l.556-.831zM4.46.824c-.314.155-.616.33-.905.524l.556.83a7.07 7.07 0 01.793-.458L4.46.824zM2.725 1.985c-.262.23-.51.478-.74.74l.752.66c.202-.23.418-.446.648-.648l-.66-.752zm11.29.74a8.058 8.058 0 00-.74-.74l-.66.752c.23.202.447.418.648.648l.752-.66zm1.161 1.735a7.98 7.98 0 00-.524-.905l-.83.556c.169.253.322.518.458.793l.896-.443zM1.348 3.555c-.194.289-.37.591-.524.906l.896.443c.136-.275.29-.54.459-.793l-.831-.556zM.423 5.428a7.945 7.945 0 00-.27 1.011l.98.194c.06-.302.14-.597.237-.884l-.947-.321zM15.848 6.44a7.943 7.943 0 00-.27-1.012l-.948.321c.098.287.177.582.237.884l.98-.194zM.017 7.477a8.113 8.113 0 000 1.046l.998-.064a7.117 7.117 0 010-.918l-.998-.064zM16 8a8.1 8.1 0 00-.017-.523l-.998.064a7.11 7.11 0 010 .918l.998.064A8.1 8.1 0 0016 8zM.152 9.56c.069.346.16.684.27 1.012l.948-.321a6.944 6.944 0 01-.237-.884l-.98.194zm15.425 1.012c.112-.328.202-.666.27-1.011l-.98-.194c-.06.302-.14.597-.237.884l.947.321zM.824 11.54a8 8 0 00.524.905l.83-.556a6.999 6.999 0 01-.458-.793l-.896.443zm13.828.905c.194-.289.37-.591.524-.906l-.896-.443c-.136.275-.29.54-.459.793l.831.556zm-12.667.83c.23.262.478.51.74.74l.66-.752a7.047 7.047 0 01-.648-.648l-.752.66zm11.29.74c.262-.23.51-.478.74-.74l-.752-.66c-.201.23-.418.447-.648.648l.66.752zm-1.735 1.161c.314-.155.616-.33.905-.524l-.556-.83a7.07 7.07 0 01-.793.458l.443.896zm-7.985-.524c.289.194.591.37.906.524l.443-.896a6.998 6.998 0 01-.793-.459l-.556.831zm1.873.925c.328.112.666.202 1.011.27l.194-.98a6.953 6.953 0 01-.884-.237l-.321.947zm4.132.271a7.944 7.944 0 001.012-.27l-.321-.948a6.954 6.954 0 01-.884.237l.194.98zm-2.083.135a8.1 8.1 0 001.046 0l-.064-.998a7.11 7.11 0 01-.918 0l-.064.998zM8.5 4.5a.5.5 0 00-1 0v3h-3a.5.5 0 000 1h3v3a.5.5 0 001 0v-3h3a.5.5 0 000-1h-3v-3z"/></symbol><symbol fill="currentColor" class="bi bi-plus-circle-fill" viewBox="0 0 16 16" id="plus-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM8.5 4.5a.5.5 0 00-1 0v3h-3a.5.5 0 000 1h3v3a.5.5 0 001 0v-3h3a.5.5 0 000-1h-3v-3z"/></symbol><symbol fill="currentColor" class="bi bi-plus-lg" viewBox="0 0 16 16" id="plus-lg" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a1 1 0 011 1v6h6a1 1 0 110 2H9v6a1 1 0 11-2 0V9H1a1 1 0 010-2h6V1a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-plus-square" viewBox="0 0 16 16" id="plus-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M8 4a.5.5 0 01.5.5v3h3a.5.5 0 010 1h-3v3a.5.5 0 01-1 0v-3h-3a.5.5 0 010-1h3v-3A.5.5 0 018 4z"/></symbol><symbol fill="currentColor" class="bi bi-plus-square-dotted" viewBox="0 0 16 16" id="plus-square-dotted" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 0c-.166 0-.33.016-.487.048l.194.98A1.51 1.51 0 012.5 1h.458V0H2.5zm2.292 0h-.917v1h.917V0zm1.833 0h-.917v1h.917V0zm1.833 0h-.916v1h.916V0zm1.834 0h-.917v1h.917V0zm1.833 0h-.917v1h.917V0zM13.5 0h-.458v1h.458c.1 0 .199.01.293.029l.194-.981A2.51 2.51 0 0013.5 0zm2.079 1.11a2.511 2.511 0 00-.69-.689l-.556.831c.164.11.305.251.415.415l.83-.556zM1.11.421a2.511 2.511 0 00-.689.69l.831.556c.11-.164.251-.305.415-.415L1.11.422zM16 2.5c0-.166-.016-.33-.048-.487l-.98.194c.018.094.028.192.028.293v.458h1V2.5zM.048 2.013A2.51 2.51 0 000 2.5v.458h1V2.5c0-.1.01-.199.029-.293l-.981-.194zM0 3.875v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zM0 5.708v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zM0 7.542v.916h1v-.916H0zm15 .916h1v-.916h-1v.916zM0 9.375v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zm-16 .916v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zm-16 .917v.458c0 .166.016.33.048.487l.98-.194A1.51 1.51 0 011 13.5v-.458H0zm16 .458v-.458h-1v.458c0 .1-.01.199-.029.293l.981.194c.032-.158.048-.32.048-.487zM.421 14.89c.183.272.417.506.69.689l.556-.831a1.51 1.51 0 01-.415-.415l-.83.556zm14.469.689c.272-.183.506-.417.689-.69l-.831-.556c-.11.164-.251.305-.415.415l.556.83zm-12.877.373c.158.032.32.048.487.048h.458v-1H2.5c-.1 0-.199-.01-.293-.029l-.194.981zM13.5 16c.166 0 .33-.016.487-.048l-.194-.98A1.51 1.51 0 0113.5 15h-.458v1h.458zm-9.625 0h.917v-1h-.917v1zm1.833 0h.917v-1h-.917v1zm1.834-1v1h.916v-1h-.916zm1.833 1h.917v-1h-.917v1zm1.833 0h.917v-1h-.917v1zM8.5 4.5a.5.5 0 00-1 0v3h-3a.5.5 0 000 1h3v3a.5.5 0 001 0v-3h3a.5.5 0 000-1h-3v-3z"/></symbol><symbol fill="currentColor" class="bi bi-plus-square-fill" viewBox="0 0 16 16" id="plus-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm6.5 4.5v3h3a.5.5 0 010 1h-3v3a.5.5 0 01-1 0v-3h-3a.5.5 0 010-1h3v-3a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-power" viewBox="0 0 16 16" id="power" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 1v7h1V1h-1z"/><path d="M3 8.812a4.999 4.999 0 012.578-4.375l-.485-.874A6 6 0 1011 3.616l-.501.865A5 5 0 113 8.812z"/></symbol><symbol fill="currentColor" class="bi bi-printer" viewBox="0 0 16 16" id="printer" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 8a.5.5 0 100-1 .5.5 0 000 1z"/><path d="M5 1a2 2 0 00-2 2v2H2a2 2 0 00-2 2v3a2 2 0 002 2h1v1a2 2 0 002 2h6a2 2 0 002-2v-1h1a2 2 0 002-2V7a2 2 0 00-2-2h-1V3a2 2 0 00-2-2H5zM4 3a1 1 0 011-1h6a1 1 0 011 1v2H4V3zm1 5a2 2 0 00-2 2v1H2a1 1 0 01-1-1V7a1 1 0 011-1h12a1 1 0 011 1v3a1 1 0 01-1 1h-1v-1a2 2 0 00-2-2H5zm7 2v3a1 1 0 01-1 1H5a1 1 0 01-1-1v-3a1 1 0 011-1h6a1 1 0 011 1z"/></symbol><symbol fill="currentColor" class="bi bi-printer-fill" viewBox="0 0 16 16" id="printer-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5 1a2 2 0 00-2 2v1h10V3a2 2 0 00-2-2H5zm6 8H5a1 1 0 00-1 1v3a1 1 0 001 1h6a1 1 0 001-1v-3a1 1 0 00-1-1z"/><path d="M0 7a2 2 0 012-2h12a2 2 0 012 2v3a2 2 0 01-2 2h-1v-2a2 2 0 00-2-2H5a2 2 0 00-2 2v2H2a2 2 0 01-2-2V7zm2.5 1a.5.5 0 100-1 .5.5 0 000 1z"/></symbol><symbol fill="currentColor" class="bi bi-puzzle" viewBox="0 0 16 16" id="puzzle" xmlns="http://www.w3.org/2000/svg"><path d="M3.112 3.645A1.5 1.5 0 014.605 2H7a.5.5 0 01.5.5v.382c0 .696-.497 1.182-.872 1.469a.459.459 0 00-.115.118.113.113 0 00-.012.025L6.5 4.5v.003l.003.01c.004.01.014.028.036.053a.86.86 0 00.27.194C7.09 4.9 7.51 5 8 5c.492 0 .912-.1 1.19-.24a.86.86 0 00.271-.194.213.213 0 00.039-.063v-.009a.112.112 0 00-.012-.025.459.459 0 00-.115-.118c-.375-.287-.872-.773-.872-1.469V2.5A.5.5 0 019 2h2.395a1.5 1.5 0 011.493 1.645L12.645 6.5h.237c.195 0 .42-.147.675-.48.21-.274.528-.52.943-.52.568 0 .947.447 1.154.862C15.877 6.807 16 7.387 16 8s-.123 1.193-.346 1.638c-.207.415-.586.862-1.154.862-.415 0-.733-.246-.943-.52-.255-.333-.48-.48-.675-.48h-.237l.243 2.855A1.5 1.5 0 0111.395 14H9a.5.5 0 01-.5-.5v-.382c0-.696.497-1.182.872-1.469a.459.459 0 00.115-.118.113.113 0 00.012-.025L9.5 11.5v-.003a.214.214 0 00-.039-.064.859.859 0 00-.27-.193C8.91 11.1 8.49 11 8 11c-.491 0-.912.1-1.19.24a.859.859 0 00-.271.194.214.214 0 00-.039.063v.003l.001.006a.113.113 0 00.012.025c.016.027.05.068.115.118.375.287.872.773.872 1.469v.382a.5.5 0 01-.5.5H4.605a1.5 1.5 0 01-1.493-1.645L3.356 9.5h-.238c-.195 0-.42.147-.675.48-.21.274-.528.52-.943.52-.568 0-.947-.447-1.154-.862C.123 9.193 0 8.613 0 8s.123-1.193.346-1.638C.553 5.947.932 5.5 1.5 5.5c.415 0 .733.246.943.52.255.333.48.48.675.48h.238l-.244-2.855zM4.605 3a.5.5 0 00-.498.55l.001.007.29 3.4A.5.5 0 013.9 7.5h-.782c-.696 0-1.182-.497-1.469-.872a.459.459 0 00-.118-.115.112.112 0 00-.025-.012L1.5 6.5h-.003a.213.213 0 00-.064.039.86.86 0 00-.193.27C1.1 7.09 1 7.51 1 8c0 .491.1.912.24 1.19.07.14.14.225.194.271a.213.213 0 00.063.039H1.5l.006-.001a.112.112 0 00.025-.012.459.459 0 00.118-.115c.287-.375.773-.872 1.469-.872H3.9a.5.5 0 01.498.542l-.29 3.408a.5.5 0 00.497.55h1.878c-.048-.166-.195-.352-.463-.557-.274-.21-.52-.528-.52-.943 0-.568.447-.947.862-1.154C6.807 10.123 7.387 10 8 10s1.193.123 1.638.346c.415.207.862.586.862 1.154 0 .415-.246.733-.52.943-.268.205-.415.39-.463.557h1.878a.5.5 0 00.498-.55l-.001-.007-.29-3.4A.5.5 0 0112.1 8.5h.782c.696 0 1.182.497 1.469.872.05.065.091.099.118.115.013.008.021.01.025.012a.02.02 0 00.006.001h.003a.214.214 0 00.064-.039.86.86 0 00.193-.27c.14-.28.24-.7.24-1.191 0-.492-.1-.912-.24-1.19a.86.86 0 00-.194-.271.215.215 0 00-.063-.039H14.5l-.006.001a.113.113 0 00-.025.012.459.459 0 00-.118.115c-.287.375-.773.872-1.469.872H12.1a.5.5 0 01-.498-.543l.29-3.407a.5.5 0 00-.497-.55H9.517c.048.166.195.352.463.557.274.21.52.528.52.943 0 .568-.447.947-.862 1.154C9.193 5.877 8.613 6 8 6s-1.193-.123-1.638-.346C5.947 5.447 5.5 5.068 5.5 4.5c0-.415.246-.733.52-.943.268-.205.415-.39.463-.557H4.605z"/></symbol><symbol fill="currentColor" class="bi bi-puzzle-fill" viewBox="0 0 16 16" id="puzzle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.112 3.645A1.5 1.5 0 014.605 2H7a.5.5 0 01.5.5v.382c0 .696-.497 1.182-.872 1.469a.459.459 0 00-.115.118.113.113 0 00-.012.025L6.5 4.5v.003l.003.01c.004.01.014.028.036.053a.86.86 0 00.27.194C7.09 4.9 7.51 5 8 5c.492 0 .912-.1 1.19-.24a.86.86 0 00.271-.194.213.213 0 00.036-.054l.003-.01v-.008a.112.112 0 00-.012-.025.459.459 0 00-.115-.118c-.375-.287-.872-.773-.872-1.469V2.5A.5.5 0 019 2h2.395a1.5 1.5 0 011.493 1.645L12.645 6.5h.237c.195 0 .42-.147.675-.48.21-.274.528-.52.943-.52.568 0 .947.447 1.154.862C15.877 6.807 16 7.387 16 8s-.123 1.193-.346 1.638c-.207.415-.586.862-1.154.862-.415 0-.733-.246-.943-.52-.255-.333-.48-.48-.675-.48h-.237l.243 2.855A1.5 1.5 0 0111.395 14H9a.5.5 0 01-.5-.5v-.382c0-.696.497-1.182.872-1.469a.459.459 0 00.115-.118.113.113 0 00.012-.025L9.5 11.5v-.003l-.003-.01a.214.214 0 00-.036-.053.859.859 0 00-.27-.194C8.91 11.1 8.49 11 8 11c-.491 0-.912.1-1.19.24a.859.859 0 00-.271.194.214.214 0 00-.036.054l-.003.01v.002l.001.006a.113.113 0 00.012.025c.016.027.05.068.115.118.375.287.872.773.872 1.469v.382a.5.5 0 01-.5.5H4.605a1.5 1.5 0 01-1.493-1.645L3.356 9.5h-.238c-.195 0-.42.147-.675.48-.21.274-.528.52-.943.52-.568 0-.947-.447-1.154-.862C.123 9.193 0 8.613 0 8s.123-1.193.346-1.638C.553 5.947.932 5.5 1.5 5.5c.415 0 .733.246.943.52.255.333.48.48.675.48h.238l-.244-2.855z"/></symbol><symbol fill="currentColor" class="bi bi-question" viewBox="0 0 16 16" id="question" xmlns="http://www.w3.org/2000/svg"><path d="M5.255 5.786a.237.237 0 00.241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 00.25.246h.811a.25.25 0 00.25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z"/></symbol><symbol fill="currentColor" class="bi bi-question-circle" viewBox="0 0 16 16" id="question-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M5.255 5.786a.237.237 0 00.241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 00.25.246h.811a.25.25 0 00.25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z"/></symbol><symbol fill="currentColor" class="bi bi-question-circle-fill" viewBox="0 0 16 16" id="question-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM5.496 6.033h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 00.25.246h.811a.25.25 0 00.25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286a.237.237 0 00.241.247zm2.325 6.443c.61 0 1.029-.394 1.029-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94 0 .533.425.927 1.01.927z"/></symbol><symbol fill="currentColor" class="bi bi-question-diamond" viewBox="0 0 16 16" id="question-diamond" xmlns="http://www.w3.org/2000/svg"><path d="M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.482 1.482 0 010-2.098L6.95.435zm1.4.7a.495.495 0 00-.7 0L1.134 7.65a.495.495 0 000 .7l6.516 6.516a.495.495 0 00.7 0l6.516-6.516a.495.495 0 000-.7L8.35 1.134z"/><path d="M5.255 5.786a.237.237 0 00.241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 00.25.246h.811a.25.25 0 00.25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z"/></symbol><symbol fill="currentColor" class="bi bi-question-diamond-fill" viewBox="0 0 16 16" id="question-diamond-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098L9.05.435zM5.495 6.033a.237.237 0 01-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 01-.25.25h-.81a.25.25 0 01-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25h-.825zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927z"/></symbol><symbol fill="currentColor" class="bi bi-question-lg" viewBox="0 0 16 16" id="question-lg" xmlns="http://www.w3.org/2000/svg"><path d="M3 4.075a.423.423 0 00.43.44H4.9c.247 0 .442-.2.475-.445.159-1.17.962-2.022 2.393-2.022 1.222 0 2.342.611 2.342 2.082 0 1.132-.668 1.652-1.72 2.444-1.2.872-2.15 1.89-2.082 3.542l.005.386c.003.244.202.44.446.44h1.445c.247 0 .446-.2.446-.446v-.188c0-1.278.487-1.652 1.8-2.647 1.086-.826 2.217-1.743 2.217-3.667C12.667 1.301 10.393 0 7.903 0 5.645 0 3.17 1.053 3.001 4.075zm2.776 10.273c0 .95.758 1.652 1.8 1.652 1.085 0 1.832-.702 1.832-1.652 0-.985-.747-1.675-1.833-1.675-1.04 0-1.799.69-1.799 1.675z"/></symbol><symbol fill="currentColor" class="bi bi-question-octagon" viewBox="0 0 16 16" id="question-octagon" xmlns="http://www.w3.org/2000/svg"><path d="M4.54.146A.5.5 0 014.893 0h6.214a.5.5 0 01.353.146l4.394 4.394a.5.5 0 01.146.353v6.214a.5.5 0 01-.146.353l-4.394 4.394a.5.5 0 01-.353.146H4.893a.5.5 0 01-.353-.146L.146 11.46A.5.5 0 010 11.107V4.893a.5.5 0 01.146-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z"/><path d="M5.255 5.786a.237.237 0 00.241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 00.25.246h.811a.25.25 0 00.25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z"/></symbol><symbol fill="currentColor" class="bi bi-question-octagon-fill" viewBox="0 0 16 16" id="question-octagon-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.46.146A.5.5 0 0011.107 0H4.893a.5.5 0 00-.353.146L.146 4.54A.5.5 0 000 4.893v6.214a.5.5 0 00.146.353l4.394 4.394a.5.5 0 00.353.146h6.214a.5.5 0 00.353-.146l4.394-4.394a.5.5 0 00.146-.353V4.893a.5.5 0 00-.146-.353L11.46.146zM5.496 6.033a.237.237 0 01-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 01-.25.25h-.81a.25.25 0 01-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25h-.825zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927z"/></symbol><symbol fill="currentColor" class="bi bi-question-square" viewBox="0 0 16 16" id="question-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M5.255 5.786a.237.237 0 00.241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 00.25.246h.811a.25.25 0 00.25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z"/></symbol><symbol fill="currentColor" class="bi bi-question-square-fill" viewBox="0 0 16 16" id="question-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm3.496 6.033a.237.237 0 01-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 01-.25.25h-.81a.25.25 0 01-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25h-.825zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927z"/></symbol><symbol fill="currentColor" class="bi bi-rainbow" viewBox="0 0 16 16" id="rainbow" xmlns="http://www.w3.org/2000/svg"><path d="M8 4.5a7 7 0 00-7 7 .5.5 0 01-1 0 8 8 0 1116 0 .5.5 0 01-1 0 7 7 0 00-7-7zm0 2a5 5 0 00-5 5 .5.5 0 01-1 0 6 6 0 1112 0 .5.5 0 01-1 0 5 5 0 00-5-5zm0 2a3 3 0 00-3 3 .5.5 0 01-1 0 4 4 0 118 0 .5.5 0 01-1 0 3 3 0 00-3-3zm0 2a1 1 0 00-1 1 .5.5 0 01-1 0 2 2 0 114 0 .5.5 0 01-1 0 1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-receipt" viewBox="0 0 16 16" id="receipt" xmlns="http://www.w3.org/2000/svg"><path d="M1.92.506a.5.5 0 01.434.14L3 1.293l.646-.647a.5.5 0 01.708 0L5 1.293l.646-.647a.5.5 0 01.708 0L7 1.293l.646-.647a.5.5 0 01.708 0L9 1.293l.646-.647a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 01.801.13l.5 1A.5.5 0 0115 2v12a.5.5 0 01-.053.224l-.5 1a.5.5 0 01-.8.13L13 14.707l-.646.647a.5.5 0 01-.708 0L11 14.707l-.646.647a.5.5 0 01-.708 0L9 14.707l-.646.647a.5.5 0 01-.708 0L7 14.707l-.646.647a.5.5 0 01-.708 0L5 14.707l-.646.647a.5.5 0 01-.708 0L3 14.707l-.646.647a.5.5 0 01-.801-.13l-.5-1A.5.5 0 011 14V2a.5.5 0 01.053-.224l.5-1a.5.5 0 01.367-.27zm.217 1.338L2 2.118v11.764l.137.274.51-.51a.5.5 0 01.707 0l.646.647.646-.646a.5.5 0 01.708 0l.646.646.646-.646a.5.5 0 01.708 0l.646.646.646-.646a.5.5 0 01.708 0l.646.646.646-.646a.5.5 0 01.708 0l.646.646.646-.646a.5.5 0 01.708 0l.509.509.137-.274V2.118l-.137-.274-.51.51a.5.5 0 01-.707 0L12 1.707l-.646.647a.5.5 0 01-.708 0L10 1.707l-.646.647a.5.5 0 01-.708 0L8 1.707l-.646.647a.5.5 0 01-.708 0L6 1.707l-.646.647a.5.5 0 01-.708 0L4 1.707l-.646.647a.5.5 0 01-.708 0l-.509-.51z"/><path d="M3 4.5a.5.5 0 01.5-.5h6a.5.5 0 110 1h-6a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 110 1h-6a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 110 1h-6a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zm8-6a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-receipt-cutoff" viewBox="0 0 16 16" id="receipt-cutoff" xmlns="http://www.w3.org/2000/svg"><path d="M3 4.5a.5.5 0 01.5-.5h6a.5.5 0 110 1h-6a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 110 1h-6a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 110 1h-6a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zM11.5 4a.5.5 0 000 1h1a.5.5 0 000-1h-1zm0 2a.5.5 0 000 1h1a.5.5 0 000-1h-1zm0 2a.5.5 0 000 1h1a.5.5 0 000-1h-1zm0 2a.5.5 0 000 1h1a.5.5 0 000-1h-1zm0 2a.5.5 0 000 1h1a.5.5 0 000-1h-1z"/><path d="M2.354.646a.5.5 0 00-.801.13l-.5 1A.5.5 0 001 2v13H.5a.5.5 0 000 1h15a.5.5 0 000-1H15V2a.5.5 0 00-.053-.224l-.5-1a.5.5 0 00-.8-.13L13 1.293l-.646-.647a.5.5 0 00-.708 0L11 1.293l-.646-.647a.5.5 0 00-.708 0L9 1.293 8.354.646a.5.5 0 00-.708 0L7 1.293 6.354.646a.5.5 0 00-.708 0L5 1.293 4.354.646a.5.5 0 00-.708 0L3 1.293 2.354.646zm-.217 1.198l.51.51a.5.5 0 00.707 0L4 1.707l.646.647a.5.5 0 00.708 0L6 1.707l.646.647a.5.5 0 00.708 0L8 1.707l.646.647a.5.5 0 00.708 0L10 1.707l.646.647a.5.5 0 00.708 0L12 1.707l.646.647a.5.5 0 00.708 0l.509-.51.137.274V15H2V2.118l.137-.274z"/></symbol><symbol fill="currentColor" class="bi bi-reception-0" viewBox="0 0 16 16" id="reception-0" xmlns="http://www.w3.org/2000/svg"><path d="M0 13.5a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm4 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm4 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm4 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-reception-1" viewBox="0 0 16 16" id="reception-1" xmlns="http://www.w3.org/2000/svg"><path d="M0 11.5a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-2zm4 2a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm4 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm4 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-reception-2" viewBox="0 0 16 16" id="reception-2" xmlns="http://www.w3.org/2000/svg"><path d="M0 11.5a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-2zm4-3a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v5a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-5zm4 5a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm4 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-reception-3" viewBox="0 0 16 16" id="reception-3" xmlns="http://www.w3.org/2000/svg"><path d="M0 11.5a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-2zm4-3a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v5a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-5zm4-3a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-8zm4 8a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-reception-4" viewBox="0 0 16 16" id="reception-4" xmlns="http://www.w3.org/2000/svg"><path d="M0 11.5a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-2zm4-3a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v5a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-5zm4-3a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-8zm4-3a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v11a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-11z"/></symbol><symbol fill="currentColor" class="bi bi-record" viewBox="0 0 16 16" id="record" xmlns="http://www.w3.org/2000/svg"><path d="M8 12a4 4 0 110-8 4 4 0 010 8zm0 1A5 5 0 108 3a5 5 0 000 10z"/></symbol><symbol fill="currentColor" class="bi bi-record-btn" viewBox="0 0 16 16" id="record-btn" xmlns="http://www.w3.org/2000/svg"><path d="M8 11a3 3 0 100-6 3 3 0 000 6z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-record-btn-fill" viewBox="0 0 16 16" id="record-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm8-1a3 3 0 100-6 3 3 0 000 6z"/></symbol><symbol fill="currentColor" class="bi bi-record-circle" viewBox="0 0 16 16" id="record-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M11 8a3 3 0 11-6 0 3 3 0 016 0z"/></symbol><symbol fill="currentColor" class="bi bi-record-circle-fill" viewBox="0 0 16 16" id="record-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-8 3a3 3 0 100-6 3 3 0 000 6z"/></symbol><symbol fill="currentColor" class="bi bi-record-fill" viewBox="0 0 16 16" id="record-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 13A5 5 0 108 3a5 5 0 000 10z"/></symbol><symbol fill="currentColor" class="bi bi-record2" viewBox="0 0 16 16" id="record2" xmlns="http://www.w3.org/2000/svg"><path d="M8 12a4 4 0 110-8 4 4 0 010 8zm0 1A5 5 0 108 3a5 5 0 000 10z"/><path d="M10 8a2 2 0 11-4 0 2 2 0 014 0z"/></symbol><symbol fill="currentColor" class="bi bi-record2-fill" viewBox="0 0 16 16" id="record2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10 8a2 2 0 11-4 0 2 2 0 014 0z"/><path d="M8 13A5 5 0 108 3a5 5 0 000 10zm0-2a3 3 0 110-6 3 3 0 010 6z"/></symbol><symbol fill="currentColor" class="bi bi-recycle" viewBox="0 0 16 16" id="recycle" xmlns="http://www.w3.org/2000/svg"><path d="M9.302 1.256a1.5 1.5 0 00-2.604 0l-1.704 2.98a.5.5 0 00.869.497l1.703-2.981a.5.5 0 01.868 0l2.54 4.444-1.256-.337a.5.5 0 10-.26.966l2.415.647a.5.5 0 00.613-.353l.647-2.415a.5.5 0 10-.966-.259l-.333 1.242-2.532-4.431zM2.973 7.773l-1.255.337a.5.5 0 11-.26-.966l2.416-.647a.5.5 0 01.612.353l.647 2.415a.5.5 0 01-.966.259l-.333-1.242-2.545 4.454a.5.5 0 00.434.748H5a.5.5 0 010 1H1.723A1.5 1.5 0 01.421 12.24l2.552-4.467zm10.89 1.463a.5.5 0 10-.868.496l1.716 3.004a.5.5 0 01-.434.748h-5.57l.647-.646a.5.5 0 10-.708-.707l-1.5 1.5a.498.498 0 000 .707l1.5 1.5a.5.5 0 10.708-.707l-.647-.647h5.57a1.5 1.5 0 001.302-2.244l-1.716-3.004z"/></symbol><symbol fill="currentColor" class="bi bi-reddit" viewBox="0 0 16 16" id="reddit" xmlns="http://www.w3.org/2000/svg"><path d="M6.167 8a.831.831 0 00-.83.83c0 .459.372.84.83.831a.831.831 0 000-1.661zm1.843 3.647c.315 0 1.403-.038 1.976-.611a.232.232 0 000-.306.213.213 0 00-.306 0c-.353.363-1.126.487-1.67.487-.545 0-1.308-.124-1.671-.487a.213.213 0 00-.306 0 .213.213 0 000 .306c.564.563 1.652.61 1.977.61zm.992-2.807c0 .458.373.83.831.83.458 0 .83-.381.83-.83a.831.831 0 00-1.66 0z"/><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-3.828-1.165c-.315 0-.602.124-.812.325-.801-.573-1.9-.945-3.121-.993l.534-2.501 1.738.372a.83.83 0 10.83-.869.83.83 0 00-.744.468l-1.938-.41a.203.203 0 00-.153.028.186.186 0 00-.086.134l-.592 2.788c-1.24.038-2.358.41-3.17.992-.21-.2-.496-.324-.81-.324a1.163 1.163 0 00-.478 2.224c-.02.115-.029.23-.029.353 0 1.795 2.091 3.256 4.669 3.256 2.577 0 4.668-1.451 4.668-3.256 0-.114-.01-.238-.029-.353.401-.181.688-.592.688-1.069 0-.65-.525-1.165-1.165-1.165z"/></symbol><symbol fill="currentColor" class="bi bi-reply" viewBox="0 0 16 16" id="reply" xmlns="http://www.w3.org/2000/svg"><path d="M6.598 5.013a.144.144 0 01.202.134V6.3a.5.5 0 00.5.5c.667 0 2.013.005 3.3.822.984.624 1.99 1.76 2.595 3.876-1.02-.983-2.185-1.516-3.205-1.799a8.74 8.74 0 00-1.921-.306 7.404 7.404 0 00-.798.008h-.013l-.005.001h-.001L7.3 9.9l-.05-.498a.5.5 0 00-.45.498v1.153c0 .108-.11.176-.202.134L2.614 8.254a.503.503 0 00-.042-.028.147.147 0 010-.252.499.499 0 00.042-.028l3.984-2.933zM7.8 10.386c.068 0 .143.003.223.006.434.02 1.034.086 1.7.271 1.326.368 2.896 1.202 3.94 3.08a.5.5 0 00.933-.305c-.464-3.71-1.886-5.662-3.46-6.66-1.245-.79-2.527-.942-3.336-.971v-.66a1.144 1.144 0 00-1.767-.96l-3.994 2.94a1.147 1.147 0 000 1.946l3.994 2.94a1.144 1.144 0 001.767-.96v-.667z"/></symbol><symbol fill="currentColor" class="bi bi-reply-all" viewBox="0 0 16 16" id="reply-all" xmlns="http://www.w3.org/2000/svg"><path d="M8.098 5.013a.144.144 0 01.202.134V6.3a.5.5 0 00.5.5c.667 0 2.013.005 3.3.822.984.624 1.99 1.76 2.595 3.876-1.02-.983-2.185-1.516-3.205-1.799a8.74 8.74 0 00-1.921-.306 7.404 7.404 0 00-.798.008h-.013l-.005.001h-.001L8.8 9.9l-.05-.498a.5.5 0 00-.45.498v1.153c0 .108-.11.176-.202.134L4.114 8.254a.502.502 0 00-.042-.028.147.147 0 010-.252.497.497 0 00.042-.028l3.984-2.933zM9.3 10.386c.068 0 .143.003.223.006.434.02 1.034.086 1.7.271 1.326.368 2.896 1.202 3.94 3.08a.5.5 0 00.933-.305c-.464-3.71-1.886-5.662-3.46-6.66-1.245-.79-2.527-.942-3.336-.971v-.66a1.144 1.144 0 00-1.767-.96l-3.994 2.94a1.147 1.147 0 000 1.946l3.994 2.94a1.144 1.144 0 001.767-.96v-.667z"/><path d="M5.232 4.293a.5.5 0 00-.7-.106L.54 7.127a1.147 1.147 0 000 1.946l3.994 2.94a.5.5 0 10.593-.805L1.114 8.254a.503.503 0 00-.042-.028.147.147 0 010-.252.5.5 0 00.042-.028l4.012-2.954a.5.5 0 00.106-.699z"/></symbol><symbol fill="currentColor" class="bi bi-reply-all-fill" viewBox="0 0 16 16" id="reply-all-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.021 11.9L3.453 8.62a.719.719 0 010-1.238L8.021 4.1a.716.716 0 011.079.619V6c1.5 0 6 0 7 8-2.5-4.5-7-4-7-4v1.281c0 .56-.606.898-1.079.62z"/><path d="M5.232 4.293a.5.5 0 01-.106.7L1.114 7.945a.5.5 0 01-.042.028.147.147 0 000 .252.503.503 0 01.042.028l4.012 2.954a.5.5 0 11-.593.805L.539 9.073a1.147 1.147 0 010-1.946l3.994-2.94a.5.5 0 01.699.106z"/></symbol><symbol fill="currentColor" class="bi bi-reply-fill" viewBox="0 0 16 16" id="reply-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.921 11.9L1.353 8.62a.719.719 0 010-1.238L5.921 4.1A.716.716 0 017 4.719V6c1.5 0 6 0 7 8-2.5-4.5-7-4-7-4v1.281c0 .56-.606.898-1.079.62z"/></symbol><symbol fill="currentColor" class="bi bi-rss" viewBox="0 0 16 16" id="rss" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M5.5 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm-3-8.5a1 1 0 011-1c5.523 0 10 4.477 10 10a1 1 0 11-2 0 8 8 0 00-8-8 1 1 0 01-1-1zm0 4a1 1 0 011-1 6 6 0 016 6 1 1 0 11-2 0 4 4 0 00-4-4 1 1 0 01-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-rss-fill" viewBox="0 0 16 16" id="rss-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm1.5 2.5c5.523 0 10 4.477 10 10a1 1 0 11-2 0 8 8 0 00-8-8 1 1 0 010-2zm0 4a6 6 0 016 6 1 1 0 11-2 0 4 4 0 00-4-4 1 1 0 010-2zm.5 7a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-rulers" viewBox="0 0 16 16" id="rulers" xmlns="http://www.w3.org/2000/svg"><path d="M1 0a1 1 0 00-1 1v14a1 1 0 001 1h5v-1H2v-1h4v-1H4v-1h2v-1H2v-1h4V9H4V8h2V7H2V6h4V2h1v4h1V4h1v2h1V2h1v4h1V4h1v2h1V2h1v4h1V1a1 1 0 00-1-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-safe" viewBox="0 0 16 16" id="safe" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.5A1.5 1.5 0 012.5 0h12A1.5 1.5 0 0116 1.5v13a1.5 1.5 0 01-1.5 1.5h-12A1.5 1.5 0 011 14.5V13H.5a.5.5 0 010-1H1V8.5H.5a.5.5 0 010-1H1V4H.5a.5.5 0 010-1H1V1.5zM2.5 1a.5.5 0 00-.5.5v13a.5.5 0 00.5.5h12a.5.5 0 00.5-.5v-13a.5.5 0 00-.5-.5h-12z"/><path d="M13.5 6a.5.5 0 01.5.5v3a.5.5 0 01-1 0v-3a.5.5 0 01.5-.5zM4.828 4.464a.5.5 0 01.708 0l1.09 1.09a3.003 3.003 0 013.476 0l1.09-1.09a.5.5 0 11.707.708l-1.09 1.09c.74 1.037.74 2.44 0 3.476l1.09 1.09a.5.5 0 11-.707.708l-1.09-1.09a3.002 3.002 0 01-3.476 0l-1.09 1.09a.5.5 0 11-.708-.708l1.09-1.09a3.003 3.003 0 010-3.476l-1.09-1.09a.5.5 0 010-.708zM6.95 6.586a2 2 0 102.828 2.828A2 2 0 006.95 6.586z"/></symbol><symbol fill="currentColor" class="bi bi-safe-fill" viewBox="0 0 16 16" id="safe-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.778 9.414A2 2 0 116.95 6.586a2 2 0 012.828 2.828z"/><path d="M2.5 0A1.5 1.5 0 001 1.5V3H.5a.5.5 0 000 1H1v3.5H.5a.5.5 0 000 1H1V12H.5a.5.5 0 000 1H1v1.5A1.5 1.5 0 002.5 16h12a1.5 1.5 0 001.5-1.5v-13A1.5 1.5 0 0014.5 0h-12zm3.036 4.464l1.09 1.09a3.003 3.003 0 013.476 0l1.09-1.09a.5.5 0 11.707.708l-1.09 1.09c.74 1.037.74 2.44 0 3.476l1.09 1.09a.5.5 0 11-.707.708l-1.09-1.09a3.002 3.002 0 01-3.476 0l-1.09 1.09a.5.5 0 11-.708-.708l1.09-1.09a3.003 3.003 0 010-3.476l-1.09-1.09a.5.5 0 11.708-.708zM14 6.5v3a.5.5 0 01-1 0v-3a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-safe2" viewBox="0 0 16 16" id="safe2" xmlns="http://www.w3.org/2000/svg"><path d="M1 2.5A1.5 1.5 0 012.5 1h12A1.5 1.5 0 0116 2.5v12a1.5 1.5 0 01-1.5 1.5h-12A1.5 1.5 0 011 14.5V14H.5a.5.5 0 010-1H1V9H.5a.5.5 0 010-1H1V4H.5a.5.5 0 010-1H1v-.5zM2.5 2a.5.5 0 00-.5.5v12a.5.5 0 00.5.5h12a.5.5 0 00.5-.5v-12a.5.5 0 00-.5-.5h-12z"/><path d="M5.035 8h1.528c.047-.184.12-.357.214-.516l-1.08-1.08A3.482 3.482 0 005.035 8zm1.369-2.303l1.08 1.08c.16-.094.332-.167.516-.214V5.035a3.482 3.482 0 00-1.596.662zM9 5.035v1.528c.184.047.357.12.516.214l1.08-1.08A3.482 3.482 0 009 5.035zm2.303 1.369l-1.08 1.08c.094.16.167.332.214.516h1.528a3.483 3.483 0 00-.662-1.596zM11.965 9h-1.528c-.047.184-.12.357-.214.516l1.08 1.08A3.483 3.483 0 0011.965 9zm-1.369 2.303l-1.08-1.08c-.16.094-.332.167-.516.214v1.528a3.483 3.483 0 001.596-.662zM8 11.965v-1.528a1.989 1.989 0 01-.516-.214l-1.08 1.08A3.483 3.483 0 008 11.965zm-2.303-1.369l1.08-1.08A1.988 1.988 0 016.563 9H5.035c.085.593.319 1.138.662 1.596zM4 8.5a4.5 4.5 0 119 0 4.5 4.5 0 01-9 0zm4.5-1a1 1 0 100 2 1 1 0 000-2z"/></symbol><symbol fill="currentColor" class="bi bi-safe2-fill" viewBox="0 0 16 16" id="safe2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.563 8H5.035a3.482 3.482 0 01.662-1.596l1.08 1.08c-.094.16-.167.332-.214.516zm.921-1.223l-1.08-1.08A3.482 3.482 0 018 5.035v1.528c-.184.047-.357.12-.516.214zM9 6.563V5.035a3.482 3.482 0 011.596.662l-1.08 1.08A1.988 1.988 0 009 6.563zm1.223.921l1.08-1.08c.343.458.577 1.003.662 1.596h-1.528a1.989 1.989 0 00-.214-.516zM10.437 9h1.528a3.483 3.483 0 01-.662 1.596l-1.08-1.08c.094-.16.167-.332.214-.516zm-.921 1.223l1.08 1.08A3.483 3.483 0 019 11.965v-1.528c.184-.047.357-.12.516-.214zM8 10.437v1.528a3.483 3.483 0 01-1.596-.662l1.08-1.08c.16.094.332.167.516.214zm-1.223-.921l-1.08 1.08A3.482 3.482 0 015.035 9h1.528c.047.184.12.357.214.516zM7.5 8.5a1 1 0 112 0 1 1 0 01-2 0z"/><path d="M2.5 1A1.5 1.5 0 001 2.5V3H.5a.5.5 0 000 1H1v4H.5a.5.5 0 000 1H1v4H.5a.5.5 0 000 1H1v.5A1.5 1.5 0 002.5 16h12a1.5 1.5 0 001.5-1.5v-12A1.5 1.5 0 0014.5 1h-12zm6 3a4.5 4.5 0 110 9 4.5 4.5 0 010-9z"/></symbol><symbol fill="currentColor" class="bi bi-save" viewBox="0 0 16 16" id="save" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2a1 1 0 00-1-1H9.5a1 1 0 00-1 1v7.293l2.646-2.647a.5.5 0 01.708.708l-3.5 3.5a.5.5 0 01-.708 0l-3.5-3.5a.5.5 0 11.708-.708L7.5 9.293V2a2 2 0 012-2H14a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2a2 2 0 012-2h2.5a.5.5 0 010 1H2z"/></symbol><symbol fill="currentColor" class="bi bi-save-fill" viewBox="0 0 16 16" id="save-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 1.5A1.5 1.5 0 0110 0h4a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2a2 2 0 012-2h6c-.314.418-.5.937-.5 1.5v7.793L4.854 6.646a.5.5 0 10-.708.708l3.5 3.5a.5.5 0 00.708 0l3.5-3.5a.5.5 0 00-.708-.708L8.5 9.293V1.5z"/></symbol><symbol fill="currentColor" class="bi bi-save2" viewBox="0 0 16 16" id="save2" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2a1 1 0 00-1-1H9.5a1 1 0 00-1 1v4.5h2a.5.5 0 01.354.854l-2.5 2.5a.5.5 0 01-.708 0l-2.5-2.5A.5.5 0 015.5 6.5h2V2a2 2 0 012-2H14a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2a2 2 0 012-2h2.5a.5.5 0 010 1H2z"/></symbol><symbol fill="currentColor" class="bi bi-save2-fill" viewBox="0 0 16 16" id="save2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 1.5A1.5 1.5 0 0110 0h4a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2a2 2 0 012-2h6c-.314.418-.5.937-.5 1.5v6h-2a.5.5 0 00-.354.854l2.5 2.5a.5.5 0 00.708 0l2.5-2.5A.5.5 0 0010.5 7.5h-2v-6z"/></symbol><symbol fill="currentColor" class="bi bi-scissors" viewBox="0 0 16 16" id="scissors" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 3.5c-.614-.884-.074-1.962.858-2.5L8 7.226 11.642 1c.932.538 1.472 1.616.858 2.5L8.81 8.61l1.556 2.661a2.5 2.5 0 11-.794.637L8 9.73l-1.572 2.177a2.5 2.5 0 11-.794-.637L7.19 8.61 3.5 3.5zm2.5 10a1.5 1.5 0 10-3 0 1.5 1.5 0 003 0zm7 0a1.5 1.5 0 10-3 0 1.5 1.5 0 003 0z"/></symbol><symbol fill="currentColor" class="bi bi-screwdriver" viewBox="0 0 16 16" id="screwdriver" xmlns="http://www.w3.org/2000/svg"><path d="M0 1l1-1 3.081 2.2a1 1 0 01.419.815v.07a1 1 0 00.293.708L10.5 9.5l.914-.305a1 1 0 011.023.242l3.356 3.356a1 1 0 010 1.414l-1.586 1.586a1 1 0 01-1.414 0l-3.356-3.356a1 1 0 01-.242-1.023L9.5 10.5 3.793 4.793a1 1 0 00-.707-.293h-.071a1 1 0 01-.814-.419L0 1zm11.354 9.646a.5.5 0 00-.708.708l3 3a.5.5 0 00.708-.708l-3-3z"/></symbol><symbol fill="currentColor" class="bi bi-sd-card" viewBox="0 0 16 16" id="sd-card" xmlns="http://www.w3.org/2000/svg"><path d="M6.25 3.5a.75.75 0 00-1.5 0v2a.75.75 0 001.5 0v-2zm2 0a.75.75 0 00-1.5 0v2a.75.75 0 001.5 0v-2zm2 0a.75.75 0 00-1.5 0v2a.75.75 0 001.5 0v-2zm2 0a.75.75 0 00-1.5 0v2a.75.75 0 001.5 0v-2z"/><path fill-rule="evenodd" d="M5.914 0H12.5A1.5 1.5 0 0114 1.5v13a1.5 1.5 0 01-1.5 1.5h-9A1.5 1.5 0 012 14.5V3.914c0-.398.158-.78.44-1.06L4.853.439A1.5 1.5 0 015.914 0zM13 1.5a.5.5 0 00-.5-.5H5.914a.5.5 0 00-.353.146L3.146 3.561A.5.5 0 003 3.914V14.5a.5.5 0 00.5.5h9a.5.5 0 00.5-.5v-13z"/></symbol><symbol fill="currentColor" class="bi bi-sd-card-fill" viewBox="0 0 16 16" id="sd-card-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M12.5 0H5.914a1.5 1.5 0 00-1.06.44L2.439 2.853A1.5 1.5 0 002 3.914V14.5A1.5 1.5 0 003.5 16h9a1.5 1.5 0 001.5-1.5v-13A1.5 1.5 0 0012.5 0zm-7 2.75a.75.75 0 01.75.75v2a.75.75 0 01-1.5 0v-2a.75.75 0 01.75-.75zm2 0a.75.75 0 01.75.75v2a.75.75 0 01-1.5 0v-2a.75.75 0 01.75-.75zm2.75.75a.75.75 0 00-1.5 0v2a.75.75 0 001.5 0v-2zm1.25-.75a.75.75 0 01.75.75v2a.75.75 0 01-1.5 0v-2a.75.75 0 01.75-.75z"/></symbol><symbol fill="currentColor" class="bi bi-search" viewBox="0 0 16 16" id="search" xmlns="http://www.w3.org/2000/svg"><path d="M11.742 10.344a6.5 6.5 0 10-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 001.415-1.414l-3.85-3.85a1.007 1.007 0 00-.115-.1zM12 6.5a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z"/></symbol><symbol fill="currentColor" class="bi bi-segmented-nav" viewBox="0 0 16 16" id="segmented-nav" xmlns="http://www.w3.org/2000/svg"><path d="M0 6a2 2 0 012-2h12a2 2 0 012 2v2a2 2 0 01-2 2H2a2 2 0 01-2-2V6zm6 3h4V5H6v4zm9-1V6a1 1 0 00-1-1h-3v4h3a1 1 0 001-1z"/></symbol><symbol fill="currentColor" class="bi bi-server" viewBox="0 0 16 16" id="server" xmlns="http://www.w3.org/2000/svg"><path d="M1.333 2.667C1.333 1.194 4.318 0 8 0s6.667 1.194 6.667 2.667V4c0 1.473-2.985 2.667-6.667 2.667S1.333 5.473 1.333 4V2.667z"/><path d="M1.333 6.334v3C1.333 10.805 4.318 12 8 12s6.667-1.194 6.667-2.667V6.334a6.51 6.51 0 01-1.458.79C11.81 7.684 9.967 8 8 8c-1.966 0-3.809-.317-5.208-.876a6.508 6.508 0 01-1.458-.79z"/><path d="M14.667 11.668a6.51 6.51 0 01-1.458.789c-1.4.56-3.242.876-5.21.876-1.966 0-3.809-.316-5.208-.876a6.51 6.51 0 01-1.458-.79v1.666C1.333 14.806 4.318 16 8 16s6.667-1.194 6.667-2.667v-1.665z"/></symbol><symbol fill="currentColor" class="bi bi-share" viewBox="0 0 16 16" id="share" xmlns="http://www.w3.org/2000/svg"><path d="M13.5 1a1.5 1.5 0 100 3 1.5 1.5 0 000-3zM11 2.5a2.5 2.5 0 11.603 1.628l-6.718 3.12a2.499 2.499 0 010 1.504l6.718 3.12a2.5 2.5 0 11-.488.876l-6.718-3.12a2.5 2.5 0 110-3.256l6.718-3.12A2.5 2.5 0 0111 2.5zm-8.5 4a1.5 1.5 0 100 3 1.5 1.5 0 000-3zm11 5.5a1.5 1.5 0 100 3 1.5 1.5 0 000-3z"/></symbol><symbol fill="currentColor" class="bi bi-share-fill" viewBox="0 0 16 16" id="share-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11 2.5a2.5 2.5 0 11.603 1.628l-6.718 3.12a2.499 2.499 0 010 1.504l6.718 3.12a2.5 2.5 0 11-.488.876l-6.718-3.12a2.5 2.5 0 110-3.256l6.718-3.12A2.5 2.5 0 0111 2.5z"/></symbol><symbol fill="currentColor" class="bi bi-shield" viewBox="0 0 16 16" id="shield" xmlns="http://www.w3.org/2000/svg"><path d="M5.338 1.59a61.44 61.44 0 00-2.837.856.481.481 0 00-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 002.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 00.101.025.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/></symbol><symbol fill="currentColor" class="bi bi-shield-check" viewBox="0 0 16 16" id="shield-check" xmlns="http://www.w3.org/2000/svg"><path d="M5.338 1.59a61.44 61.44 0 00-2.837.856.481.481 0 00-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 002.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 00.101.025.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/><path d="M10.854 5.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 7.793l2.646-2.647a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-shield-exclamation" viewBox="0 0 16 16" id="shield-exclamation" xmlns="http://www.w3.org/2000/svg"><path d="M5.338 1.59a61.44 61.44 0 00-2.837.856.481.481 0 00-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 002.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 00.101.025.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/><path d="M7.001 11a1 1 0 112 0 1 1 0 01-2 0zM7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.553.553 0 01-1.1 0L7.1 4.995z"/></symbol><symbol fill="currentColor" class="bi bi-shield-fill" viewBox="0 0 16 16" id="shield-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/></symbol><symbol fill="currentColor" class="bi bi-shield-fill-check" viewBox="0 0 16 16" id="shield-fill-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 00-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.775 11.775 0 002.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 00-1.044-1.263 62.467 62.467 0 00-2.887-.87C9.843.266 8.69 0 8 0zm2.146 5.146a.5.5 0 01.708.708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 7.793l2.646-2.647z"/></symbol><symbol fill="currentColor" class="bi bi-shield-fill-exclamation" viewBox="0 0 16 16" id="shield-fill-exclamation" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 00-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.775 11.775 0 002.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 00-1.044-1.263 62.467 62.467 0 00-2.887-.87C9.843.266 8.69 0 8 0zm-.55 8.502L7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.552.552 0 01-1.1 0zM8.002 12a1 1 0 110-2 1 1 0 010 2z"/></symbol><symbol fill="currentColor" class="bi bi-shield-fill-minus" viewBox="0 0 16 16" id="shield-fill-minus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 00-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.775 11.775 0 002.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 00-1.044-1.263 62.467 62.467 0 00-2.887-.87C9.843.266 8.69 0 8 0zM6 7.5a.5.5 0 010-1h4a.5.5 0 010 1H6z"/></symbol><symbol fill="currentColor" class="bi bi-shield-fill-plus" viewBox="0 0 16 16" id="shield-fill-plus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 00-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.775 11.775 0 002.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 00-1.044-1.263 62.467 62.467 0 00-2.887-.87C9.843.266 8.69 0 8 0zm-.5 5a.5.5 0 011 0v1.5H10a.5.5 0 010 1H8.5V9a.5.5 0 01-1 0V7.5H6a.5.5 0 010-1h1.5V5z"/></symbol><symbol fill="currentColor" class="bi bi-shield-fill-x" viewBox="0 0 16 16" id="shield-fill-x" xmlns="http://www.w3.org/2000/svg"><path d="M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 00-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.775 11.775 0 002.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 00-1.044-1.263 62.467 62.467 0 00-2.887-.87C9.843.266 8.69 0 8 0zM6.854 5.146L8 6.293l1.146-1.147a.5.5 0 11.708.708L8.707 7l1.147 1.146a.5.5 0 01-.708.708L8 7.707 6.854 8.854a.5.5 0 11-.708-.708L7.293 7 6.146 5.854a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-shield-lock" viewBox="0 0 16 16" id="shield-lock" xmlns="http://www.w3.org/2000/svg"><path d="M5.338 1.59a61.44 61.44 0 00-2.837.856.481.481 0 00-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 002.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 00.101.025.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/><path d="M9.5 6.5a1.5 1.5 0 01-1 1.415l.385 1.99a.5.5 0 01-.491.595h-.788a.5.5 0 01-.49-.595l.384-1.99a1.5 1.5 0 112-1.415z"/></symbol><symbol fill="currentColor" class="bi bi-shield-lock-fill" viewBox="0 0 16 16" id="shield-lock-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 00-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.775 11.775 0 002.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 00-1.044-1.263 62.467 62.467 0 00-2.887-.87C9.843.266 8.69 0 8 0zm0 5a1.5 1.5 0 01.5 2.915l.385 1.99a.5.5 0 01-.491.595h-.788a.5.5 0 01-.49-.595l.384-1.99A1.5 1.5 0 018 5z"/></symbol><symbol fill="currentColor" class="bi bi-shield-minus" viewBox="0 0 16 16" id="shield-minus" xmlns="http://www.w3.org/2000/svg"><path d="M5.338 1.59a61.44 61.44 0 00-2.837.856.481.481 0 00-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 002.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 00.101.025.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/><path d="M5.5 7a.5.5 0 01.5-.5h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-shield-plus" viewBox="0 0 16 16" id="shield-plus" xmlns="http://www.w3.org/2000/svg"><path d="M5.338 1.59a61.44 61.44 0 00-2.837.856.481.481 0 00-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 002.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 00.101.025.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/><path d="M8 4.5a.5.5 0 01.5.5v1.5H10a.5.5 0 010 1H8.5V9a.5.5 0 01-1 0V7.5H6a.5.5 0 010-1h1.5V5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-shield-shaded" viewBox="0 0 16 16" id="shield-shaded" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 14.933a.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067v13.866zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/></symbol><symbol fill="currentColor" class="bi bi-shield-slash" viewBox="0 0 16 16" id="shield-slash" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.093 3.093c-.465 4.275.885 7.46 2.513 9.589a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.32 11.32 0 001.733-1.525l-.745-.745a10.27 10.27 0 01-1.578 1.392c-.346.244-.652.42-.893.533-.12.057-.218.095-.293.118a.55.55 0 01-.101.025.615.615 0 01-.1-.025 2.348 2.348 0 01-.294-.118 6.141 6.141 0 01-.893-.533 10.725 10.725 0 01-2.287-2.233C3.053 10.228 1.879 7.594 2.06 4.06l-.967-.967zM3.98 1.98l-.852-.852A58.935 58.935 0 015.072.559C6.157.266 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.483 3.626-.332 6.491-1.551 8.616l-.77-.77c1.042-1.915 1.72-4.469 1.29-7.702a.48.48 0 00-.33-.39c-.65-.213-1.75-.56-2.836-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524a49.7 49.7 0 00-1.357.39zm9.666 12.374l-13-13 .708-.708 13 13-.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-shield-slash-fill" viewBox="0 0 16 16" id="shield-slash-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.093 3.093c-.465 4.275.885 7.46 2.513 9.589a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.32 11.32 0 001.733-1.525L1.093 3.093zm12.215 8.215L3.128 1.128A61.369 61.369 0 015.073.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.483 3.626-.332 6.491-1.551 8.616zm.338 3.046l-13-13 .708-.708 13 13-.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-shield-x" viewBox="0 0 16 16" id="shield-x" xmlns="http://www.w3.org/2000/svg"><path d="M5.338 1.59a61.44 61.44 0 00-2.837.856.481.481 0 00-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 002.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 00.101.025.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/><path d="M6.146 5.146a.5.5 0 01.708 0L8 6.293l1.146-1.147a.5.5 0 11.708.708L8.707 7l1.147 1.146a.5.5 0 01-.708.708L8 7.707 6.854 8.854a.5.5 0 11-.708-.708L7.293 7 6.146 5.854a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-shift" viewBox="0 0 16 16" id="shift" xmlns="http://www.w3.org/2000/svg"><path d="M7.27 2.047a1 1 0 011.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v3a1 1 0 01-1 1h-5a1 1 0 01-1-1v-3H1.654C.78 10.5.326 9.455.924 8.816L7.27 2.047zM14.346 9.5L8 2.731 1.654 9.5H4.5a1 1 0 011 1v3h5v-3a1 1 0 011-1h2.846z"/></symbol><symbol fill="currentColor" class="bi bi-shift-fill" viewBox="0 0 16 16" id="shift-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.27 2.047a1 1 0 011.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v3a1 1 0 01-1 1h-5a1 1 0 01-1-1v-3H1.654C.78 10.5.326 9.455.924 8.816L7.27 2.047z"/></symbol><symbol fill="currentColor" class="bi bi-shop" viewBox="0 0 16 16" id="shop" xmlns="http://www.w3.org/2000/svg"><path d="M2.97 1.35A1 1 0 013.73 1h8.54a1 1 0 01.76.35l2.609 3.044A1.5 1.5 0 0116 5.37v.255a2.375 2.375 0 01-4.25 1.458A2.371 2.371 0 019.875 8 2.37 2.37 0 018 7.083 2.37 2.37 0 016.125 8a2.37 2.37 0 01-1.875-.917A2.375 2.375 0 010 5.625V5.37a1.5 1.5 0 01.361-.976l2.61-3.045zm1.78 4.275a1.375 1.375 0 002.75 0 .5.5 0 011 0 1.375 1.375 0 002.75 0 .5.5 0 011 0 1.375 1.375 0 102.75 0V5.37a.5.5 0 00-.12-.325L12.27 2H3.73L1.12 5.045A.5.5 0 001 5.37v.255a1.375 1.375 0 002.75 0 .5.5 0 011 0zM1.5 8.5A.5.5 0 012 9v6h1v-5a1 1 0 011-1h3a1 1 0 011 1v5h6V9a.5.5 0 011 0v6h.5a.5.5 0 010 1H.5a.5.5 0 010-1H1V9a.5.5 0 01.5-.5zM4 15h3v-5H4v5zm5-5a1 1 0 011-1h2a1 1 0 011 1v3a1 1 0 01-1 1h-2a1 1 0 01-1-1v-3zm3 0h-2v3h2v-3z"/></symbol><symbol fill="currentColor" class="bi bi-shop-window" viewBox="0 0 16 16" id="shop-window" xmlns="http://www.w3.org/2000/svg"><path d="M2.97 1.35A1 1 0 013.73 1h8.54a1 1 0 01.76.35l2.609 3.044A1.5 1.5 0 0116 5.37v.255a2.375 2.375 0 01-4.25 1.458A2.371 2.371 0 019.875 8 2.37 2.37 0 018 7.083 2.37 2.37 0 016.125 8a2.37 2.37 0 01-1.875-.917A2.375 2.375 0 010 5.625V5.37a1.5 1.5 0 01.361-.976l2.61-3.045zm1.78 4.275a1.375 1.375 0 002.75 0 .5.5 0 011 0 1.375 1.375 0 002.75 0 .5.5 0 011 0 1.375 1.375 0 102.75 0V5.37a.5.5 0 00-.12-.325L12.27 2H3.73L1.12 5.045A.5.5 0 001 5.37v.255a1.375 1.375 0 002.75 0 .5.5 0 011 0zM1.5 8.5A.5.5 0 012 9v6h12V9a.5.5 0 011 0v6h.5a.5.5 0 010 1H.5a.5.5 0 010-1H1V9a.5.5 0 01.5-.5zm2 .5a.5.5 0 01.5.5V13h8V9.5a.5.5 0 011 0V13a1 1 0 01-1 1H4a1 1 0 01-1-1V9.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-shuffle" viewBox="0 0 16 16" id="shuffle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M0 3.5A.5.5 0 01.5 3H1c2.202 0 3.827 1.24 4.874 2.418.49.552.865 1.102 1.126 1.532.26-.43.636-.98 1.126-1.532C9.173 4.24 10.798 3 13 3v1c-1.798 0-3.173 1.01-4.126 2.082A9.624 9.624 0 007.556 8a9.624 9.624 0 001.317 1.918C9.828 10.99 11.204 12 13 12v1c-2.202 0-3.827-1.24-4.874-2.418A10.595 10.595 0 017 9.05c-.26.43-.636.98-1.126 1.532C4.827 11.76 3.202 13 1 13H.5a.5.5 0 010-1H1c1.798 0 3.173-1.01 4.126-2.082A9.624 9.624 0 006.444 8a9.624 9.624 0 00-1.317-1.918C4.172 5.01 2.796 4 1 4H.5a.5.5 0 01-.5-.5z"/><path d="M13 5.466V1.534a.25.25 0 01.41-.192l2.36 1.966c.12.1.12.284 0 .384l-2.36 1.966a.25.25 0 01-.41-.192zm0 9v-3.932a.25.25 0 01.41-.192l2.36 1.966c.12.1.12.284 0 .384l-2.36 1.966a.25.25 0 01-.41-.192z"/></symbol><symbol fill="currentColor" class="bi bi-signpost" viewBox="0 0 16 16" id="signpost" xmlns="http://www.w3.org/2000/svg"><path d="M7 1.414V4H2a1 1 0 00-1 1v4a1 1 0 001 1h5v6h2v-6h3.532a1 1 0 00.768-.36l1.933-2.32a.5.5 0 000-.64L13.3 4.36a1 1 0 00-.768-.36H9V1.414a1 1 0 00-2 0zM12.532 5l1.666 2-1.666 2H2V5h10.532z"/></symbol><symbol fill="currentColor" class="bi bi-signpost-2" viewBox="0 0 16 16" id="signpost-2" xmlns="http://www.w3.org/2000/svg"><path d="M7 1.414V2H2a1 1 0 00-1 1v2a1 1 0 001 1h5v1H2.5a1 1 0 00-.8.4L.725 8.7a.5.5 0 000 .6l.975 1.3a1 1 0 00.8.4H7v5h2v-5h5a1 1 0 001-1V8a1 1 0 00-1-1H9V6h4.5a1 1 0 00.8-.4l.975-1.3a.5.5 0 000-.6L14.3 2.4a1 1 0 00-.8-.4H9v-.586a1 1 0 00-2 0zM13.5 3l.75 1-.75 1H2V3h11.5zm.5 5v2H2.5l-.75-1 .75-1H14z"/></symbol><symbol fill="currentColor" class="bi bi-signpost-2-fill" viewBox="0 0 16 16" id="signpost-2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.293.707A1 1 0 007 1.414V2H2a1 1 0 00-1 1v2a1 1 0 001 1h5v1H2.5a1 1 0 00-.8.4L.725 8.7a.5.5 0 000 .6l.975 1.3a1 1 0 00.8.4H7v5h2v-5h5a1 1 0 001-1V8a1 1 0 00-1-1H9V6h4.5a1 1 0 00.8-.4l.975-1.3a.5.5 0 000-.6L14.3 2.4a1 1 0 00-.8-.4H9v-.586A1 1 0 007.293.707z"/></symbol><symbol fill="currentColor" class="bi bi-signpost-fill" viewBox="0 0 16 16" id="signpost-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.293.707A1 1 0 007 1.414V4H2a1 1 0 00-1 1v4a1 1 0 001 1h5v6h2v-6h3.532a1 1 0 00.768-.36l1.933-2.32a.5.5 0 000-.64L13.3 4.36a1 1 0 00-.768-.36H9V1.414A1 1 0 007.293.707z"/></symbol><symbol fill="currentColor" class="bi bi-signpost-split" viewBox="0 0 16 16" id="signpost-split" xmlns="http://www.w3.org/2000/svg"><path d="M7 7V1.414a1 1 0 012 0V2h5a1 1 0 01.8.4l.975 1.3a.5.5 0 010 .6L14.8 5.6a1 1 0 01-.8.4H9v10H7v-5H2a1 1 0 01-.8-.4L.225 9.3a.5.5 0 010-.6L1.2 7.4A1 1 0 012 7h5zm1 3V8H2l-.75 1L2 10h6zm0-5h6l.75-1L14 3H8v2z"/></symbol><symbol fill="currentColor" class="bi bi-signpost-split-fill" viewBox="0 0 16 16" id="signpost-split-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 16h2V6h5a1 1 0 00.8-.4l.975-1.3a.5.5 0 000-.6L14.8 2.4A1 1 0 0014 2H9v-.586a1 1 0 00-2 0V7H2a1 1 0 00-.8.4L.225 8.7a.5.5 0 000 .6l.975 1.3a1 1 0 00.8.4h5v5z"/></symbol><symbol fill="currentColor" class="bi bi-sim" viewBox="0 0 16 16" id="sim" xmlns="http://www.w3.org/2000/svg"><path d="M2 1.5A1.5 1.5 0 013.5 0h7.086a1.5 1.5 0 011.06.44l1.915 1.914A1.5 1.5 0 0114 3.414V14.5a1.5 1.5 0 01-1.5 1.5h-9A1.5 1.5 0 012 14.5v-13zM3.5 1a.5.5 0 00-.5.5v13a.5.5 0 00.5.5h9a.5.5 0 00.5-.5V3.414a.5.5 0 00-.146-.353l-1.915-1.915A.5.5 0 0010.586 1H3.5z"/><path d="M5.5 4a.5.5 0 00-.5.5V6h2.5V4h-2zm3 0v2H11V4.5a.5.5 0 00-.5-.5h-2zM11 7H5v2h6V7zm0 3H8.5v2h2a.5.5 0 00.5-.5V10zm-3.5 2v-2H5v1.5a.5.5 0 00.5.5h2zM4 4.5A1.5 1.5 0 015.5 3h5A1.5 1.5 0 0112 4.5v7a1.5 1.5 0 01-1.5 1.5h-5A1.5 1.5 0 014 11.5v-7z"/></symbol><symbol fill="currentColor" class="bi bi-sim-fill" viewBox="0 0 16 16" id="sim-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5 4.5a.5.5 0 01.5-.5h2v2H5V4.5zM8.5 6V4h2a.5.5 0 01.5.5V6H8.5zM5 7h6v2H5V7zm3.5 3H11v1.5a.5.5 0 01-.5.5h-2v-2zm-1 0v2h-2a.5.5 0 01-.5-.5V10h2.5z"/><path d="M3.5 0A1.5 1.5 0 002 1.5v13A1.5 1.5 0 003.5 16h9a1.5 1.5 0 001.5-1.5V3.414a1.5 1.5 0 00-.44-1.06L11.647.439A1.5 1.5 0 0010.586 0H3.5zm2 3h5A1.5 1.5 0 0112 4.5v7a1.5 1.5 0 01-1.5 1.5h-5A1.5 1.5 0 014 11.5v-7A1.5 1.5 0 015.5 3z"/></symbol><symbol fill="currentColor" class="bi bi-skip-backward" viewBox="0 0 16 16" id="skip-backward" xmlns="http://www.w3.org/2000/svg"><path d="M.5 3.5A.5.5 0 011 4v3.248l6.267-3.636c.52-.302 1.233.043 1.233.696v2.94l6.267-3.636c.52-.302 1.233.043 1.233.696v7.384c0 .653-.713.998-1.233.696L8.5 8.752v2.94c0 .653-.713.998-1.233.696L1 8.752V12a.5.5 0 01-1 0V4a.5.5 0 01.5-.5zm7 1.133L1.696 8 7.5 11.367V4.633zm7.5 0L9.196 8 15 11.367V4.633z"/></symbol><symbol fill="currentColor" class="bi bi-skip-backward-btn" viewBox="0 0 16 16" id="skip-backward-btn" xmlns="http://www.w3.org/2000/svg"><path d="M11.21 5.093A.5.5 0 0112 5.5v5a.5.5 0 01-.79.407L8.5 8.972V10.5a.5.5 0 01-.79.407L5 8.972V10.5a.5.5 0 01-1 0v-5a.5.5 0 011 0v1.528l2.71-1.935a.5.5 0 01.79.407v1.528l2.71-1.935z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-skip-backward-btn-fill" viewBox="0 0 16 16" id="skip-backward-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm11.21-6.907L8.5 7.028V5.5a.5.5 0 00-.79-.407L5 7.028V5.5a.5.5 0 00-1 0v5a.5.5 0 001 0V8.972l2.71 1.935a.5.5 0 00.79-.407V8.972l2.71 1.935A.5.5 0 0012 10.5v-5a.5.5 0 00-.79-.407z"/></symbol><symbol fill="currentColor" class="bi bi-skip-backward-circle" viewBox="0 0 16 16" id="skip-backward-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M11.729 5.055a.5.5 0 00-.52.038L8.5 7.028V5.5a.5.5 0 00-.79-.407L5 7.028V5.5a.5.5 0 00-1 0v5a.5.5 0 001 0V8.972l2.71 1.935a.5.5 0 00.79-.407V8.972l2.71 1.935A.5.5 0 0012 10.5v-5a.5.5 0 00-.271-.445z"/></symbol><symbol fill="currentColor" class="bi bi-skip-backward-circle-fill" viewBox="0 0 16 16" id="skip-backward-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-4.79-2.907L8.5 7.028V5.5a.5.5 0 00-.79-.407L5 7.028V5.5a.5.5 0 00-1 0v5a.5.5 0 001 0V8.972l2.71 1.935a.5.5 0 00.79-.407V8.972l2.71 1.935A.5.5 0 0012 10.5v-5a.5.5 0 00-.79-.407z"/></symbol><symbol fill="currentColor" class="bi bi-skip-backward-fill" viewBox="0 0 16 16" id="skip-backward-fill" xmlns="http://www.w3.org/2000/svg"><path d="M.5 3.5A.5.5 0 000 4v8a.5.5 0 001 0V8.753l6.267 3.636c.54.313 1.233-.066 1.233-.697v-2.94l6.267 3.636c.54.314 1.233-.065 1.233-.696V4.308c0-.63-.693-1.01-1.233-.696L8.5 7.248v-2.94c0-.63-.692-1.01-1.233-.696L1 7.248V4a.5.5 0 00-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-skip-end" viewBox="0 0 16 16" id="skip-end" xmlns="http://www.w3.org/2000/svg"><path d="M12.5 4a.5.5 0 00-1 0v3.248L5.233 3.612C4.713 3.31 4 3.655 4 4.308v7.384c0 .653.713.998 1.233.696L11.5 8.752V12a.5.5 0 001 0V4zM5 4.633L10.804 8 5 11.367V4.633z"/></symbol><symbol fill="currentColor" class="bi bi-skip-end-btn" viewBox="0 0 16 16" id="skip-end-btn" xmlns="http://www.w3.org/2000/svg"><path d="M6.79 5.093L9.5 7.028V5.5a.5.5 0 011 0v5a.5.5 0 01-1 0V8.972l-2.71 1.935A.5.5 0 016 10.5v-5a.5.5 0 01.79-.407z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-skip-end-btn-fill" viewBox="0 0 16 16" id="skip-end-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm6.79-6.907A.5.5 0 006 5.5v5a.5.5 0 00.79.407L9.5 8.972V10.5a.5.5 0 001 0v-5a.5.5 0 00-1 0v1.528L6.79 5.093z"/></symbol><symbol fill="currentColor" class="bi bi-skip-end-circle" viewBox="0 0 16 16" id="skip-end-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M6.271 5.055a.5.5 0 01.52.038L9.5 7.028V5.5a.5.5 0 011 0v5a.5.5 0 01-1 0V8.972l-2.71 1.935A.5.5 0 016 10.5v-5a.5.5 0 01.271-.445z"/></symbol><symbol fill="currentColor" class="bi bi-skip-end-circle-fill" viewBox="0 0 16 16" id="skip-end-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM6.79 5.093A.5.5 0 006 5.5v5a.5.5 0 00.79.407L9.5 8.972V10.5a.5.5 0 001 0v-5a.5.5 0 00-1 0v1.528L6.79 5.093z"/></symbol><symbol fill="currentColor" class="bi bi-skip-end-fill" viewBox="0 0 16 16" id="skip-end-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12.5 4a.5.5 0 00-1 0v3.248L5.233 3.612C4.693 3.3 4 3.678 4 4.308v7.384c0 .63.692 1.01 1.233.697L11.5 8.753V12a.5.5 0 001 0V4z"/></symbol><symbol fill="currentColor" class="bi bi-skip-forward" viewBox="0 0 16 16" id="skip-forward" xmlns="http://www.w3.org/2000/svg"><path d="M15.5 3.5a.5.5 0 01.5.5v8a.5.5 0 01-1 0V8.752l-6.267 3.636c-.52.302-1.233-.043-1.233-.696v-2.94l-6.267 3.636C.713 12.69 0 12.345 0 11.692V4.308c0-.653.713-.998 1.233-.696L7.5 7.248v-2.94c0-.653.713-.998 1.233-.696L15 7.248V4a.5.5 0 01.5-.5zM1 4.633v6.734L6.804 8 1 4.633zm7.5 0v6.734L14.304 8 8.5 4.633z"/></symbol><symbol fill="currentColor" class="bi bi-skip-forward-btn" viewBox="0 0 16 16" id="skip-forward-btn" xmlns="http://www.w3.org/2000/svg"><path d="M4.79 5.093A.5.5 0 004 5.5v5a.5.5 0 00.79.407L7.5 8.972V10.5a.5.5 0 00.79.407L11 8.972V10.5a.5.5 0 001 0v-5a.5.5 0 00-1 0v1.528L8.29 5.093a.5.5 0 00-.79.407v1.528L4.79 5.093z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-skip-forward-btn-fill" viewBox="0 0 16 16" id="skip-forward-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 10V2a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm4.79-6.907A.5.5 0 004 3.5v5a.5.5 0 00.79.407L7.5 6.972V8.5a.5.5 0 00.79.407L11 6.972V8.5a.5.5 0 001 0v-5a.5.5 0 00-1 0v1.528L8.29 3.093a.5.5 0 00-.79.407v1.528L4.79 3.093z"/></symbol><symbol fill="currentColor" class="bi bi-skip-forward-circle" viewBox="0 0 16 16" id="skip-forward-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4.271 5.055a.5.5 0 01.52.038L7.5 7.028V5.5a.5.5 0 01.79-.407L11 7.028V5.5a.5.5 0 011 0v5a.5.5 0 01-1 0V8.972l-2.71 1.935a.5.5 0 01-.79-.407V8.972l-2.71 1.935A.5.5 0 014 10.5v-5a.5.5 0 01.271-.445z"/></symbol><symbol fill="currentColor" class="bi bi-skip-forward-circle-fill" viewBox="0 0 16 16" id="skip-forward-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM4.79 5.093A.5.5 0 004 5.5v5a.5.5 0 00.79.407L7.5 8.972V10.5a.5.5 0 00.79.407L11 8.972V10.5a.5.5 0 001 0v-5a.5.5 0 00-1 0v1.528L8.29 5.093a.5.5 0 00-.79.407v1.528L4.79 5.093z"/></symbol><symbol fill="currentColor" class="bi bi-skip-forward-fill" viewBox="0 0 16 16" id="skip-forward-fill" xmlns="http://www.w3.org/2000/svg"><path d="M15.5 3.5a.5.5 0 01.5.5v8a.5.5 0 01-1 0V8.753l-6.267 3.636c-.54.313-1.233-.066-1.233-.697v-2.94l-6.267 3.636C.693 12.703 0 12.324 0 11.693V4.308c0-.63.693-1.01 1.233-.696L7.5 7.248v-2.94c0-.63.693-1.01 1.233-.696L15 7.248V4a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-skip-start" viewBox="0 0 16 16" id="skip-start" xmlns="http://www.w3.org/2000/svg"><path d="M4 4a.5.5 0 011 0v3.248l6.267-3.636c.52-.302 1.233.043 1.233.696v7.384c0 .653-.713.998-1.233.696L5 8.752V12a.5.5 0 01-1 0V4zm7.5.633L5.696 8l5.804 3.367V4.633z"/></symbol><symbol fill="currentColor" class="bi bi-skip-start-btn" viewBox="0 0 16 16" id="skip-start-btn" xmlns="http://www.w3.org/2000/svg"><path d="M9.71 5.093a.5.5 0 01.79.407v5a.5.5 0 01-.79.407L7 8.972V10.5a.5.5 0 01-1 0v-5a.5.5 0 011 0v1.528l2.71-1.935z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-skip-start-btn-fill" viewBox="0 0 16 16" id="skip-start-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm9.71-6.907L7 7.028V5.5a.5.5 0 00-1 0v5a.5.5 0 001 0V8.972l2.71 1.935a.5.5 0 00.79-.407v-5a.5.5 0 00-.79-.407z"/></symbol><symbol fill="currentColor" class="bi bi-skip-start-circle" viewBox="0 0 16 16" id="skip-start-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M10.229 5.055a.5.5 0 00-.52.038L7 7.028V5.5a.5.5 0 00-1 0v5a.5.5 0 001 0V8.972l2.71 1.935a.5.5 0 00.79-.407v-5a.5.5 0 00-.271-.445z"/></symbol><symbol fill="currentColor" class="bi bi-skip-start-circle-fill" viewBox="0 0 16 16" id="skip-start-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM9.71 5.093L7 7.028V5.5a.5.5 0 00-1 0v5a.5.5 0 001 0V8.972l2.71 1.935a.5.5 0 00.79-.407v-5a.5.5 0 00-.79-.407z"/></symbol><symbol fill="currentColor" class="bi bi-skip-start-fill" viewBox="0 0 16 16" id="skip-start-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 4a.5.5 0 011 0v3.248l6.267-3.636c.54-.313 1.232.066 1.232.696v7.384c0 .63-.692 1.01-1.232.697L5 8.753V12a.5.5 0 01-1 0V4z"/></symbol><symbol fill="currentColor" class="bi bi-skype" viewBox="0 0 16 16" id="skype" xmlns="http://www.w3.org/2000/svg"><path d="M4.671 0c.88 0 1.733.247 2.468.702a7.423 7.423 0 016.02 2.118 7.372 7.372 0 012.167 5.215c0 .344-.024.687-.072 1.026a4.662 4.662 0 01.6 2.281 4.645 4.645 0 01-1.37 3.294A4.673 4.673 0 0111.18 16c-.84 0-1.658-.226-2.37-.644a7.423 7.423 0 01-6.114-2.107A7.374 7.374 0 01.529 8.035c0-.363.026-.724.08-1.081a4.644 4.644 0 01.76-5.59A4.68 4.68 0 014.67 0zm.447 7.01c.18.309.43.572.729.769a7.07 7.07 0 001.257.653c.492.205.873.38 1.145.523.229.112.437.264.615.448.135.142.21.331.21.528a.872.872 0 01-.335.723c-.291.196-.64.289-.99.264a2.618 2.618 0 01-1.048-.206 11.44 11.44 0 01-.532-.253 1.284 1.284 0 00-.587-.15.717.717 0 00-.501.176.63.63 0 00-.195.491.796.796 0 00.148.482 1.2 1.2 0 00.456.354 5.113 5.113 0 002.212.419 4.554 4.554 0 001.624-.265 2.296 2.296 0 001.08-.801c.267-.39.402-.855.386-1.327a2.09 2.09 0 00-.279-1.101 2.53 2.53 0 00-.772-.792A7.198 7.198 0 008.486 7.3a1.05 1.05 0 00-.145-.058 18.182 18.182 0 01-1.013-.447 1.827 1.827 0 01-.54-.387.727.727 0 01-.2-.508.805.805 0 01.385-.723 1.76 1.76 0 01.968-.247c.26-.003.52.03.772.096.274.079.542.177.802.293.105.049.22.075.336.076a.6.6 0 00.453-.19.69.69 0 00.18-.496.717.717 0 00-.17-.476 1.374 1.374 0 00-.556-.354 3.69 3.69 0 00-.708-.183 5.963 5.963 0 00-1.022-.078 4.53 4.53 0 00-1.536.258 2.71 2.71 0 00-1.174.784 1.91 1.91 0 00-.45 1.287c-.01.37.076.736.25 1.063z"/></symbol><symbol fill="currentColor" class="bi bi-slack" viewBox="0 0 16 16" id="slack" xmlns="http://www.w3.org/2000/svg"><path d="M3.362 10.11c0 .926-.756 1.681-1.681 1.681S0 11.036 0 10.111C0 9.186.756 8.43 1.68 8.43h1.682v1.68zm.846 0c0-.924.756-1.68 1.681-1.68s1.681.756 1.681 1.68v4.21c0 .924-.756 1.68-1.68 1.68a1.685 1.685 0 01-1.682-1.68v-4.21zM5.89 3.362c-.926 0-1.682-.756-1.682-1.681S4.964 0 5.89 0s1.68.756 1.68 1.68v1.682H5.89zm0 .846c.924 0 1.68.756 1.68 1.681S6.814 7.57 5.89 7.57H1.68C.757 7.57 0 6.814 0 5.89c0-.926.756-1.682 1.68-1.682h4.21zm6.749 1.682c0-.926.755-1.682 1.68-1.682.925 0 1.681.756 1.681 1.681s-.756 1.681-1.68 1.681h-1.681V5.89zm-.848 0c0 .924-.755 1.68-1.68 1.68A1.685 1.685 0 018.43 5.89V1.68C8.43.757 9.186 0 10.11 0c.926 0 1.681.756 1.681 1.68v4.21zm-1.681 6.748c.926 0 1.682.756 1.682 1.681S11.036 16 10.11 16s-1.681-.756-1.681-1.68v-1.682h1.68zm0-.847c-.924 0-1.68-.755-1.68-1.68 0-.925.756-1.681 1.68-1.681h4.21c.924 0 1.68.756 1.68 1.68 0 .926-.756 1.681-1.68 1.681h-4.21z"/></symbol><symbol fill="currentColor" class="bi bi-slash" viewBox="0 0 16 16" id="slash" xmlns="http://www.w3.org/2000/svg"><path d="M11.354 4.646a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708l6-6a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-slash-circle" viewBox="0 0 16 16" id="slash-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M11.354 4.646a.5.5 0 00-.708 0l-6 6a.5.5 0 00.708.708l6-6a.5.5 0 000-.708z"/></symbol><symbol fill="currentColor" class="bi bi-slash-circle-fill" viewBox="0 0 16 16" id="slash-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-4.646-2.646a.5.5 0 00-.708-.708l-6 6a.5.5 0 00.708.708l6-6z"/></symbol><symbol fill="currentColor" class="bi bi-slash-lg" viewBox="0 0 16 16" id="slash-lg" xmlns="http://www.w3.org/2000/svg"><path d="M14.707 1.293a1 1 0 010 1.414l-12 12a1 1 0 01-1.414-1.414l12-12a1 1 0 011.414 0z"/></symbol><symbol fill="currentColor" class="bi bi-slash-square" viewBox="0 0 16 16" id="slash-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M11.354 4.646a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708l6-6a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-slash-square-fill" viewBox="0 0 16 16" id="slash-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm9.354 5.354l-6 6a.5.5 0 01-.708-.708l6-6a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-sliders" viewBox="0 0 16 16" id="sliders" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11.5 2a1.5 1.5 0 100 3 1.5 1.5 0 000-3zM9.05 3a2.5 2.5 0 014.9 0H16v1h-2.05a2.5 2.5 0 01-4.9 0H0V3h9.05zM4.5 7a1.5 1.5 0 100 3 1.5 1.5 0 000-3zM2.05 8a2.5 2.5 0 014.9 0H16v1H6.95a2.5 2.5 0 01-4.9 0H0V8h2.05zm9.45 4a1.5 1.5 0 100 3 1.5 1.5 0 000-3zm-2.45 1a2.5 2.5 0 014.9 0H16v1h-2.05a2.5 2.5 0 01-4.9 0H0v-1h9.05z"/></symbol><symbol fill="currentColor" class="bi bi-smartwatch" viewBox="0 0 16 16" id="smartwatch" xmlns="http://www.w3.org/2000/svg"><path d="M9 5a.5.5 0 00-1 0v3H6a.5.5 0 000 1h2.5a.5.5 0 00.5-.5V5z"/><path d="M4 1.667v.383A2.5 2.5 0 002 4.5v7a2.5 2.5 0 002 2.45v.383C4 15.253 4.746 16 5.667 16h4.666c.92 0 1.667-.746 1.667-1.667v-.383a2.5 2.5 0 002-2.45V8h.5a.5.5 0 00.5-.5v-2a.5.5 0 00-.5-.5H14v-.5a2.5 2.5 0 00-2-2.45v-.383C12 .747 11.254 0 10.333 0H5.667C4.747 0 4 .746 4 1.667zM4.5 3h7A1.5 1.5 0 0113 4.5v7a1.5 1.5 0 01-1.5 1.5h-7A1.5 1.5 0 013 11.5v-7A1.5 1.5 0 014.5 3z"/></symbol><symbol fill="currentColor" class="bi bi-snow" viewBox="0 0 16 16" id="snow" xmlns="http://www.w3.org/2000/svg"><path d="M8 16a.5.5 0 01-.5-.5v-1.293l-.646.647a.5.5 0 01-.707-.708L7.5 12.793V8.866l-3.4 1.963-.496 1.85a.5.5 0 11-.966-.26l.237-.882-1.12.646a.5.5 0 01-.5-.866l1.12-.646-.884-.237a.5.5 0 11.26-.966l1.848.495L7 8 3.6 6.037l-1.85.495a.5.5 0 01-.258-.966l.883-.237-1.12-.646a.5.5 0 11.5-.866l1.12.646-.237-.883a.5.5 0 11.966-.258l.495 1.849L7.5 7.134V3.207L6.147 1.854a.5.5 0 11.707-.708l.646.647V.5a.5.5 0 111 0v1.293l.647-.647a.5.5 0 11.707.708L8.5 3.207v3.927l3.4-1.963.496-1.85a.5.5 0 11.966.26l-.236.882 1.12-.646a.5.5 0 01.5.866l-1.12.646.883.237a.5.5 0 11-.26.966l-1.848-.495L9 8l3.4 1.963 1.849-.495a.5.5 0 01.259.966l-.883.237 1.12.646a.5.5 0 01-.5.866l-1.12-.646.236.883a.5.5 0 11-.966.258l-.495-1.849-3.4-1.963v3.927l1.353 1.353a.5.5 0 01-.707.708l-.647-.647V15.5a.5.5 0 01-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-snow2" viewBox="0 0 16 16" id="snow2" xmlns="http://www.w3.org/2000/svg"><path d="M8 16a.5.5 0 01-.5-.5v-1.293l-.646.647a.5.5 0 01-.707-.708L7.5 12.793v-1.086l-.646.647a.5.5 0 01-.707-.708L7.5 10.293V8.866l-1.236.713-.495 1.85a.5.5 0 11-.966-.26l.237-.882-.94.542-.496 1.85a.5.5 0 11-.966-.26l.237-.882-1.12.646a.5.5 0 01-.5-.866l1.12-.646-.884-.237a.5.5 0 11.26-.966l1.848.495.94-.542-.882-.237a.5.5 0 11.258-.966l1.85.495L7 8l-1.236-.713-1.849.495a.5.5 0 11-.258-.966l.883-.237-.94-.542-1.85.495a.5.5 0 01-.258-.966l.883-.237-1.12-.646a.5.5 0 11.5-.866l1.12.646-.237-.883a.5.5 0 01.966-.258l.495 1.849.94.542-.236-.883a.5.5 0 01.966-.258l.495 1.849 1.236.713V5.707L6.147 4.354a.5.5 0 11.707-.708l.646.647V3.207L6.147 1.854a.5.5 0 11.707-.708l.646.647V.5a.5.5 0 011 0v1.293l.647-.647a.5.5 0 11.707.708L8.5 3.207v1.086l.647-.647a.5.5 0 11.707.708L8.5 5.707v1.427l1.236-.713.495-1.85a.5.5 0 11.966.26l-.236.882.94-.542.495-1.85a.5.5 0 11.966.26l-.236.882 1.12-.646a.5.5 0 01.5.866l-1.12.646.883.237a.5.5 0 11-.26.966l-1.848-.495-.94.542.883.237a.5.5 0 11-.26.966l-1.848-.495L9 8l1.236.713 1.849-.495a.5.5 0 01.259.966l-.883.237.94.542 1.849-.495a.5.5 0 01.259.966l-.883.237 1.12.646a.5.5 0 01-.5.866l-1.12-.646.236.883a.5.5 0 11-.966.258l-.495-1.849-.94-.542.236.883a.5.5 0 01-.966.258L9.736 9.58 8.5 8.866v1.427l1.354 1.353a.5.5 0 01-.707.708l-.647-.647v1.086l1.354 1.353a.5.5 0 01-.707.708l-.647-.647V15.5a.5.5 0 01-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-snow3" viewBox="0 0 16 16" id="snow3" xmlns="http://www.w3.org/2000/svg"><path d="M8 7.5a.5.5 0 100 1 .5.5 0 000-1z"/><path d="M8 16a.5.5 0 01-.5-.5v-1.293l-.646.647a.5.5 0 01-.707-.708L7.5 12.793v-1.51l-2.053-1.232-1.348.778-.495 1.85a.5.5 0 11-.966-.26l.237-.882-1.12.646a.5.5 0 01-.5-.866l1.12-.646-.883-.237a.5.5 0 11.258-.966l1.85.495L5 9.155v-2.31l-1.4-.808-1.85.495a.5.5 0 11-.259-.966l.884-.237-1.12-.646a.5.5 0 01.5-.866l1.12.646-.237-.883a.5.5 0 11.966-.258l.495 1.849 1.348.778L7.5 4.717v-1.51L6.147 1.854a.5.5 0 11.707-.708l.646.647V.5a.5.5 0 011 0v1.293l.647-.647a.5.5 0 11.707.708L8.5 3.207v1.51l2.053 1.232 1.348-.778.495-1.85a.5.5 0 11.966.26l-.236.882 1.12-.646a.5.5 0 01.5.866l-1.12.646.883.237a.5.5 0 11-.26.966l-1.848-.495-1.4.808v2.31l1.4.808 1.849-.495a.5.5 0 11.259.966l-.883.237 1.12.646a.5.5 0 01-.5.866l-1.12-.646.236.883a.5.5 0 11-.966.258l-.495-1.849-1.348-.778L8.5 11.283v1.51l1.354 1.353a.5.5 0 01-.707.708l-.647-.647V15.5a.5.5 0 01-.5.5zm2-6.783V6.783l-2-1.2-2 1.2v2.434l2 1.2 2-1.2z"/></symbol><symbol fill="currentColor" class="bi bi-sort-alpha-down" viewBox="0 0 16 16" id="sort-alpha-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.082 5.629L9.664 7H8.598l1.789-5.332h1.234L13.402 7h-1.12l-.419-1.371h-1.781zm1.57-.785L11 2.687h-.047l-.652 2.157h1.351z"/><path d="M12.96 14H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645V14zM4.5 2.5a.5.5 0 00-1 0v9.793l-1.146-1.147a.5.5 0 00-.708.708l2 1.999.007.007a.497.497 0 00.7-.006l2-2a.5.5 0 00-.707-.708L4.5 12.293V2.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-alpha-down-alt" viewBox="0 0 16 16" id="sort-alpha-down-alt" xmlns="http://www.w3.org/2000/svg"><path d="M12.96 7H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645V7z"/><path fill-rule="evenodd" d="M10.082 12.629L9.664 14H8.598l1.789-5.332h1.234L13.402 14h-1.12l-.419-1.371h-1.781zm1.57-.785L11 9.688h-.047l-.652 2.156h1.351z"/><path d="M4.5 2.5a.5.5 0 00-1 0v9.793l-1.146-1.147a.5.5 0 00-.708.708l2 1.999.007.007a.497.497 0 00.7-.006l2-2a.5.5 0 00-.707-.708L4.5 12.293V2.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-alpha-up" viewBox="0 0 16 16" id="sort-alpha-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.082 5.629L9.664 7H8.598l1.789-5.332h1.234L13.402 7h-1.12l-.419-1.371h-1.781zm1.57-.785L11 2.687h-.047l-.652 2.157h1.351z"/><path d="M12.96 14H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645V14zm-8.46-.5a.5.5 0 01-1 0V3.707L2.354 4.854a.5.5 0 11-.708-.708l2-1.999.007-.007a.498.498 0 01.7.006l2 2a.5.5 0 11-.707.708L4.5 3.707V13.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-alpha-up-alt" viewBox="0 0 16 16" id="sort-alpha-up-alt" xmlns="http://www.w3.org/2000/svg"><path d="M12.96 7H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645V7z"/><path fill-rule="evenodd" d="M10.082 12.629L9.664 14H8.598l1.789-5.332h1.234L13.402 14h-1.12l-.419-1.371h-1.781zm1.57-.785L11 9.688h-.047l-.652 2.156h1.351z"/><path d="M4.5 13.5a.5.5 0 01-1 0V3.707L2.354 4.854a.5.5 0 11-.708-.708l2-1.999.007-.007a.498.498 0 01.7.006l2 2a.5.5 0 11-.707.708L4.5 3.707V13.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-down" viewBox="0 0 16 16" id="sort-down" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 2.5a.5.5 0 00-1 0v8.793l-1.146-1.147a.5.5 0 00-.708.708l2 1.999.007.007a.497.497 0 00.7-.006l2-2a.5.5 0 00-.707-.708L3.5 11.293V2.5zm3.5 1a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zM7.5 6a.5.5 0 000 1h5a.5.5 0 000-1h-5zm0 3a.5.5 0 000 1h3a.5.5 0 000-1h-3zm0 3a.5.5 0 000 1h1a.5.5 0 000-1h-1z"/></symbol><symbol fill="currentColor" class="bi bi-sort-down-alt" viewBox="0 0 16 16" id="sort-down-alt" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 3.5a.5.5 0 00-1 0v8.793l-1.146-1.147a.5.5 0 00-.708.708l2 1.999.007.007a.497.497 0 00.7-.006l2-2a.5.5 0 00-.707-.708L3.5 12.293V3.5zm4 .5a.5.5 0 010-1h1a.5.5 0 010 1h-1zm0 3a.5.5 0 010-1h3a.5.5 0 010 1h-3zm0 3a.5.5 0 010-1h5a.5.5 0 010 1h-5zM7 12.5a.5.5 0 00.5.5h7a.5.5 0 000-1h-7a.5.5 0 00-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-numeric-down" viewBox="0 0 16 16" id="sort-numeric-down" xmlns="http://www.w3.org/2000/svg"><path d="M12.438 1.668V7H11.39V2.684h-.051l-1.211.859v-.969l1.262-.906h1.046z"/><path fill-rule="evenodd" d="M11.36 14.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.835 1.973-1.835 1.09 0 2.063.636 2.063 2.687 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98z"/><path d="M4.5 2.5a.5.5 0 00-1 0v9.793l-1.146-1.147a.5.5 0 00-.708.708l2 1.999.007.007a.497.497 0 00.7-.006l2-2a.5.5 0 00-.707-.708L4.5 12.293V2.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-numeric-down-alt" viewBox="0 0 16 16" id="sort-numeric-down-alt" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11.36 7.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.836 1.973-1.836 1.09 0 2.063.637 2.063 2.688 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98z"/><path d="M12.438 8.668V14H11.39V9.684h-.051l-1.211.859v-.969l1.262-.906h1.046zM4.5 2.5a.5.5 0 00-1 0v9.793l-1.146-1.147a.5.5 0 00-.708.708l2 1.999.007.007a.497.497 0 00.7-.006l2-2a.5.5 0 00-.707-.708L4.5 12.293V2.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-numeric-up" viewBox="0 0 16 16" id="sort-numeric-up" xmlns="http://www.w3.org/2000/svg"><path d="M12.438 1.668V7H11.39V2.684h-.051l-1.211.859v-.969l1.262-.906h1.046z"/><path fill-rule="evenodd" d="M11.36 14.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.835 1.973-1.835 1.09 0 2.063.636 2.063 2.687 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98z"/><path d="M4.5 13.5a.5.5 0 01-1 0V3.707L2.354 4.854a.5.5 0 11-.708-.708l2-1.999.007-.007a.498.498 0 01.7.006l2 2a.5.5 0 11-.707.708L4.5 3.707V13.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-numeric-up-alt" viewBox="0 0 16 16" id="sort-numeric-up-alt" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11.36 7.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.836 1.973-1.836 1.09 0 2.063.637 2.063 2.688 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98z"/><path d="M12.438 8.668V14H11.39V9.684h-.051l-1.211.859v-.969l1.262-.906h1.046zM4.5 13.5a.5.5 0 01-1 0V3.707L2.354 4.854a.5.5 0 11-.708-.708l2-1.999.007-.007a.498.498 0 01.7.006l2 2a.5.5 0 11-.707.708L4.5 3.707V13.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-up" viewBox="0 0 16 16" id="sort-up" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 12.5a.5.5 0 01-1 0V3.707L1.354 4.854a.5.5 0 11-.708-.708l2-1.999.007-.007a.498.498 0 01.7.006l2 2a.5.5 0 11-.707.708L3.5 3.707V12.5zm3.5-9a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zM7.5 6a.5.5 0 000 1h5a.5.5 0 000-1h-5zm0 3a.5.5 0 000 1h3a.5.5 0 000-1h-3zm0 3a.5.5 0 000 1h1a.5.5 0 000-1h-1z"/></symbol><symbol fill="currentColor" class="bi bi-sort-up-alt" viewBox="0 0 16 16" id="sort-up-alt" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 13.5a.5.5 0 01-1 0V4.707L1.354 5.854a.5.5 0 11-.708-.708l2-1.999.007-.007a.498.498 0 01.7.006l2 2a.5.5 0 11-.707.708L3.5 4.707V13.5zm4-9.5a.5.5 0 010-1h1a.5.5 0 010 1h-1zm0 3a.5.5 0 010-1h3a.5.5 0 010 1h-3zm0 3a.5.5 0 010-1h5a.5.5 0 010 1h-5zM7 12.5a.5.5 0 00.5.5h7a.5.5 0 000-1h-7a.5.5 0 00-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-soundwave" viewBox="0 0 16 16" id="soundwave" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8.5 2a.5.5 0 01.5.5v11a.5.5 0 01-1 0v-11a.5.5 0 01.5-.5zm-2 2a.5.5 0 01.5.5v7a.5.5 0 01-1 0v-7a.5.5 0 01.5-.5zm4 0a.5.5 0 01.5.5v7a.5.5 0 01-1 0v-7a.5.5 0 01.5-.5zm-6 1.5A.5.5 0 015 6v4a.5.5 0 01-1 0V6a.5.5 0 01.5-.5zm8 0a.5.5 0 01.5.5v4a.5.5 0 01-1 0V6a.5.5 0 01.5-.5zm-10 1A.5.5 0 013 7v2a.5.5 0 01-1 0V7a.5.5 0 01.5-.5zm12 0a.5.5 0 01.5.5v2a.5.5 0 01-1 0V7a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-speaker" viewBox="0 0 16 16" id="speaker" xmlns="http://www.w3.org/2000/svg"><path d="M12 1a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h8zM4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4z"/><path d="M8 4.75a.75.75 0 110-1.5.75.75 0 010 1.5zM8 6a2 2 0 100-4 2 2 0 000 4zm0 3a1.5 1.5 0 100 3 1.5 1.5 0 000-3zm-3.5 1.5a3.5 3.5 0 117 0 3.5 3.5 0 01-7 0z"/></symbol><symbol fill="currentColor" class="bi bi-speaker-fill" viewBox="0 0 16 16" id="speaker-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9 4a1 1 0 11-2 0 1 1 0 012 0zm-2.5 6.5a1.5 1.5 0 113 0 1.5 1.5 0 01-3 0z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm6 4a2 2 0 11-4 0 2 2 0 014 0zM8 7a3.5 3.5 0 110 7 3.5 3.5 0 010-7z"/></symbol><symbol fill="currentColor" class="bi bi-speedometer" viewBox="0 0 16 16" id="speedometer" xmlns="http://www.w3.org/2000/svg"><path d="M8 2a.5.5 0 01.5.5V4a.5.5 0 01-1 0V2.5A.5.5 0 018 2zM3.732 3.732a.5.5 0 01.707 0l.915.914a.5.5 0 11-.708.708l-.914-.915a.5.5 0 010-.707zM2 8a.5.5 0 01.5-.5h1.586a.5.5 0 010 1H2.5A.5.5 0 012 8zm9.5 0a.5.5 0 01.5-.5h1.5a.5.5 0 010 1H12a.5.5 0 01-.5-.5zm.754-4.246a.389.389 0 00-.527-.02L7.547 7.31A.91.91 0 108.85 8.569l3.434-4.297a.389.389 0 00-.029-.518z"/><path fill-rule="evenodd" d="M6.664 15.889A8 8 0 119.336.11a8 8 0 01-2.672 15.78zm-4.665-4.283A11.945 11.945 0 018 10c2.186 0 4.236.585 6.001 1.606a7 7 0 10-12.002 0z"/></symbol><symbol fill="currentColor" class="bi bi-speedometer2" viewBox="0 0 16 16" id="speedometer2" xmlns="http://www.w3.org/2000/svg"><path d="M8 4a.5.5 0 01.5.5V6a.5.5 0 01-1 0V4.5A.5.5 0 018 4zM3.732 5.732a.5.5 0 01.707 0l.915.914a.5.5 0 11-.708.708l-.914-.915a.5.5 0 010-.707zM2 10a.5.5 0 01.5-.5h1.586a.5.5 0 010 1H2.5A.5.5 0 012 10zm9.5 0a.5.5 0 01.5-.5h1.5a.5.5 0 010 1H12a.5.5 0 01-.5-.5zm.754-4.246a.389.389 0 00-.527-.02L7.547 9.31a.91.91 0 101.302 1.258l3.434-4.297a.389.389 0 00-.029-.518z"/><path fill-rule="evenodd" d="M0 10a8 8 0 1115.547 2.661c-.442 1.253-1.845 1.602-2.932 1.25C11.309 13.488 9.475 13 8 13c-1.474 0-3.31.488-4.615.911-1.087.352-2.49.003-2.932-1.25A7.988 7.988 0 010 10zm8-7a7 7 0 00-6.603 9.329c.203.575.923.876 1.68.63C4.397 12.533 6.358 12 8 12s3.604.532 4.923.96c.757.245 1.477-.056 1.68-.631A7 7 0 008 3z"/></symbol><symbol fill="currentColor" class="bi bi-spellcheck" viewBox="0 0 16 16" id="spellcheck" xmlns="http://www.w3.org/2000/svg"><path d="M8.217 11.068c1.216 0 1.948-.869 1.948-2.31v-.702c0-1.44-.727-2.305-1.929-2.305-.742 0-1.328.347-1.499.889h-.063V3.983h-1.29V11h1.27v-.791h.064c.21.532.776.86 1.499.86zm-.43-1.025c-.66 0-1.113-.518-1.113-1.28V8.12c0-.825.42-1.343 1.098-1.343.684 0 1.075.518 1.075 1.416v.45c0 .888-.386 1.401-1.06 1.401zm-5.583 1.035c.767 0 1.201-.356 1.406-.737h.059V11h1.216V7.519c0-1.314-.947-1.783-2.11-1.783C1.355 5.736.75 6.42.69 7.27h1.216c.064-.323.313-.552.84-.552.527 0 .864.249.864.771v.464H2.346C1.145 7.953.5 8.568.5 9.496c0 .977.693 1.582 1.704 1.582zm.42-.947c-.44 0-.845-.235-.845-.718 0-.395.269-.684.84-.684h.991v.538c0 .503-.444.864-.986.864zm8.897.567c-.577-.4-.9-1.088-.9-1.983v-.65c0-1.42.894-2.338 2.305-2.338 1.352 0 2.119.82 2.139 1.806h-1.187c-.04-.351-.283-.776-.918-.776-.674 0-1.045.517-1.045 1.328v.625c0 .468.121.834.343 1.067l-.737.92z"/><path d="M14.469 9.414a.75.75 0 01.117 1.055l-4 5a.75.75 0 01-1.116.061l-2.5-2.5a.75.75 0 111.06-1.06l1.908 1.907 3.476-4.346a.75.75 0 011.055-.117z"/></symbol><symbol fill="currentColor" class="bi bi-square" viewBox="0 0 16 16" id="square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-square-fill" viewBox="0 0 16 16" id="square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2z"/></symbol><symbol fill="currentColor" class="bi bi-square-half" viewBox="0 0 16 16" id="square-half" xmlns="http://www.w3.org/2000/svg"><path d="M8 15V1h6a1 1 0 011 1v12a1 1 0 01-1 1H8zm6 1a2 2 0 002-2V2a2 2 0 00-2-2H2a2 2 0 00-2 2v12a2 2 0 002 2h12z"/></symbol><symbol fill="currentColor" class="bi bi-stack" viewBox="0 0 16 16" id="stack" xmlns="http://www.w3.org/2000/svg"><path d="M14.12 10.163l1.715.858c.22.11.22.424 0 .534L8.267 15.34a.598.598 0 01-.534 0L.165 11.555a.299.299 0 010-.534l1.716-.858 5.317 2.659c.505.252 1.1.252 1.604 0l5.317-2.66zM7.733.063a.598.598 0 01.534 0l7.568 3.784a.3.3 0 010 .535L8.267 8.165a.598.598 0 01-.534 0L.165 4.382a.299.299 0 010-.535L7.733.063z"/><path d="M14.12 6.576l1.715.858c.22.11.22.424 0 .534l-7.568 3.784a.598.598 0 01-.534 0L.165 7.968a.299.299 0 010-.534l1.716-.858 5.317 2.659c.505.252 1.1.252 1.604 0l5.317-2.659z"/></symbol><symbol fill="currentColor" class="bi bi-star" viewBox="0 0 16 16" id="star" xmlns="http://www.w3.org/2000/svg"><path d="M2.866 14.85c-.078.444.36.791.746.593l4.39-2.256 4.389 2.256c.386.198.824-.149.746-.592l-.83-4.73 3.522-3.356c.33-.314.16-.888-.282-.95l-4.898-.696L8.465.792a.513.513 0 00-.927 0L5.354 5.12l-4.898.696c-.441.062-.612.636-.283.95l3.523 3.356-.83 4.73zm4.905-2.767l-3.686 1.894.694-3.957a.565.565 0 00-.163-.505L1.71 6.745l4.052-.576a.525.525 0 00.393-.288L8 2.223l1.847 3.658a.525.525 0 00.393.288l4.052.575-2.906 2.77a.565.565 0 00-.163.506l.694 3.957-3.686-1.894a.503.503 0 00-.461 0z"/></symbol><symbol fill="currentColor" class="bi bi-star-fill" viewBox="0 0 16 16" id="star-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.612 15.443c-.386.198-.824-.149-.746-.592l.83-4.73L.173 6.765c-.329-.314-.158-.888.283-.95l4.898-.696L7.538.792c.197-.39.73-.39.927 0l2.184 4.327 4.898.696c.441.062.612.636.282.95l-3.522 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256z"/></symbol><symbol fill="currentColor" class="bi bi-star-half" viewBox="0 0 16 16" id="star-half" xmlns="http://www.w3.org/2000/svg"><path d="M5.354 5.119L7.538.792A.516.516 0 018 .5c.183 0 .366.097.465.292l2.184 4.327 4.898.696A.537.537 0 0116 6.32a.548.548 0 01-.17.445l-3.523 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256a.52.52 0 01-.146.05c-.342.06-.668-.254-.6-.642l.83-4.73L.173 6.765a.55.55 0 01-.172-.403.58.58 0 01.085-.302.513.513 0 01.37-.245l4.898-.696zM8 12.027a.5.5 0 01.232.056l3.686 1.894-.694-3.957a.565.565 0 01.162-.505l2.907-2.77-4.052-.576a.525.525 0 01-.393-.288L8.001 2.223 8 2.226v9.8z"/></symbol><symbol fill="currentColor" class="bi bi-stars" viewBox="0 0 16 16" id="stars" xmlns="http://www.w3.org/2000/svg"><path d="M7.657 6.247c.11-.33.576-.33.686 0l.645 1.937a2.89 2.89 0 001.829 1.828l1.936.645c.33.11.33.576 0 .686l-1.937.645a2.89 2.89 0 00-1.828 1.829l-.645 1.936a.361.361 0 01-.686 0l-.645-1.937a2.89 2.89 0 00-1.828-1.828l-1.937-.645a.361.361 0 010-.686l1.937-.645a2.89 2.89 0 001.828-1.828l.645-1.937zM3.794 1.148a.217.217 0 01.412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 010 .412l-1.162.387A1.734 1.734 0 004.593 5.69l-.387 1.162a.217.217 0 01-.412 0L3.407 5.69A1.734 1.734 0 002.31 4.593l-1.162-.387a.217.217 0 010-.412l1.162-.387A1.734 1.734 0 003.407 2.31l.387-1.162zM10.863.099a.145.145 0 01.274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 010 .274l-.774.258a1.156 1.156 0 00-.732.732l-.258.774a.145.145 0 01-.274 0l-.258-.774a1.156 1.156 0 00-.732-.732L9.1 2.137a.145.145 0 010-.274l.774-.258c.346-.115.617-.386.732-.732L10.863.1z"/></symbol><symbol fill="currentColor" class="bi bi-stickies" viewBox="0 0 16 16" id="stickies" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 0A1.5 1.5 0 000 1.5V13a1 1 0 001 1V1.5a.5.5 0 01.5-.5H14a1 1 0 00-1-1H1.5z"/><path d="M3.5 2A1.5 1.5 0 002 3.5v11A1.5 1.5 0 003.5 16h6.086a1.5 1.5 0 001.06-.44l4.915-4.914A1.5 1.5 0 0016 9.586V3.5A1.5 1.5 0 0014.5 2h-11zM3 3.5a.5.5 0 01.5-.5h11a.5.5 0 01.5.5V9h-4.5A1.5 1.5 0 009 10.5V15H3.5a.5.5 0 01-.5-.5v-11zm7 11.293V10.5a.5.5 0 01.5-.5h4.293L10 14.793z"/></symbol><symbol fill="currentColor" class="bi bi-stickies-fill" viewBox="0 0 16 16" id="stickies-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5V13a1 1 0 001 1V1.5a.5.5 0 01.5-.5H14a1 1 0 00-1-1H1.5A1.5 1.5 0 000 1.5z"/><path d="M3.5 2A1.5 1.5 0 002 3.5v11A1.5 1.5 0 003.5 16h6.086a1.5 1.5 0 001.06-.44l4.915-4.914A1.5 1.5 0 0016 9.586V3.5A1.5 1.5 0 0014.5 2h-11zm6 8.5a1 1 0 011-1h4.396a.25.25 0 01.177.427l-5.146 5.146a.25.25 0 01-.427-.177V10.5z"/></symbol><symbol fill="currentColor" class="bi bi-sticky" viewBox="0 0 16 16" id="sticky" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 1A1.5 1.5 0 001 2.5v11A1.5 1.5 0 002.5 15h6.086a1.5 1.5 0 001.06-.44l4.915-4.914A1.5 1.5 0 0015 8.586V2.5A1.5 1.5 0 0013.5 1h-11zM2 2.5a.5.5 0 01.5-.5h11a.5.5 0 01.5.5V8H9.5A1.5 1.5 0 008 9.5V14H2.5a.5.5 0 01-.5-.5v-11zm7 11.293V9.5a.5.5 0 01.5-.5h4.293L9 13.793z"/></symbol><symbol fill="currentColor" class="bi bi-sticky-fill" viewBox="0 0 16 16" id="sticky-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 1A1.5 1.5 0 001 2.5v11A1.5 1.5 0 002.5 15h6.086a1.5 1.5 0 001.06-.44l4.915-4.914A1.5 1.5 0 0015 8.586V2.5A1.5 1.5 0 0013.5 1h-11zm6 8.5a1 1 0 011-1h4.396a.25.25 0 01.177.427l-5.146 5.146a.25.25 0 01-.427-.177V9.5z"/></symbol><symbol fill="currentColor" class="bi bi-stop" viewBox="0 0 16 16" id="stop" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 5A1.5 1.5 0 015 3.5h6A1.5 1.5 0 0112.5 5v6a1.5 1.5 0 01-1.5 1.5H5A1.5 1.5 0 013.5 11V5zM5 4.5a.5.5 0 00-.5.5v6a.5.5 0 00.5.5h6a.5.5 0 00.5-.5V5a.5.5 0 00-.5-.5H5z"/></symbol><symbol fill="currentColor" class="bi bi-stop-btn" viewBox="0 0 16 16" id="stop-btn" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 5A1.5 1.5 0 005 6.5v3A1.5 1.5 0 006.5 11h3A1.5 1.5 0 0011 9.5v-3A1.5 1.5 0 009.5 5h-3z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-stop-btn-fill" viewBox="0 0 16 16" id="stop-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm6.5-7A1.5 1.5 0 005 6.5v3A1.5 1.5 0 006.5 11h3A1.5 1.5 0 0011 9.5v-3A1.5 1.5 0 009.5 5h-3z"/></symbol><symbol fill="currentColor" class="bi bi-stop-circle" viewBox="0 0 16 16" id="stop-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M5 6.5A1.5 1.5 0 016.5 5h3A1.5 1.5 0 0111 6.5v3A1.5 1.5 0 019.5 11h-3A1.5 1.5 0 015 9.5v-3z"/></symbol><symbol fill="currentColor" class="bi bi-stop-circle-fill" viewBox="0 0 16 16" id="stop-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM6.5 5A1.5 1.5 0 005 6.5v3A1.5 1.5 0 006.5 11h3A1.5 1.5 0 0011 9.5v-3A1.5 1.5 0 009.5 5h-3z"/></symbol><symbol fill="currentColor" class="bi bi-stop-fill" viewBox="0 0 16 16" id="stop-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5 3.5h6A1.5 1.5 0 0112.5 5v6a1.5 1.5 0 01-1.5 1.5H5A1.5 1.5 0 013.5 11V5A1.5 1.5 0 015 3.5z"/></symbol><symbol fill="currentColor" class="bi bi-stoplights" viewBox="0 0 16 16" id="stoplights" xmlns="http://www.w3.org/2000/svg"><path d="M8 5a1.5 1.5 0 100-3 1.5 1.5 0 000 3zm0 4a1.5 1.5 0 100-3 1.5 1.5 0 000 3zm1.5 2.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/><path d="M4 2a2 2 0 012-2h4a2 2 0 012 2h2c-.167.5-.8 1.6-2 2v2h2c-.167.5-.8 1.6-2 2v2h2c-.167.5-.8 1.6-2 2v1a2 2 0 01-2 2H6a2 2 0 01-2-2v-1c-1.2-.4-1.833-1.5-2-2h2V8c-1.2-.4-1.833-1.5-2-2h2V4c-1.2-.4-1.833-1.5-2-2h2zm2-1a1 1 0 00-1 1v11a1 1 0 001 1h4a1 1 0 001-1V2a1 1 0 00-1-1H6z"/></symbol><symbol fill="currentColor" class="bi bi-stoplights-fill" viewBox="0 0 16 16" id="stoplights-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 0a2 2 0 00-2 2H2c.167.5.8 1.6 2 2v2H2c.167.5.8 1.6 2 2v2H2c.167.5.8 1.6 2 2v1a2 2 0 002 2h4a2 2 0 002-2v-1c1.2-.4 1.833-1.5 2-2h-2V8c1.2-.4 1.833-1.5 2-2h-2V4c1.2-.4 1.833-1.5 2-2h-2a2 2 0 00-2-2H6zm3.5 3.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM8 13a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-stopwatch" viewBox="0 0 16 16" id="stopwatch" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 5.6a.5.5 0 10-1 0v2.9h-3a.5.5 0 000 1H8a.5.5 0 00.5-.5V5.6z"/><path d="M6.5 1A.5.5 0 017 .5h2a.5.5 0 010 1v.57c1.36.196 2.594.78 3.584 1.64a.715.715 0 01.012-.013l.354-.354-.354-.353a.5.5 0 01.707-.708l1.414 1.415a.5.5 0 11-.707.707l-.353-.354-.354.354a.512.512 0 01-.013.012A7 7 0 117 2.071V1.5a.5.5 0 01-.5-.5zM8 3a6 6 0 10.001 12A6 6 0 008 3z"/></symbol><symbol fill="currentColor" class="bi bi-stopwatch-fill" viewBox="0 0 16 16" id="stopwatch-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 0a.5.5 0 000 1H7v1.07A7.001 7.001 0 008 16a7 7 0 005.29-11.584.531.531 0 00.013-.012l.354-.354.353.354a.5.5 0 10.707-.707l-1.414-1.415a.5.5 0 10-.707.707l.354.354-.354.354a.717.717 0 00-.012.012A6.973 6.973 0 009 2.071V1h.5a.5.5 0 000-1h-3zm2 5.6V9a.5.5 0 01-.5.5H4.5a.5.5 0 010-1h3V5.6a.5.5 0 111 0z"/></symbol><symbol fill="currentColor" class="bi bi-subtract" viewBox="0 0 16 16" id="subtract" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h8a2 2 0 012 2v2h2a2 2 0 012 2v8a2 2 0 01-2 2H6a2 2 0 01-2-2v-2H2a2 2 0 01-2-2V2zm2-1a1 1 0 00-1 1v8a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1H2z"/></symbol><symbol fill="currentColor" class="bi bi-suit-club" viewBox="0 0 16 16" id="suit-club" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a3.25 3.25 0 00-3.25 3.25c0 .186 0 .29.016.41.014.12.045.27.12.527l.19.665-.692-.028a3.25 3.25 0 102.357 5.334.5.5 0 01.844.518l-.003.005-.006.015-.024.055a21.893 21.893 0 01-.438.92 22.38 22.38 0 01-1.266 2.197c-.013.018-.02.05.001.09.01.02.021.03.03.036A.036.036 0 005.9 15h4.2c.01 0 .016-.002.022-.006a.092.092 0 00.029-.035c.02-.04.014-.073.001-.091a22.875 22.875 0 01-1.704-3.117l-.024-.054-.006-.015-.002-.004a.5.5 0 01.838-.524c.601.7 1.516 1.168 2.496 1.168a3.25 3.25 0 10-.139-6.498l-.699.03.199-.671c.14-.47.14-.745.139-.927V4.25A3.25 3.25 0 008 1zm2.207 12.024c.225.405.487.848.78 1.294C11.437 15 10.975 16 10.1 16H5.9c-.876 0-1.338-1-.887-1.683.291-.442.552-.88.776-1.283a4.25 4.25 0 11-2.007-8.187 2.79 2.79 0 01-.009-.064c-.023-.187-.023-.348-.023-.52V4.25a4.25 4.25 0 018.5 0c0 .14 0 .333-.04.596a4.25 4.25 0 01-.46 8.476 4.186 4.186 0 01-1.543-.298z"/></symbol><symbol fill="currentColor" class="bi bi-suit-club-fill" viewBox="0 0 16 16" id="suit-club-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.5 12.5a3.493 3.493 0 01-2.684-1.254 19.92 19.92 0 001.582 2.907c.231.35-.02.847-.438.847H6.04c-.419 0-.67-.497-.438-.847a19.919 19.919 0 001.582-2.907 3.5 3.5 0 11-2.538-5.743 3.5 3.5 0 116.708 0A3.5 3.5 0 1111.5 12.5z"/></symbol><symbol fill="currentColor" class="bi bi-suit-diamond" viewBox="0 0 16 16" id="suit-diamond" xmlns="http://www.w3.org/2000/svg"><path d="M8.384 1.226a.463.463 0 00-.768 0l-4.56 6.468a.537.537 0 000 .612l4.56 6.469a.463.463 0 00.768 0l4.56-6.469a.537.537 0 000-.612l-4.56-6.468zM6.848.613a1.39 1.39 0 012.304 0l4.56 6.468a1.61 1.61 0 010 1.838l-4.56 6.468a1.39 1.39 0 01-2.304 0L2.288 8.92a1.61 1.61 0 010-1.838L6.848.613z"/></symbol><symbol fill="currentColor" class="bi bi-suit-diamond-fill" viewBox="0 0 16 16" id="suit-diamond-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.45 7.4L7.2 1.067a1 1 0 011.6 0L13.55 7.4a1 1 0 010 1.2L8.8 14.933a1 1 0 01-1.6 0L2.45 8.6a1 1 0 010-1.2z"/></symbol><symbol fill="currentColor" class="bi bi-suit-heart" viewBox="0 0 16 16" id="suit-heart" xmlns="http://www.w3.org/2000/svg"><path d="M8 6.236l-.894-1.789c-.222-.443-.607-1.08-1.152-1.595C5.418 2.345 4.776 2 4 2 2.324 2 1 3.326 1 4.92c0 1.211.554 2.066 1.868 3.37.337.334.721.695 1.146 1.093C5.122 10.423 6.5 11.717 8 13.447c1.5-1.73 2.878-3.024 3.986-4.064.425-.398.81-.76 1.146-1.093C14.446 6.986 15 6.131 15 4.92 15 3.326 13.676 2 12 2c-.777 0-1.418.345-1.954.852-.545.515-.93 1.152-1.152 1.595L8 6.236zm.392 8.292a.513.513 0 01-.784 0c-1.601-1.902-3.05-3.262-4.243-4.381C1.3 8.208 0 6.989 0 4.92 0 2.755 1.79 1 4 1c1.6 0 2.719 1.05 3.404 2.008.26.365.458.716.596.992a7.55 7.55 0 01.596-.992C9.281 2.049 10.4 1 12 1c2.21 0 4 1.755 4 3.92 0 2.069-1.3 3.288-3.365 5.227-1.193 1.12-2.642 2.48-4.243 4.38z"/></symbol><symbol fill="currentColor" class="bi bi-suit-heart-fill" viewBox="0 0 16 16" id="suit-heart-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 1c2.21 0 4 1.755 4 3.92C8 2.755 9.79 1 12 1s4 1.755 4 3.92c0 3.263-3.234 4.414-7.608 9.608a.513.513 0 01-.784 0C3.234 9.334 0 8.183 0 4.92 0 2.755 1.79 1 4 1z"/></symbol><symbol fill="currentColor" class="bi bi-suit-spade" viewBox="0 0 16 16" id="suit-spade" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a.5.5 0 01.429.243c1.359 2.265 2.925 3.682 4.25 4.882.096.086.19.17.282.255C14.308 6.604 15.5 7.747 15.5 9.5a4 4 0 01-5.406 3.746c.235.39.491.782.722 1.131.434.659-.01 1.623-.856 1.623H6.04c-.845 0-1.29-.964-.856-1.623.263-.397.51-.777.728-1.134A4 4 0 01.5 9.5c0-1.753 1.192-2.896 2.539-4.12l.281-.255c1.326-1.2 2.892-2.617 4.251-4.882A.5.5 0 018 0zM3.711 6.12C2.308 7.396 1.5 8.253 1.5 9.5a3 3 0 005.275 1.956.5.5 0 01.868.43c-.094.438-.33.932-.611 1.428a29.247 29.247 0 01-1.013 1.614.03.03 0 00-.005.018.074.074 0 00.024.054h3.924a.074.074 0 00.024-.054.03.03 0 00-.005-.018c-.3-.455-.658-1.005-.96-1.535-.294-.514-.57-1.064-.664-1.507a.5.5 0 01.868-.43A3 3 0 0014.5 9.5c0-1.247-.808-2.104-2.211-3.38L12 5.86c-1.196-1.084-2.668-2.416-4-4.424-1.332 2.008-2.804 3.34-4 4.422l-.289.261z"/></symbol><symbol fill="currentColor" class="bi bi-suit-spade-fill" viewBox="0 0 16 16" id="suit-spade-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.184 11.246A3.5 3.5 0 011 9c0-1.602 1.14-2.633 2.66-4.008C4.986 3.792 6.602 2.33 8 0c1.398 2.33 3.014 3.792 4.34 4.992C13.86 6.367 15 7.398 15 9a3.5 3.5 0 01-6.184 2.246 19.92 19.92 0 001.582 2.907c.231.35-.02.847-.438.847H6.04c-.419 0-.67-.497-.438-.847a19.919 19.919 0 001.582-2.907z"/></symbol><symbol fill="currentColor" class="bi bi-sun" viewBox="0 0 16 16" id="sun" xmlns="http://www.w3.org/2000/svg"><path d="M8 11a3 3 0 110-6 3 3 0 010 6zm0 1a4 4 0 100-8 4 4 0 000 8zM8 0a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 0zm0 13a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 13zm8-5a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2a.5.5 0 01.5.5zM3 8a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2A.5.5 0 013 8zm10.657-5.657a.5.5 0 010 .707l-1.414 1.415a.5.5 0 11-.707-.708l1.414-1.414a.5.5 0 01.707 0zm-9.193 9.193a.5.5 0 010 .707L3.05 13.657a.5.5 0 01-.707-.707l1.414-1.414a.5.5 0 01.707 0zm9.193 2.121a.5.5 0 01-.707 0l-1.414-1.414a.5.5 0 01.707-.707l1.414 1.414a.5.5 0 010 .707zM4.464 4.465a.5.5 0 01-.707 0L2.343 3.05a.5.5 0 11.707-.707l1.414 1.414a.5.5 0 010 .708z"/></symbol><symbol fill="currentColor" class="bi bi-sun-fill" viewBox="0 0 16 16" id="sun-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 12a4 4 0 100-8 4 4 0 000 8zM8 0a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 0zm0 13a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 13zm8-5a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2a.5.5 0 01.5.5zM3 8a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2A.5.5 0 013 8zm10.657-5.657a.5.5 0 010 .707l-1.414 1.415a.5.5 0 11-.707-.708l1.414-1.414a.5.5 0 01.707 0zm-9.193 9.193a.5.5 0 010 .707L3.05 13.657a.5.5 0 01-.707-.707l1.414-1.414a.5.5 0 01.707 0zm9.193 2.121a.5.5 0 01-.707 0l-1.414-1.414a.5.5 0 01.707-.707l1.414 1.414a.5.5 0 010 .707zM4.464 4.465a.5.5 0 01-.707 0L2.343 3.05a.5.5 0 11.707-.707l1.414 1.414a.5.5 0 010 .708z"/></symbol><symbol fill="currentColor" class="bi bi-sunglasses" viewBox="0 0 16 16" id="sunglasses" xmlns="http://www.w3.org/2000/svg"><path d="M3 5a2 2 0 00-2 2v.5H.5a.5.5 0 000 1H1V9a2 2 0 002 2h1a3 3 0 003-3 1 1 0 112 0 3 3 0 003 3h1a2 2 0 002-2v-.5h.5a.5.5 0 000-1H15V7a2 2 0 00-2-2h-2a2 2 0 00-1.888 1.338A1.99 1.99 0 008 6a1.99 1.99 0 00-1.112.338A2 2 0 005 5H3zm0 1h.941c.264 0 .348.356.112.474l-.457.228a2 2 0 00-.894.894l-.228.457C2.356 8.289 2 8.205 2 7.94V7a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-sunrise" viewBox="0 0 16 16" id="sunrise" xmlns="http://www.w3.org/2000/svg"><path d="M7.646 1.146a.5.5 0 01.708 0l1.5 1.5a.5.5 0 01-.708.708L8.5 2.707V4.5a.5.5 0 01-1 0V2.707l-.646.647a.5.5 0 11-.708-.708l1.5-1.5zM2.343 4.343a.5.5 0 01.707 0l1.414 1.414a.5.5 0 01-.707.707L2.343 5.05a.5.5 0 010-.707zm11.314 0a.5.5 0 010 .707l-1.414 1.414a.5.5 0 11-.707-.707l1.414-1.414a.5.5 0 01.707 0zM8 7a3 3 0 012.599 4.5H5.4A3 3 0 018 7zm3.71 4.5a4 4 0 10-7.418 0H.499a.5.5 0 000 1h15a.5.5 0 000-1h-3.79zM0 10a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2A.5.5 0 010 10zm13 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-sunrise-fill" viewBox="0 0 16 16" id="sunrise-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.646 1.146a.5.5 0 01.708 0l1.5 1.5a.5.5 0 01-.708.708L8.5 2.707V4.5a.5.5 0 01-1 0V2.707l-.646.647a.5.5 0 11-.708-.708l1.5-1.5zM2.343 4.343a.5.5 0 01.707 0l1.414 1.414a.5.5 0 01-.707.707L2.343 5.05a.5.5 0 010-.707zm11.314 0a.5.5 0 010 .707l-1.414 1.414a.5.5 0 11-.707-.707l1.414-1.414a.5.5 0 01.707 0zM11.709 11.5a4 4 0 10-7.418 0H.5a.5.5 0 000 1h15a.5.5 0 000-1h-3.79zM0 10a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2A.5.5 0 010 10zm13 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-sunset" viewBox="0 0 16 16" id="sunset" xmlns="http://www.w3.org/2000/svg"><path d="M7.646 4.854a.5.5 0 00.708 0l1.5-1.5a.5.5 0 00-.708-.708l-.646.647V1.5a.5.5 0 00-1 0v1.793l-.646-.647a.5.5 0 10-.708.708l1.5 1.5zm-5.303-.51a.5.5 0 01.707 0l1.414 1.413a.5.5 0 01-.707.707L2.343 5.05a.5.5 0 010-.707zm11.314 0a.5.5 0 010 .706l-1.414 1.414a.5.5 0 11-.707-.707l1.414-1.414a.5.5 0 01.707 0zM8 7a3 3 0 012.599 4.5H5.4A3 3 0 018 7zm3.71 4.5a4 4 0 10-7.418 0H.499a.5.5 0 000 1h15a.5.5 0 000-1h-3.79zM0 10a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2A.5.5 0 010 10zm13 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-sunset-fill" viewBox="0 0 16 16" id="sunset-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.646 4.854a.5.5 0 00.708 0l1.5-1.5a.5.5 0 00-.708-.708l-.646.647V1.5a.5.5 0 00-1 0v1.793l-.646-.647a.5.5 0 10-.708.708l1.5 1.5zm-5.303-.51a.5.5 0 01.707 0l1.414 1.413a.5.5 0 01-.707.707L2.343 5.05a.5.5 0 010-.707zm11.314 0a.5.5 0 010 .706l-1.414 1.414a.5.5 0 11-.707-.707l1.414-1.414a.5.5 0 01.707 0zM11.709 11.5a4 4 0 10-7.418 0H.5a.5.5 0 000 1h15a.5.5 0 000-1h-3.79zM0 10a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2A.5.5 0 010 10zm13 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-symmetry-horizontal" viewBox="0 0 16 16" id="symmetry-horizontal" xmlns="http://www.w3.org/2000/svg"><path d="M13.5 7a.5.5 0 00.24-.939l-11-6A.5.5 0 002 .5v6a.5.5 0 00.5.5h11zm.485 2.376a.5.5 0 01-.246.563l-11 6A.5.5 0 012 15.5v-6a.5.5 0 01.5-.5h11a.5.5 0 01.485.376zM11.539 10H3v4.658L11.54 10z"/></symbol><symbol fill="currentColor" class="bi bi-symmetry-vertical" viewBox="0 0 16 16" id="symmetry-vertical" xmlns="http://www.w3.org/2000/svg"><path d="M7 2.5a.5.5 0 00-.939-.24l-6 11A.5.5 0 00.5 14h6a.5.5 0 00.5-.5v-11zm2.376-.484a.5.5 0 01.563.245l6 11A.5.5 0 0115.5 14h-6a.5.5 0 01-.5-.5v-11a.5.5 0 01.376-.484zM10 4.46V13h4.658L10 4.46z"/></symbol><symbol fill="currentColor" class="bi bi-table" viewBox="0 0 16 16" id="table" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm15 2h-4v3h4V4zm0 4h-4v3h4V8zm0 4h-4v3h3a1 1 0 001-1v-2zm-5 3v-3H6v3h4zm-5 0v-3H1v2a1 1 0 001 1h3zm-4-4h4V8H1v3zm0-4h4V4H1v3zm5-3v3h4V4H6zm4 4H6v3h4V8z"/></symbol><symbol fill="currentColor" class="bi bi-tablet" viewBox="0 0 16 16" id="tablet" xmlns="http://www.w3.org/2000/svg"><path d="M12 1a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h8zM4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4z"/><path d="M8 14a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-tablet-fill" viewBox="0 0 16 16" id="tablet-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm7 11a1 1 0 10-2 0 1 1 0 002 0z"/></symbol><symbol fill="currentColor" class="bi bi-tablet-landscape" viewBox="0 0 16 16" id="tablet-landscape" xmlns="http://www.w3.org/2000/svg"><path d="M1 4a1 1 0 011-1h12a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4zm-1 8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2a2 2 0 00-2 2v8z"/><path d="M14 8a1 1 0 10-2 0 1 1 0 002 0z"/></symbol><symbol fill="currentColor" class="bi bi-tablet-landscape-fill" viewBox="0 0 16 16" id="tablet-landscape-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 14a2 2 0 01-2-2V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2zm11-7a1 1 0 100 2 1 1 0 000-2z"/></symbol><symbol fill="currentColor" class="bi bi-tag" viewBox="0 0 16 16" id="tag" xmlns="http://www.w3.org/2000/svg"><path d="M6 4.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm-1 0a.5.5 0 10-1 0 .5.5 0 001 0z"/><path d="M2 1h4.586a1 1 0 01.707.293l7 7a1 1 0 010 1.414l-4.586 4.586a1 1 0 01-1.414 0l-7-7A1 1 0 011 6.586V2a1 1 0 011-1zm0 5.586l7 7L13.586 9l-7-7H2v4.586z"/></symbol><symbol fill="currentColor" class="bi bi-tag-fill" viewBox="0 0 16 16" id="tag-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 00-1 1v4.586a1 1 0 00.293.707l7 7a1 1 0 001.414 0l4.586-4.586a1 1 0 000-1.414l-7-7A1 1 0 006.586 1H2zm4 3.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-tags" viewBox="0 0 16 16" id="tags" xmlns="http://www.w3.org/2000/svg"><path d="M3 2v4.586l7 7L14.586 9l-7-7H3zM2 2a1 1 0 011-1h4.586a1 1 0 01.707.293l7 7a1 1 0 010 1.414l-4.586 4.586a1 1 0 01-1.414 0l-7-7A1 1 0 012 6.586V2z"/><path d="M5.5 5a.5.5 0 110-1 .5.5 0 010 1zm0 1a1.5 1.5 0 100-3 1.5 1.5 0 000 3zM1 7.086a1 1 0 00.293.707L8.75 15.25l-.043.043a1 1 0 01-1.414 0l-7-7A1 1 0 010 7.586V3a1 1 0 011-1v5.086z"/></symbol><symbol fill="currentColor" class="bi bi-tags-fill" viewBox="0 0 16 16" id="tags-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a1 1 0 011-1h4.586a1 1 0 01.707.293l7 7a1 1 0 010 1.414l-4.586 4.586a1 1 0 01-1.414 0l-7-7A1 1 0 012 6.586V2zm3.5 4a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/><path d="M1.293 7.793A1 1 0 011 7.086V2a1 1 0 00-1 1v4.586a1 1 0 00.293.707l7 7a1 1 0 001.414 0l.043-.043-7.457-7.457z"/></symbol><symbol fill="currentColor" class="bi bi-telegram" viewBox="0 0 16 16" id="telegram" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM8.287 5.906c-.778.324-2.334.994-4.666 2.01-.378.15-.577.298-.595.442-.03.243.275.339.69.47l.175.055c.408.133.958.288 1.243.294.26.006.549-.1.868-.32 2.179-1.471 3.304-2.214 3.374-2.23.05-.012.12-.026.166.016.047.041.042.12.037.141-.03.129-1.227 1.241-1.846 1.817-.193.18-.33.307-.358.336a8.154 8.154 0 01-.188.186c-.38.366-.664.64.015 1.088.327.216.589.393.85.571.284.194.568.387.936.629.093.06.183.125.27.187.331.236.63.448.997.414.214-.02.435-.22.547-.82.265-1.417.786-4.486.906-5.751a1.426 1.426 0 00-.013-.315.337.337 0 00-.114-.217.526.526 0 00-.31-.093c-.3.005-.763.166-2.984 1.09z"/></symbol><symbol fill="currentColor" class="bi bi-telephone" viewBox="0 0 16 16" id="telephone" xmlns="http://www.w3.org/2000/svg"><path d="M3.654 1.328a.678.678 0 00-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 004.168 6.608 17.569 17.569 0 006.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 00-.063-1.015l-2.307-1.794a.678.678 0 00-.58-.122l-2.19.547a1.745 1.745 0 01-1.657-.459L5.482 8.062a1.745 1.745 0 01-.46-1.657l.548-2.19a.678.678 0 00-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 012.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-fill" viewBox="0 0 16 16" id="telephone-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.885.511a1.745 1.745 0 012.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-forward" viewBox="0 0 16 16" id="telephone-forward" xmlns="http://www.w3.org/2000/svg"><path d="M3.654 1.328a.678.678 0 00-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 004.168 6.608 17.569 17.569 0 006.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 00-.063-1.015l-2.307-1.794a.678.678 0 00-.58-.122l-2.19.547a1.745 1.745 0 01-1.657-.459L5.482 8.062a1.745 1.745 0 01-.46-1.657l.548-2.19a.678.678 0 00-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 012.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zm10.762.135a.5.5 0 01.708 0l2.5 2.5a.5.5 0 010 .708l-2.5 2.5a.5.5 0 01-.708-.708L14.293 4H9.5a.5.5 0 010-1h4.793l-1.647-1.646a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-forward-fill" viewBox="0 0 16 16" id="telephone-forward-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.885.511a1.745 1.745 0 012.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zm10.761.135a.5.5 0 01.708 0l2.5 2.5a.5.5 0 010 .708l-2.5 2.5a.5.5 0 01-.708-.708L14.293 4H9.5a.5.5 0 010-1h4.793l-1.647-1.646a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-inbound" viewBox="0 0 16 16" id="telephone-inbound" xmlns="http://www.w3.org/2000/svg"><path d="M15.854.146a.5.5 0 010 .708L11.707 5H14.5a.5.5 0 010 1h-4a.5.5 0 01-.5-.5v-4a.5.5 0 011 0v2.793L15.146.146a.5.5 0 01.708 0zm-12.2 1.182a.678.678 0 00-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 004.168 6.608 17.569 17.569 0 006.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 00-.063-1.015l-2.307-1.794a.678.678 0 00-.58-.122l-2.19.547a1.745 1.745 0 01-1.657-.459L5.482 8.062a1.745 1.745 0 01-.46-1.657l.548-2.19a.678.678 0 00-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 012.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-inbound-fill" viewBox="0 0 16 16" id="telephone-inbound-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.885.511a1.745 1.745 0 012.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM15.854.146a.5.5 0 010 .708L11.707 5H14.5a.5.5 0 010 1h-4a.5.5 0 01-.5-.5v-4a.5.5 0 011 0v2.793L15.146.146a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-minus" viewBox="0 0 16 16" id="telephone-minus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10 3.5a.5.5 0 01.5-.5h4a.5.5 0 010 1h-4a.5.5 0 01-.5-.5z"/><path d="M3.654 1.328a.678.678 0 00-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 004.168 6.608 17.569 17.569 0 006.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 00-.063-1.015l-2.307-1.794a.678.678 0 00-.58-.122l-2.19.547a1.745 1.745 0 01-1.657-.459L5.482 8.062a1.745 1.745 0 01-.46-1.657l.548-2.19a.678.678 0 00-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 012.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-minus-fill" viewBox="0 0 16 16" id="telephone-minus-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.885.511a1.745 1.745 0 012.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM10 3.5a.5.5 0 01.5-.5h4a.5.5 0 010 1h-4a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-outbound" viewBox="0 0 16 16" id="telephone-outbound" xmlns="http://www.w3.org/2000/svg"><path d="M3.654 1.328a.678.678 0 00-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 004.168 6.608 17.569 17.569 0 006.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 00-.063-1.015l-2.307-1.794a.678.678 0 00-.58-.122l-2.19.547a1.745 1.745 0 01-1.657-.459L5.482 8.062a1.745 1.745 0 01-.46-1.657l.548-2.19a.678.678 0 00-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 012.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM11 .5a.5.5 0 01.5-.5h4a.5.5 0 01.5.5v4a.5.5 0 01-1 0V1.707l-4.146 4.147a.5.5 0 01-.708-.708L14.293 1H11.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-outbound-fill" viewBox="0 0 16 16" id="telephone-outbound-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.885.511a1.745 1.745 0 012.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM11 .5a.5.5 0 01.5-.5h4a.5.5 0 01.5.5v4a.5.5 0 01-1 0V1.707l-4.146 4.147a.5.5 0 01-.708-.708L14.293 1H11.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-plus" viewBox="0 0 16 16" id="telephone-plus" xmlns="http://www.w3.org/2000/svg"><path d="M3.654 1.328a.678.678 0 00-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 004.168 6.608 17.569 17.569 0 006.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 00-.063-1.015l-2.307-1.794a.678.678 0 00-.58-.122l-2.19.547a1.745 1.745 0 01-1.657-.459L5.482 8.062a1.745 1.745 0 01-.46-1.657l.548-2.19a.678.678 0 00-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 012.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z"/><path fill-rule="evenodd" d="M12.5 1a.5.5 0 01.5.5V3h1.5a.5.5 0 010 1H13v1.5a.5.5 0 01-1 0V4h-1.5a.5.5 0 010-1H12V1.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-plus-fill" viewBox="0 0 16 16" id="telephone-plus-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.885.511a1.745 1.745 0 012.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM12.5 1a.5.5 0 01.5.5V3h1.5a.5.5 0 010 1H13v1.5a.5.5 0 01-1 0V4h-1.5a.5.5 0 010-1H12V1.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-x" viewBox="0 0 16 16" id="telephone-x" xmlns="http://www.w3.org/2000/svg"><path d="M3.654 1.328a.678.678 0 00-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 004.168 6.608 17.569 17.569 0 006.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 00-.063-1.015l-2.307-1.794a.678.678 0 00-.58-.122l-2.19.547a1.745 1.745 0 01-1.657-.459L5.482 8.062a1.745 1.745 0 01-.46-1.657l.548-2.19a.678.678 0 00-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 012.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z"/><path fill-rule="evenodd" d="M11.146 1.646a.5.5 0 01.708 0L13 2.793l1.146-1.147a.5.5 0 01.708.708L13.707 3.5l1.147 1.146a.5.5 0 01-.708.708L13 4.207l-1.146 1.147a.5.5 0 01-.708-.708L12.293 3.5l-1.147-1.146a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-x-fill" viewBox="0 0 16 16" id="telephone-x-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.885.511a1.745 1.745 0 012.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zm9.261 1.135a.5.5 0 01.708 0L13 2.793l1.146-1.147a.5.5 0 01.708.708L13.707 3.5l1.147 1.146a.5.5 0 01-.708.708L13 4.207l-1.146 1.147a.5.5 0 01-.708-.708L12.293 3.5l-1.147-1.146a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-terminal" viewBox="0 0 16 16" id="terminal" xmlns="http://www.w3.org/2000/svg"><path d="M6 9a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3A.5.5 0 016 9zM3.854 4.146a.5.5 0 10-.708.708L4.793 6.5 3.146 8.146a.5.5 0 10.708.708l2-2a.5.5 0 000-.708l-2-2z"/><path d="M2 1a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V3a2 2 0 00-2-2H2zm12 1a1 1 0 011 1v10a1 1 0 01-1 1H2a1 1 0 01-1-1V3a1 1 0 011-1h12z"/></symbol><symbol fill="currentColor" class="bi bi-terminal-fill" viewBox="0 0 16 16" id="terminal-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 3a2 2 0 012-2h12a2 2 0 012 2v10a2 2 0 01-2 2H2a2 2 0 01-2-2V3zm9.5 5.5h-3a.5.5 0 000 1h3a.5.5 0 000-1zm-6.354-.354a.5.5 0 10.708.708l2-2a.5.5 0 000-.708l-2-2a.5.5 0 10-.708.708L4.793 6.5 3.146 8.146z"/></symbol><symbol fill="currentColor" class="bi bi-text-center" viewBox="0 0 16 16" id="text-center" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4 12.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm2-3a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-text-indent-left" viewBox="0 0 16 16" id="text-indent-left" xmlns="http://www.w3.org/2000/svg"><path d="M2 3.5a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm.646 2.146a.5.5 0 01.708 0l2 2a.5.5 0 010 .708l-2 2a.5.5 0 01-.708-.708L4.293 8 2.646 6.354a.5.5 0 010-.708zM7 6.5a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zm0 3a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zm-5 3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-text-indent-right" viewBox="0 0 16 16" id="text-indent-right" xmlns="http://www.w3.org/2000/svg"><path d="M2 3.5a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm10.646 2.146a.5.5 0 01.708.708L11.707 8l1.647 1.646a.5.5 0 01-.708.708l-2-2a.5.5 0 010-.708l2-2zM2 6.5a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zm0 3a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zm0 3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-text-left" viewBox="0 0 16 16" id="text-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 12.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-text-paragraph" viewBox="0 0 16 16" id="text-paragraph" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 12.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm4-3a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-text-right" viewBox="0 0 16 16" id="text-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 12.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-4-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm4-3a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-4-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-textarea" viewBox="0 0 16 16" id="textarea" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 2.5A1.5 1.5 0 013 1h10a1.5 1.5 0 011.5 1.5v3.563a2 2 0 010 3.874V13.5A1.5 1.5 0 0113 15H3a1.5 1.5 0 01-1.5-1.5V9.937a2 2 0 010-3.874V2.5zm1 3.563a2 2 0 010 3.874V13.5a.5.5 0 00.5.5h10a.5.5 0 00.5-.5V9.937a2 2 0 010-3.874V2.5A.5.5 0 0013 2H3a.5.5 0 00-.5.5v3.563zM2 7a1 1 0 100 2 1 1 0 000-2zm12 0a1 1 0 100 2 1 1 0 000-2z"/></symbol><symbol fill="currentColor" class="bi bi-textarea-resize" viewBox="0 0 16 16" id="textarea-resize" xmlns="http://www.w3.org/2000/svg"><path d="M.5 4A2.5 2.5 0 013 1.5h12A2.5 2.5 0 0117.5 4v8a2.5 2.5 0 01-2.5 2.5H3A2.5 2.5 0 01.5 12V4zM3 2.5A1.5 1.5 0 001.5 4v8A1.5 1.5 0 003 13.5h12a1.5 1.5 0 001.5-1.5V4A1.5 1.5 0 0015 2.5H3zm11.854 5.646a.5.5 0 010 .708l-3 3a.5.5 0 01-.708-.708l3-3a.5.5 0 01.708 0zm0 2.5a.5.5 0 010 .708l-.5.5a.5.5 0 01-.708-.708l.5-.5a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-textarea-t" viewBox="0 0 16 16" id="textarea-t" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 2.5A1.5 1.5 0 013 1h10a1.5 1.5 0 011.5 1.5v3.563a2 2 0 010 3.874V13.5A1.5 1.5 0 0113 15H3a1.5 1.5 0 01-1.5-1.5V9.937a2 2 0 010-3.874V2.5zm1 3.563a2 2 0 010 3.874V13.5a.5.5 0 00.5.5h10a.5.5 0 00.5-.5V9.937a2 2 0 010-3.874V2.5A.5.5 0 0013 2H3a.5.5 0 00-.5.5v3.563zM2 7a1 1 0 100 2 1 1 0 000-2zm12 0a1 1 0 100 2 1 1 0 000-2z"/><path d="M11.434 4H4.566L4.5 5.994h.386c.21-1.252.612-1.446 2.173-1.495l.343-.011v6.343c0 .537-.116.665-1.049.748V12h3.294v-.421c-.938-.083-1.054-.21-1.054-.748V4.488l.348.01c1.56.05 1.963.244 2.173 1.496h.386L11.434 4z"/></symbol><symbol fill="currentColor" class="bi bi-thermometer" viewBox="0 0 16 16" id="thermometer" xmlns="http://www.w3.org/2000/svg"><path d="M8 14a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/><path d="M8 0a2.5 2.5 0 00-2.5 2.5v7.55a3.5 3.5 0 105 0V2.5A2.5 2.5 0 008 0zM6.5 2.5a1.5 1.5 0 113 0v7.987l.167.15a2.5 2.5 0 11-3.333 0l.166-.15V2.5z"/></symbol><symbol fill="currentColor" class="bi bi-thermometer-half" viewBox="0 0 16 16" id="thermometer-half" xmlns="http://www.w3.org/2000/svg"><path d="M9.5 12.5a1.5 1.5 0 11-2-1.415V6.5a.5.5 0 011 0v4.585a1.5 1.5 0 011 1.415z"/><path d="M5.5 2.5a2.5 2.5 0 015 0v7.55a3.5 3.5 0 11-5 0V2.5zM8 1a1.5 1.5 0 00-1.5 1.5v7.987l-.167.15a2.5 2.5 0 103.333 0l-.166-.15V2.5A1.5 1.5 0 008 1z"/></symbol><symbol fill="currentColor" class="bi bi-thermometer-high" viewBox="0 0 16 16" id="thermometer-high" xmlns="http://www.w3.org/2000/svg"><path d="M9.5 12.5a1.5 1.5 0 11-2-1.415V2.5a.5.5 0 011 0v8.585a1.5 1.5 0 011 1.415z"/><path d="M5.5 2.5a2.5 2.5 0 015 0v7.55a3.5 3.5 0 11-5 0V2.5zM8 1a1.5 1.5 0 00-1.5 1.5v7.987l-.167.15a2.5 2.5 0 103.333 0l-.166-.15V2.5A1.5 1.5 0 008 1z"/></symbol><symbol fill="currentColor" class="bi bi-thermometer-low" viewBox="0 0 16 16" id="thermometer-low" xmlns="http://www.w3.org/2000/svg"><path d="M9.5 12.5a1.5 1.5 0 11-2-1.415V9.5a.5.5 0 011 0v1.585a1.5 1.5 0 011 1.415z"/><path d="M5.5 2.5a2.5 2.5 0 015 0v7.55a3.5 3.5 0 11-5 0V2.5zM8 1a1.5 1.5 0 00-1.5 1.5v7.987l-.167.15a2.5 2.5 0 103.333 0l-.166-.15V2.5A1.5 1.5 0 008 1z"/></symbol><symbol fill="currentColor" class="bi bi-thermometer-snow" viewBox="0 0 16 16" id="thermometer-snow" xmlns="http://www.w3.org/2000/svg"><path d="M5 12.5a1.5 1.5 0 11-2-1.415V9.5a.5.5 0 011 0v1.585A1.5 1.5 0 015 12.5z"/><path d="M1 2.5a2.5 2.5 0 015 0v7.55a3.5 3.5 0 11-5 0V2.5zM3.5 1A1.5 1.5 0 002 2.5v7.987l-.167.15a2.5 2.5 0 103.333 0L5 10.486V2.5A1.5 1.5 0 003.5 1zm5 1a.5.5 0 01.5.5v1.293l.646-.647a.5.5 0 01.708.708L9 5.207v1.927l1.669-.963.495-1.85a.5.5 0 11.966.26l-.237.882 1.12-.646a.5.5 0 01.5.866l-1.12.646.884.237a.5.5 0 11-.26.966l-1.848-.495L9.5 8l1.669.963 1.849-.495a.5.5 0 11.258.966l-.883.237 1.12.646a.5.5 0 01-.5.866l-1.12-.646.237.883a.5.5 0 11-.966.258L10.67 9.83 9 8.866v1.927l1.354 1.353a.5.5 0 01-.708.708L9 12.207V13.5a.5.5 0 01-1 0v-11a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-thermometer-sun" viewBox="0 0 16 16" id="thermometer-sun" xmlns="http://www.w3.org/2000/svg"><path d="M5 12.5a1.5 1.5 0 11-2-1.415V2.5a.5.5 0 011 0v8.585A1.5 1.5 0 015 12.5z"/><path d="M1 2.5a2.5 2.5 0 015 0v7.55a3.5 3.5 0 11-5 0V2.5zM3.5 1A1.5 1.5 0 002 2.5v7.987l-.167.15a2.5 2.5 0 103.333 0L5 10.486V2.5A1.5 1.5 0 003.5 1zm5 1a.5.5 0 01.5.5v1a.5.5 0 01-1 0v-1a.5.5 0 01.5-.5zm4.243 1.757a.5.5 0 010 .707l-.707.708a.5.5 0 11-.708-.708l.708-.707a.5.5 0 01.707 0zM8 5.5a.5.5 0 01.5-.5 3 3 0 110 6 .5.5 0 010-1 2 2 0 000-4 .5.5 0 01-.5-.5zM12.5 8a.5.5 0 01.5-.5h1a.5.5 0 110 1h-1a.5.5 0 01-.5-.5zm-1.172 2.828a.5.5 0 01.708 0l.707.708a.5.5 0 01-.707.707l-.708-.707a.5.5 0 010-.708zM8.5 12a.5.5 0 01.5.5v1a.5.5 0 01-1 0v-1a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-three-dots" viewBox="0 0 16 16" id="three-dots" xmlns="http://www.w3.org/2000/svg"><path d="M3 9.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm5 0a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm5 0a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-three-dots-vertical" viewBox="0 0 16 16" id="three-dots-vertical" xmlns="http://www.w3.org/2000/svg"><path d="M9.5 13a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0-5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0-5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-toggle-off" viewBox="0 0 16 16" id="toggle-off" xmlns="http://www.w3.org/2000/svg"><path d="M11 4a4 4 0 010 8H8a4.992 4.992 0 002-4 4.992 4.992 0 00-2-4h3zm-6 8a4 4 0 110-8 4 4 0 010 8zM0 8a5 5 0 005 5h6a5 5 0 000-10H5a5 5 0 00-5 5z"/></symbol><symbol fill="currentColor" class="bi bi-toggle-on" viewBox="0 0 16 16" id="toggle-on" xmlns="http://www.w3.org/2000/svg"><path d="M5 3a5 5 0 000 10h6a5 5 0 000-10H5zm6 9a4 4 0 110-8 4 4 0 010 8z"/></symbol><symbol fill="currentColor" class="bi bi-toggle2-off" viewBox="0 0 16 16" id="toggle2-off" xmlns="http://www.w3.org/2000/svg"><path d="M9 11c.628-.836 1-1.874 1-3a4.978 4.978 0 00-1-3h4a3 3 0 110 6H9z"/><path d="M5 12a4 4 0 110-8 4 4 0 010 8zm0 1A5 5 0 105 3a5 5 0 000 10z"/></symbol><symbol fill="currentColor" class="bi bi-toggle2-on" viewBox="0 0 16 16" id="toggle2-on" xmlns="http://www.w3.org/2000/svg"><path d="M7 5H3a3 3 0 000 6h4a4.995 4.995 0 01-.584-1H3a2 2 0 110-4h3.416c.156-.357.352-.692.584-1z"/><path d="M16 8A5 5 0 116 8a5 5 0 0110 0z"/></symbol><symbol fill="currentColor" class="bi bi-toggles" viewBox="0 0 16 16" id="toggles" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 9a3.5 3.5 0 100 7h7a3.5 3.5 0 100-7h-7zm7 6a2.5 2.5 0 110-5 2.5 2.5 0 010 5zm-7-14a2.5 2.5 0 100 5 2.5 2.5 0 000-5zm2.45 0A3.49 3.49 0 018 3.5 3.49 3.49 0 016.95 6h4.55a2.5 2.5 0 000-5H6.95zM4.5 0h7a3.5 3.5 0 110 7h-7a3.5 3.5 0 110-7z"/></symbol><symbol fill="currentColor" class="bi bi-toggles2" viewBox="0 0 16 16" id="toggles2" xmlns="http://www.w3.org/2000/svg"><path d="M9.465 10H12a2 2 0 110 4H9.465c.34-.588.535-1.271.535-2 0-.729-.195-1.412-.535-2z"/><path d="M6 15a3 3 0 100-6 3 3 0 000 6zm0 1a4 4 0 110-8 4 4 0 010 8zm.535-10a3.975 3.975 0 01-.409-1H4a1 1 0 010-2h2.126c.091-.355.23-.69.41-1H4a2 2 0 100 4h2.535z"/><path d="M14 4a4 4 0 11-8 0 4 4 0 018 0z"/></symbol><symbol fill="currentColor" class="bi bi-tools" viewBox="0 0 16 16" id="tools" xmlns="http://www.w3.org/2000/svg"><path d="M1 0L0 1l2.2 3.081a1 1 0 00.815.419h.07a1 1 0 01.708.293l2.675 2.675-2.617 2.654A3.003 3.003 0 000 13a3 3 0 105.878-.851l2.654-2.617.968.968-.305.914a1 1 0 00.242 1.023l3.356 3.356a1 1 0 001.414 0l1.586-1.586a1 1 0 000-1.414l-3.356-3.356a1 1 0 00-1.023-.242L10.5 9.5l-.96-.96 2.68-2.643A3.005 3.005 0 0016 3c0-.269-.035-.53-.102-.777l-2.14 2.141L12 4l-.364-1.757L13.777.102a3 3 0 00-3.675 3.68L7.462 6.46 4.793 3.793a1 1 0 01-.293-.707v-.071a1 1 0 00-.419-.814L1 0zm9.646 10.646a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708l-3-3a.5.5 0 010-.708zM3 11l.471.242.529.026.287.445.445.287.026.529L5 13l-.242.471-.026.529-.445.287-.287.445-.529.026L3 15l-.471-.242L2 14.732l-.287-.445L1.268 14l-.026-.529L1 13l.242-.471.026-.529.445-.287.287-.445.529-.026L3 11z"/></symbol><symbol fill="currentColor" class="bi bi-tornado" viewBox="0 0 16 16" id="tornado" xmlns="http://www.w3.org/2000/svg"><path d="M1.125 2.45A.892.892 0 011 2c0-.26.116-.474.258-.634a1.9 1.9 0 01.513-.389c.387-.21.913-.385 1.52-.525C4.514.17 6.18 0 8 0c1.821 0 3.486.17 4.709.452.607.14 1.133.314 1.52.525.193.106.374.233.513.389.141.16.258.374.258.634 0 1.011-.35 1.612-.634 2.102-.04.07-.08.137-.116.203a2.55 2.55 0 00-.313.809 2.938 2.938 0 00-.011.891.5.5 0 01.428.849c-.06.06-.133.126-.215.195.204 1.116.088 1.99-.3 2.711-.453.84-1.231 1.383-2.02 1.856-.204.123-.412.243-.62.364-1.444.832-2.928 1.689-3.735 3.706a.5.5 0 01-.748.226l-.001-.001-.002-.001-.004-.003-.01-.008a2.142 2.142 0 01-.147-.115 4.095 4.095 0 01-1.179-1.656 3.786 3.786 0 01-.247-1.296A.498.498 0 015 12.5v-.018a.62.62 0 01.008-.079.728.728 0 01.188-.386c.09-.489.272-1.014.573-1.574a.5.5 0 01.073-.918 3.29 3.29 0 01.617-.144l.15-.193c.285-.356.404-.639.437-.861a.948.948 0 00-.122-.619c-.249-.455-.815-.903-1.613-1.43-.193-.127-.398-.258-.609-.394l-.119-.076a12.307 12.307 0 01-1.241-.334.5.5 0 01-.285-.707l-.23-.18C2.117 4.01 1.463 3.32 1.125 2.45zm1.973 1.051c.113.104.233.207.358.308.472.381.99.722 1.515 1.06 1.54.317 3.632.5 5.43.14a.5.5 0 01.197.981c-1.216.244-2.537.26-3.759.157.399.326.744.682.963 1.081.203.373.302.79.233 1.247-.05.33-.182.657-.39.985.075.017.148.035.22.053l.006.002c.481.12.863.213 1.47.01a.5.5 0 11.317.95c-.888.295-1.505.141-2.023.012l-.006-.002a3.894 3.894 0 00-.644-.123c-.37.55-.598 1.05-.726 1.497.142.045.296.11.465.194a.5.5 0 11-.448.894 3.11 3.11 0 00-.148-.07c.012.345.084.643.18.895.14.369.342.666.528.886.992-1.903 2.583-2.814 3.885-3.56.203-.116.399-.228.584-.34.775-.464 1.34-.89 1.653-1.472.212-.393.33-.9.26-1.617A6.74 6.74 0 0110 8.5a.5.5 0 010-1 5.76 5.76 0 003.017-.872.515.515 0 01-.007-.03c-.135-.673-.14-1.207-.056-1.665.084-.46.253-.81.421-1.113l.131-.23c.065-.112.126-.22.182-.327-.29.107-.62.202-.98.285C11.487 3.83 9.822 4 8 4c-1.821 0-3.486-.17-4.709-.452-.065-.015-.13-.03-.193-.047zM13.964 2a1.12 1.12 0 00-.214-.145c-.272-.148-.697-.297-1.266-.428C11.354 1.166 9.769 1 8 1c-1.769 0-3.354.166-4.484.427-.569.13-.994.28-1.266.428A1.12 1.12 0 002.036 2c.04.038.109.087.214.145.272.148.697.297 1.266.428C4.646 2.834 6.231 3 8 3c1.769 0 3.354-.166 4.484-.427.569-.13.994-.28 1.266-.428A1.12 1.12 0 0013.964 2z"/></symbol><symbol fill="currentColor" class="bi bi-translate" viewBox="0 0 16 16" id="translate" xmlns="http://www.w3.org/2000/svg"><path d="M4.545 6.714L4.11 8H3l1.862-5h1.284L8 8H6.833l-.435-1.286H4.545zm1.634-.736L5.5 3.956h-.049l-.679 2.022H6.18z"/><path d="M0 2a2 2 0 012-2h7a2 2 0 012 2v3h3a2 2 0 012 2v7a2 2 0 01-2 2H7a2 2 0 01-2-2v-3H2a2 2 0 01-2-2V2zm2-1a1 1 0 00-1 1v7a1 1 0 001 1h7a1 1 0 001-1V2a1 1 0 00-1-1H2zm7.138 9.995c.193.301.402.583.63.846-.748.575-1.673 1.001-2.768 1.292.178.217.451.635.555.867 1.125-.359 2.08-.844 2.886-1.494.777.665 1.739 1.165 2.93 1.472.133-.254.414-.673.629-.89-1.125-.253-2.057-.694-2.82-1.284.681-.747 1.222-1.651 1.621-2.757H14V8h-3v1.047h.765c-.318.844-.74 1.546-1.272 2.13a6.066 6.066 0 01-.415-.492 1.988 1.988 0 01-.94.31z"/></symbol><symbol fill="currentColor" class="bi bi-trash" viewBox="0 0 16 16" id="trash" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 5.5A.5.5 0 016 6v6a.5.5 0 01-1 0V6a.5.5 0 01.5-.5zm2.5 0a.5.5 0 01.5.5v6a.5.5 0 01-1 0V6a.5.5 0 01.5-.5zm3 .5a.5.5 0 00-1 0v6a.5.5 0 001 0V6z"/><path fill-rule="evenodd" d="M14.5 3a1 1 0 01-1 1H13v9a2 2 0 01-2 2H5a2 2 0 01-2-2V4h-.5a1 1 0 01-1-1V2a1 1 0 011-1H6a1 1 0 011-1h2a1 1 0 011 1h3.5a1 1 0 011 1v1zM4.118 4L4 4.059V13a1 1 0 001 1h6a1 1 0 001-1V4.059L11.882 4H4.118zM2.5 3V2h11v1h-11z"/></symbol><symbol fill="currentColor" class="bi bi-trash-fill" viewBox="0 0 16 16" id="trash-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 1a1 1 0 00-1 1v1a1 1 0 001 1H3v9a2 2 0 002 2h6a2 2 0 002-2V4h.5a1 1 0 001-1V2a1 1 0 00-1-1H10a1 1 0 00-1-1H7a1 1 0 00-1 1H2.5zm3 4a.5.5 0 01.5.5v7a.5.5 0 01-1 0v-7a.5.5 0 01.5-.5zM8 5a.5.5 0 01.5.5v7a.5.5 0 01-1 0v-7A.5.5 0 018 5zm3 .5v7a.5.5 0 01-1 0v-7a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-trash2" viewBox="0 0 16 16" id="trash2" xmlns="http://www.w3.org/2000/svg"><path d="M14 3a.702.702 0 01-.037.225l-1.684 10.104A2 2 0 0110.305 15H5.694a2 2 0 01-1.973-1.671L2.037 3.225A.703.703 0 012 3c0-1.105 2.686-2 6-2s6 .895 6 2zM3.215 4.207l1.493 8.957a1 1 0 00.986.836h4.612a1 1 0 00.986-.836l1.493-8.957C11.69 4.689 9.954 5 8 5c-1.954 0-3.69-.311-4.785-.793z"/></symbol><symbol fill="currentColor" class="bi bi-trash2-fill" viewBox="0 0 16 16" id="trash2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.037 3.225A.703.703 0 012 3c0-1.105 2.686-2 6-2s6 .895 6 2a.702.702 0 01-.037.225l-1.684 10.104A2 2 0 0110.305 15H5.694a2 2 0 01-1.973-1.671L2.037 3.225zm9.89-.69C10.966 2.214 9.578 2 8 2c-1.58 0-2.968.215-3.926.534-.477.16-.795.327-.975.466.18.14.498.307.975.466C5.032 3.786 6.42 4 8 4s2.967-.215 3.926-.534c.477-.16.795-.327.975-.466-.18-.14-.498-.307-.975-.466z"/></symbol><symbol fill="currentColor" class="bi bi-tree" viewBox="0 0 16 16" id="tree" xmlns="http://www.w3.org/2000/svg"><path d="M8.416.223a.5.5 0 00-.832 0l-3 4.5A.5.5 0 005 5.5h.098L3.076 8.735A.5.5 0 003.5 9.5h.191l-1.638 3.276a.5.5 0 00.447.724H7V16h2v-2.5h4.5a.5.5 0 00.447-.724L12.31 9.5h.191a.5.5 0 00.424-.765L10.902 5.5H11a.5.5 0 00.416-.777l-3-4.5zM6.437 4.758A.5.5 0 006 4.5h-.066L8 1.401 10.066 4.5H10a.5.5 0 00-.424.765L11.598 8.5H11.5a.5.5 0 00-.447.724L12.69 12.5H3.309l1.638-3.276A.5.5 0 004.5 8.5h-.098l2.022-3.235a.5.5 0 00.013-.507z"/></symbol><symbol fill="currentColor" class="bi bi-tree-fill" viewBox="0 0 16 16" id="tree-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.416.223a.5.5 0 00-.832 0l-3 4.5A.5.5 0 005 5.5h.098L3.076 8.735A.5.5 0 003.5 9.5h.191l-1.638 3.276a.5.5 0 00.447.724H7V16h2v-2.5h4.5a.5.5 0 00.447-.724L12.31 9.5h.191a.5.5 0 00.424-.765L10.902 5.5H11a.5.5 0 00.416-.777l-3-4.5z"/></symbol><symbol fill="currentColor" class="bi bi-triangle" viewBox="0 0 16 16" id="triangle" xmlns="http://www.w3.org/2000/svg"><path d="M7.938 2.016A.13.13 0 018.002 2a.13.13 0 01.063.016.146.146 0 01.054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 01-.054.06.116.116 0 01-.066.017H1.146a.115.115 0 01-.066-.017.163.163 0 01-.054-.06.176.176 0 01.002-.183L7.884 2.073a.147.147 0 01.054-.057zm1.044-.45a1.13 1.13 0 00-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"/></symbol><symbol fill="currentColor" class="bi bi-triangle-fill" viewBox="0 0 16 16" id="triangle-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.022 1.566a1.13 1.13 0 011.96 0l6.857 11.667c.457.778-.092 1.767-.98 1.767H1.144c-.889 0-1.437-.99-.98-1.767L7.022 1.566z"/></symbol><symbol fill="currentColor" class="bi bi-triangle-half" viewBox="0 0 16 16" id="triangle-half" xmlns="http://www.w3.org/2000/svg"><path d="M8.065 2.016A.13.13 0 008.002 2v11.983l6.856.017a.12.12 0 00.066-.017.162.162 0 00.054-.06.176.176 0 00-.002-.183L8.12 2.073a.146.146 0 00-.054-.057zm-1.043-.45a1.13 1.13 0 011.96 0l6.856 11.667c.458.778-.091 1.767-.98 1.767H1.146c-.889 0-1.437-.99-.98-1.767L7.022 1.566z"/></symbol><symbol fill="currentColor" class="bi bi-trophy" viewBox="0 0 16 16" id="trophy" xmlns="http://www.w3.org/2000/svg"><path d="M2.5.5A.5.5 0 013 0h10a.5.5 0 01.5.5c0 .538-.012 1.05-.034 1.536a3 3 0 11-1.133 5.89c-.79 1.865-1.878 2.777-2.833 3.011v2.173l1.425.356c.194.048.377.135.537.255L13.3 15.1a.5.5 0 01-.3.9H3a.5.5 0 01-.3-.9l1.838-1.379c.16-.12.343-.207.537-.255L6.5 13.11v-2.173c-.955-.234-2.043-1.146-2.833-3.012a3 3 0 11-1.132-5.89A33.076 33.076 0 012.5.5zm.099 2.54a2 2 0 00.72 3.935c-.333-1.05-.588-2.346-.72-3.935zm10.083 3.935a2 2 0 00.72-3.935c-.133 1.59-.388 2.885-.72 3.935zM3.504 1c.007.517.026 1.006.056 1.469.13 2.028.457 3.546.87 4.667C5.294 9.48 6.484 10 7 10a.5.5 0 01.5.5v2.61a1 1 0 01-.757.97l-1.426.356a.5.5 0 00-.179.085L4.5 15h7l-.638-.479a.501.501 0 00-.18-.085l-1.425-.356a1 1 0 01-.757-.97V10.5A.5.5 0 019 10c.516 0 1.706-.52 2.57-2.864.413-1.12.74-2.64.87-4.667.03-.463.049-.952.056-1.469H3.504z"/></symbol><symbol fill="currentColor" class="bi bi-trophy-fill" viewBox="0 0 16 16" id="trophy-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.5.5A.5.5 0 013 0h10a.5.5 0 01.5.5c0 .538-.012 1.05-.034 1.536a3 3 0 11-1.133 5.89c-.79 1.865-1.878 2.777-2.833 3.011v2.173l1.425.356c.194.048.377.135.537.255L13.3 15.1a.5.5 0 01-.3.9H3a.5.5 0 01-.3-.9l1.838-1.379c.16-.12.343-.207.537-.255L6.5 13.11v-2.173c-.955-.234-2.043-1.146-2.833-3.012a3 3 0 11-1.132-5.89A33.076 33.076 0 012.5.5zm.099 2.54a2 2 0 00.72 3.935c-.333-1.05-.588-2.346-.72-3.935zm10.083 3.935a2 2 0 00.72-3.935c-.133 1.59-.388 2.885-.72 3.935z"/></symbol><symbol fill="currentColor" class="bi bi-tropical-storm" viewBox="0 0 16 16" id="tropical-storm" xmlns="http://www.w3.org/2000/svg"><path d="M8 9.5a2 2 0 100-4 2 2 0 000 4z"/><path d="M9.5 2c-.9 0-1.75.216-2.501.6A5 5 0 0113 7.5a6.5 6.5 0 11-13 0 .5.5 0 011 0 5.5 5.5 0 008.001 4.9A5 5 0 013 7.5a6.5 6.5 0 0113 0 .5.5 0 01-1 0A5.5 5.5 0 009.5 2zM8 3.5a4 4 0 100 8 4 4 0 000-8z"/></symbol><symbol fill="currentColor" class="bi bi-truck" viewBox="0 0 16 16" id="truck" xmlns="http://www.w3.org/2000/svg"><path d="M0 3.5A1.5 1.5 0 011.5 2h9A1.5 1.5 0 0112 3.5V5h1.02a1.5 1.5 0 011.17.563l1.481 1.85a1.5 1.5 0 01.329.938V10.5a1.5 1.5 0 01-1.5 1.5H14a2 2 0 11-4 0H5a2 2 0 11-3.998-.085A1.5 1.5 0 010 10.5v-7zm1.294 7.456A1.999 1.999 0 014.732 11h5.536a2.01 2.01 0 01.732-.732V3.5a.5.5 0 00-.5-.5h-9a.5.5 0 00-.5.5v7a.5.5 0 00.294.456zM12 10a2 2 0 011.732 1h.768a.5.5 0 00.5-.5V8.35a.5.5 0 00-.11-.312l-1.48-1.85A.5.5 0 0013.02 6H12v4zm-9 1a1 1 0 100 2 1 1 0 000-2zm9 0a1 1 0 100 2 1 1 0 000-2z"/></symbol><symbol fill="currentColor" class="bi bi-truck-flatbed" viewBox="0 0 16 16" id="truck-flatbed" xmlns="http://www.w3.org/2000/svg"><path d="M11.5 4a.5.5 0 01.5.5V5h1.02a1.5 1.5 0 011.17.563l1.481 1.85a1.5 1.5 0 01.329.938V10.5a1.5 1.5 0 01-1.5 1.5H14a2 2 0 11-4 0H5a2 2 0 11-4 0 1 1 0 01-1-1v-1h11V4.5a.5.5 0 01.5-.5zM3 11a1 1 0 100 2 1 1 0 000-2zm9 0a1 1 0 100 2 1 1 0 000-2zm1.732 0h.768a.5.5 0 00.5-.5V8.35a.5.5 0 00-.11-.312l-1.48-1.85A.5.5 0 0013.02 6H12v4a2 2 0 011.732 1z"/></symbol><symbol fill="currentColor" class="bi bi-tsunami" viewBox="0 0 16 16" id="tsunami" xmlns="http://www.w3.org/2000/svg"><path d="M.036 12.314a.5.5 0 01.65-.278l1.757.703a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.757-.703a.5.5 0 11.372.928l-1.758.703a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.757-.703a.5.5 0 01-.278-.65zm0 2a.5.5 0 01.65-.278l1.757.703a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.757-.703a.5.5 0 11.372.928l-1.758.703a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.757-.703a.5.5 0 01-.278-.65zM2.662 8.08c-.456 1.063-.994 2.098-1.842 2.804a.5.5 0 01-.64-.768c.652-.544 1.114-1.384 1.564-2.43.14-.328.281-.68.427-1.044.302-.754.624-1.559 1.01-2.308C3.763 3.2 4.528 2.105 5.7 1.299 6.877.49 8.418 0 10.5 0c1.463 0 2.511.4 3.179 1.058.67.66.893 1.518.819 2.302-.074.771-.441 1.516-1.02 1.965a1.878 1.878 0 01-1.904.27c-.65.642-.907 1.679-.71 2.614C11.076 9.215 11.784 10 13 10h2.5a.5.5 0 010 1H13c-1.784 0-2.826-1.215-3.114-2.585-.232-1.1.005-2.373.758-3.284L10.5 5.06l-.777.388a.5.5 0 01-.447 0l-1-.5a.5.5 0 01.447-.894l.777.388.776-.388a.5.5 0 01.447 0l1 .5a.493.493 0 01.034.018c.44.264.81.195 1.108-.036.328-.255.586-.729.637-1.27.05-.529-.1-1.076-.525-1.495-.426-.42-1.19-.77-2.477-.77-1.918 0-3.252.448-4.232 1.123C5.283 2.8 4.61 3.738 4.07 4.79c-.365.71-.655 1.433-.945 2.16-.15.376-.301.753-.463 1.13z"/></symbol><symbol fill="currentColor" class="bi bi-tv" viewBox="0 0 16 16" id="tv" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 13.5A.5.5 0 013 13h10a.5.5 0 010 1H3a.5.5 0 01-.5-.5zM13.991 3l.024.001a1.46 1.46 0 01.538.143.757.757 0 01.302.254c.067.1.145.277.145.602v5.991l-.001.024a1.464 1.464 0 01-.143.538.758.758 0 01-.254.302c-.1.067-.277.145-.602.145H2.009l-.024-.001a1.464 1.464 0 01-.538-.143.758.758 0 01-.302-.254C1.078 10.502 1 10.325 1 10V4.009l.001-.024a1.46 1.46 0 01.143-.538.758.758 0 01.254-.302C1.498 3.078 1.675 3 2 3h11.991zM14 2H2C0 2 0 4 0 4v6c0 2 2 2 2 2h12c2 0 2-2 2-2V4c0-2-2-2-2-2z"/></symbol><symbol fill="currentColor" class="bi bi-tv-fill" viewBox="0 0 16 16" id="tv-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 13.5A.5.5 0 013 13h10a.5.5 0 010 1H3a.5.5 0 01-.5-.5zM2 2h12s2 0 2 2v6s0 2-2 2H2s-2 0-2-2V4s0-2 2-2z"/></symbol><symbol fill="currentColor" class="bi bi-twitch" viewBox="0 0 16 16" id="twitch" xmlns="http://www.w3.org/2000/svg"><path d="M3.857 0L1 2.857v10.286h3.429V16l2.857-2.857H9.57L14.714 8V0H3.857zm9.714 7.429l-2.285 2.285H9l-2 2v-2H4.429V1.143h9.142v6.286z"/><path d="M11.857 3.143h-1.143V6.57h1.143V3.143zm-3.143 0H7.571V6.57h1.143V3.143z"/></symbol><symbol fill="currentColor" class="bi bi-twitter" viewBox="0 0 16 16" id="twitter" xmlns="http://www.w3.org/2000/svg"><path d="M5.026 15c6.038 0 9.341-5.003 9.341-9.334 0-.14 0-.282-.006-.422A6.685 6.685 0 0016 3.542a6.658 6.658 0 01-1.889.518 3.301 3.301 0 001.447-1.817 6.533 6.533 0 01-2.087.793A3.286 3.286 0 007.875 6.03a9.325 9.325 0 01-6.767-3.429 3.289 3.289 0 001.018 4.382A3.323 3.323 0 01.64 6.575v.045a3.288 3.288 0 002.632 3.218 3.203 3.203 0 01-.865.115 3.23 3.23 0 01-.614-.057 3.283 3.283 0 003.067 2.277A6.588 6.588 0 01.78 13.58a6.32 6.32 0 01-.78-.045A9.344 9.344 0 005.026 15z"/></symbol><symbol fill="currentColor" class="bi bi-type" viewBox="0 0 16 16" id="type" xmlns="http://www.w3.org/2000/svg"><path d="M2.244 13.081l.943-2.803H6.66l.944 2.803H8.86L5.54 3.75H4.322L1 13.081h1.244zm2.7-7.923L6.34 9.314H3.51l1.4-4.156h.034zm9.146 7.027h.035v.896h1.128V8.125c0-1.51-1.114-2.345-2.646-2.345-1.736 0-2.59.916-2.666 2.174h1.108c.068-.718.595-1.19 1.517-1.19.971 0 1.518.52 1.518 1.464v.731H12.19c-1.647.007-2.522.8-2.522 2.058 0 1.319.957 2.18 2.345 2.18 1.06 0 1.716-.43 2.078-1.011zm-1.763.035c-.752 0-1.456-.397-1.456-1.244 0-.65.424-1.115 1.408-1.115h1.805v.834c0 .896-.752 1.525-1.757 1.525z"/></symbol><symbol fill="currentColor" class="bi bi-type-bold" viewBox="0 0 16 16" id="type-bold" xmlns="http://www.w3.org/2000/svg"><path d="M8.21 13c2.106 0 3.412-1.087 3.412-2.823 0-1.306-.984-2.283-2.324-2.386v-.055a2.176 2.176 0 001.852-2.14c0-1.51-1.162-2.46-3.014-2.46H3.843V13H8.21zM5.908 4.674h1.696c.963 0 1.517.451 1.517 1.244 0 .834-.629 1.32-1.73 1.32H5.908V4.673zm0 6.788V8.598h1.73c1.217 0 1.88.492 1.88 1.415 0 .943-.643 1.449-1.832 1.449H5.907z"/></symbol><symbol fill="currentColor" class="bi bi-type-h1" viewBox="0 0 16 16" id="type-h1" xmlns="http://www.w3.org/2000/svg"><path d="M8.637 13V3.669H7.379V7.62H2.758V3.67H1.5V13h1.258V8.728h4.62V13h1.259zm5.329 0V3.669h-1.244L10.5 5.316v1.265l2.16-1.565h.062V13h1.244z"/></symbol><symbol fill="currentColor" class="bi bi-type-h2" viewBox="0 0 16 16" id="type-h2" xmlns="http://www.w3.org/2000/svg"><path d="M7.638 13V3.669H6.38V7.62H1.759V3.67H.5V13h1.258V8.728h4.62V13h1.259zm3.022-6.733v-.048c0-.889.63-1.668 1.716-1.668.957 0 1.675.608 1.675 1.572 0 .855-.554 1.504-1.067 2.085l-3.513 3.999V13H15.5v-1.094h-4.245v-.075l2.481-2.844c.875-.998 1.586-1.784 1.586-2.953 0-1.463-1.155-2.556-2.919-2.556-1.941 0-2.966 1.326-2.966 2.74v.049h1.223z"/></symbol><symbol fill="currentColor" class="bi bi-type-h3" viewBox="0 0 16 16" id="type-h3" xmlns="http://www.w3.org/2000/svg"><path d="M7.637 13V3.669H6.379V7.62H1.758V3.67H.5V13h1.258V8.728h4.62V13h1.259zm3.625-4.272h1.018c1.142 0 1.935.67 1.949 1.674.013 1.005-.78 1.737-2.01 1.73-1.08-.007-1.853-.588-1.935-1.32H9.108c.069 1.327 1.224 2.386 3.083 2.386 1.935 0 3.343-1.155 3.309-2.789-.027-1.51-1.251-2.16-2.037-2.249v-.068c.704-.123 1.764-.91 1.723-2.229-.035-1.353-1.176-2.4-2.954-2.385-1.873.006-2.857 1.162-2.898 2.358h1.196c.062-.69.711-1.299 1.696-1.299.998 0 1.695.622 1.695 1.525.007.922-.718 1.592-1.695 1.592h-.964v1.074z"/></symbol><symbol fill="currentColor" class="bi bi-type-italic" viewBox="0 0 16 16" id="type-italic" xmlns="http://www.w3.org/2000/svg"><path d="M7.991 11.674L9.53 4.455c.123-.595.246-.71 1.347-.807l.11-.52H7.211l-.11.52c1.06.096 1.128.212 1.005.807L6.57 11.674c-.123.595-.246.71-1.346.806l-.11.52h3.774l.11-.52c-1.06-.095-1.129-.211-1.006-.806z"/></symbol><symbol fill="currentColor" class="bi bi-type-strikethrough" viewBox="0 0 16 16" id="type-strikethrough" xmlns="http://www.w3.org/2000/svg"><path d="M6.333 5.686c0 .31.083.581.27.814H5.166a2.776 2.776 0 01-.099-.76c0-1.627 1.436-2.768 3.48-2.768 1.969 0 3.39 1.175 3.445 2.85h-1.23c-.11-1.08-.964-1.743-2.25-1.743-1.23 0-2.18.602-2.18 1.607zm2.194 7.478c-2.153 0-3.589-1.107-3.705-2.81h1.23c.144 1.06 1.129 1.703 2.544 1.703 1.34 0 2.31-.705 2.31-1.675 0-.827-.547-1.374-1.914-1.675L8.046 8.5H1v-1h14v1h-3.504c.468.437.675.994.675 1.697 0 1.826-1.436 2.967-3.644 2.967z"/></symbol><symbol fill="currentColor" class="bi bi-type-underline" viewBox="0 0 16 16" id="type-underline" xmlns="http://www.w3.org/2000/svg"><path d="M5.313 3.136h-1.23V9.54c0 2.105 1.47 3.623 3.917 3.623s3.917-1.518 3.917-3.623V3.136h-1.23v6.323c0 1.49-.978 2.57-2.687 2.57-1.709 0-2.687-1.08-2.687-2.57V3.136zM12.5 15h-9v-1h9v1z"/></symbol><symbol fill="currentColor" class="bi bi-ui-checks" viewBox="0 0 16 16" id="ui-checks" xmlns="http://www.w3.org/2000/svg"><path d="M7 2.5a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-1zM2 1a2 2 0 00-2 2v2a2 2 0 002 2h2a2 2 0 002-2V3a2 2 0 00-2-2H2zm0 8a2 2 0 00-2 2v2a2 2 0 002 2h2a2 2 0 002-2v-2a2 2 0 00-2-2H2zm.854-3.646a.5.5 0 01-.708 0l-1-1a.5.5 0 11.708-.708l.646.647 1.646-1.647a.5.5 0 11.708.708l-2 2zm0 8a.5.5 0 01-.708 0l-1-1a.5.5 0 01.708-.708l.646.647 1.646-1.647a.5.5 0 01.708.708l-2 2zM7 10.5a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-1zm0-5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 8a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-ui-checks-grid" viewBox="0 0 16 16" id="ui-checks-grid" xmlns="http://www.w3.org/2000/svg"><path d="M2 10h3a1 1 0 011 1v3a1 1 0 01-1 1H2a1 1 0 01-1-1v-3a1 1 0 011-1zm9-9h3a1 1 0 011 1v3a1 1 0 01-1 1h-3a1 1 0 01-1-1V2a1 1 0 011-1zm0 9a1 1 0 00-1 1v3a1 1 0 001 1h3a1 1 0 001-1v-3a1 1 0 00-1-1h-3zm0-10a2 2 0 00-2 2v3a2 2 0 002 2h3a2 2 0 002-2V2a2 2 0 00-2-2h-3zM2 9a2 2 0 00-2 2v3a2 2 0 002 2h3a2 2 0 002-2v-3a2 2 0 00-2-2H2zm7 2a2 2 0 012-2h3a2 2 0 012 2v3a2 2 0 01-2 2h-3a2 2 0 01-2-2v-3zM0 2a2 2 0 012-2h3a2 2 0 012 2v3a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm5.354.854a.5.5 0 10-.708-.708L3 3.793l-.646-.647a.5.5 0 10-.708.708l1 1a.5.5 0 00.708 0l2-2z"/></symbol><symbol fill="currentColor" class="bi bi-ui-radios" viewBox="0 0 16 16" id="ui-radios" xmlns="http://www.w3.org/2000/svg"><path d="M7 2.5a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-1zM0 12a3 3 0 116 0 3 3 0 01-6 0zm7-1.5a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-1zm0-5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 8a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zM3 1a3 3 0 100 6 3 3 0 000-6zm0 4.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-ui-radios-grid" viewBox="0 0 16 16" id="ui-radios-grid" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 15a2.5 2.5 0 100-5 2.5 2.5 0 000 5zm9-9a2.5 2.5 0 100-5 2.5 2.5 0 000 5zm0 9a2.5 2.5 0 110-5 2.5 2.5 0 010 5zM16 3.5a3.5 3.5 0 11-7 0 3.5 3.5 0 017 0zm-9 9a3.5 3.5 0 11-7 0 3.5 3.5 0 017 0zm5.5 3.5a3.5 3.5 0 100-7 3.5 3.5 0 000 7zm-9-11a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm0 2a3.5 3.5 0 100-7 3.5 3.5 0 000 7z"/></symbol><symbol fill="currentColor" class="bi bi-umbrella" viewBox="0 0 16 16" id="umbrella" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a.5.5 0 01.5.5v.514C12.625 1.238 16 4.22 16 8c0 0 0 .5-.5.5-.149 0-.352-.145-.352-.145l-.004-.004-.025-.023a3.484 3.484 0 00-.555-.394A3.166 3.166 0 0013 7.5c-.638 0-1.178.213-1.564.434a3.484 3.484 0 00-.555.394l-.025.023-.003.003s-.204.146-.353.146-.352-.145-.352-.145l-.004-.004-.025-.023a3.484 3.484 0 00-.555-.394 3.3 3.3 0 00-1.064-.39V13.5H8h.5v.039l-.005.083a2.958 2.958 0 01-.298 1.102 2.257 2.257 0 01-.763.88C7.06 15.851 6.587 16 6 16s-1.061-.148-1.434-.396a2.255 2.255 0 01-.763-.88 2.958 2.958 0 01-.302-1.185v-.025l-.001-.009v-.003s0-.002.5-.002h-.5V13a.5.5 0 011 0v.506l.003.044a1.958 1.958 0 00.195.726c.095.191.23.367.423.495.19.127.466.229.879.229s.689-.102.879-.229c.193-.128.328-.304.424-.495a1.958 1.958 0 00.197-.77V7.544a3.3 3.3 0 00-1.064.39 3.482 3.482 0 00-.58.417l-.004.004S5.65 8.5 5.5 8.5c-.149 0-.352-.145-.352-.145l-.004-.004a3.482 3.482 0 00-.58-.417A3.166 3.166 0 003 7.5c-.638 0-1.177.213-1.564.434a3.482 3.482 0 00-.58.417l-.004.004S.65 8.5.5 8.5C0 8.5 0 8 0 8c0-3.78 3.375-6.762 7.5-6.986V.5A.5.5 0 018 0zM6.577 2.123c-2.833.5-4.99 2.458-5.474 4.854A4.124 4.124 0 013 6.5c.806 0 1.48.25 1.962.511a9.706 9.706 0 01.344-2.358c.242-.868.64-1.765 1.271-2.53zm-.615 4.93A4.16 4.16 0 018 6.5a4.16 4.16 0 012.038.553 8.688 8.688 0 00-.307-2.13C9.434 3.858 8.898 2.83 8 2.117c-.898.712-1.434 1.74-1.731 2.804a8.687 8.687 0 00-.307 2.131zm3.46-4.93c.631.765 1.03 1.662 1.272 2.53.233.833.328 1.66.344 2.358A4.14 4.14 0 0113 6.5c.77 0 1.42.23 1.897.477-.484-2.396-2.641-4.355-5.474-4.854z"/></symbol><symbol fill="currentColor" class="bi bi-umbrella-fill" viewBox="0 0 16 16" id="umbrella-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0a.5.5 0 01.5.5v.514C12.625 1.238 16 4.22 16 8c0 0 0 .5-.5.5-.149 0-.352-.145-.352-.145l-.004-.004-.025-.023a3.484 3.484 0 00-.555-.394A3.166 3.166 0 0013 7.5c-.638 0-1.178.213-1.564.434a3.484 3.484 0 00-.555.394l-.025.023-.003.003s-.204.146-.353.146-.352-.145-.352-.145l-.004-.004-.025-.023a3.484 3.484 0 00-.555-.394 3.3 3.3 0 00-1.064-.39V13.5H8h.5v.039l-.005.083a2.958 2.958 0 01-.298 1.102 2.257 2.257 0 01-.763.88C7.06 15.851 6.587 16 6 16s-1.061-.148-1.434-.396a2.255 2.255 0 01-.763-.88 2.958 2.958 0 01-.302-1.185v-.025l-.001-.009v-.003s0-.002.5-.002h-.5V13a.5.5 0 011 0v.506l.003.044a1.958 1.958 0 00.195.726c.095.191.23.367.423.495.19.127.466.229.879.229s.689-.102.879-.229c.193-.128.328-.304.424-.495a1.958 1.958 0 00.197-.77V7.544a3.3 3.3 0 00-1.064.39 3.482 3.482 0 00-.58.417l-.004.004S5.65 8.5 5.5 8.5c-.149 0-.352-.145-.352-.145l-.004-.004a3.482 3.482 0 00-.58-.417A3.166 3.166 0 003 7.5c-.638 0-1.177.213-1.564.434a3.482 3.482 0 00-.58.417l-.004.004S.65 8.5.5 8.5C0 8.5 0 8 0 8c0-3.78 3.375-6.762 7.5-6.986V.5A.5.5 0 018 0z"/></symbol><symbol fill="currentColor" class="bi bi-union" viewBox="0 0 16 16" id="union" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h8a2 2 0 012 2v2h2a2 2 0 012 2v8a2 2 0 01-2 2H6a2 2 0 01-2-2v-2H2a2 2 0 01-2-2V2z"/></symbol><symbol fill="currentColor" class="bi bi-unlock" viewBox="0 0 16 16" id="unlock" xmlns="http://www.w3.org/2000/svg"><path d="M11 1a2 2 0 00-2 2v4a2 2 0 012 2v5a2 2 0 01-2 2H3a2 2 0 01-2-2V9a2 2 0 012-2h5V3a3 3 0 016 0v4a.5.5 0 01-1 0V3a2 2 0 00-2-2zM3 8a1 1 0 00-1 1v5a1 1 0 001 1h6a1 1 0 001-1V9a1 1 0 00-1-1H3z"/></symbol><symbol fill="currentColor" class="bi bi-unlock-fill" viewBox="0 0 16 16" id="unlock-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11 1a2 2 0 00-2 2v4a2 2 0 012 2v5a2 2 0 01-2 2H3a2 2 0 01-2-2V9a2 2 0 012-2h5V3a3 3 0 016 0v4a.5.5 0 01-1 0V3a2 2 0 00-2-2z"/></symbol><symbol fill="currentColor" class="bi bi-upc" viewBox="0 0 16 16" id="upc" xmlns="http://www.w3.org/2000/svg"><path d="M3 4.5a.5.5 0 011 0v7a.5.5 0 01-1 0v-7zm2 0a.5.5 0 011 0v7a.5.5 0 01-1 0v-7zm2 0a.5.5 0 011 0v7a.5.5 0 01-1 0v-7zm2 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v7a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-7zm3 0a.5.5 0 011 0v7a.5.5 0 01-1 0v-7z"/></symbol><symbol fill="currentColor" class="bi bi-upc-scan" viewBox="0 0 16 16" id="upc-scan" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 1a.5.5 0 00-.5.5v3a.5.5 0 01-1 0v-3A1.5 1.5 0 011.5 0h3a.5.5 0 010 1h-3zM11 .5a.5.5 0 01.5-.5h3A1.5 1.5 0 0116 1.5v3a.5.5 0 01-1 0v-3a.5.5 0 00-.5-.5h-3a.5.5 0 01-.5-.5zM.5 11a.5.5 0 01.5.5v3a.5.5 0 00.5.5h3a.5.5 0 010 1h-3A1.5 1.5 0 010 14.5v-3a.5.5 0 01.5-.5zm15 0a.5.5 0 01.5.5v3a1.5 1.5 0 01-1.5 1.5h-3a.5.5 0 010-1h3a.5.5 0 00.5-.5v-3a.5.5 0 01.5-.5zM3 4.5a.5.5 0 011 0v7a.5.5 0 01-1 0v-7zm2 0a.5.5 0 011 0v7a.5.5 0 01-1 0v-7zm2 0a.5.5 0 011 0v7a.5.5 0 01-1 0v-7zm2 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v7a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-7zm3 0a.5.5 0 011 0v7a.5.5 0 01-1 0v-7z"/></symbol><symbol fill="currentColor" class="bi bi-upload" viewBox="0 0 16 16" id="upload" xmlns="http://www.w3.org/2000/svg"><path d="M.5 9.9a.5.5 0 01.5.5v2.5a1 1 0 001 1h12a1 1 0 001-1v-2.5a.5.5 0 011 0v2.5a2 2 0 01-2 2H2a2 2 0 01-2-2v-2.5a.5.5 0 01.5-.5z"/><path d="M7.646 1.146a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 2.707V11.5a.5.5 0 01-1 0V2.707L5.354 4.854a.5.5 0 11-.708-.708l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-vector-pen" viewBox="0 0 16 16" id="vector-pen" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.646.646a.5.5 0 01.708 0l4 4a.5.5 0 010 .708l-1.902 1.902-.829 3.313a1.5 1.5 0 01-1.024 1.073L1.254 14.746 4.358 4.4A1.5 1.5 0 015.43 3.377l3.313-.828L10.646.646zm-1.8 2.908l-3.173.793a.5.5 0 00-.358.342l-2.57 8.565 8.567-2.57a.5.5 0 00.34-.357l.794-3.174-3.6-3.6z"/><path fill-rule="evenodd" d="M2.832 13.228L8 9a1 1 0 10-1-1l-4.228 5.168-.026.086.086-.026z"/></symbol><symbol fill="currentColor" class="bi bi-view-list" viewBox="0 0 16 16" id="view-list" xmlns="http://www.w3.org/2000/svg"><path d="M3 4.5h10a2 2 0 012 2v3a2 2 0 01-2 2H3a2 2 0 01-2-2v-3a2 2 0 012-2zm0 1a1 1 0 00-1 1v3a1 1 0 001 1h10a1 1 0 001-1v-3a1 1 0 00-1-1H3zM1 2a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13A.5.5 0 011 2zm0 12a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13A.5.5 0 011 14z"/></symbol><symbol fill="currentColor" class="bi bi-view-stacked" viewBox="0 0 16 16" id="view-stacked" xmlns="http://www.w3.org/2000/svg"><path d="M3 0h10a2 2 0 012 2v3a2 2 0 01-2 2H3a2 2 0 01-2-2V2a2 2 0 012-2zm0 1a1 1 0 00-1 1v3a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3zm0 8h10a2 2 0 012 2v3a2 2 0 01-2 2H3a2 2 0 01-2-2v-3a2 2 0 012-2zm0 1a1 1 0 00-1 1v3a1 1 0 001 1h10a1 1 0 001-1v-3a1 1 0 00-1-1H3z"/></symbol><symbol fill="currentColor" class="bi bi-vinyl" viewBox="0 0 16 16" id="vinyl" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M8 6a2 2 0 100 4 2 2 0 000-4zM4 8a4 4 0 118 0 4 4 0 01-8 0z"/><path d="M9 8a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-vinyl-fill" viewBox="0 0 16 16" id="vinyl-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 6a2 2 0 100 4 2 2 0 000-4zm0 3a1 1 0 110-2 1 1 0 010 2z"/><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM4 8a4 4 0 108 0 4 4 0 00-8 0z"/></symbol><symbol fill="currentColor" class="bi bi-voicemail" viewBox="0 0 16 16" id="voicemail" xmlns="http://www.w3.org/2000/svg"><path d="M7 8.5A3.49 3.49 0 015.95 11h4.1a3.5 3.5 0 112.45 1h-9A3.5 3.5 0 117 8.5zm-6 0a2.5 2.5 0 105 0 2.5 2.5 0 00-5 0zm14 0a2.5 2.5 0 10-5 0 2.5 2.5 0 005 0z"/></symbol><symbol fill="currentColor" class="bi bi-volume-down" viewBox="0 0 16 16" id="volume-down" xmlns="http://www.w3.org/2000/svg"><path d="M9 4a.5.5 0 00-.812-.39L5.825 5.5H3.5A.5.5 0 003 6v4a.5.5 0 00.5.5h2.325l2.363 1.89A.5.5 0 009 12V4zM6.312 6.39L8 5.04v5.92L6.312 9.61A.5.5 0 006 9.5H4v-3h2a.5.5 0 00.312-.11zM12.025 8a4.486 4.486 0 01-1.318 3.182L10 10.475A3.489 3.489 0 0011.025 8 3.49 3.49 0 0010 5.525l.707-.707A4.486 4.486 0 0112.025 8z"/></symbol><symbol fill="currentColor" class="bi bi-volume-down-fill" viewBox="0 0 16 16" id="volume-down-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9 4a.5.5 0 00-.812-.39L5.825 5.5H3.5A.5.5 0 003 6v4a.5.5 0 00.5.5h2.325l2.363 1.89A.5.5 0 009 12V4zm3.025 4a4.486 4.486 0 01-1.318 3.182L10 10.475A3.489 3.489 0 0011.025 8 3.49 3.49 0 0010 5.525l.707-.707A4.486 4.486 0 0112.025 8z"/></symbol><symbol fill="currentColor" class="bi bi-volume-mute" viewBox="0 0 16 16" id="volume-mute" xmlns="http://www.w3.org/2000/svg"><path d="M6.717 3.55A.5.5 0 017 4v8a.5.5 0 01-.812.39L3.825 10.5H1.5A.5.5 0 011 10V6a.5.5 0 01.5-.5h2.325l2.363-1.89a.5.5 0 01.529-.06zM6 5.04L4.312 6.39A.5.5 0 014 6.5H2v3h2a.5.5 0 01.312.11L6 10.96V5.04zm7.854.606a.5.5 0 010 .708L12.207 8l1.647 1.646a.5.5 0 01-.708.708L11.5 8.707l-1.646 1.647a.5.5 0 01-.708-.708L10.793 8 9.146 6.354a.5.5 0 11.708-.708L11.5 7.293l1.646-1.647a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-volume-mute-fill" viewBox="0 0 16 16" id="volume-mute-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.717 3.55A.5.5 0 017 4v8a.5.5 0 01-.812.39L3.825 10.5H1.5A.5.5 0 011 10V6a.5.5 0 01.5-.5h2.325l2.363-1.89a.5.5 0 01.529-.06zm7.137 2.096a.5.5 0 010 .708L12.207 8l1.647 1.646a.5.5 0 01-.708.708L11.5 8.707l-1.646 1.647a.5.5 0 01-.708-.708L10.793 8 9.146 6.354a.5.5 0 11.708-.708L11.5 7.293l1.646-1.647a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-volume-off" viewBox="0 0 16 16" id="volume-off" xmlns="http://www.w3.org/2000/svg"><path d="M10.717 3.55A.5.5 0 0111 4v8a.5.5 0 01-.812.39L7.825 10.5H5.5A.5.5 0 015 10V6a.5.5 0 01.5-.5h2.325l2.363-1.89a.5.5 0 01.529-.06zM10 5.04L8.312 6.39A.5.5 0 018 6.5H6v3h2a.5.5 0 01.312.11L10 10.96V5.04z"/></symbol><symbol fill="currentColor" class="bi bi-volume-off-fill" viewBox="0 0 16 16" id="volume-off-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.717 3.55A.5.5 0 0111 4v8a.5.5 0 01-.812.39L7.825 10.5H5.5A.5.5 0 015 10V6a.5.5 0 01.5-.5h2.325l2.363-1.89a.5.5 0 01.529-.06z"/></symbol><symbol fill="currentColor" class="bi bi-volume-up" viewBox="0 0 16 16" id="volume-up" xmlns="http://www.w3.org/2000/svg"><path d="M11.536 14.01A8.473 8.473 0 0014.026 8a8.473 8.473 0 00-2.49-6.01l-.708.707A7.476 7.476 0 0113.025 8c0 2.071-.84 3.946-2.197 5.303l.708.707z"/><path d="M10.121 12.596A6.48 6.48 0 0012.025 8a6.48 6.48 0 00-1.904-4.596l-.707.707A5.483 5.483 0 0111.025 8a5.483 5.483 0 01-1.61 3.89l.706.706z"/><path d="M10.025 8a4.486 4.486 0 01-1.318 3.182L8 10.475A3.489 3.489 0 009.025 8c0-.966-.392-1.841-1.025-2.475l.707-.707A4.486 4.486 0 0110.025 8zM7 4a.5.5 0 00-.812-.39L3.825 5.5H1.5A.5.5 0 001 6v4a.5.5 0 00.5.5h2.325l2.363 1.89A.5.5 0 007 12V4zM4.312 6.39L6 5.04v5.92L4.312 9.61A.5.5 0 004 9.5H2v-3h2a.5.5 0 00.312-.11z"/></symbol><symbol fill="currentColor" class="bi bi-volume-up-fill" viewBox="0 0 16 16" id="volume-up-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.536 14.01A8.473 8.473 0 0014.026 8a8.473 8.473 0 00-2.49-6.01l-.708.707A7.476 7.476 0 0113.025 8c0 2.071-.84 3.946-2.197 5.303l.708.707z"/><path d="M10.121 12.596A6.48 6.48 0 0012.025 8a6.48 6.48 0 00-1.904-4.596l-.707.707A5.483 5.483 0 0111.025 8a5.483 5.483 0 01-1.61 3.89l.706.706z"/><path d="M8.707 11.182A4.486 4.486 0 0010.025 8a4.486 4.486 0 00-1.318-3.182L8 5.525A3.489 3.489 0 019.025 8 3.49 3.49 0 018 10.475l.707.707zM6.717 3.55A.5.5 0 017 4v8a.5.5 0 01-.812.39L3.825 10.5H1.5A.5.5 0 011 10V6a.5.5 0 01.5-.5h2.325l2.363-1.89a.5.5 0 01.529-.06z"/></symbol><symbol fill="currentColor" class="bi bi-vr" viewBox="0 0 16 16" id="vr" xmlns="http://www.w3.org/2000/svg"><path d="M3 12V4a1 1 0 011-1h2.5V2H4a2 2 0 00-2 2v8a2 2 0 002 2h2.5v-1H4a1 1 0 01-1-1zm6.5 1v1H12a2 2 0 002-2V4a2 2 0 00-2-2H9.5v1H12a1 1 0 011 1v8a1 1 0 01-1 1H9.5zM8 16a.5.5 0 01-.5-.5V.5a.5.5 0 011 0v15a.5.5 0 01-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-wallet" viewBox="0 0 16 16" id="wallet" xmlns="http://www.w3.org/2000/svg"><path d="M0 3a2 2 0 012-2h13.5a.5.5 0 010 1H15v2a1 1 0 011 1v8.5a1.5 1.5 0 01-1.5 1.5h-12A2.5 2.5 0 010 12.5V3zm1 1.732V12.5A1.5 1.5 0 002.5 14h12a.5.5 0 00.5-.5V5H2a1.99 1.99 0 01-1-.268zM1 3a1 1 0 001 1h12V2H2a1 1 0 00-1 1z"/></symbol><symbol fill="currentColor" class="bi bi-wallet-fill" viewBox="0 0 16 16" id="wallet-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 2A1.5 1.5 0 000 3.5v2h6a.5.5 0 01.5.5c0 .253.08.644.306.958.207.288.557.542 1.194.542.637 0 .987-.254 1.194-.542.226-.314.306-.705.306-.958a.5.5 0 01.5-.5h6v-2A1.5 1.5 0 0014.5 2h-13z"/><path d="M16 6.5h-5.551a2.678 2.678 0 01-.443 1.042C9.613 8.088 8.963 8.5 8 8.5c-.963 0-1.613-.412-2.006-.958A2.679 2.679 0 015.551 6.5H0v6A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-6z"/></symbol><symbol fill="currentColor" class="bi bi-wallet2" viewBox="0 0 16 16" id="wallet2" xmlns="http://www.w3.org/2000/svg"><path d="M12.136.326A1.5 1.5 0 0114 1.78V3h.5A1.5 1.5 0 0116 4.5v9a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 13.5v-9a1.5 1.5 0 011.432-1.499L12.136.326zM5.562 3H13V1.78a.5.5 0 00-.621-.484L5.562 3zM1.5 4a.5.5 0 00-.5.5v9a.5.5 0 00.5.5h13a.5.5 0 00.5-.5v-9a.5.5 0 00-.5-.5h-13z"/></symbol><symbol fill="currentColor" class="bi bi-watch" viewBox="0 0 16 16" id="watch" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 5a.5.5 0 00-1 0v2.5H6a.5.5 0 000 1h2a.5.5 0 00.5-.5V5z"/><path d="M5.667 16C4.747 16 4 15.254 4 14.333v-1.86A5.985 5.985 0 012 8c0-1.777.772-3.374 2-4.472V1.667C4 .747 4.746 0 5.667 0h4.666C11.253 0 12 .746 12 1.667v1.86a5.99 5.99 0 011.918 3.48.502.502 0 01.582.493v1a.5.5 0 01-.582.493A5.99 5.99 0 0112 12.473v1.86c0 .92-.746 1.667-1.667 1.667H5.667zM13 8A5 5 0 103 8a5 5 0 0010 0z"/></symbol><symbol fill="currentColor" class="bi bi-water" viewBox="0 0 16 16" id="water" xmlns="http://www.w3.org/2000/svg"><path d="M.036 3.314a.5.5 0 01.65-.278l1.757.703a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.757-.703a.5.5 0 11.372.928l-1.758.703a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0L.314 3.964a.5.5 0 01-.278-.65zm0 3a.5.5 0 01.65-.278l1.757.703a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.757-.703a.5.5 0 11.372.928l-1.758.703a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0L.314 6.964a.5.5 0 01-.278-.65zm0 3a.5.5 0 01.65-.278l1.757.703a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.757-.703a.5.5 0 11.372.928l-1.758.703a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0L.314 9.964a.5.5 0 01-.278-.65zm0 3a.5.5 0 01.65-.278l1.757.703a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.757-.703a.5.5 0 11.372.928l-1.758.703a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.757-.703a.5.5 0 01-.278-.65z"/></symbol><symbol fill="currentColor" class="bi bi-whatsapp" viewBox="0 0 16 16" id="whatsapp" xmlns="http://www.w3.org/2000/svg"><path d="M13.601 2.326A7.854 7.854 0 007.994 0C3.627 0 .068 3.558.064 7.926c0 1.399.366 2.76 1.057 3.965L0 16l4.204-1.102a7.933 7.933 0 003.79.965h.004c4.368 0 7.926-3.558 7.93-7.93A7.898 7.898 0 0013.6 2.326zM7.994 14.521a6.573 6.573 0 01-3.356-.92l-.24-.144-2.494.654.666-2.433-.156-.251a6.56 6.56 0 01-1.007-3.505c0-3.626 2.957-6.584 6.591-6.584a6.56 6.56 0 014.66 1.931 6.557 6.557 0 011.928 4.66c-.004 3.639-2.961 6.592-6.592 6.592zm3.615-4.934c-.197-.099-1.17-.578-1.353-.646-.182-.065-.315-.099-.445.099-.133.197-.513.646-.627.775-.114.133-.232.148-.43.05-.197-.1-.836-.308-1.592-.985-.59-.525-.985-1.175-1.103-1.372-.114-.198-.011-.304.088-.403.087-.088.197-.232.296-.346.1-.114.133-.198.198-.33.065-.134.034-.248-.015-.347-.05-.099-.445-1.076-.612-1.47-.16-.389-.323-.335-.445-.34-.114-.007-.247-.007-.38-.007a.729.729 0 00-.529.247c-.182.198-.691.677-.691 1.654 0 .977.71 1.916.81 2.049.098.133 1.394 2.132 3.383 2.992.47.205.84.326 1.129.418.475.152.904.129 1.246.08.38-.058 1.171-.48 1.338-.943.164-.464.164-.86.114-.943-.049-.084-.182-.133-.38-.232z"/></symbol><symbol fill="currentColor" class="bi bi-wifi" viewBox="0 0 16 16" id="wifi" xmlns="http://www.w3.org/2000/svg"><path d="M15.384 6.115a.485.485 0 00-.047-.736A12.444 12.444 0 008 3C5.259 3 2.723 3.882.663 5.379a.485.485 0 00-.048.736.518.518 0 00.668.05A11.448 11.448 0 018 4c2.507 0 4.827.802 6.716 2.164.205.148.49.13.668-.049z"/><path d="M13.229 8.271a.482.482 0 00-.063-.745A9.455 9.455 0 008 6c-1.905 0-3.68.56-5.166 1.526a.48.48 0 00-.063.745.525.525 0 00.652.065A8.46 8.46 0 018 7a8.46 8.46 0 014.576 1.336c.206.132.48.108.653-.065zm-2.183 2.183c.226-.226.185-.605-.1-.75A6.473 6.473 0 008 9c-1.06 0-2.062.254-2.946.704-.285.145-.326.524-.1.75l.015.015c.16.16.407.19.611.09A5.478 5.478 0 018 10c.868 0 1.69.201 2.42.56.203.1.45.07.61-.091l.016-.015zM9.06 12.44c.196-.196.198-.52-.04-.66A1.99 1.99 0 008 11.5a1.99 1.99 0 00-1.02.28c-.238.14-.236.464-.04.66l.706.706a.5.5 0 00.707 0l.707-.707z"/></symbol><symbol fill="currentColor" class="bi bi-wifi-1" viewBox="0 0 16 16" id="wifi-1" xmlns="http://www.w3.org/2000/svg"><path d="M11.046 10.454c.226-.226.185-.605-.1-.75A6.473 6.473 0 008 9c-1.06 0-2.062.254-2.946.704-.285.145-.326.524-.1.75l.015.015c.16.16.407.19.611.09A5.478 5.478 0 018 10c.868 0 1.69.201 2.42.56.203.1.45.07.611-.091l.015-.015zM9.06 12.44c.196-.196.198-.52-.04-.66A1.99 1.99 0 008 11.5a1.99 1.99 0 00-1.02.28c-.238.14-.236.464-.04.66l.706.706a.5.5 0 00.707 0l.708-.707z"/></symbol><symbol fill="currentColor" class="bi bi-wifi-2" viewBox="0 0 16 16" id="wifi-2" xmlns="http://www.w3.org/2000/svg"><path d="M13.229 8.271c.216-.216.194-.578-.063-.745A9.456 9.456 0 008 6c-1.905 0-3.68.56-5.166 1.526a.48.48 0 00-.063.745.525.525 0 00.652.065A8.46 8.46 0 018 7a8.46 8.46 0 014.577 1.336c.205.132.48.108.652-.065zm-2.183 2.183c.226-.226.185-.605-.1-.75A6.473 6.473 0 008 9c-1.06 0-2.062.254-2.946.704-.285.145-.326.524-.1.75l.015.015c.16.16.408.19.611.09A5.478 5.478 0 018 10c.868 0 1.69.201 2.42.56.203.1.45.07.611-.091l.015-.015zM9.06 12.44c.196-.196.198-.52-.04-.66A1.99 1.99 0 008 11.5a1.99 1.99 0 00-1.02.28c-.238.14-.236.464-.04.66l.706.706a.5.5 0 00.708 0l.707-.707z"/></symbol><symbol fill="currentColor" class="bi bi-wifi-off" viewBox="0 0 16 16" id="wifi-off" xmlns="http://www.w3.org/2000/svg"><path d="M10.706 3.294A12.545 12.545 0 008 3C5.259 3 2.723 3.882.663 5.379a.485.485 0 00-.048.736.518.518 0 00.668.05A11.448 11.448 0 018 4c.63 0 1.249.05 1.852.148l.854-.854zM8 6c-1.905 0-3.68.56-5.166 1.526a.48.48 0 00-.063.745.525.525 0 00.652.065 8.448 8.448 0 013.51-1.27L8 6zm2.596 1.404l.785-.785c.63.24 1.227.545 1.785.907a.482.482 0 01.063.745.525.525 0 01-.652.065 8.462 8.462 0 00-1.98-.932zM8 10l.933-.933a6.455 6.455 0 012.013.637c.285.145.326.524.1.75l-.015.015a.532.532 0 01-.611.09A5.478 5.478 0 008 10zm4.905-4.905l.747-.747c.59.3 1.153.645 1.685 1.03a.485.485 0 01.047.737.518.518 0 01-.668.05 11.493 11.493 0 00-1.811-1.07zM9.02 11.78c.238.14.236.464.04.66l-.707.706a.5.5 0 01-.707 0l-.707-.707c-.195-.195-.197-.518.04-.66A1.99 1.99 0 018 11.5c.374 0 .723.102 1.021.28zm4.355-9.905a.53.53 0 01.75.75l-10.75 10.75a.53.53 0 01-.75-.75l10.75-10.75z"/></symbol><symbol fill="currentColor" class="bi bi-wind" viewBox="0 0 16 16" id="wind" xmlns="http://www.w3.org/2000/svg"><path d="M12.5 2A2.5 2.5 0 0010 4.5a.5.5 0 01-1 0A3.5 3.5 0 1112.5 8H.5a.5.5 0 010-1h12a2.5 2.5 0 000-5zm-7 1a1 1 0 00-1 1 .5.5 0 01-1 0 2 2 0 112 2h-5a.5.5 0 010-1h5a1 1 0 000-2zM0 9.5A.5.5 0 01.5 9h10.042a3 3 0 11-3 3 .5.5 0 011 0 2 2 0 102-2H.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-window" viewBox="0 0 16 16" id="window" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 4a.5.5 0 100-1 .5.5 0 000 1zm2-.5a.5.5 0 11-1 0 .5.5 0 011 0zm1 .5a.5.5 0 100-1 .5.5 0 000 1z"/><path d="M2 1a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V3a2 2 0 00-2-2H2zm13 2v2H1V3a1 1 0 011-1h12a1 1 0 011 1zM2 14a1 1 0 01-1-1V6h14v7a1 1 0 01-1 1H2z"/></symbol><symbol fill="currentColor" class="bi bi-window-dock" viewBox="0 0 16 16" id="window-dock" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 5H1v8a1 1 0 001 1h12a1 1 0 001-1V5zm0-1H1V3a1 1 0 011-1h12a1 1 0 011 1v1zm1-1a2 2 0 00-2-2H2a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V3z"/><path d="M3 11.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm4 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm4 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-window-sidebar" viewBox="0 0 16 16" id="window-sidebar" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 4a.5.5 0 100-1 .5.5 0 000 1zm2-.5a.5.5 0 11-1 0 .5.5 0 011 0zm1 .5a.5.5 0 100-1 .5.5 0 000 1z"/><path d="M2 1a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V3a2 2 0 00-2-2H2zm12 1a1 1 0 011 1v2H1V3a1 1 0 011-1h12zM1 13V6h4v8H2a1 1 0 01-1-1zm5 1V6h9v7a1 1 0 01-1 1H6z"/></symbol><symbol fill="currentColor" class="bi bi-wrench" viewBox="0 0 16 16" id="wrench" xmlns="http://www.w3.org/2000/svg"><path d="M.102 2.223A3.004 3.004 0 003.78 5.897l6.341 6.252A3.003 3.003 0 0013 16a3 3 0 10-.851-5.878L5.897 3.781A3.004 3.004 0 002.223.1l2.141 2.142L4 4l-1.757.364L.102 2.223zm13.37 9.019l.528.026.287.445.445.287.026.529L15 13l-.242.471-.026.529-.445.287-.287.445-.529.026L13 15l-.471-.242-.529-.026-.287-.445-.445-.287-.026-.529L11 13l.242-.471.026-.529.445-.287.287-.445.529-.026L13 11l.471.242z"/></symbol><symbol fill="currentColor" class="bi bi-x" viewBox="0 0 16 16" id="x" xmlns="http://www.w3.org/2000/svg"><path d="M4.646 4.646a.5.5 0 01.708 0L8 7.293l2.646-2.647a.5.5 0 01.708.708L8.707 8l2.647 2.646a.5.5 0 01-.708.708L8 8.707l-2.646 2.647a.5.5 0 01-.708-.708L7.293 8 4.646 5.354a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-x-circle" viewBox="0 0 16 16" id="x-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4.646 4.646a.5.5 0 01.708 0L8 7.293l2.646-2.647a.5.5 0 01.708.708L8.707 8l2.647 2.646a.5.5 0 01-.708.708L8 8.707l-2.646 2.647a.5.5 0 01-.708-.708L7.293 8 4.646 5.354a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-x-circle-fill" viewBox="0 0 16 16" id="x-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM5.354 4.646a.5.5 0 10-.708.708L7.293 8l-2.647 2.646a.5.5 0 00.708.708L8 8.707l2.646 2.647a.5.5 0 00.708-.708L8.707 8l2.647-2.646a.5.5 0 00-.708-.708L8 7.293 5.354 4.646z"/></symbol><symbol fill="currentColor" class="bi bi-x-diamond" viewBox="0 0 16 16" id="x-diamond" xmlns="http://www.w3.org/2000/svg"><path d="M7.987 16a1.526 1.526 0 01-1.07-.448L.45 9.082a1.531 1.531 0 010-2.165L6.917.45a1.531 1.531 0 012.166 0l6.469 6.468A1.526 1.526 0 0116 8.013a1.526 1.526 0 01-.448 1.07l-6.47 6.469A1.526 1.526 0 017.988 16zM7.639 1.17L4.766 4.044 8 7.278l3.234-3.234L8.361 1.17a.51.51 0 00-.722 0zM8.722 8l3.234 3.234 2.873-2.873c.2-.2.2-.523 0-.722l-2.873-2.873L8.722 8zM8 8.722l-3.234 3.234 2.873 2.873c.2.2.523.2.722 0l2.873-2.873L8 8.722zM7.278 8L4.044 4.766 1.17 7.639a.511.511 0 000 .722l2.874 2.873L7.278 8z"/></symbol><symbol fill="currentColor" class="bi bi-x-diamond-fill" viewBox="0 0 16 16" id="x-diamond-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.05.435c-.58-.58-1.52-.58-2.1 0L4.047 3.339 8 7.293l3.954-3.954L9.049.435zm3.61 3.611L8.708 8l3.954 3.954 2.904-2.905c.58-.58.58-1.519 0-2.098l-2.904-2.905zm-.706 8.614L8 8.708l-3.954 3.954 2.905 2.904c.58.58 1.519.58 2.098 0l2.905-2.904zm-8.614-.706L7.292 8 3.339 4.046.435 6.951c-.58.58-.58 1.519 0 2.098l2.904 2.905z"/></symbol><symbol fill="currentColor" class="bi bi-x-lg" viewBox="0 0 16 16" id="x-lg" xmlns="http://www.w3.org/2000/svg"><path d="M1.293 1.293a1 1 0 011.414 0L8 6.586l5.293-5.293a1 1 0 111.414 1.414L9.414 8l5.293 5.293a1 1 0 01-1.414 1.414L8 9.414l-5.293 5.293a1 1 0 01-1.414-1.414L6.586 8 1.293 2.707a1 1 0 010-1.414z"/></symbol><symbol fill="currentColor" class="bi bi-x-octagon" viewBox="0 0 16 16" id="x-octagon" xmlns="http://www.w3.org/2000/svg"><path d="M4.54.146A.5.5 0 014.893 0h6.214a.5.5 0 01.353.146l4.394 4.394a.5.5 0 01.146.353v6.214a.5.5 0 01-.146.353l-4.394 4.394a.5.5 0 01-.353.146H4.893a.5.5 0 01-.353-.146L.146 11.46A.5.5 0 010 11.107V4.893a.5.5 0 01.146-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z"/><path d="M4.646 4.646a.5.5 0 01.708 0L8 7.293l2.646-2.647a.5.5 0 01.708.708L8.707 8l2.647 2.646a.5.5 0 01-.708.708L8 8.707l-2.646 2.647a.5.5 0 01-.708-.708L7.293 8 4.646 5.354a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-x-octagon-fill" viewBox="0 0 16 16" id="x-octagon-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.46.146A.5.5 0 0011.107 0H4.893a.5.5 0 00-.353.146L.146 4.54A.5.5 0 000 4.893v6.214a.5.5 0 00.146.353l4.394 4.394a.5.5 0 00.353.146h6.214a.5.5 0 00.353-.146l4.394-4.394a.5.5 0 00.146-.353V4.893a.5.5 0 00-.146-.353L11.46.146zm-6.106 4.5L8 7.293l2.646-2.647a.5.5 0 01.708.708L8.707 8l2.647 2.646a.5.5 0 01-.708.708L8 8.707l-2.646 2.647a.5.5 0 01-.708-.708L7.293 8 4.646 5.354a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-x-square" viewBox="0 0 16 16" id="x-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M4.646 4.646a.5.5 0 01.708 0L8 7.293l2.646-2.647a.5.5 0 01.708.708L8.707 8l2.647 2.646a.5.5 0 01-.708.708L8 8.707l-2.646 2.647a.5.5 0 01-.708-.708L7.293 8 4.646 5.354a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-x-square-fill" viewBox="0 0 16 16" id="x-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm3.354 4.646L8 7.293l2.646-2.647a.5.5 0 01.708.708L8.707 8l2.647 2.646a.5.5 0 01-.708.708L8 8.707l-2.646 2.647a.5.5 0 01-.708-.708L7.293 8 4.646 5.354a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-youtube" viewBox="0 0 16 16" id="youtube" xmlns="http://www.w3.org/2000/svg"><path d="M8.051 1.999h.089c.822.003 4.987.033 6.11.335a2.01 2.01 0 011.415 1.42c.101.38.172.883.22 1.402l.01.104.022.26.008.104c.065.914.073 1.77.074 1.957v.075c-.001.194-.01 1.108-.082 2.06l-.008.105-.009.104c-.05.572-.124 1.14-.235 1.558a2.007 2.007 0 01-1.415 1.42c-1.16.312-5.569.334-6.18.335h-.142c-.309 0-1.587-.006-2.927-.052l-.17-.006-.087-.004-.171-.007-.171-.007c-1.11-.049-2.167-.128-2.654-.26a2.007 2.007 0 01-1.415-1.419c-.111-.417-.185-.986-.235-1.558L.09 9.82l-.008-.104A31.4 31.4 0 010 7.68v-.123c.002-.215.01-.958.064-1.778l.007-.103.003-.052.008-.104.022-.26.01-.104c.048-.519.119-1.023.22-1.402a2.007 2.007 0 011.415-1.42c.487-.13 1.544-.21 2.654-.26l.17-.007.172-.006.086-.003.171-.007A99.788 99.788 0 017.858 2h.193zM6.4 5.209v4.818l4.157-2.408L6.4 5.209z"/></symbol><symbol fill="currentColor" class="bi bi-zoom-in" viewBox="0 0 16 16" id="zoom-in" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.5 12a5.5 5.5 0 100-11 5.5 5.5 0 000 11zM13 6.5a6.5 6.5 0 11-13 0 6.5 6.5 0 0113 0z"/><path d="M10.344 11.742c.03.04.062.078.098.115l3.85 3.85a1 1 0 001.415-1.414l-3.85-3.85a1.007 1.007 0 00-.115-.1 6.538 6.538 0 01-1.398 1.4z"/><path fill-rule="evenodd" d="M6.5 3a.5.5 0 01.5.5V6h2.5a.5.5 0 010 1H7v2.5a.5.5 0 01-1 0V7H3.5a.5.5 0 010-1H6V3.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-zoom-out" viewBox="0 0 16 16" id="zoom-out" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.5 12a5.5 5.5 0 100-11 5.5 5.5 0 000 11zM13 6.5a6.5 6.5 0 11-13 0 6.5 6.5 0 0113 0z"/><path d="M10.344 11.742c.03.04.062.078.098.115l3.85 3.85a1 1 0 001.415-1.414l-3.85-3.85a1.007 1.007 0 00-.115-.1 6.538 6.538 0 01-1.398 1.4z"/><path fill-rule="evenodd" d="M3 6.5a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol></svg> \ No newline at end of file diff --git a/assets/js/oe-bcl-default.bundle.js b/assets/js/oe-bcl-default.bundle.js new file mode 100644 index 00000000..e046ed97 --- /dev/null +++ b/assets/js/oe-bcl-default.bundle.js @@ -0,0 +1,6743 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.bootstrap = factory()); +}(this, (function () { 'use strict'; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): dom/selector-engine.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + const NODE_TEXT = 3; + const SelectorEngine = { + find(selector, element = document.documentElement) { + return [].concat(...Element.prototype.querySelectorAll.call(element, selector)); + }, + + findOne(selector, element = document.documentElement) { + return Element.prototype.querySelector.call(element, selector); + }, + + children(element, selector) { + return [].concat(...element.children).filter(child => child.matches(selector)); + }, + + parents(element, selector) { + const parents = []; + let ancestor = element.parentNode; + + while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) { + if (ancestor.matches(selector)) { + parents.push(ancestor); + } + + ancestor = ancestor.parentNode; + } + + return parents; + }, + + prev(element, selector) { + let previous = element.previousElementSibling; + + while (previous) { + if (previous.matches(selector)) { + return [previous]; + } + + previous = previous.previousElementSibling; + } + + return []; + }, + + next(element, selector) { + let next = element.nextElementSibling; + + while (next) { + if (next.matches(selector)) { + return [next]; + } + + next = next.nextElementSibling; + } + + return []; + } + + }; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): util/index.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + + const MAX_UID = 1000000; + const MILLISECONDS_MULTIPLIER = 1000; + const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp) + + const toType = obj => { + if (obj === null || obj === undefined) { + return `${obj}`; + } + + return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase(); + }; + /** + * -------------------------------------------------------------------------- + * Public Util Api + * -------------------------------------------------------------------------- + */ + + + const getUID = prefix => { + do { + prefix += Math.floor(Math.random() * MAX_UID); + } while (document.getElementById(prefix)); + + return prefix; + }; + + const getSelector = element => { + let selector = element.getAttribute('data-bs-target'); + + if (!selector || selector === '#') { + let hrefAttr = element.getAttribute('href'); // The only valid content that could double as a selector are IDs or classes, + // so everything starting with `#` or `.`. If a "real" URL is used as the selector, + // `document.querySelector` will rightfully complain it is invalid. + // See https://github.com/twbs/bootstrap/issues/32273 + + if (!hrefAttr || !hrefAttr.includes('#') && !hrefAttr.startsWith('.')) { + return null; + } // Just in case some CMS puts out a full URL with the anchor appended + + + if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) { + hrefAttr = `#${hrefAttr.split('#')[1]}`; + } + + selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null; + } + + return selector; + }; + + const getSelectorFromElement = element => { + const selector = getSelector(element); + + if (selector) { + return document.querySelector(selector) ? selector : null; + } + + return null; + }; + + const getElementFromSelector = element => { + const selector = getSelector(element); + return selector ? document.querySelector(selector) : null; + }; + + const getTransitionDurationFromElement = element => { + if (!element) { + return 0; + } // Get transition-duration of the element + + + let { + transitionDuration, + transitionDelay + } = window.getComputedStyle(element); + const floatTransitionDuration = Number.parseFloat(transitionDuration); + const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found + + if (!floatTransitionDuration && !floatTransitionDelay) { + return 0; + } // If multiple durations are defined, take the first + + + transitionDuration = transitionDuration.split(',')[0]; + transitionDelay = transitionDelay.split(',')[0]; + return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; + }; + + const triggerTransitionEnd = element => { + element.dispatchEvent(new Event(TRANSITION_END)); + }; + + const isElement$1 = obj => { + if (!obj || typeof obj !== 'object') { + return false; + } + + if (typeof obj.jquery !== 'undefined') { + obj = obj[0]; + } + + return typeof obj.nodeType !== 'undefined'; + }; + + const getElement = obj => { + if (isElement$1(obj)) { + // it's a jQuery object or a node element + return obj.jquery ? obj[0] : obj; + } + + if (typeof obj === 'string' && obj.length > 0) { + return SelectorEngine.findOne(obj); + } + + return null; + }; + + const typeCheckConfig = (componentName, config, configTypes) => { + Object.keys(configTypes).forEach(property => { + const expectedTypes = configTypes[property]; + const value = config[property]; + const valueType = value && isElement$1(value) ? 'element' : toType(value); + + if (!new RegExp(expectedTypes).test(valueType)) { + throw new TypeError(`${componentName.toUpperCase()}: Option "${property}" provided type "${valueType}" but expected type "${expectedTypes}".`); + } + }); + }; + + const isVisible = element => { + if (!isElement$1(element) || element.getClientRects().length === 0) { + return false; + } + + return getComputedStyle(element).getPropertyValue('visibility') === 'visible'; + }; + + const isDisabled = element => { + if (!element || element.nodeType !== Node.ELEMENT_NODE) { + return true; + } + + if (element.classList.contains('disabled')) { + return true; + } + + if (typeof element.disabled !== 'undefined') { + return element.disabled; + } + + return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'; + }; + + const findShadowRoot = element => { + if (!document.documentElement.attachShadow) { + return null; + } // Can find the shadow root otherwise it'll return the document + + + if (typeof element.getRootNode === 'function') { + const root = element.getRootNode(); + return root instanceof ShadowRoot ? root : null; + } + + if (element instanceof ShadowRoot) { + return element; + } // when we don't find a shadow root + + + if (!element.parentNode) { + return null; + } + + return findShadowRoot(element.parentNode); + }; + + const noop = () => {}; + + const reflow = element => element.offsetHeight; + + const getjQuery = () => { + const { + jQuery + } = window; + + if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) { + return jQuery; + } + + return null; + }; + + const DOMContentLoadedCallbacks = []; + + const onDOMContentLoaded = callback => { + if (document.readyState === 'loading') { + // add listener on the first call when the document is in loading state + if (!DOMContentLoadedCallbacks.length) { + document.addEventListener('DOMContentLoaded', () => { + DOMContentLoadedCallbacks.forEach(callback => callback()); + }); + } + + DOMContentLoadedCallbacks.push(callback); + } else { + callback(); + } + }; + + const isRTL = () => document.documentElement.dir === 'rtl'; + + const defineJQueryPlugin = plugin => { + onDOMContentLoaded(() => { + const $ = getjQuery(); + /* istanbul ignore if */ + + if ($) { + const name = plugin.NAME; + const JQUERY_NO_CONFLICT = $.fn[name]; + $.fn[name] = plugin.jQueryInterface; + $.fn[name].Constructor = plugin; + + $.fn[name].noConflict = () => { + $.fn[name] = JQUERY_NO_CONFLICT; + return plugin.jQueryInterface; + }; + } + }); + }; + + const execute = callback => { + if (typeof callback === 'function') { + callback(); + } + }; + + const executeAfterTransition = (callback, transitionElement, waitForTransition = true) => { + if (!waitForTransition) { + execute(callback); + return; + } + + const durationPadding = 5; + const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding; + let called = false; + + const handler = ({ + target + }) => { + if (target !== transitionElement) { + return; + } + + called = true; + transitionElement.removeEventListener(TRANSITION_END, handler); + execute(callback); + }; + + transitionElement.addEventListener(TRANSITION_END, handler); + setTimeout(() => { + if (!called) { + triggerTransitionEnd(transitionElement); + } + }, emulatedDuration); + }; + /** + * Return the previous/next element of a list. + * + * @param {array} list The list of elements + * @param activeElement The active element + * @param shouldGetNext Choose to get next or previous element + * @param isCycleAllowed + * @return {Element|elem} The proper element + */ + + + const getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => { + let index = list.indexOf(activeElement); // if the element does not exist in the list return an element depending on the direction and if cycle is allowed + + if (index === -1) { + return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]; + } + + const listLength = list.length; + index += shouldGetNext ? 1 : -1; + + if (isCycleAllowed) { + index = (index + listLength) % listLength; + } + + return list[Math.max(0, Math.min(index, listLength - 1))]; + }; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): dom/event-handler.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const namespaceRegex = /[^.]*(?=\..*)\.|.*/; + const stripNameRegex = /\..*/; + const stripUidRegex = /::\d+$/; + const eventRegistry = {}; // Events storage + + let uidEvent = 1; + const customEvents = { + mouseenter: 'mouseover', + mouseleave: 'mouseout' + }; + const customEventsRegex = /^(mouseenter|mouseleave)/i; + const nativeEvents = 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']); + /** + * ------------------------------------------------------------------------ + * Private methods + * ------------------------------------------------------------------------ + */ + + function getUidEvent(element, uid) { + return uid && `${uid}::${uidEvent++}` || element.uidEvent || uidEvent++; + } + + function getEvent(element) { + const uid = getUidEvent(element); + element.uidEvent = uid; + eventRegistry[uid] = eventRegistry[uid] || {}; + return eventRegistry[uid]; + } + + function bootstrapHandler(element, fn) { + return function handler(event) { + event.delegateTarget = element; + + if (handler.oneOff) { + EventHandler.off(element, event.type, fn); + } + + return fn.apply(element, [event]); + }; + } + + function bootstrapDelegationHandler(element, selector, fn) { + return function handler(event) { + const domElements = element.querySelectorAll(selector); + + for (let { + target + } = event; target && target !== this; target = target.parentNode) { + for (let i = domElements.length; i--;) { + if (domElements[i] === target) { + event.delegateTarget = target; + + if (handler.oneOff) { + // eslint-disable-next-line unicorn/consistent-destructuring + EventHandler.off(element, event.type, selector, fn); + } + + return fn.apply(target, [event]); + } + } + } // To please ESLint + + + return null; + }; + } + + function findHandler(events, handler, delegationSelector = null) { + const uidEventList = Object.keys(events); + + for (let i = 0, len = uidEventList.length; i < len; i++) { + const event = events[uidEventList[i]]; + + if (event.originalHandler === handler && event.delegationSelector === delegationSelector) { + return event; + } + } + + return null; + } + + function normalizeParams(originalTypeEvent, handler, delegationFn) { + const delegation = typeof handler === 'string'; + const originalHandler = delegation ? delegationFn : handler; + let typeEvent = getTypeEvent(originalTypeEvent); + const isNative = nativeEvents.has(typeEvent); + + if (!isNative) { + typeEvent = originalTypeEvent; + } + + return [delegation, originalHandler, typeEvent]; + } + + function addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) { + if (typeof originalTypeEvent !== 'string' || !element) { + return; + } + + if (!handler) { + handler = delegationFn; + delegationFn = null; + } // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position + // this prevents the handler from being dispatched the same way as mouseover or mouseout does + + + if (customEventsRegex.test(originalTypeEvent)) { + const wrapFn = fn => { + return function (event) { + if (!event.relatedTarget || event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget)) { + return fn.call(this, event); + } + }; + }; + + if (delegationFn) { + delegationFn = wrapFn(delegationFn); + } else { + handler = wrapFn(handler); + } + } + + const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn); + const events = getEvent(element); + const handlers = events[typeEvent] || (events[typeEvent] = {}); + const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null); + + if (previousFn) { + previousFn.oneOff = previousFn.oneOff && oneOff; + return; + } + + const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, '')); + const fn = delegation ? bootstrapDelegationHandler(element, handler, delegationFn) : bootstrapHandler(element, handler); + fn.delegationSelector = delegation ? handler : null; + fn.originalHandler = originalHandler; + fn.oneOff = oneOff; + fn.uidEvent = uid; + handlers[uid] = fn; + element.addEventListener(typeEvent, fn, delegation); + } + + function removeHandler(element, events, typeEvent, handler, delegationSelector) { + const fn = findHandler(events[typeEvent], handler, delegationSelector); + + if (!fn) { + return; + } + + element.removeEventListener(typeEvent, fn, Boolean(delegationSelector)); + delete events[typeEvent][fn.uidEvent]; + } + + function removeNamespacedHandlers(element, events, typeEvent, namespace) { + const storeElementEvent = events[typeEvent] || {}; + Object.keys(storeElementEvent).forEach(handlerKey => { + if (handlerKey.includes(namespace)) { + const event = storeElementEvent[handlerKey]; + removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector); + } + }); + } + + function getTypeEvent(event) { + // allow to get the native events from namespaced events ('click.bs.button' --> 'click') + event = event.replace(stripNameRegex, ''); + return customEvents[event] || event; + } + + const EventHandler = { + on(element, event, handler, delegationFn) { + addHandler(element, event, handler, delegationFn, false); + }, + + one(element, event, handler, delegationFn) { + addHandler(element, event, handler, delegationFn, true); + }, + + off(element, originalTypeEvent, handler, delegationFn) { + if (typeof originalTypeEvent !== 'string' || !element) { + return; + } + + const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn); + const inNamespace = typeEvent !== originalTypeEvent; + const events = getEvent(element); + const isNamespace = originalTypeEvent.startsWith('.'); + + if (typeof originalHandler !== 'undefined') { + // Simplest case: handler is passed, remove that listener ONLY. + if (!events || !events[typeEvent]) { + return; + } + + removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null); + return; + } + + if (isNamespace) { + Object.keys(events).forEach(elementEvent => { + removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1)); + }); + } + + const storeElementEvent = events[typeEvent] || {}; + Object.keys(storeElementEvent).forEach(keyHandlers => { + const handlerKey = keyHandlers.replace(stripUidRegex, ''); + + if (!inNamespace || originalTypeEvent.includes(handlerKey)) { + const event = storeElementEvent[keyHandlers]; + removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector); + } + }); + }, + + trigger(element, event, args) { + if (typeof event !== 'string' || !element) { + return null; + } + + const $ = getjQuery(); + const typeEvent = getTypeEvent(event); + const inNamespace = event !== typeEvent; + const isNative = nativeEvents.has(typeEvent); + let jQueryEvent; + let bubbles = true; + let nativeDispatch = true; + let defaultPrevented = false; + let evt = null; + + if (inNamespace && $) { + jQueryEvent = $.Event(event, args); + $(element).trigger(jQueryEvent); + bubbles = !jQueryEvent.isPropagationStopped(); + nativeDispatch = !jQueryEvent.isImmediatePropagationStopped(); + defaultPrevented = jQueryEvent.isDefaultPrevented(); + } + + if (isNative) { + evt = document.createEvent('HTMLEvents'); + evt.initEvent(typeEvent, bubbles, true); + } else { + evt = new CustomEvent(event, { + bubbles, + cancelable: true + }); + } // merge custom information in our event + + + if (typeof args !== 'undefined') { + Object.keys(args).forEach(key => { + Object.defineProperty(evt, key, { + get() { + return args[key]; + } + + }); + }); + } + + if (defaultPrevented) { + evt.preventDefault(); + } + + if (nativeDispatch) { + element.dispatchEvent(evt); + } + + if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') { + jQueryEvent.preventDefault(); + } + + return evt; + } + + }; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): dom/data.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + const elementMap = new Map(); + var Data = { + set(element, key, instance) { + if (!elementMap.has(element)) { + elementMap.set(element, new Map()); + } + + const instanceMap = elementMap.get(element); // make it clear we only want one instance per element + // can be removed later when multiple key/instances are fine to be used + + if (!instanceMap.has(key) && instanceMap.size !== 0) { + // eslint-disable-next-line no-console + console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`); + return; + } + + instanceMap.set(key, instance); + }, + + get(element, key) { + if (elementMap.has(element)) { + return elementMap.get(element).get(key) || null; + } + + return null; + }, + + remove(element, key) { + if (!elementMap.has(element)) { + return; + } + + const instanceMap = elementMap.get(element); + instanceMap.delete(key); // free up element references if there are no instances left for an element + + if (instanceMap.size === 0) { + elementMap.delete(element); + } + } + + }; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): base-component.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const VERSION = '5.0.2'; + + class BaseComponent { + constructor(element) { + element = getElement(element); + + if (!element) { + return; + } + + this._element = element; + Data.set(this._element, this.constructor.DATA_KEY, this); + } + + dispose() { + Data.remove(this._element, this.constructor.DATA_KEY); + EventHandler.off(this._element, this.constructor.EVENT_KEY); + Object.getOwnPropertyNames(this).forEach(propertyName => { + this[propertyName] = null; + }); + } + + _queueCallback(callback, element, isAnimated = true) { + executeAfterTransition(callback, element, isAnimated); + } + /** Static */ + + + static getInstance(element) { + return Data.get(element, this.DATA_KEY); + } + + static getOrCreateInstance(element, config = {}) { + return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null); + } + + static get VERSION() { + return VERSION; + } + + 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}`; + } + + } + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): alert.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$c = 'alert'; + const DATA_KEY$b = 'bs.alert'; + const EVENT_KEY$b = `.${DATA_KEY$b}`; + const DATA_API_KEY$8 = '.data-api'; + const SELECTOR_DISMISS = '[data-bs-dismiss="alert"]'; + const EVENT_CLOSE = `close${EVENT_KEY$b}`; + const EVENT_CLOSED = `closed${EVENT_KEY$b}`; + const EVENT_CLICK_DATA_API$7 = `click${EVENT_KEY$b}${DATA_API_KEY$8}`; + const CLASS_NAME_ALERT = 'alert'; + const CLASS_NAME_FADE$6 = 'fade'; + const CLASS_NAME_SHOW$9 = 'show'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Alert extends BaseComponent { + // Getters + static get NAME() { + return NAME$c; + } // Public + + + close(element) { + const rootElement = element ? this._getRootElement(element) : this._element; + + const customEvent = this._triggerCloseEvent(rootElement); + + if (customEvent === null || customEvent.defaultPrevented) { + return; + } + + this._removeElement(rootElement); + } // Private + + + _getRootElement(element) { + return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`); + } + + _triggerCloseEvent(element) { + return EventHandler.trigger(element, EVENT_CLOSE); + } + + _removeElement(element) { + element.classList.remove(CLASS_NAME_SHOW$9); + const isAnimated = element.classList.contains(CLASS_NAME_FADE$6); + + this._queueCallback(() => this._destroyElement(element), element, isAnimated); + } + + _destroyElement(element) { + element.remove(); + EventHandler.trigger(element, EVENT_CLOSED); + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Alert.getOrCreateInstance(this); + + if (config === 'close') { + data[config](this); + } + }); + } + + static handleDismiss(alertInstance) { + return function (event) { + if (event) { + event.preventDefault(); + } + + alertInstance.close(this); + }; + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_CLICK_DATA_API$7, SELECTOR_DISMISS, Alert.handleDismiss(new Alert())); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Alert to jQuery only if jQuery is present + */ + + defineJQueryPlugin(Alert); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): button.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$b = 'button'; + const DATA_KEY$a = 'bs.button'; + const EVENT_KEY$a = `.${DATA_KEY$a}`; + const DATA_API_KEY$7 = '.data-api'; + const CLASS_NAME_ACTIVE$3 = 'active'; + const SELECTOR_DATA_TOGGLE$5 = '[data-bs-toggle="button"]'; + const EVENT_CLICK_DATA_API$6 = `click${EVENT_KEY$a}${DATA_API_KEY$7}`; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Button extends BaseComponent { + // Getters + static get NAME() { + return NAME$b; + } // Public + + + toggle() { + // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method + this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE$3)); + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Button.getOrCreateInstance(this); + + if (config === 'toggle') { + data[config](); + } + }); + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_CLICK_DATA_API$6, SELECTOR_DATA_TOGGLE$5, event => { + event.preventDefault(); + const button = event.target.closest(SELECTOR_DATA_TOGGLE$5); + const data = Button.getOrCreateInstance(button); + data.toggle(); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Button to jQuery only if jQuery is present + */ + + defineJQueryPlugin(Button); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): dom/manipulator.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + function normalizeData(val) { + if (val === 'true') { + return true; + } + + if (val === 'false') { + return false; + } + + if (val === Number(val).toString()) { + return Number(val); + } + + if (val === '' || val === 'null') { + return null; + } + + return val; + } + + function normalizeDataKey(key) { + return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`); + } + + const Manipulator = { + setDataAttribute(element, key, value) { + element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value); + }, + + removeDataAttribute(element, key) { + element.removeAttribute(`data-bs-${normalizeDataKey(key)}`); + }, + + getDataAttributes(element) { + if (!element) { + return {}; + } + + const attributes = {}; + Object.keys(element.dataset).filter(key => key.startsWith('bs')).forEach(key => { + let pureKey = key.replace(/^bs/, ''); + pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length); + attributes[pureKey] = normalizeData(element.dataset[key]); + }); + return attributes; + }, + + getDataAttribute(element, key) { + return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`)); + }, + + offset(element) { + const rect = element.getBoundingClientRect(); + return { + top: rect.top + document.body.scrollTop, + left: rect.left + document.body.scrollLeft + }; + }, + + position(element) { + return { + top: element.offsetTop, + left: element.offsetLeft + }; + } + + }; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): carousel.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$a = 'carousel'; + const DATA_KEY$9 = 'bs.carousel'; + const EVENT_KEY$9 = `.${DATA_KEY$9}`; + const DATA_API_KEY$6 = '.data-api'; + const ARROW_LEFT_KEY = 'ArrowLeft'; + const ARROW_RIGHT_KEY = 'ArrowRight'; + const TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch + + const SWIPE_THRESHOLD = 40; + const Default$9 = { + interval: 5000, + keyboard: true, + slide: false, + pause: 'hover', + wrap: true, + touch: true + }; + const DefaultType$9 = { + interval: '(number|boolean)', + keyboard: 'boolean', + slide: '(boolean|string)', + pause: '(string|boolean)', + wrap: 'boolean', + touch: 'boolean' + }; + const ORDER_NEXT = 'next'; + const ORDER_PREV = 'prev'; + const DIRECTION_LEFT = 'left'; + const DIRECTION_RIGHT = 'right'; + const KEY_TO_DIRECTION = { + [ARROW_LEFT_KEY]: DIRECTION_RIGHT, + [ARROW_RIGHT_KEY]: DIRECTION_LEFT + }; + const EVENT_SLIDE = `slide${EVENT_KEY$9}`; + const EVENT_SLID = `slid${EVENT_KEY$9}`; + const EVENT_KEYDOWN = `keydown${EVENT_KEY$9}`; + const EVENT_MOUSEENTER = `mouseenter${EVENT_KEY$9}`; + const EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY$9}`; + const EVENT_TOUCHSTART = `touchstart${EVENT_KEY$9}`; + const EVENT_TOUCHMOVE = `touchmove${EVENT_KEY$9}`; + const EVENT_TOUCHEND = `touchend${EVENT_KEY$9}`; + const EVENT_POINTERDOWN = `pointerdown${EVENT_KEY$9}`; + const EVENT_POINTERUP = `pointerup${EVENT_KEY$9}`; + const EVENT_DRAG_START = `dragstart${EVENT_KEY$9}`; + const EVENT_LOAD_DATA_API$2 = `load${EVENT_KEY$9}${DATA_API_KEY$6}`; + const EVENT_CLICK_DATA_API$5 = `click${EVENT_KEY$9}${DATA_API_KEY$6}`; + const CLASS_NAME_CAROUSEL = 'carousel'; + const CLASS_NAME_ACTIVE$2 = 'active'; + const CLASS_NAME_SLIDE = 'slide'; + const CLASS_NAME_END = 'carousel-item-end'; + const CLASS_NAME_START = 'carousel-item-start'; + const CLASS_NAME_NEXT = 'carousel-item-next'; + const CLASS_NAME_PREV = 'carousel-item-prev'; + const CLASS_NAME_POINTER_EVENT = 'pointer-event'; + const SELECTOR_ACTIVE$1 = '.active'; + const SELECTOR_ACTIVE_ITEM = '.active.carousel-item'; + const SELECTOR_ITEM = '.carousel-item'; + const SELECTOR_ITEM_IMG = '.carousel-item img'; + const SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'; + const SELECTOR_INDICATORS = '.carousel-indicators'; + const SELECTOR_INDICATOR = '[data-bs-target]'; + const SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'; + const SELECTOR_DATA_RIDE = '[data-bs-ride="carousel"]'; + const POINTER_TYPE_TOUCH = 'touch'; + const POINTER_TYPE_PEN = 'pen'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Carousel extends BaseComponent { + constructor(element, config) { + super(element); + this._items = null; + this._interval = null; + this._activeElement = null; + this._isPaused = false; + this._isSliding = false; + this.touchTimeout = null; + this.touchStartX = 0; + this.touchDeltaX = 0; + this._config = this._getConfig(config); + this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element); + this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0; + this._pointerEvent = Boolean(window.PointerEvent); + + this._addEventListeners(); + } // Getters + + + static get Default() { + return Default$9; + } + + static get NAME() { + return NAME$a; + } // Public + + + next() { + this._slide(ORDER_NEXT); + } + + nextWhenVisible() { + // Don't call next when the page isn't visible + // or the carousel or its parent isn't visible + if (!document.hidden && isVisible(this._element)) { + this.next(); + } + } + + prev() { + this._slide(ORDER_PREV); + } + + pause(event) { + if (!event) { + this._isPaused = true; + } + + if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) { + triggerTransitionEnd(this._element); + this.cycle(true); + } + + clearInterval(this._interval); + this._interval = null; + } + + cycle(event) { + if (!event) { + this._isPaused = false; + } + + if (this._interval) { + clearInterval(this._interval); + this._interval = null; + } + + if (this._config && this._config.interval && !this._isPaused) { + this._updateInterval(); + + this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval); + } + } + + to(index) { + this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); + + const activeIndex = this._getItemIndex(this._activeElement); + + if (index > this._items.length - 1 || index < 0) { + return; + } + + if (this._isSliding) { + EventHandler.one(this._element, EVENT_SLID, () => this.to(index)); + return; + } + + if (activeIndex === index) { + this.pause(); + this.cycle(); + return; + } + + const order = index > activeIndex ? ORDER_NEXT : ORDER_PREV; + + this._slide(order, this._items[index]); + } // Private + + + _getConfig(config) { + config = { ...Default$9, + ...Manipulator.getDataAttributes(this._element), + ...(typeof config === 'object' ? config : {}) + }; + typeCheckConfig(NAME$a, config, DefaultType$9); + return config; + } + + _handleSwipe() { + const absDeltax = Math.abs(this.touchDeltaX); + + if (absDeltax <= SWIPE_THRESHOLD) { + return; + } + + const direction = absDeltax / this.touchDeltaX; + this.touchDeltaX = 0; + + if (!direction) { + return; + } + + this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT); + } + + _addEventListeners() { + if (this._config.keyboard) { + EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event)); + } + + if (this._config.pause === 'hover') { + EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event)); + EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event)); + } + + if (this._config.touch && this._touchSupported) { + this._addTouchEventListeners(); + } + } + + _addTouchEventListeners() { + const start = event => { + if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) { + this.touchStartX = event.clientX; + } else if (!this._pointerEvent) { + this.touchStartX = event.touches[0].clientX; + } + }; + + const move = event => { + // ensure swiping with one touch and not pinching + this.touchDeltaX = event.touches && event.touches.length > 1 ? 0 : event.touches[0].clientX - this.touchStartX; + }; + + const end = event => { + if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) { + this.touchDeltaX = event.clientX - this.touchStartX; + } + + this._handleSwipe(); + + if (this._config.pause === 'hover') { + // If it's a touch-enabled device, mouseenter/leave are fired as + // part of the mouse compatibility events on first tap - the carousel + // would stop cycling until user tapped out of it; + // here, we listen for touchend, explicitly pause the carousel + // (as if it's the second time we tap on it, mouseenter compat event + // is NOT fired) and after a timeout (to allow for mouse compatibility + // events to fire) we explicitly restart cycling + this.pause(); + + if (this.touchTimeout) { + clearTimeout(this.touchTimeout); + } + + this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval); + } + }; + + SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => { + EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault()); + }); + + if (this._pointerEvent) { + EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event)); + EventHandler.on(this._element, EVENT_POINTERUP, event => end(event)); + + this._element.classList.add(CLASS_NAME_POINTER_EVENT); + } else { + EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event)); + EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event)); + EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event)); + } + } + + _keydown(event) { + if (/input|textarea/i.test(event.target.tagName)) { + return; + } + + const direction = KEY_TO_DIRECTION[event.key]; + + if (direction) { + event.preventDefault(); + + this._slide(direction); + } + } + + _getItemIndex(element) { + this._items = element && element.parentNode ? SelectorEngine.find(SELECTOR_ITEM, element.parentNode) : []; + return this._items.indexOf(element); + } + + _getItemByOrder(order, activeElement) { + const isNext = order === ORDER_NEXT; + return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap); + } + + _triggerSlideEvent(relatedTarget, eventDirectionName) { + const targetIndex = this._getItemIndex(relatedTarget); + + const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)); + + return EventHandler.trigger(this._element, EVENT_SLIDE, { + relatedTarget, + direction: eventDirectionName, + from: fromIndex, + to: targetIndex + }); + } + + _setActiveIndicatorElement(element) { + if (this._indicatorsElement) { + const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE$1, this._indicatorsElement); + activeIndicator.classList.remove(CLASS_NAME_ACTIVE$2); + activeIndicator.removeAttribute('aria-current'); + const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement); + + for (let i = 0; i < indicators.length; i++) { + if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) { + indicators[i].classList.add(CLASS_NAME_ACTIVE$2); + indicators[i].setAttribute('aria-current', 'true'); + break; + } + } + } + } + + _updateInterval() { + const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); + + if (!element) { + return; + } + + const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10); + + if (elementInterval) { + this._config.defaultInterval = this._config.defaultInterval || this._config.interval; + this._config.interval = elementInterval; + } else { + this._config.interval = this._config.defaultInterval || this._config.interval; + } + } + + _slide(directionOrOrder, element) { + const order = this._directionToOrder(directionOrOrder); + + const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); + + const activeElementIndex = this._getItemIndex(activeElement); + + const nextElement = element || this._getItemByOrder(order, activeElement); + + const nextElementIndex = this._getItemIndex(nextElement); + + const isCycling = Boolean(this._interval); + const isNext = order === ORDER_NEXT; + const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END; + const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV; + + const eventDirectionName = this._orderToDirection(order); + + if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE$2)) { + this._isSliding = false; + return; + } + + if (this._isSliding) { + return; + } + + const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName); + + if (slideEvent.defaultPrevented) { + return; + } + + if (!activeElement || !nextElement) { + // Some weirdness is happening, so we bail + return; + } + + this._isSliding = true; + + if (isCycling) { + this.pause(); + } + + this._setActiveIndicatorElement(nextElement); + + this._activeElement = nextElement; + + const triggerSlidEvent = () => { + EventHandler.trigger(this._element, EVENT_SLID, { + relatedTarget: nextElement, + direction: eventDirectionName, + from: activeElementIndex, + to: nextElementIndex + }); + }; + + if (this._element.classList.contains(CLASS_NAME_SLIDE)) { + nextElement.classList.add(orderClassName); + reflow(nextElement); + activeElement.classList.add(directionalClassName); + nextElement.classList.add(directionalClassName); + + const completeCallBack = () => { + nextElement.classList.remove(directionalClassName, orderClassName); + nextElement.classList.add(CLASS_NAME_ACTIVE$2); + activeElement.classList.remove(CLASS_NAME_ACTIVE$2, orderClassName, directionalClassName); + this._isSliding = false; + setTimeout(triggerSlidEvent, 0); + }; + + this._queueCallback(completeCallBack, activeElement, true); + } else { + activeElement.classList.remove(CLASS_NAME_ACTIVE$2); + nextElement.classList.add(CLASS_NAME_ACTIVE$2); + this._isSliding = false; + triggerSlidEvent(); + } + + if (isCycling) { + this.cycle(); + } + } + + _directionToOrder(direction) { + if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) { + return direction; + } + + if (isRTL()) { + return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT; + } + + return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV; + } + + _orderToDirection(order) { + if (![ORDER_NEXT, ORDER_PREV].includes(order)) { + return order; + } + + if (isRTL()) { + return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT; + } + + return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT; + } // Static + + + static carouselInterface(element, config) { + const data = Carousel.getOrCreateInstance(element, config); + let { + _config + } = data; + + if (typeof config === 'object') { + _config = { ..._config, + ...config + }; + } + + const action = typeof config === 'string' ? config : _config.slide; + + if (typeof config === 'number') { + data.to(config); + } else if (typeof action === 'string') { + if (typeof data[action] === 'undefined') { + throw new TypeError(`No method named "${action}"`); + } + + data[action](); + } else if (_config.interval && _config.ride) { + data.pause(); + data.cycle(); + } + } + + static jQueryInterface(config) { + return this.each(function () { + Carousel.carouselInterface(this, config); + }); + } + + static dataApiClickHandler(event) { + const target = getElementFromSelector(this); + + if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) { + return; + } + + const config = { ...Manipulator.getDataAttributes(target), + ...Manipulator.getDataAttributes(this) + }; + const slideIndex = this.getAttribute('data-bs-slide-to'); + + if (slideIndex) { + config.interval = false; + } + + Carousel.carouselInterface(target, config); + + if (slideIndex) { + Carousel.getInstance(target).to(slideIndex); + } + + event.preventDefault(); + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_CLICK_DATA_API$5, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler); + EventHandler.on(window, EVENT_LOAD_DATA_API$2, () => { + const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE); + + for (let i = 0, len = carousels.length; i < len; i++) { + Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i])); + } + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Carousel to jQuery only if jQuery is present + */ + + defineJQueryPlugin(Carousel); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): collapse.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$9 = 'collapse'; + const DATA_KEY$8 = 'bs.collapse'; + const EVENT_KEY$8 = `.${DATA_KEY$8}`; + const DATA_API_KEY$5 = '.data-api'; + const Default$8 = { + toggle: true, + parent: '' + }; + const DefaultType$8 = { + toggle: 'boolean', + parent: '(string|element)' + }; + const EVENT_SHOW$5 = `show${EVENT_KEY$8}`; + const EVENT_SHOWN$5 = `shown${EVENT_KEY$8}`; + const EVENT_HIDE$5 = `hide${EVENT_KEY$8}`; + const EVENT_HIDDEN$5 = `hidden${EVENT_KEY$8}`; + const EVENT_CLICK_DATA_API$4 = `click${EVENT_KEY$8}${DATA_API_KEY$5}`; + const CLASS_NAME_SHOW$8 = 'show'; + const CLASS_NAME_COLLAPSE = 'collapse'; + const CLASS_NAME_COLLAPSING = 'collapsing'; + const CLASS_NAME_COLLAPSED = 'collapsed'; + const WIDTH = 'width'; + const HEIGHT = 'height'; + const SELECTOR_ACTIVES = '.show, .collapsing'; + const SELECTOR_DATA_TOGGLE$4 = '[data-bs-toggle="collapse"]'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Collapse extends BaseComponent { + constructor(element, config) { + super(element); + this._isTransitioning = false; + this._config = this._getConfig(config); + this._triggerArray = SelectorEngine.find(`${SELECTOR_DATA_TOGGLE$4}[href="#${this._element.id}"],` + `${SELECTOR_DATA_TOGGLE$4}[data-bs-target="#${this._element.id}"]`); + const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE$4); + + for (let i = 0, len = toggleList.length; i < len; i++) { + const elem = toggleList[i]; + const selector = getSelectorFromElement(elem); + const filterElement = SelectorEngine.find(selector).filter(foundElem => foundElem === this._element); + + if (selector !== null && filterElement.length) { + this._selector = selector; + + this._triggerArray.push(elem); + } + } + + this._parent = this._config.parent ? this._getParent() : null; + + if (!this._config.parent) { + this._addAriaAndCollapsedClass(this._element, this._triggerArray); + } + + if (this._config.toggle) { + this.toggle(); + } + } // Getters + + + static get Default() { + return Default$8; + } + + static get NAME() { + return NAME$9; + } // Public + + + toggle() { + if (this._element.classList.contains(CLASS_NAME_SHOW$8)) { + this.hide(); + } else { + this.show(); + } + } + + show() { + if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW$8)) { + return; + } + + let actives; + let activesData; + + if (this._parent) { + actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent).filter(elem => { + if (typeof this._config.parent === 'string') { + return elem.getAttribute('data-bs-parent') === this._config.parent; + } + + return elem.classList.contains(CLASS_NAME_COLLAPSE); + }); + + if (actives.length === 0) { + actives = null; + } + } + + const container = SelectorEngine.findOne(this._selector); + + if (actives) { + const tempActiveData = actives.find(elem => container !== elem); + activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null; + + if (activesData && activesData._isTransitioning) { + return; + } + } + + const startEvent = EventHandler.trigger(this._element, EVENT_SHOW$5); + + if (startEvent.defaultPrevented) { + return; + } + + if (actives) { + actives.forEach(elemActive => { + if (container !== elemActive) { + Collapse.collapseInterface(elemActive, 'hide'); + } + + if (!activesData) { + Data.set(elemActive, DATA_KEY$8, null); + } + }); + } + + const dimension = this._getDimension(); + + this._element.classList.remove(CLASS_NAME_COLLAPSE); + + this._element.classList.add(CLASS_NAME_COLLAPSING); + + this._element.style[dimension] = 0; + + if (this._triggerArray.length) { + this._triggerArray.forEach(element => { + element.classList.remove(CLASS_NAME_COLLAPSED); + element.setAttribute('aria-expanded', true); + }); + } + + this.setTransitioning(true); + + const complete = () => { + this._element.classList.remove(CLASS_NAME_COLLAPSING); + + this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$8); + + this._element.style[dimension] = ''; + this.setTransitioning(false); + EventHandler.trigger(this._element, EVENT_SHOWN$5); + }; + + const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1); + const scrollSize = `scroll${capitalizedDimension}`; + + this._queueCallback(complete, this._element, true); + + this._element.style[dimension] = `${this._element[scrollSize]}px`; + } + + hide() { + if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW$8)) { + return; + } + + const startEvent = EventHandler.trigger(this._element, EVENT_HIDE$5); + + if (startEvent.defaultPrevented) { + return; + } + + const dimension = this._getDimension(); + + this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`; + reflow(this._element); + + this._element.classList.add(CLASS_NAME_COLLAPSING); + + this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$8); + + const triggerArrayLength = this._triggerArray.length; + + if (triggerArrayLength > 0) { + for (let i = 0; i < triggerArrayLength; i++) { + const trigger = this._triggerArray[i]; + const elem = getElementFromSelector(trigger); + + if (elem && !elem.classList.contains(CLASS_NAME_SHOW$8)) { + trigger.classList.add(CLASS_NAME_COLLAPSED); + trigger.setAttribute('aria-expanded', false); + } + } + } + + this.setTransitioning(true); + + const complete = () => { + this.setTransitioning(false); + + this._element.classList.remove(CLASS_NAME_COLLAPSING); + + this._element.classList.add(CLASS_NAME_COLLAPSE); + + EventHandler.trigger(this._element, EVENT_HIDDEN$5); + }; + + this._element.style[dimension] = ''; + + this._queueCallback(complete, this._element, true); + } + + setTransitioning(isTransitioning) { + this._isTransitioning = isTransitioning; + } // Private + + + _getConfig(config) { + config = { ...Default$8, + ...config + }; + config.toggle = Boolean(config.toggle); // Coerce string values + + typeCheckConfig(NAME$9, config, DefaultType$8); + return config; + } + + _getDimension() { + return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT; + } + + _getParent() { + let { + parent + } = this._config; + parent = getElement(parent); + const selector = `${SELECTOR_DATA_TOGGLE$4}[data-bs-parent="${parent}"]`; + SelectorEngine.find(selector, parent).forEach(element => { + const selected = getElementFromSelector(element); + + this._addAriaAndCollapsedClass(selected, [element]); + }); + return parent; + } + + _addAriaAndCollapsedClass(element, triggerArray) { + if (!element || !triggerArray.length) { + return; + } + + const isOpen = element.classList.contains(CLASS_NAME_SHOW$8); + triggerArray.forEach(elem => { + if (isOpen) { + elem.classList.remove(CLASS_NAME_COLLAPSED); + } else { + elem.classList.add(CLASS_NAME_COLLAPSED); + } + + elem.setAttribute('aria-expanded', isOpen); + }); + } // Static + + + static collapseInterface(element, config) { + let data = Collapse.getInstance(element); + const _config = { ...Default$8, + ...Manipulator.getDataAttributes(element), + ...(typeof config === 'object' && config ? config : {}) + }; + + if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) { + _config.toggle = false; + } + + if (!data) { + data = new Collapse(element, _config); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + } + } + + static jQueryInterface(config) { + return this.each(function () { + Collapse.collapseInterface(this, config); + }); + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_CLICK_DATA_API$4, SELECTOR_DATA_TOGGLE$4, function (event) { + // preventDefault only for <a> elements (which change the URL) not inside the collapsible element + if (event.target.tagName === 'A' || event.delegateTarget && event.delegateTarget.tagName === 'A') { + event.preventDefault(); + } + + const triggerData = Manipulator.getDataAttributes(this); + const selector = getSelectorFromElement(this); + const selectorElements = SelectorEngine.find(selector); + selectorElements.forEach(element => { + const data = Collapse.getInstance(element); + let config; + + if (data) { + // update parent attribute + if (data._parent === null && typeof triggerData.parent === 'string') { + data._config.parent = triggerData.parent; + data._parent = data._getParent(); + } + + config = 'toggle'; + } else { + config = triggerData; + } + + Collapse.collapseInterface(element, config); + }); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Collapse to jQuery only if jQuery is present + */ + + defineJQueryPlugin(Collapse); + + var top = 'top'; + var bottom = 'bottom'; + var right = 'right'; + var left = 'left'; + var auto = 'auto'; + var basePlacements = [top, bottom, right, left]; + var start = 'start'; + var end = 'end'; + var clippingParents = 'clippingParents'; + var viewport = 'viewport'; + var popper = 'popper'; + var reference = 'reference'; + var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) { + return acc.concat([placement + "-" + start, placement + "-" + end]); + }, []); + var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) { + return acc.concat([placement, placement + "-" + start, placement + "-" + end]); + }, []); // modifiers that need to read the DOM + + var beforeRead = 'beforeRead'; + var read = 'read'; + var afterRead = 'afterRead'; // pure-logic modifiers + + var beforeMain = 'beforeMain'; + var main = 'main'; + var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state) + + var beforeWrite = 'beforeWrite'; + var write = 'write'; + var afterWrite = 'afterWrite'; + var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite]; + + function getNodeName(element) { + return element ? (element.nodeName || '').toLowerCase() : null; + } + + function getWindow(node) { + if (node == null) { + return window; + } + + if (node.toString() !== '[object Window]') { + var ownerDocument = node.ownerDocument; + return ownerDocument ? ownerDocument.defaultView || window : window; + } + + return node; + } + + function isElement(node) { + var OwnElement = getWindow(node).Element; + return node instanceof OwnElement || node instanceof Element; + } + + function isHTMLElement(node) { + var OwnElement = getWindow(node).HTMLElement; + return node instanceof OwnElement || node instanceof HTMLElement; + } + + function isShadowRoot(node) { + // IE 11 has no ShadowRoot + if (typeof ShadowRoot === 'undefined') { + return false; + } + + var OwnElement = getWindow(node).ShadowRoot; + return node instanceof OwnElement || node instanceof ShadowRoot; + } + + // and applies them to the HTMLElements such as popper and arrow + + function applyStyles(_ref) { + var state = _ref.state; + Object.keys(state.elements).forEach(function (name) { + var style = state.styles[name] || {}; + var attributes = state.attributes[name] || {}; + var element = state.elements[name]; // arrow is optional + virtual elements + + if (!isHTMLElement(element) || !getNodeName(element)) { + return; + } // Flow doesn't support to extend this property, but it's the most + // effective way to apply styles to an HTMLElement + // $FlowFixMe[cannot-write] + + + Object.assign(element.style, style); + Object.keys(attributes).forEach(function (name) { + var value = attributes[name]; + + if (value === false) { + element.removeAttribute(name); + } else { + element.setAttribute(name, value === true ? '' : value); + } + }); + }); + } + + function effect$2(_ref2) { + var state = _ref2.state; + var initialStyles = { + popper: { + position: state.options.strategy, + left: '0', + top: '0', + margin: '0' + }, + arrow: { + position: 'absolute' + }, + reference: {} + }; + Object.assign(state.elements.popper.style, initialStyles.popper); + state.styles = initialStyles; + + if (state.elements.arrow) { + Object.assign(state.elements.arrow.style, initialStyles.arrow); + } + + return function () { + Object.keys(state.elements).forEach(function (name) { + var element = state.elements[name]; + var attributes = state.attributes[name] || {}; + var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them + + var style = styleProperties.reduce(function (style, property) { + style[property] = ''; + return style; + }, {}); // arrow is optional + virtual elements + + if (!isHTMLElement(element) || !getNodeName(element)) { + return; + } + + Object.assign(element.style, style); + Object.keys(attributes).forEach(function (attribute) { + element.removeAttribute(attribute); + }); + }); + }; + } // eslint-disable-next-line import/no-unused-modules + + + var applyStyles$1 = { + name: 'applyStyles', + enabled: true, + phase: 'write', + fn: applyStyles, + effect: effect$2, + requires: ['computeStyles'] + }; + + function getBasePlacement(placement) { + return placement.split('-')[0]; + } + + function getBoundingClientRect(element) { + var rect = element.getBoundingClientRect(); + return { + width: rect.width, + height: rect.height, + top: rect.top, + right: rect.right, + bottom: rect.bottom, + left: rect.left, + x: rect.left, + y: rect.top + }; + } + + // means it doesn't take into account transforms. + + function getLayoutRect(element) { + var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed. + // Fixes https://github.com/popperjs/popper-core/issues/1223 + + var width = element.offsetWidth; + var height = element.offsetHeight; + + if (Math.abs(clientRect.width - width) <= 1) { + width = clientRect.width; + } + + if (Math.abs(clientRect.height - height) <= 1) { + height = clientRect.height; + } + + return { + x: element.offsetLeft, + y: element.offsetTop, + width: width, + height: height + }; + } + + function contains(parent, child) { + var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method + + if (parent.contains(child)) { + return true; + } // then fallback to custom implementation with Shadow DOM support + else if (rootNode && isShadowRoot(rootNode)) { + var next = child; + + do { + if (next && parent.isSameNode(next)) { + return true; + } // $FlowFixMe[prop-missing]: need a better way to handle this... + + + next = next.parentNode || next.host; + } while (next); + } // Give up, the result is false + + + return false; + } + + function getComputedStyle$1(element) { + return getWindow(element).getComputedStyle(element); + } + + function isTableElement(element) { + return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0; + } + + function getDocumentElement(element) { + // $FlowFixMe[incompatible-return]: assume body is always available + return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing] + element.document) || window.document).documentElement; + } + + function getParentNode(element) { + if (getNodeName(element) === 'html') { + return element; + } + + return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle + // $FlowFixMe[incompatible-return] + // $FlowFixMe[prop-missing] + element.assignedSlot || // step into the shadow DOM of the parent of a slotted node + element.parentNode || ( // DOM Element detected + isShadowRoot(element) ? element.host : null) || // ShadowRoot detected + // $FlowFixMe[incompatible-call]: HTMLElement is a Node + getDocumentElement(element) // fallback + + ); + } + + function getTrueOffsetParent(element) { + if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837 + getComputedStyle$1(element).position === 'fixed') { + return null; + } + + return element.offsetParent; + } // `.offsetParent` reports `null` for fixed elements, while absolute elements + // return the containing block + + + function getContainingBlock(element) { + var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1; + var isIE = navigator.userAgent.indexOf('Trident') !== -1; + + if (isIE && isHTMLElement(element)) { + // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport + var elementCss = getComputedStyle$1(element); + + if (elementCss.position === 'fixed') { + return null; + } + } + + var currentNode = getParentNode(element); + + while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) { + var css = getComputedStyle$1(currentNode); // This is non-exhaustive but covers the most common CSS properties that + // create a containing block. + // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block + + if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') { + return currentNode; + } else { + currentNode = currentNode.parentNode; + } + } + + return null; + } // Gets the closest ancestor positioned element. Handles some edge cases, + // such as table ancestors and cross browser bugs. + + + function getOffsetParent(element) { + var window = getWindow(element); + var offsetParent = getTrueOffsetParent(element); + + while (offsetParent && isTableElement(offsetParent) && getComputedStyle$1(offsetParent).position === 'static') { + offsetParent = getTrueOffsetParent(offsetParent); + } + + if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle$1(offsetParent).position === 'static')) { + return window; + } + + return offsetParent || getContainingBlock(element) || window; + } + + function getMainAxisFromPlacement(placement) { + return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y'; + } + + var max = Math.max; + var min = Math.min; + var round = Math.round; + + function within(min$1, value, max$1) { + return max(min$1, min(value, max$1)); + } + + function getFreshSideObject() { + return { + top: 0, + right: 0, + bottom: 0, + left: 0 + }; + } + + function mergePaddingObject(paddingObject) { + return Object.assign({}, getFreshSideObject(), paddingObject); + } + + function expandToHashMap(value, keys) { + return keys.reduce(function (hashMap, key) { + hashMap[key] = value; + return hashMap; + }, {}); + } + + var toPaddingObject = function toPaddingObject(padding, state) { + padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, { + placement: state.placement + })) : padding; + return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements)); + }; + + function arrow(_ref) { + var _state$modifiersData$; + + var state = _ref.state, + name = _ref.name, + options = _ref.options; + var arrowElement = state.elements.arrow; + var popperOffsets = state.modifiersData.popperOffsets; + var basePlacement = getBasePlacement(state.placement); + var axis = getMainAxisFromPlacement(basePlacement); + var isVertical = [left, right].indexOf(basePlacement) >= 0; + var len = isVertical ? 'height' : 'width'; + + if (!arrowElement || !popperOffsets) { + return; + } + + var paddingObject = toPaddingObject(options.padding, state); + var arrowRect = getLayoutRect(arrowElement); + var minProp = axis === 'y' ? top : left; + var maxProp = axis === 'y' ? bottom : right; + var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len]; + var startDiff = popperOffsets[axis] - state.rects.reference[axis]; + var arrowOffsetParent = getOffsetParent(arrowElement); + var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0; + var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is + // outside of the popper bounds + + var min = paddingObject[minProp]; + var max = clientSize - arrowRect[len] - paddingObject[maxProp]; + var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference; + var offset = within(min, center, max); // Prevents breaking syntax highlighting... + + var axisProp = axis; + state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$); + } + + function effect$1(_ref2) { + var state = _ref2.state, + options = _ref2.options; + var _options$element = options.element, + arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element; + + if (arrowElement == null) { + return; + } // CSS selector + + + if (typeof arrowElement === 'string') { + arrowElement = state.elements.popper.querySelector(arrowElement); + + if (!arrowElement) { + return; + } + } + + if (!contains(state.elements.popper, arrowElement)) { + + return; + } + + state.elements.arrow = arrowElement; + } // eslint-disable-next-line import/no-unused-modules + + + var arrow$1 = { + name: 'arrow', + enabled: true, + phase: 'main', + fn: arrow, + effect: effect$1, + requires: ['popperOffsets'], + requiresIfExists: ['preventOverflow'] + }; + + var unsetSides = { + top: 'auto', + right: 'auto', + bottom: 'auto', + left: 'auto' + }; // Round the offsets to the nearest suitable subpixel based on the DPR. + // Zooming can change the DPR, but it seems to report a value that will + // cleanly divide the values into the appropriate subpixels. + + function roundOffsetsByDPR(_ref) { + var x = _ref.x, + y = _ref.y; + var win = window; + var dpr = win.devicePixelRatio || 1; + return { + x: round(round(x * dpr) / dpr) || 0, + y: round(round(y * dpr) / dpr) || 0 + }; + } + + function mapToStyles(_ref2) { + var _Object$assign2; + + var popper = _ref2.popper, + popperRect = _ref2.popperRect, + placement = _ref2.placement, + offsets = _ref2.offsets, + position = _ref2.position, + gpuAcceleration = _ref2.gpuAcceleration, + adaptive = _ref2.adaptive, + roundOffsets = _ref2.roundOffsets; + + var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets, + _ref3$x = _ref3.x, + x = _ref3$x === void 0 ? 0 : _ref3$x, + _ref3$y = _ref3.y, + y = _ref3$y === void 0 ? 0 : _ref3$y; + + var hasX = offsets.hasOwnProperty('x'); + var hasY = offsets.hasOwnProperty('y'); + var sideX = left; + var sideY = top; + var win = window; + + if (adaptive) { + var offsetParent = getOffsetParent(popper); + var heightProp = 'clientHeight'; + var widthProp = 'clientWidth'; + + if (offsetParent === getWindow(popper)) { + offsetParent = getDocumentElement(popper); + + if (getComputedStyle$1(offsetParent).position !== 'static') { + heightProp = 'scrollHeight'; + widthProp = 'scrollWidth'; + } + } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it + + + offsetParent = offsetParent; + + if (placement === top) { + sideY = bottom; // $FlowFixMe[prop-missing] + + y -= offsetParent[heightProp] - popperRect.height; + y *= gpuAcceleration ? 1 : -1; + } + + if (placement === left) { + sideX = right; // $FlowFixMe[prop-missing] + + x -= offsetParent[widthProp] - popperRect.width; + x *= gpuAcceleration ? 1 : -1; + } + } + + var commonStyles = Object.assign({ + position: position + }, adaptive && unsetSides); + + if (gpuAcceleration) { + var _Object$assign; + + return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? "translate(" + x + "px, " + y + "px)" : "translate3d(" + x + "px, " + y + "px, 0)", _Object$assign)); + } + + return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + "px" : '', _Object$assign2[sideX] = hasX ? x + "px" : '', _Object$assign2.transform = '', _Object$assign2)); + } + + function computeStyles(_ref4) { + var state = _ref4.state, + options = _ref4.options; + var _options$gpuAccelerat = options.gpuAcceleration, + gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat, + _options$adaptive = options.adaptive, + adaptive = _options$adaptive === void 0 ? true : _options$adaptive, + _options$roundOffsets = options.roundOffsets, + roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets; + + var commonStyles = { + placement: getBasePlacement(state.placement), + popper: state.elements.popper, + popperRect: state.rects.popper, + gpuAcceleration: gpuAcceleration + }; + + if (state.modifiersData.popperOffsets != null) { + state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, { + offsets: state.modifiersData.popperOffsets, + position: state.options.strategy, + adaptive: adaptive, + roundOffsets: roundOffsets + }))); + } + + if (state.modifiersData.arrow != null) { + state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, { + offsets: state.modifiersData.arrow, + position: 'absolute', + adaptive: false, + roundOffsets: roundOffsets + }))); + } + + state.attributes.popper = Object.assign({}, state.attributes.popper, { + 'data-popper-placement': state.placement + }); + } // eslint-disable-next-line import/no-unused-modules + + + var computeStyles$1 = { + name: 'computeStyles', + enabled: true, + phase: 'beforeWrite', + fn: computeStyles, + data: {} + }; + + var passive = { + passive: true + }; + + function effect(_ref) { + var state = _ref.state, + instance = _ref.instance, + options = _ref.options; + var _options$scroll = options.scroll, + scroll = _options$scroll === void 0 ? true : _options$scroll, + _options$resize = options.resize, + resize = _options$resize === void 0 ? true : _options$resize; + var window = getWindow(state.elements.popper); + var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper); + + if (scroll) { + scrollParents.forEach(function (scrollParent) { + scrollParent.addEventListener('scroll', instance.update, passive); + }); + } + + if (resize) { + window.addEventListener('resize', instance.update, passive); + } + + return function () { + if (scroll) { + scrollParents.forEach(function (scrollParent) { + scrollParent.removeEventListener('scroll', instance.update, passive); + }); + } + + if (resize) { + window.removeEventListener('resize', instance.update, passive); + } + }; + } // eslint-disable-next-line import/no-unused-modules + + + var eventListeners = { + name: 'eventListeners', + enabled: true, + phase: 'write', + fn: function fn() {}, + effect: effect, + data: {} + }; + + var hash$1 = { + left: 'right', + right: 'left', + bottom: 'top', + top: 'bottom' + }; + function getOppositePlacement(placement) { + return placement.replace(/left|right|bottom|top/g, function (matched) { + return hash$1[matched]; + }); + } + + var hash = { + start: 'end', + end: 'start' + }; + function getOppositeVariationPlacement(placement) { + return placement.replace(/start|end/g, function (matched) { + return hash[matched]; + }); + } + + function getWindowScroll(node) { + var win = getWindow(node); + var scrollLeft = win.pageXOffset; + var scrollTop = win.pageYOffset; + return { + scrollLeft: scrollLeft, + scrollTop: scrollTop + }; + } + + function getWindowScrollBarX(element) { + // If <html> has a CSS width greater than the viewport, then this will be + // incorrect for RTL. + // Popper 1 is broken in this case and never had a bug report so let's assume + // it's not an issue. I don't think anyone ever specifies width on <html> + // anyway. + // Browsers where the left scrollbar doesn't cause an issue report `0` for + // this (e.g. Edge 2019, IE11, Safari) + return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft; + } + + function getViewportRect(element) { + var win = getWindow(element); + var html = getDocumentElement(element); + var visualViewport = win.visualViewport; + var width = html.clientWidth; + var height = html.clientHeight; + var x = 0; + var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper + // can be obscured underneath it. + // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even + // if it isn't open, so if this isn't available, the popper will be detected + // to overflow the bottom of the screen too early. + + if (visualViewport) { + width = visualViewport.width; + height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently) + // In Chrome, it returns a value very close to 0 (+/-) but contains rounding + // errors due to floating point numbers, so we need to check precision. + // Safari returns a number <= 0, usually < -1 when pinch-zoomed + // Feature detection fails in mobile emulation mode in Chrome. + // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) < + // 0.001 + // Fallback here: "Not Safari" userAgent + + if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) { + x = visualViewport.offsetLeft; + y = visualViewport.offsetTop; + } + } + + return { + width: width, + height: height, + x: x + getWindowScrollBarX(element), + y: y + }; + } + + // of the `<html>` and `<body>` rect bounds if horizontally scrollable + + function getDocumentRect(element) { + var _element$ownerDocumen; + + var html = getDocumentElement(element); + var winScroll = getWindowScroll(element); + var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body; + var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0); + var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0); + var x = -winScroll.scrollLeft + getWindowScrollBarX(element); + var y = -winScroll.scrollTop; + + if (getComputedStyle$1(body || html).direction === 'rtl') { + x += max(html.clientWidth, body ? body.clientWidth : 0) - width; + } + + return { + width: width, + height: height, + x: x, + y: y + }; + } + + function isScrollParent(element) { + // Firefox wants us to check `-x` and `-y` variations as well + var _getComputedStyle = getComputedStyle$1(element), + overflow = _getComputedStyle.overflow, + overflowX = _getComputedStyle.overflowX, + overflowY = _getComputedStyle.overflowY; + + return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX); + } + + function getScrollParent(node) { + if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) { + // $FlowFixMe[incompatible-return]: assume body is always available + return node.ownerDocument.body; + } + + if (isHTMLElement(node) && isScrollParent(node)) { + return node; + } + + return getScrollParent(getParentNode(node)); + } + + /* + given a DOM element, return the list of all scroll parents, up the list of ancesors + until we get to the top window object. This list is what we attach scroll listeners + to, because if any of these parent elements scroll, we'll need to re-calculate the + reference element's position. + */ + + function listScrollParents(element, list) { + var _element$ownerDocumen; + + if (list === void 0) { + list = []; + } + + var scrollParent = getScrollParent(element); + var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body); + var win = getWindow(scrollParent); + var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent; + var updatedList = list.concat(target); + return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here + updatedList.concat(listScrollParents(getParentNode(target))); + } + + function rectToClientRect(rect) { + return Object.assign({}, rect, { + left: rect.x, + top: rect.y, + right: rect.x + rect.width, + bottom: rect.y + rect.height + }); + } + + function getInnerBoundingClientRect(element) { + var rect = getBoundingClientRect(element); + rect.top = rect.top + element.clientTop; + rect.left = rect.left + element.clientLeft; + rect.bottom = rect.top + element.clientHeight; + rect.right = rect.left + element.clientWidth; + rect.width = element.clientWidth; + rect.height = element.clientHeight; + rect.x = rect.left; + rect.y = rect.top; + return rect; + } + + function getClientRectFromMixedType(element, clippingParent) { + return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element))); + } // A "clipping parent" is an overflowable container with the characteristic of + // clipping (or hiding) overflowing elements with a position different from + // `initial` + + + function getClippingParents(element) { + var clippingParents = listScrollParents(getParentNode(element)); + var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle$1(element).position) >= 0; + var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element; + + if (!isElement(clipperElement)) { + return []; + } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414 + + + return clippingParents.filter(function (clippingParent) { + return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body'; + }); + } // Gets the maximum area that the element is visible in due to any number of + // clipping parents + + + function getClippingRect(element, boundary, rootBoundary) { + var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary); + var clippingParents = [].concat(mainClippingParents, [rootBoundary]); + var firstClippingParent = clippingParents[0]; + var clippingRect = clippingParents.reduce(function (accRect, clippingParent) { + var rect = getClientRectFromMixedType(element, clippingParent); + accRect.top = max(rect.top, accRect.top); + accRect.right = min(rect.right, accRect.right); + accRect.bottom = min(rect.bottom, accRect.bottom); + accRect.left = max(rect.left, accRect.left); + return accRect; + }, getClientRectFromMixedType(element, firstClippingParent)); + clippingRect.width = clippingRect.right - clippingRect.left; + clippingRect.height = clippingRect.bottom - clippingRect.top; + clippingRect.x = clippingRect.left; + clippingRect.y = clippingRect.top; + return clippingRect; + } + + function getVariation(placement) { + return placement.split('-')[1]; + } + + function computeOffsets(_ref) { + var reference = _ref.reference, + element = _ref.element, + placement = _ref.placement; + var basePlacement = placement ? getBasePlacement(placement) : null; + var variation = placement ? getVariation(placement) : null; + var commonX = reference.x + reference.width / 2 - element.width / 2; + var commonY = reference.y + reference.height / 2 - element.height / 2; + var offsets; + + switch (basePlacement) { + case top: + offsets = { + x: commonX, + y: reference.y - element.height + }; + break; + + case bottom: + offsets = { + x: commonX, + y: reference.y + reference.height + }; + break; + + case right: + offsets = { + x: reference.x + reference.width, + y: commonY + }; + break; + + case left: + offsets = { + x: reference.x - element.width, + y: commonY + }; + break; + + default: + offsets = { + x: reference.x, + y: reference.y + }; + } + + var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null; + + if (mainAxis != null) { + var len = mainAxis === 'y' ? 'height' : 'width'; + + switch (variation) { + case start: + offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2); + break; + + case end: + offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2); + break; + } + } + + return offsets; + } + + function detectOverflow(state, options) { + if (options === void 0) { + options = {}; + } + + var _options = options, + _options$placement = _options.placement, + placement = _options$placement === void 0 ? state.placement : _options$placement, + _options$boundary = _options.boundary, + boundary = _options$boundary === void 0 ? clippingParents : _options$boundary, + _options$rootBoundary = _options.rootBoundary, + rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary, + _options$elementConte = _options.elementContext, + elementContext = _options$elementConte === void 0 ? popper : _options$elementConte, + _options$altBoundary = _options.altBoundary, + altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary, + _options$padding = _options.padding, + padding = _options$padding === void 0 ? 0 : _options$padding; + var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements)); + var altContext = elementContext === popper ? reference : popper; + var referenceElement = state.elements.reference; + var popperRect = state.rects.popper; + var element = state.elements[altBoundary ? altContext : elementContext]; + var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary); + var referenceClientRect = getBoundingClientRect(referenceElement); + var popperOffsets = computeOffsets({ + reference: referenceClientRect, + element: popperRect, + strategy: 'absolute', + placement: placement + }); + var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets)); + var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect + // 0 or negative = within the clipping rect + + var overflowOffsets = { + top: clippingClientRect.top - elementClientRect.top + paddingObject.top, + bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom, + left: clippingClientRect.left - elementClientRect.left + paddingObject.left, + right: elementClientRect.right - clippingClientRect.right + paddingObject.right + }; + var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element + + if (elementContext === popper && offsetData) { + var offset = offsetData[placement]; + Object.keys(overflowOffsets).forEach(function (key) { + var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1; + var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x'; + overflowOffsets[key] += offset[axis] * multiply; + }); + } + + return overflowOffsets; + } + + function computeAutoPlacement(state, options) { + if (options === void 0) { + options = {}; + } + + var _options = options, + placement = _options.placement, + boundary = _options.boundary, + rootBoundary = _options.rootBoundary, + padding = _options.padding, + flipVariations = _options.flipVariations, + _options$allowedAutoP = _options.allowedAutoPlacements, + allowedAutoPlacements = _options$allowedAutoP === void 0 ? placements : _options$allowedAutoP; + var variation = getVariation(placement); + var placements$1 = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) { + return getVariation(placement) === variation; + }) : basePlacements; + var allowedPlacements = placements$1.filter(function (placement) { + return allowedAutoPlacements.indexOf(placement) >= 0; + }); + + if (allowedPlacements.length === 0) { + allowedPlacements = placements$1; + } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions... + + + var overflows = allowedPlacements.reduce(function (acc, placement) { + acc[placement] = detectOverflow(state, { + placement: placement, + boundary: boundary, + rootBoundary: rootBoundary, + padding: padding + })[getBasePlacement(placement)]; + return acc; + }, {}); + return Object.keys(overflows).sort(function (a, b) { + return overflows[a] - overflows[b]; + }); + } + + function getExpandedFallbackPlacements(placement) { + if (getBasePlacement(placement) === auto) { + return []; + } + + var oppositePlacement = getOppositePlacement(placement); + return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)]; + } + + function flip(_ref) { + var state = _ref.state, + options = _ref.options, + name = _ref.name; + + if (state.modifiersData[name]._skip) { + return; + } + + var _options$mainAxis = options.mainAxis, + checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis, + _options$altAxis = options.altAxis, + checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis, + specifiedFallbackPlacements = options.fallbackPlacements, + padding = options.padding, + boundary = options.boundary, + rootBoundary = options.rootBoundary, + altBoundary = options.altBoundary, + _options$flipVariatio = options.flipVariations, + flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio, + allowedAutoPlacements = options.allowedAutoPlacements; + var preferredPlacement = state.options.placement; + var basePlacement = getBasePlacement(preferredPlacement); + var isBasePlacement = basePlacement === preferredPlacement; + var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement)); + var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) { + return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, { + placement: placement, + boundary: boundary, + rootBoundary: rootBoundary, + padding: padding, + flipVariations: flipVariations, + allowedAutoPlacements: allowedAutoPlacements + }) : placement); + }, []); + var referenceRect = state.rects.reference; + var popperRect = state.rects.popper; + var checksMap = new Map(); + var makeFallbackChecks = true; + var firstFittingPlacement = placements[0]; + + for (var i = 0; i < placements.length; i++) { + var placement = placements[i]; + + var _basePlacement = getBasePlacement(placement); + + var isStartVariation = getVariation(placement) === start; + var isVertical = [top, bottom].indexOf(_basePlacement) >= 0; + var len = isVertical ? 'width' : 'height'; + var overflow = detectOverflow(state, { + placement: placement, + boundary: boundary, + rootBoundary: rootBoundary, + altBoundary: altBoundary, + padding: padding + }); + var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top; + + if (referenceRect[len] > popperRect[len]) { + mainVariationSide = getOppositePlacement(mainVariationSide); + } + + var altVariationSide = getOppositePlacement(mainVariationSide); + var checks = []; + + if (checkMainAxis) { + checks.push(overflow[_basePlacement] <= 0); + } + + if (checkAltAxis) { + checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0); + } + + if (checks.every(function (check) { + return check; + })) { + firstFittingPlacement = placement; + makeFallbackChecks = false; + break; + } + + checksMap.set(placement, checks); + } + + if (makeFallbackChecks) { + // `2` may be desired in some cases – research later + var numberOfChecks = flipVariations ? 3 : 1; + + var _loop = function _loop(_i) { + var fittingPlacement = placements.find(function (placement) { + var checks = checksMap.get(placement); + + if (checks) { + return checks.slice(0, _i).every(function (check) { + return check; + }); + } + }); + + if (fittingPlacement) { + firstFittingPlacement = fittingPlacement; + return "break"; + } + }; + + for (var _i = numberOfChecks; _i > 0; _i--) { + var _ret = _loop(_i); + + if (_ret === "break") break; + } + } + + if (state.placement !== firstFittingPlacement) { + state.modifiersData[name]._skip = true; + state.placement = firstFittingPlacement; + state.reset = true; + } + } // eslint-disable-next-line import/no-unused-modules + + + var flip$1 = { + name: 'flip', + enabled: true, + phase: 'main', + fn: flip, + requiresIfExists: ['offset'], + data: { + _skip: false + } + }; + + function getSideOffsets(overflow, rect, preventedOffsets) { + if (preventedOffsets === void 0) { + preventedOffsets = { + x: 0, + y: 0 + }; + } + + return { + top: overflow.top - rect.height - preventedOffsets.y, + right: overflow.right - rect.width + preventedOffsets.x, + bottom: overflow.bottom - rect.height + preventedOffsets.y, + left: overflow.left - rect.width - preventedOffsets.x + }; + } + + function isAnySideFullyClipped(overflow) { + return [top, right, bottom, left].some(function (side) { + return overflow[side] >= 0; + }); + } + + function hide(_ref) { + var state = _ref.state, + name = _ref.name; + var referenceRect = state.rects.reference; + var popperRect = state.rects.popper; + var preventedOffsets = state.modifiersData.preventOverflow; + var referenceOverflow = detectOverflow(state, { + elementContext: 'reference' + }); + var popperAltOverflow = detectOverflow(state, { + altBoundary: true + }); + var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect); + var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets); + var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets); + var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets); + state.modifiersData[name] = { + referenceClippingOffsets: referenceClippingOffsets, + popperEscapeOffsets: popperEscapeOffsets, + isReferenceHidden: isReferenceHidden, + hasPopperEscaped: hasPopperEscaped + }; + state.attributes.popper = Object.assign({}, state.attributes.popper, { + 'data-popper-reference-hidden': isReferenceHidden, + 'data-popper-escaped': hasPopperEscaped + }); + } // eslint-disable-next-line import/no-unused-modules + + + var hide$1 = { + name: 'hide', + enabled: true, + phase: 'main', + requiresIfExists: ['preventOverflow'], + fn: hide + }; + + function distanceAndSkiddingToXY(placement, rects, offset) { + var basePlacement = getBasePlacement(placement); + var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1; + + var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, { + placement: placement + })) : offset, + skidding = _ref[0], + distance = _ref[1]; + + skidding = skidding || 0; + distance = (distance || 0) * invertDistance; + return [left, right].indexOf(basePlacement) >= 0 ? { + x: distance, + y: skidding + } : { + x: skidding, + y: distance + }; + } + + function offset(_ref2) { + var state = _ref2.state, + options = _ref2.options, + name = _ref2.name; + var _options$offset = options.offset, + offset = _options$offset === void 0 ? [0, 0] : _options$offset; + var data = placements.reduce(function (acc, placement) { + acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset); + return acc; + }, {}); + var _data$state$placement = data[state.placement], + x = _data$state$placement.x, + y = _data$state$placement.y; + + if (state.modifiersData.popperOffsets != null) { + state.modifiersData.popperOffsets.x += x; + state.modifiersData.popperOffsets.y += y; + } + + state.modifiersData[name] = data; + } // eslint-disable-next-line import/no-unused-modules + + + var offset$1 = { + name: 'offset', + enabled: true, + phase: 'main', + requires: ['popperOffsets'], + fn: offset + }; + + function popperOffsets(_ref) { + var state = _ref.state, + name = _ref.name; // Offsets are the actual position the popper needs to have to be + // properly positioned near its reference element + // This is the most basic placement, and will be adjusted by + // the modifiers in the next step + + state.modifiersData[name] = computeOffsets({ + reference: state.rects.reference, + element: state.rects.popper, + strategy: 'absolute', + placement: state.placement + }); + } // eslint-disable-next-line import/no-unused-modules + + + var popperOffsets$1 = { + name: 'popperOffsets', + enabled: true, + phase: 'read', + fn: popperOffsets, + data: {} + }; + + function getAltAxis(axis) { + return axis === 'x' ? 'y' : 'x'; + } + + function preventOverflow(_ref) { + var state = _ref.state, + options = _ref.options, + name = _ref.name; + var _options$mainAxis = options.mainAxis, + checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis, + _options$altAxis = options.altAxis, + checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis, + boundary = options.boundary, + rootBoundary = options.rootBoundary, + altBoundary = options.altBoundary, + padding = options.padding, + _options$tether = options.tether, + tether = _options$tether === void 0 ? true : _options$tether, + _options$tetherOffset = options.tetherOffset, + tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset; + var overflow = detectOverflow(state, { + boundary: boundary, + rootBoundary: rootBoundary, + padding: padding, + altBoundary: altBoundary + }); + var basePlacement = getBasePlacement(state.placement); + var variation = getVariation(state.placement); + var isBasePlacement = !variation; + var mainAxis = getMainAxisFromPlacement(basePlacement); + var altAxis = getAltAxis(mainAxis); + var popperOffsets = state.modifiersData.popperOffsets; + var referenceRect = state.rects.reference; + var popperRect = state.rects.popper; + var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, { + placement: state.placement + })) : tetherOffset; + var data = { + x: 0, + y: 0 + }; + + if (!popperOffsets) { + return; + } + + if (checkMainAxis || checkAltAxis) { + var mainSide = mainAxis === 'y' ? top : left; + var altSide = mainAxis === 'y' ? bottom : right; + var len = mainAxis === 'y' ? 'height' : 'width'; + var offset = popperOffsets[mainAxis]; + var min$1 = popperOffsets[mainAxis] + overflow[mainSide]; + var max$1 = popperOffsets[mainAxis] - overflow[altSide]; + var additive = tether ? -popperRect[len] / 2 : 0; + var minLen = variation === start ? referenceRect[len] : popperRect[len]; + var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go + // outside the reference bounds + + var arrowElement = state.elements.arrow; + var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : { + width: 0, + height: 0 + }; + var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject(); + var arrowPaddingMin = arrowPaddingObject[mainSide]; + var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want + // to include its full size in the calculation. If the reference is small + // and near the edge of a boundary, the popper can overflow even if the + // reference is not overflowing as well (e.g. virtual elements with no + // width or height) + + var arrowLen = within(0, referenceRect[len], arrowRect[len]); + var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue; + var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue; + var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow); + var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0; + var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0; + var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset; + var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue; + + if (checkMainAxis) { + var preventedOffset = within(tether ? min(min$1, tetherMin) : min$1, offset, tether ? max(max$1, tetherMax) : max$1); + popperOffsets[mainAxis] = preventedOffset; + data[mainAxis] = preventedOffset - offset; + } + + if (checkAltAxis) { + var _mainSide = mainAxis === 'x' ? top : left; + + var _altSide = mainAxis === 'x' ? bottom : right; + + var _offset = popperOffsets[altAxis]; + + var _min = _offset + overflow[_mainSide]; + + var _max = _offset - overflow[_altSide]; + + var _preventedOffset = within(tether ? min(_min, tetherMin) : _min, _offset, tether ? max(_max, tetherMax) : _max); + + popperOffsets[altAxis] = _preventedOffset; + data[altAxis] = _preventedOffset - _offset; + } + } + + state.modifiersData[name] = data; + } // eslint-disable-next-line import/no-unused-modules + + + var preventOverflow$1 = { + name: 'preventOverflow', + enabled: true, + phase: 'main', + fn: preventOverflow, + requiresIfExists: ['offset'] + }; + + function getHTMLElementScroll(element) { + return { + scrollLeft: element.scrollLeft, + scrollTop: element.scrollTop + }; + } + + function getNodeScroll(node) { + if (node === getWindow(node) || !isHTMLElement(node)) { + return getWindowScroll(node); + } else { + return getHTMLElementScroll(node); + } + } + + // Composite means it takes into account transforms as well as layout. + + function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) { + if (isFixed === void 0) { + isFixed = false; + } + + var documentElement = getDocumentElement(offsetParent); + var rect = getBoundingClientRect(elementOrVirtualElement); + var isOffsetParentAnElement = isHTMLElement(offsetParent); + var scroll = { + scrollLeft: 0, + scrollTop: 0 + }; + var offsets = { + x: 0, + y: 0 + }; + + if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) { + if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078 + isScrollParent(documentElement)) { + scroll = getNodeScroll(offsetParent); + } + + if (isHTMLElement(offsetParent)) { + offsets = getBoundingClientRect(offsetParent); + offsets.x += offsetParent.clientLeft; + offsets.y += offsetParent.clientTop; + } else if (documentElement) { + offsets.x = getWindowScrollBarX(documentElement); + } + } + + return { + x: rect.left + scroll.scrollLeft - offsets.x, + y: rect.top + scroll.scrollTop - offsets.y, + width: rect.width, + height: rect.height + }; + } + + function order(modifiers) { + var map = new Map(); + var visited = new Set(); + var result = []; + modifiers.forEach(function (modifier) { + map.set(modifier.name, modifier); + }); // On visiting object, check for its dependencies and visit them recursively + + function sort(modifier) { + visited.add(modifier.name); + var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []); + requires.forEach(function (dep) { + if (!visited.has(dep)) { + var depModifier = map.get(dep); + + if (depModifier) { + sort(depModifier); + } + } + }); + result.push(modifier); + } + + modifiers.forEach(function (modifier) { + if (!visited.has(modifier.name)) { + // check for visited object + sort(modifier); + } + }); + return result; + } + + function orderModifiers(modifiers) { + // order based on dependencies + var orderedModifiers = order(modifiers); // order based on phase + + return modifierPhases.reduce(function (acc, phase) { + return acc.concat(orderedModifiers.filter(function (modifier) { + return modifier.phase === phase; + })); + }, []); + } + + function debounce(fn) { + var pending; + return function () { + if (!pending) { + pending = new Promise(function (resolve) { + Promise.resolve().then(function () { + pending = undefined; + resolve(fn()); + }); + }); + } + + return pending; + }; + } + + function mergeByName(modifiers) { + var merged = modifiers.reduce(function (merged, current) { + var existing = merged[current.name]; + merged[current.name] = existing ? Object.assign({}, existing, current, { + options: Object.assign({}, existing.options, current.options), + data: Object.assign({}, existing.data, current.data) + }) : current; + return merged; + }, {}); // IE11 does not support Object.values + + return Object.keys(merged).map(function (key) { + return merged[key]; + }); + } + + var DEFAULT_OPTIONS = { + placement: 'bottom', + modifiers: [], + strategy: 'absolute' + }; + + function areValidElements() { + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + return !args.some(function (element) { + return !(element && typeof element.getBoundingClientRect === 'function'); + }); + } + + function popperGenerator(generatorOptions) { + if (generatorOptions === void 0) { + generatorOptions = {}; + } + + var _generatorOptions = generatorOptions, + _generatorOptions$def = _generatorOptions.defaultModifiers, + defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def, + _generatorOptions$def2 = _generatorOptions.defaultOptions, + defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2; + return function createPopper(reference, popper, options) { + if (options === void 0) { + options = defaultOptions; + } + + var state = { + placement: 'bottom', + orderedModifiers: [], + options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions), + modifiersData: {}, + elements: { + reference: reference, + popper: popper + }, + attributes: {}, + styles: {} + }; + var effectCleanupFns = []; + var isDestroyed = false; + var instance = { + state: state, + setOptions: function setOptions(options) { + cleanupModifierEffects(); + state.options = Object.assign({}, defaultOptions, state.options, options); + state.scrollParents = { + reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [], + popper: listScrollParents(popper) + }; // Orders the modifiers based on their dependencies and `phase` + // properties + + var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers + + state.orderedModifiers = orderedModifiers.filter(function (m) { + return m.enabled; + }); // Validate the provided modifiers so that the consumer will get warned + + runModifierEffects(); + return instance.update(); + }, + // Sync update – it will always be executed, even if not necessary. This + // is useful for low frequency updates where sync behavior simplifies the + // logic. + // For high frequency updates (e.g. `resize` and `scroll` events), always + // prefer the async Popper#update method + forceUpdate: function forceUpdate() { + if (isDestroyed) { + return; + } + + var _state$elements = state.elements, + reference = _state$elements.reference, + popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements + // anymore + + if (!areValidElements(reference, popper)) { + + return; + } // Store the reference and popper rects to be read by modifiers + + + state.rects = { + reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'), + popper: getLayoutRect(popper) + }; // Modifiers have the ability to reset the current update cycle. The + // most common use case for this is the `flip` modifier changing the + // placement, which then needs to re-run all the modifiers, because the + // logic was previously ran for the previous placement and is therefore + // stale/incorrect + + state.reset = false; + state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier + // is filled with the initial data specified by the modifier. This means + // it doesn't persist and is fresh on each update. + // To ensure persistent data, use `${name}#persistent` + + state.orderedModifiers.forEach(function (modifier) { + return state.modifiersData[modifier.name] = Object.assign({}, modifier.data); + }); + + for (var index = 0; index < state.orderedModifiers.length; index++) { + + if (state.reset === true) { + state.reset = false; + index = -1; + continue; + } + + var _state$orderedModifie = state.orderedModifiers[index], + fn = _state$orderedModifie.fn, + _state$orderedModifie2 = _state$orderedModifie.options, + _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2, + name = _state$orderedModifie.name; + + if (typeof fn === 'function') { + state = fn({ + state: state, + options: _options, + name: name, + instance: instance + }) || state; + } + } + }, + // Async and optimistically optimized update – it will not be executed if + // not necessary (debounced to run at most once-per-tick) + update: debounce(function () { + return new Promise(function (resolve) { + instance.forceUpdate(); + resolve(state); + }); + }), + destroy: function destroy() { + cleanupModifierEffects(); + isDestroyed = true; + } + }; + + if (!areValidElements(reference, popper)) { + + return instance; + } + + instance.setOptions(options).then(function (state) { + if (!isDestroyed && options.onFirstUpdate) { + options.onFirstUpdate(state); + } + }); // Modifiers have the ability to execute arbitrary code before the first + // update cycle runs. They will be executed in the same order as the update + // cycle. This is useful when a modifier adds some persistent data that + // other modifiers need to use, but the modifier is run after the dependent + // one. + + function runModifierEffects() { + state.orderedModifiers.forEach(function (_ref3) { + var name = _ref3.name, + _ref3$options = _ref3.options, + options = _ref3$options === void 0 ? {} : _ref3$options, + effect = _ref3.effect; + + if (typeof effect === 'function') { + var cleanupFn = effect({ + state: state, + name: name, + instance: instance, + options: options + }); + + var noopFn = function noopFn() {}; + + effectCleanupFns.push(cleanupFn || noopFn); + } + }); + } + + function cleanupModifierEffects() { + effectCleanupFns.forEach(function (fn) { + return fn(); + }); + effectCleanupFns = []; + } + + return instance; + }; + } + var createPopper$2 = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules + + var defaultModifiers$1 = [eventListeners, popperOffsets$1, computeStyles$1, applyStyles$1]; + var createPopper$1 = /*#__PURE__*/popperGenerator({ + defaultModifiers: defaultModifiers$1 + }); // eslint-disable-next-line import/no-unused-modules + + var defaultModifiers = [eventListeners, popperOffsets$1, computeStyles$1, applyStyles$1, offset$1, flip$1, preventOverflow$1, arrow$1, hide$1]; + var createPopper = /*#__PURE__*/popperGenerator({ + defaultModifiers: defaultModifiers + }); // eslint-disable-next-line import/no-unused-modules + + var Popper = /*#__PURE__*/Object.freeze({ + __proto__: null, + popperGenerator: popperGenerator, + detectOverflow: detectOverflow, + createPopperBase: createPopper$2, + createPopper: createPopper, + createPopperLite: createPopper$1, + top: top, + bottom: bottom, + right: right, + left: left, + auto: auto, + basePlacements: basePlacements, + start: start, + end: end, + clippingParents: clippingParents, + viewport: viewport, + popper: popper, + reference: reference, + variationPlacements: variationPlacements, + placements: placements, + beforeRead: beforeRead, + read: read, + afterRead: afterRead, + beforeMain: beforeMain, + main: main, + afterMain: afterMain, + beforeWrite: beforeWrite, + write: write, + afterWrite: afterWrite, + modifierPhases: modifierPhases, + applyStyles: applyStyles$1, + arrow: arrow$1, + computeStyles: computeStyles$1, + eventListeners: eventListeners, + flip: flip$1, + hide: hide$1, + offset: offset$1, + popperOffsets: popperOffsets$1, + preventOverflow: preventOverflow$1 + }); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): dropdown.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$8 = 'dropdown'; + const DATA_KEY$7 = 'bs.dropdown'; + const EVENT_KEY$7 = `.${DATA_KEY$7}`; + const DATA_API_KEY$4 = '.data-api'; + const ESCAPE_KEY$2 = 'Escape'; + const SPACE_KEY = 'Space'; + const TAB_KEY = 'Tab'; + const ARROW_UP_KEY = 'ArrowUp'; + const ARROW_DOWN_KEY = 'ArrowDown'; + const RIGHT_MOUSE_BUTTON = 2; // MouseEvent.button value for the secondary button, usually the right button + + const REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY$2}`); + const EVENT_HIDE$4 = `hide${EVENT_KEY$7}`; + const EVENT_HIDDEN$4 = `hidden${EVENT_KEY$7}`; + const EVENT_SHOW$4 = `show${EVENT_KEY$7}`; + const EVENT_SHOWN$4 = `shown${EVENT_KEY$7}`; + const EVENT_CLICK = `click${EVENT_KEY$7}`; + const EVENT_CLICK_DATA_API$3 = `click${EVENT_KEY$7}${DATA_API_KEY$4}`; + const EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY$7}${DATA_API_KEY$4}`; + const EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY$7}${DATA_API_KEY$4}`; + const CLASS_NAME_SHOW$7 = 'show'; + const CLASS_NAME_DROPUP = 'dropup'; + const CLASS_NAME_DROPEND = 'dropend'; + const CLASS_NAME_DROPSTART = 'dropstart'; + const CLASS_NAME_NAVBAR = 'navbar'; + const SELECTOR_DATA_TOGGLE$3 = '[data-bs-toggle="dropdown"]'; + const SELECTOR_MENU = '.dropdown-menu'; + const SELECTOR_NAVBAR_NAV = '.navbar-nav'; + const SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'; + const PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'; + const PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'; + const PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'; + const PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'; + const PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'; + const PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'; + const Default$7 = { + offset: [0, 2], + boundary: 'clippingParents', + reference: 'toggle', + display: 'dynamic', + popperConfig: null, + autoClose: true + }; + const DefaultType$7 = { + offset: '(array|string|function)', + boundary: '(string|element)', + reference: '(string|element|object)', + display: 'string', + popperConfig: '(null|object|function)', + autoClose: '(boolean|string)' + }; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Dropdown extends BaseComponent { + constructor(element, config) { + super(element); + this._popper = null; + this._config = this._getConfig(config); + this._menu = this._getMenuElement(); + this._inNavbar = this._detectNavbar(); + + this._addEventListeners(); + } // Getters + + + static get Default() { + return Default$7; + } + + static get DefaultType() { + return DefaultType$7; + } + + static get NAME() { + return NAME$8; + } // Public + + + toggle() { + if (isDisabled(this._element)) { + return; + } + + const isActive = this._element.classList.contains(CLASS_NAME_SHOW$7); + + if (isActive) { + this.hide(); + return; + } + + this.show(); + } + + show() { + if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW$7)) { + return; + } + + const parent = Dropdown.getParentFromElement(this._element); + const relatedTarget = { + relatedTarget: this._element + }; + const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$4, relatedTarget); + + if (showEvent.defaultPrevented) { + return; + } // Totally disable Popper for Dropdowns in Navbar + + + if (this._inNavbar) { + Manipulator.setDataAttribute(this._menu, 'popper', 'none'); + } else { + if (typeof Popper === 'undefined') { + throw new TypeError('Bootstrap\'s dropdowns require Popper (https://popper.js.org)'); + } + + let referenceElement = this._element; + + if (this._config.reference === 'parent') { + referenceElement = parent; + } else if (isElement$1(this._config.reference)) { + referenceElement = getElement(this._config.reference); + } else if (typeof this._config.reference === 'object') { + referenceElement = this._config.reference; + } + + const popperConfig = this._getPopperConfig(); + + const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false); + this._popper = createPopper(referenceElement, this._menu, popperConfig); + + if (isDisplayStatic) { + Manipulator.setDataAttribute(this._menu, 'popper', 'static'); + } + } // If this is a touch-enabled device we add extra + // empty mouseover listeners to the body's immediate children; + // only needed because of broken event delegation on iOS + // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html + + + if ('ontouchstart' in document.documentElement && !parent.closest(SELECTOR_NAVBAR_NAV)) { + [].concat(...document.body.children).forEach(elem => EventHandler.on(elem, 'mouseover', noop)); + } + + this._element.focus(); + + this._element.setAttribute('aria-expanded', true); + + this._menu.classList.toggle(CLASS_NAME_SHOW$7); + + this._element.classList.toggle(CLASS_NAME_SHOW$7); + + EventHandler.trigger(this._element, EVENT_SHOWN$4, relatedTarget); + } + + hide() { + if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW$7)) { + return; + } + + const relatedTarget = { + relatedTarget: this._element + }; + + this._completeHide(relatedTarget); + } + + dispose() { + if (this._popper) { + this._popper.destroy(); + } + + super.dispose(); + } + + update() { + this._inNavbar = this._detectNavbar(); + + if (this._popper) { + this._popper.update(); + } + } // Private + + + _addEventListeners() { + EventHandler.on(this._element, EVENT_CLICK, event => { + event.preventDefault(); + this.toggle(); + }); + } + + _completeHide(relatedTarget) { + const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$4, relatedTarget); + + if (hideEvent.defaultPrevented) { + return; + } // If this is a touch-enabled device we remove the extra + // empty mouseover listeners we added for iOS support + + + if ('ontouchstart' in document.documentElement) { + [].concat(...document.body.children).forEach(elem => EventHandler.off(elem, 'mouseover', noop)); + } + + if (this._popper) { + this._popper.destroy(); + } + + this._menu.classList.remove(CLASS_NAME_SHOW$7); + + this._element.classList.remove(CLASS_NAME_SHOW$7); + + this._element.setAttribute('aria-expanded', 'false'); + + Manipulator.removeDataAttribute(this._menu, 'popper'); + EventHandler.trigger(this._element, EVENT_HIDDEN$4, relatedTarget); + } + + _getConfig(config) { + config = { ...this.constructor.Default, + ...Manipulator.getDataAttributes(this._element), + ...config + }; + typeCheckConfig(NAME$8, config, this.constructor.DefaultType); + + if (typeof config.reference === 'object' && !isElement$1(config.reference) && typeof config.reference.getBoundingClientRect !== 'function') { + // Popper virtual elements require a getBoundingClientRect method + throw new TypeError(`${NAME$8.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`); + } + + return config; + } + + _getMenuElement() { + return SelectorEngine.next(this._element, SELECTOR_MENU)[0]; + } + + _getPlacement() { + const parentDropdown = this._element.parentNode; + + if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) { + return PLACEMENT_RIGHT; + } + + if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) { + return PLACEMENT_LEFT; + } // We need to trim the value because custom properties can also include spaces + + + const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'; + + if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) { + return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP; + } + + return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM; + } + + _detectNavbar() { + return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null; + } + + _getOffset() { + const { + offset + } = this._config; + + if (typeof offset === 'string') { + return offset.split(',').map(val => Number.parseInt(val, 10)); + } + + if (typeof offset === 'function') { + return popperData => offset(popperData, this._element); + } + + return offset; + } + + _getPopperConfig() { + const defaultBsPopperConfig = { + placement: this._getPlacement(), + modifiers: [{ + name: 'preventOverflow', + options: { + boundary: this._config.boundary + } + }, { + name: 'offset', + options: { + offset: this._getOffset() + } + }] + }; // Disable Popper if we have a static display + + if (this._config.display === 'static') { + defaultBsPopperConfig.modifiers = [{ + name: 'applyStyles', + enabled: false + }]; + } + + return { ...defaultBsPopperConfig, + ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig) + }; + } + + _selectMenuItem({ + key, + target + }) { + const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible); + + if (!items.length) { + return; + } // if target isn't included in items (e.g. when expanding the dropdown) + // allow cycling to get the last item in case key equals ARROW_UP_KEY + + + getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus(); + } // Static + + + static dropdownInterface(element, config) { + const data = Dropdown.getOrCreateInstance(element, config); + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + } + } + + static jQueryInterface(config) { + return this.each(function () { + Dropdown.dropdownInterface(this, config); + }); + } + + static clearMenus(event) { + if (event && (event.button === RIGHT_MOUSE_BUTTON || event.type === 'keyup' && event.key !== TAB_KEY)) { + return; + } + + const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE$3); + + for (let i = 0, len = toggles.length; i < len; i++) { + const context = Dropdown.getInstance(toggles[i]); + + if (!context || context._config.autoClose === false) { + continue; + } + + if (!context._element.classList.contains(CLASS_NAME_SHOW$7)) { + continue; + } + + const relatedTarget = { + relatedTarget: context._element + }; + + if (event) { + const composedPath = event.composedPath(); + const isMenuTarget = composedPath.includes(context._menu); + + if (composedPath.includes(context._element) || context._config.autoClose === 'inside' && !isMenuTarget || context._config.autoClose === 'outside' && isMenuTarget) { + continue; + } // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu + + + if (context._menu.contains(event.target) && (event.type === 'keyup' && event.key === TAB_KEY || /input|select|option|textarea|form/i.test(event.target.tagName))) { + continue; + } + + if (event.type === 'click') { + relatedTarget.clickEvent = event; + } + } + + context._completeHide(relatedTarget); + } + } + + static getParentFromElement(element) { + return getElementFromSelector(element) || element.parentNode; + } + + static dataApiKeydownHandler(event) { + // If not input/textarea: + // - And not a key in REGEXP_KEYDOWN => not a dropdown command + // If input/textarea: + // - If space key => not a dropdown command + // - If key is other than escape + // - If key is not up or down => not a dropdown command + // - If trigger inside the menu => not a dropdown command + if (/input|textarea/i.test(event.target.tagName) ? event.key === SPACE_KEY || event.key !== ESCAPE_KEY$2 && (event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY || event.target.closest(SELECTOR_MENU)) : !REGEXP_KEYDOWN.test(event.key)) { + return; + } + + const isActive = this.classList.contains(CLASS_NAME_SHOW$7); + + if (!isActive && event.key === ESCAPE_KEY$2) { + return; + } + + event.preventDefault(); + event.stopPropagation(); + + if (isDisabled(this)) { + return; + } + + const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0]; + + if (event.key === ESCAPE_KEY$2) { + getToggleButton().focus(); + Dropdown.clearMenus(); + return; + } + + if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) { + if (!isActive) { + getToggleButton().click(); + } + + Dropdown.getInstance(getToggleButton())._selectMenuItem(event); + + return; + } + + if (!isActive || event.key === SPACE_KEY) { + Dropdown.clearMenus(); + } + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE$3, Dropdown.dataApiKeydownHandler); + EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler); + EventHandler.on(document, EVENT_CLICK_DATA_API$3, Dropdown.clearMenus); + EventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus); + EventHandler.on(document, EVENT_CLICK_DATA_API$3, SELECTOR_DATA_TOGGLE$3, function (event) { + event.preventDefault(); + Dropdown.dropdownInterface(this); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Dropdown to jQuery only if jQuery is present + */ + + defineJQueryPlugin(Dropdown); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): util/scrollBar.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + const SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'; + const SELECTOR_STICKY_CONTENT = '.sticky-top'; + + class ScrollBarHelper { + constructor() { + this._element = document.body; + } + + getWidth() { + // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes + const documentWidth = document.documentElement.clientWidth; + return Math.abs(window.innerWidth - documentWidth); + } + + hide() { + const width = this.getWidth(); + + this._disableOverFlow(); // give padding to element to balance the hidden scrollbar width + + + this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width); // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth + + + this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width); + + this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width); + } + + _disableOverFlow() { + this._saveInitialAttribute(this._element, 'overflow'); + + this._element.style.overflow = 'hidden'; + } + + _setElementAttributes(selector, styleProp, callback) { + const scrollbarWidth = this.getWidth(); + + const manipulationCallBack = element => { + if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) { + return; + } + + this._saveInitialAttribute(element, styleProp); + + const calculatedValue = window.getComputedStyle(element)[styleProp]; + element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`; + }; + + this._applyManipulationCallback(selector, manipulationCallBack); + } + + reset() { + this._resetElementAttributes(this._element, 'overflow'); + + this._resetElementAttributes(this._element, 'paddingRight'); + + this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight'); + + this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight'); + } + + _saveInitialAttribute(element, styleProp) { + const actualValue = element.style[styleProp]; + + if (actualValue) { + Manipulator.setDataAttribute(element, styleProp, actualValue); + } + } + + _resetElementAttributes(selector, styleProp) { + const manipulationCallBack = element => { + const value = Manipulator.getDataAttribute(element, styleProp); + + if (typeof value === 'undefined') { + element.style.removeProperty(styleProp); + } else { + Manipulator.removeDataAttribute(element, styleProp); + element.style[styleProp] = value; + } + }; + + this._applyManipulationCallback(selector, manipulationCallBack); + } + + _applyManipulationCallback(selector, callBack) { + if (isElement$1(selector)) { + callBack(selector); + } else { + SelectorEngine.find(selector, this._element).forEach(callBack); + } + } + + isOverflowing() { + return this.getWidth() > 0; + } + + } + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): util/backdrop.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + const Default$6 = { + isVisible: true, + // if false, we use the backdrop helper without adding any element to the dom + isAnimated: false, + rootElement: 'body', + // give the choice to place backdrop under different elements + clickCallback: null + }; + const DefaultType$6 = { + isVisible: 'boolean', + isAnimated: 'boolean', + rootElement: '(element|string)', + clickCallback: '(function|null)' + }; + const NAME$7 = 'backdrop'; + const CLASS_NAME_BACKDROP = 'modal-backdrop'; + const CLASS_NAME_FADE$5 = 'fade'; + const CLASS_NAME_SHOW$6 = 'show'; + const EVENT_MOUSEDOWN = `mousedown.bs.${NAME$7}`; + + class Backdrop { + constructor(config) { + this._config = this._getConfig(config); + this._isAppended = false; + this._element = null; + } + + show(callback) { + if (!this._config.isVisible) { + execute(callback); + return; + } + + this._append(); + + if (this._config.isAnimated) { + reflow(this._getElement()); + } + + this._getElement().classList.add(CLASS_NAME_SHOW$6); + + this._emulateAnimation(() => { + execute(callback); + }); + } + + hide(callback) { + if (!this._config.isVisible) { + execute(callback); + return; + } + + this._getElement().classList.remove(CLASS_NAME_SHOW$6); + + this._emulateAnimation(() => { + this.dispose(); + execute(callback); + }); + } // Private + + + _getElement() { + if (!this._element) { + const backdrop = document.createElement('div'); + backdrop.className = CLASS_NAME_BACKDROP; + + if (this._config.isAnimated) { + backdrop.classList.add(CLASS_NAME_FADE$5); + } + + this._element = backdrop; + } + + return this._element; + } + + _getConfig(config) { + config = { ...Default$6, + ...(typeof config === 'object' ? config : {}) + }; // use getElement() with the default "body" to get a fresh Element on each instantiation + + config.rootElement = getElement(config.rootElement); + typeCheckConfig(NAME$7, config, DefaultType$6); + return config; + } + + _append() { + if (this._isAppended) { + return; + } + + this._config.rootElement.appendChild(this._getElement()); + + EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => { + execute(this._config.clickCallback); + }); + this._isAppended = true; + } + + dispose() { + if (!this._isAppended) { + return; + } + + EventHandler.off(this._element, EVENT_MOUSEDOWN); + + this._element.remove(); + + this._isAppended = false; + } + + _emulateAnimation(callback) { + executeAfterTransition(callback, this._getElement(), this._config.isAnimated); + } + + } + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): modal.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$6 = 'modal'; + const DATA_KEY$6 = 'bs.modal'; + const EVENT_KEY$6 = `.${DATA_KEY$6}`; + const DATA_API_KEY$3 = '.data-api'; + const ESCAPE_KEY$1 = 'Escape'; + const Default$5 = { + backdrop: true, + keyboard: true, + focus: true + }; + const DefaultType$5 = { + backdrop: '(boolean|string)', + keyboard: 'boolean', + focus: 'boolean' + }; + const EVENT_HIDE$3 = `hide${EVENT_KEY$6}`; + const EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY$6}`; + const EVENT_HIDDEN$3 = `hidden${EVENT_KEY$6}`; + const EVENT_SHOW$3 = `show${EVENT_KEY$6}`; + const EVENT_SHOWN$3 = `shown${EVENT_KEY$6}`; + const EVENT_FOCUSIN$2 = `focusin${EVENT_KEY$6}`; + const EVENT_RESIZE = `resize${EVENT_KEY$6}`; + const EVENT_CLICK_DISMISS$2 = `click.dismiss${EVENT_KEY$6}`; + const EVENT_KEYDOWN_DISMISS$1 = `keydown.dismiss${EVENT_KEY$6}`; + const EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY$6}`; + const EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY$6}`; + const EVENT_CLICK_DATA_API$2 = `click${EVENT_KEY$6}${DATA_API_KEY$3}`; + const CLASS_NAME_OPEN = 'modal-open'; + const CLASS_NAME_FADE$4 = 'fade'; + const CLASS_NAME_SHOW$5 = 'show'; + const CLASS_NAME_STATIC = 'modal-static'; + const SELECTOR_DIALOG = '.modal-dialog'; + const SELECTOR_MODAL_BODY = '.modal-body'; + const SELECTOR_DATA_TOGGLE$2 = '[data-bs-toggle="modal"]'; + const SELECTOR_DATA_DISMISS$2 = '[data-bs-dismiss="modal"]'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Modal extends BaseComponent { + constructor(element, config) { + super(element); + this._config = this._getConfig(config); + this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element); + this._backdrop = this._initializeBackDrop(); + this._isShown = false; + this._ignoreBackdropClick = false; + this._isTransitioning = false; + this._scrollBar = new ScrollBarHelper(); + } // Getters + + + static get Default() { + return Default$5; + } + + static get NAME() { + return NAME$6; + } // Public + + + toggle(relatedTarget) { + return this._isShown ? this.hide() : this.show(relatedTarget); + } + + show(relatedTarget) { + if (this._isShown || this._isTransitioning) { + return; + } + + const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$3, { + relatedTarget + }); + + if (showEvent.defaultPrevented) { + return; + } + + this._isShown = true; + + if (this._isAnimated()) { + this._isTransitioning = true; + } + + this._scrollBar.hide(); + + document.body.classList.add(CLASS_NAME_OPEN); + + this._adjustDialog(); + + this._setEscapeEvent(); + + this._setResizeEvent(); + + EventHandler.on(this._element, EVENT_CLICK_DISMISS$2, SELECTOR_DATA_DISMISS$2, event => this.hide(event)); + EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => { + EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => { + if (event.target === this._element) { + this._ignoreBackdropClick = true; + } + }); + }); + + this._showBackdrop(() => this._showElement(relatedTarget)); + } + + hide(event) { + if (event && ['A', 'AREA'].includes(event.target.tagName)) { + event.preventDefault(); + } + + if (!this._isShown || this._isTransitioning) { + return; + } + + const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$3); + + if (hideEvent.defaultPrevented) { + return; + } + + this._isShown = false; + + const isAnimated = this._isAnimated(); + + if (isAnimated) { + this._isTransitioning = true; + } + + this._setEscapeEvent(); + + this._setResizeEvent(); + + EventHandler.off(document, EVENT_FOCUSIN$2); + + this._element.classList.remove(CLASS_NAME_SHOW$5); + + EventHandler.off(this._element, EVENT_CLICK_DISMISS$2); + EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS); + + this._queueCallback(() => this._hideModal(), this._element, isAnimated); + } + + dispose() { + [window, this._dialog].forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY$6)); + + this._backdrop.dispose(); + + super.dispose(); + /** + * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API` + * Do not move `document` in `htmlElements` array + * It will remove `EVENT_CLICK_DATA_API` event that should remain + */ + + EventHandler.off(document, EVENT_FOCUSIN$2); + } + + handleUpdate() { + this._adjustDialog(); + } // Private + + + _initializeBackDrop() { + return new Backdrop({ + isVisible: Boolean(this._config.backdrop), + // 'static' option will be translated to true, and booleans will keep their value + isAnimated: this._isAnimated() + }); + } + + _getConfig(config) { + config = { ...Default$5, + ...Manipulator.getDataAttributes(this._element), + ...(typeof config === 'object' ? config : {}) + }; + typeCheckConfig(NAME$6, config, DefaultType$5); + return config; + } + + _showElement(relatedTarget) { + const isAnimated = this._isAnimated(); + + const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog); + + if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) { + // Don't move modal's DOM position + document.body.appendChild(this._element); + } + + this._element.style.display = 'block'; + + this._element.removeAttribute('aria-hidden'); + + this._element.setAttribute('aria-modal', true); + + this._element.setAttribute('role', 'dialog'); + + this._element.scrollTop = 0; + + if (modalBody) { + modalBody.scrollTop = 0; + } + + if (isAnimated) { + reflow(this._element); + } + + this._element.classList.add(CLASS_NAME_SHOW$5); + + if (this._config.focus) { + this._enforceFocus(); + } + + const transitionComplete = () => { + if (this._config.focus) { + this._element.focus(); + } + + this._isTransitioning = false; + EventHandler.trigger(this._element, EVENT_SHOWN$3, { + relatedTarget + }); + }; + + this._queueCallback(transitionComplete, this._dialog, isAnimated); + } + + _enforceFocus() { + EventHandler.off(document, EVENT_FOCUSIN$2); // guard against infinite focus loop + + EventHandler.on(document, EVENT_FOCUSIN$2, event => { + if (document !== event.target && this._element !== event.target && !this._element.contains(event.target)) { + this._element.focus(); + } + }); + } + + _setEscapeEvent() { + if (this._isShown) { + EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS$1, event => { + if (this._config.keyboard && event.key === ESCAPE_KEY$1) { + event.preventDefault(); + this.hide(); + } else if (!this._config.keyboard && event.key === ESCAPE_KEY$1) { + this._triggerBackdropTransition(); + } + }); + } else { + EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS$1); + } + } + + _setResizeEvent() { + if (this._isShown) { + EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog()); + } else { + EventHandler.off(window, EVENT_RESIZE); + } + } + + _hideModal() { + this._element.style.display = 'none'; + + this._element.setAttribute('aria-hidden', true); + + this._element.removeAttribute('aria-modal'); + + this._element.removeAttribute('role'); + + this._isTransitioning = false; + + this._backdrop.hide(() => { + document.body.classList.remove(CLASS_NAME_OPEN); + + this._resetAdjustments(); + + this._scrollBar.reset(); + + EventHandler.trigger(this._element, EVENT_HIDDEN$3); + }); + } + + _showBackdrop(callback) { + EventHandler.on(this._element, EVENT_CLICK_DISMISS$2, event => { + if (this._ignoreBackdropClick) { + this._ignoreBackdropClick = false; + return; + } + + if (event.target !== event.currentTarget) { + return; + } + + if (this._config.backdrop === true) { + this.hide(); + } else if (this._config.backdrop === 'static') { + this._triggerBackdropTransition(); + } + }); + + this._backdrop.show(callback); + } + + _isAnimated() { + return this._element.classList.contains(CLASS_NAME_FADE$4); + } + + _triggerBackdropTransition() { + const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED); + + if (hideEvent.defaultPrevented) { + return; + } + + const { + classList, + scrollHeight, + style + } = this._element; + const isModalOverflowing = scrollHeight > document.documentElement.clientHeight; // return if the following background transition hasn't yet completed + + if (!isModalOverflowing && style.overflowY === 'hidden' || classList.contains(CLASS_NAME_STATIC)) { + return; + } + + if (!isModalOverflowing) { + style.overflowY = 'hidden'; + } + + classList.add(CLASS_NAME_STATIC); + + this._queueCallback(() => { + classList.remove(CLASS_NAME_STATIC); + + if (!isModalOverflowing) { + this._queueCallback(() => { + style.overflowY = ''; + }, this._dialog); + } + }, this._dialog); + + this._element.focus(); + } // ---------------------------------------------------------------------- + // the following methods are used to handle overflowing modals + // ---------------------------------------------------------------------- + + + _adjustDialog() { + const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight; + + const scrollbarWidth = this._scrollBar.getWidth(); + + const isBodyOverflowing = scrollbarWidth > 0; + + if (!isBodyOverflowing && isModalOverflowing && !isRTL() || isBodyOverflowing && !isModalOverflowing && isRTL()) { + this._element.style.paddingLeft = `${scrollbarWidth}px`; + } + + if (isBodyOverflowing && !isModalOverflowing && !isRTL() || !isBodyOverflowing && isModalOverflowing && isRTL()) { + this._element.style.paddingRight = `${scrollbarWidth}px`; + } + } + + _resetAdjustments() { + this._element.style.paddingLeft = ''; + this._element.style.paddingRight = ''; + } // Static + + + static jQueryInterface(config, relatedTarget) { + return this.each(function () { + const data = Modal.getOrCreateInstance(this, config); + + if (typeof config !== 'string') { + return; + } + + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](relatedTarget); + }); + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_CLICK_DATA_API$2, SELECTOR_DATA_TOGGLE$2, function (event) { + const target = getElementFromSelector(this); + + if (['A', 'AREA'].includes(this.tagName)) { + event.preventDefault(); + } + + EventHandler.one(target, EVENT_SHOW$3, showEvent => { + if (showEvent.defaultPrevented) { + // only register focus restorer if modal will actually get shown + return; + } + + EventHandler.one(target, EVENT_HIDDEN$3, () => { + if (isVisible(this)) { + this.focus(); + } + }); + }); + const data = Modal.getOrCreateInstance(target); + data.toggle(this); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Modal to jQuery only if jQuery is present + */ + + defineJQueryPlugin(Modal); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): offcanvas.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$5 = 'offcanvas'; + const DATA_KEY$5 = 'bs.offcanvas'; + const EVENT_KEY$5 = `.${DATA_KEY$5}`; + const DATA_API_KEY$2 = '.data-api'; + const EVENT_LOAD_DATA_API$1 = `load${EVENT_KEY$5}${DATA_API_KEY$2}`; + const ESCAPE_KEY = 'Escape'; + const Default$4 = { + backdrop: true, + keyboard: true, + scroll: false + }; + const DefaultType$4 = { + backdrop: 'boolean', + keyboard: 'boolean', + scroll: 'boolean' + }; + const CLASS_NAME_SHOW$4 = 'show'; + const OPEN_SELECTOR = '.offcanvas.show'; + const EVENT_SHOW$2 = `show${EVENT_KEY$5}`; + const EVENT_SHOWN$2 = `shown${EVENT_KEY$5}`; + const EVENT_HIDE$2 = `hide${EVENT_KEY$5}`; + const EVENT_HIDDEN$2 = `hidden${EVENT_KEY$5}`; + const EVENT_FOCUSIN$1 = `focusin${EVENT_KEY$5}`; + const EVENT_CLICK_DATA_API$1 = `click${EVENT_KEY$5}${DATA_API_KEY$2}`; + const EVENT_CLICK_DISMISS$1 = `click.dismiss${EVENT_KEY$5}`; + const EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY$5}`; + const SELECTOR_DATA_DISMISS$1 = '[data-bs-dismiss="offcanvas"]'; + const SELECTOR_DATA_TOGGLE$1 = '[data-bs-toggle="offcanvas"]'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Offcanvas extends BaseComponent { + constructor(element, config) { + super(element); + this._config = this._getConfig(config); + this._isShown = false; + this._backdrop = this._initializeBackDrop(); + + this._addEventListeners(); + } // Getters + + + static get NAME() { + return NAME$5; + } + + static get Default() { + return Default$4; + } // Public + + + toggle(relatedTarget) { + return this._isShown ? this.hide() : this.show(relatedTarget); + } + + show(relatedTarget) { + if (this._isShown) { + return; + } + + const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$2, { + relatedTarget + }); + + if (showEvent.defaultPrevented) { + return; + } + + this._isShown = true; + this._element.style.visibility = 'visible'; + + this._backdrop.show(); + + if (!this._config.scroll) { + new ScrollBarHelper().hide(); + + this._enforceFocusOnElement(this._element); + } + + this._element.removeAttribute('aria-hidden'); + + this._element.setAttribute('aria-modal', true); + + this._element.setAttribute('role', 'dialog'); + + this._element.classList.add(CLASS_NAME_SHOW$4); + + const completeCallBack = () => { + EventHandler.trigger(this._element, EVENT_SHOWN$2, { + relatedTarget + }); + }; + + this._queueCallback(completeCallBack, this._element, true); + } + + hide() { + if (!this._isShown) { + return; + } + + const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$2); + + if (hideEvent.defaultPrevented) { + return; + } + + EventHandler.off(document, EVENT_FOCUSIN$1); + + this._element.blur(); + + this._isShown = false; + + this._element.classList.remove(CLASS_NAME_SHOW$4); + + this._backdrop.hide(); + + const completeCallback = () => { + this._element.setAttribute('aria-hidden', true); + + this._element.removeAttribute('aria-modal'); + + this._element.removeAttribute('role'); + + this._element.style.visibility = 'hidden'; + + if (!this._config.scroll) { + new ScrollBarHelper().reset(); + } + + EventHandler.trigger(this._element, EVENT_HIDDEN$2); + }; + + this._queueCallback(completeCallback, this._element, true); + } + + dispose() { + this._backdrop.dispose(); + + super.dispose(); + EventHandler.off(document, EVENT_FOCUSIN$1); + } // Private + + + _getConfig(config) { + config = { ...Default$4, + ...Manipulator.getDataAttributes(this._element), + ...(typeof config === 'object' ? config : {}) + }; + typeCheckConfig(NAME$5, config, DefaultType$4); + return config; + } + + _initializeBackDrop() { + return new Backdrop({ + isVisible: this._config.backdrop, + isAnimated: true, + rootElement: this._element.parentNode, + clickCallback: () => this.hide() + }); + } + + _enforceFocusOnElement(element) { + EventHandler.off(document, EVENT_FOCUSIN$1); // guard against infinite focus loop + + EventHandler.on(document, EVENT_FOCUSIN$1, event => { + if (document !== event.target && element !== event.target && !element.contains(event.target)) { + element.focus(); + } + }); + element.focus(); + } + + _addEventListeners() { + EventHandler.on(this._element, EVENT_CLICK_DISMISS$1, SELECTOR_DATA_DISMISS$1, () => this.hide()); + EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => { + if (this._config.keyboard && event.key === ESCAPE_KEY) { + this.hide(); + } + }); + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Offcanvas.getOrCreateInstance(this, config); + + if (typeof config !== 'string') { + return; + } + + if (data[config] === undefined || config.startsWith('_') || config === 'constructor') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](this); + }); + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_CLICK_DATA_API$1, SELECTOR_DATA_TOGGLE$1, function (event) { + const target = getElementFromSelector(this); + + if (['A', 'AREA'].includes(this.tagName)) { + event.preventDefault(); + } + + if (isDisabled(this)) { + return; + } + + EventHandler.one(target, EVENT_HIDDEN$2, () => { + // focus on trigger when it is closed + if (isVisible(this)) { + this.focus(); + } + }); // avoid conflict when clicking a toggler of an offcanvas, while another is open + + const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR); + + if (allReadyOpen && allReadyOpen !== target) { + Offcanvas.getInstance(allReadyOpen).hide(); + } + + const data = Offcanvas.getOrCreateInstance(target); + data.toggle(this); + }); + EventHandler.on(window, EVENT_LOAD_DATA_API$1, () => SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + defineJQueryPlugin(Offcanvas); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): util/sanitizer.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + const uriAttrs = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']); + const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i; + /** + * A pattern that recognizes a commonly useful subset of URLs that are safe. + * + * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts + */ + + const SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i; + /** + * A pattern that matches safe data URLs. Only matches image, video and audio types. + * + * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts + */ + + const DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i; + + const allowedAttribute = (attr, allowedAttributeList) => { + const attrName = attr.nodeName.toLowerCase(); + + if (allowedAttributeList.includes(attrName)) { + if (uriAttrs.has(attrName)) { + return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue)); + } + + return true; + } + + const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp); // Check if a regular expression validates the attribute. + + for (let i = 0, len = regExp.length; i < len; i++) { + if (regExp[i].test(attrName)) { + return true; + } + } + + return false; + }; + + const DefaultAllowlist = { + // Global attributes allowed on any supplied element below. + '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN], + 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: [] + }; + function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) { + if (!unsafeHtml.length) { + return unsafeHtml; + } + + if (sanitizeFn && typeof sanitizeFn === 'function') { + return sanitizeFn(unsafeHtml); + } + + const domParser = new window.DOMParser(); + const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html'); + const allowlistKeys = Object.keys(allowList); + const elements = [].concat(...createdDocument.body.querySelectorAll('*')); + + for (let i = 0, len = elements.length; i < len; i++) { + const el = elements[i]; + const elName = el.nodeName.toLowerCase(); + + if (!allowlistKeys.includes(elName)) { + el.remove(); + continue; + } + + const attributeList = [].concat(...el.attributes); + const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || []); + attributeList.forEach(attr => { + if (!allowedAttribute(attr, allowedAttributes)) { + el.removeAttribute(attr.nodeName); + } + }); + } + + return createdDocument.body.innerHTML; + } + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): tooltip.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$4 = 'tooltip'; + const DATA_KEY$4 = 'bs.tooltip'; + const EVENT_KEY$4 = `.${DATA_KEY$4}`; + const CLASS_PREFIX$1 = 'bs-tooltip'; + const BSCLS_PREFIX_REGEX$1 = new RegExp(`(^|\\s)${CLASS_PREFIX$1}\\S+`, 'g'); + const DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn']); + const DefaultType$3 = { + 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)' + }; + const AttachmentMap = { + AUTO: 'auto', + TOP: 'top', + RIGHT: isRTL() ? 'left' : 'right', + BOTTOM: 'bottom', + LEFT: isRTL() ? 'right' : 'left' + }; + const Default$3 = { + animation: true, + template: '<div class="tooltip" role="tooltip">' + '<div class="tooltip-arrow"></div>' + '<div class="tooltip-inner"></div>' + '</div>', + trigger: 'hover focus', + title: '', + delay: 0, + html: false, + selector: false, + placement: 'top', + offset: [0, 0], + container: false, + fallbackPlacements: ['top', 'right', 'bottom', 'left'], + boundary: 'clippingParents', + customClass: '', + sanitize: true, + sanitizeFn: null, + allowList: DefaultAllowlist, + popperConfig: null + }; + const Event$2 = { + HIDE: `hide${EVENT_KEY$4}`, + HIDDEN: `hidden${EVENT_KEY$4}`, + SHOW: `show${EVENT_KEY$4}`, + SHOWN: `shown${EVENT_KEY$4}`, + INSERTED: `inserted${EVENT_KEY$4}`, + CLICK: `click${EVENT_KEY$4}`, + FOCUSIN: `focusin${EVENT_KEY$4}`, + FOCUSOUT: `focusout${EVENT_KEY$4}`, + MOUSEENTER: `mouseenter${EVENT_KEY$4}`, + MOUSELEAVE: `mouseleave${EVENT_KEY$4}` + }; + const CLASS_NAME_FADE$3 = 'fade'; + const CLASS_NAME_MODAL = 'modal'; + const CLASS_NAME_SHOW$3 = 'show'; + const HOVER_STATE_SHOW = 'show'; + const HOVER_STATE_OUT = 'out'; + const SELECTOR_TOOLTIP_INNER = '.tooltip-inner'; + const TRIGGER_HOVER = 'hover'; + const TRIGGER_FOCUS = 'focus'; + const TRIGGER_CLICK = 'click'; + const TRIGGER_MANUAL = 'manual'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Tooltip extends BaseComponent { + constructor(element, config) { + if (typeof Popper === 'undefined') { + throw new TypeError('Bootstrap\'s tooltips require Popper (https://popper.js.org)'); + } + + super(element); // private + + this._isEnabled = true; + this._timeout = 0; + this._hoverState = ''; + this._activeTrigger = {}; + this._popper = null; // Protected + + this._config = this._getConfig(config); + this.tip = null; + + this._setListeners(); + } // Getters + + + static get Default() { + return Default$3; + } + + static get NAME() { + return NAME$4; + } + + static get Event() { + return Event$2; + } + + static get DefaultType() { + return DefaultType$3; + } // Public + + + enable() { + this._isEnabled = true; + } + + disable() { + this._isEnabled = false; + } + + toggleEnabled() { + this._isEnabled = !this._isEnabled; + } + + toggle(event) { + if (!this._isEnabled) { + return; + } + + if (event) { + const context = this._initializeOnDelegatedTarget(event); + + context._activeTrigger.click = !context._activeTrigger.click; + + if (context._isWithActiveTrigger()) { + context._enter(null, context); + } else { + context._leave(null, context); + } + } else { + if (this.getTipElement().classList.contains(CLASS_NAME_SHOW$3)) { + this._leave(null, this); + + return; + } + + this._enter(null, this); + } + } + + dispose() { + clearTimeout(this._timeout); + EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler); + + if (this.tip) { + this.tip.remove(); + } + + if (this._popper) { + this._popper.destroy(); + } + + super.dispose(); + } + + show() { + if (this._element.style.display === 'none') { + throw new Error('Please use show on visible elements'); + } + + if (!(this.isWithContent() && this._isEnabled)) { + return; + } + + const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW); + const shadowRoot = findShadowRoot(this._element); + const isInTheDom = shadowRoot === null ? this._element.ownerDocument.documentElement.contains(this._element) : shadowRoot.contains(this._element); + + if (showEvent.defaultPrevented || !isInTheDom) { + return; + } + + const tip = this.getTipElement(); + const tipId = getUID(this.constructor.NAME); + tip.setAttribute('id', tipId); + + this._element.setAttribute('aria-describedby', tipId); + + this.setContent(); + + if (this._config.animation) { + tip.classList.add(CLASS_NAME_FADE$3); + } + + const placement = typeof this._config.placement === 'function' ? this._config.placement.call(this, tip, this._element) : this._config.placement; + + const attachment = this._getAttachment(placement); + + this._addAttachmentClass(attachment); + + const { + container + } = this._config; + Data.set(tip, this.constructor.DATA_KEY, this); + + if (!this._element.ownerDocument.documentElement.contains(this.tip)) { + container.appendChild(tip); + EventHandler.trigger(this._element, this.constructor.Event.INSERTED); + } + + if (this._popper) { + this._popper.update(); + } else { + this._popper = createPopper(this._element, tip, this._getPopperConfig(attachment)); + } + + tip.classList.add(CLASS_NAME_SHOW$3); + const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass; + + if (customClass) { + tip.classList.add(...customClass.split(' ')); + } // If this is a touch-enabled device we add extra + // empty mouseover listeners to the body's immediate children; + // only needed because of broken event delegation on iOS + // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html + + + if ('ontouchstart' in document.documentElement) { + [].concat(...document.body.children).forEach(element => { + EventHandler.on(element, 'mouseover', noop); + }); + } + + const complete = () => { + const prevHoverState = this._hoverState; + this._hoverState = null; + EventHandler.trigger(this._element, this.constructor.Event.SHOWN); + + if (prevHoverState === HOVER_STATE_OUT) { + this._leave(null, this); + } + }; + + const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE$3); + + this._queueCallback(complete, this.tip, isAnimated); + } + + hide() { + if (!this._popper) { + return; + } + + const tip = this.getTipElement(); + + const complete = () => { + if (this._isWithActiveTrigger()) { + return; + } + + if (this._hoverState !== HOVER_STATE_SHOW) { + tip.remove(); + } + + this._cleanTipClass(); + + this._element.removeAttribute('aria-describedby'); + + EventHandler.trigger(this._element, this.constructor.Event.HIDDEN); + + if (this._popper) { + this._popper.destroy(); + + this._popper = null; + } + }; + + const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE); + + if (hideEvent.defaultPrevented) { + return; + } + + tip.classList.remove(CLASS_NAME_SHOW$3); // If this is a touch-enabled device we remove the extra + // empty mouseover listeners we added for iOS support + + if ('ontouchstart' in document.documentElement) { + [].concat(...document.body.children).forEach(element => EventHandler.off(element, 'mouseover', noop)); + } + + this._activeTrigger[TRIGGER_CLICK] = false; + this._activeTrigger[TRIGGER_FOCUS] = false; + this._activeTrigger[TRIGGER_HOVER] = false; + const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE$3); + + this._queueCallback(complete, this.tip, isAnimated); + + this._hoverState = ''; + } + + update() { + if (this._popper !== null) { + this._popper.update(); + } + } // Protected + + + isWithContent() { + return Boolean(this.getTitle()); + } + + getTipElement() { + if (this.tip) { + return this.tip; + } + + const element = document.createElement('div'); + element.innerHTML = this._config.template; + this.tip = element.children[0]; + return this.tip; + } + + setContent() { + const tip = this.getTipElement(); + this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle()); + tip.classList.remove(CLASS_NAME_FADE$3, CLASS_NAME_SHOW$3); + } + + setElementContent(element, content) { + if (element === null) { + return; + } + + if (isElement$1(content)) { + content = getElement(content); // content is a DOM node or a jQuery + + if (this._config.html) { + if (content.parentNode !== element) { + element.innerHTML = ''; + element.appendChild(content); + } + } else { + element.textContent = content.textContent; + } + + return; + } + + if (this._config.html) { + if (this._config.sanitize) { + content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn); + } + + element.innerHTML = content; + } else { + element.textContent = content; + } + } + + getTitle() { + let title = this._element.getAttribute('data-bs-original-title'); + + if (!title) { + title = typeof this._config.title === 'function' ? this._config.title.call(this._element) : this._config.title; + } + + return title; + } + + updateAttachment(attachment) { + if (attachment === 'right') { + return 'end'; + } + + if (attachment === 'left') { + return 'start'; + } + + return attachment; + } // Private + + + _initializeOnDelegatedTarget(event, context) { + const dataKey = this.constructor.DATA_KEY; + context = context || Data.get(event.delegateTarget, dataKey); + + if (!context) { + context = new this.constructor(event.delegateTarget, this._getDelegateConfig()); + Data.set(event.delegateTarget, dataKey, context); + } + + return context; + } + + _getOffset() { + const { + offset + } = this._config; + + if (typeof offset === 'string') { + return offset.split(',').map(val => Number.parseInt(val, 10)); + } + + if (typeof offset === 'function') { + return popperData => offset(popperData, this._element); + } + + return offset; + } + + _getPopperConfig(attachment) { + const defaultBsPopperConfig = { + placement: attachment, + 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: true, + phase: 'afterWrite', + fn: data => this._handlePopperPlacementChange(data) + }], + onFirstUpdate: data => { + if (data.options.placement !== data.placement) { + this._handlePopperPlacementChange(data); + } + } + }; + return { ...defaultBsPopperConfig, + ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig) + }; + } + + _addAttachmentClass(attachment) { + this.getTipElement().classList.add(`${CLASS_PREFIX$1}-${this.updateAttachment(attachment)}`); + } + + _getAttachment(placement) { + return AttachmentMap[placement.toUpperCase()]; + } + + _setListeners() { + const triggers = this._config.trigger.split(' '); + + triggers.forEach(trigger => { + if (trigger === 'click') { + EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event)); + } else if (trigger !== TRIGGER_MANUAL) { + const eventIn = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSEENTER : this.constructor.Event.FOCUSIN; + const eventOut = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSELEAVE : this.constructor.Event.FOCUSOUT; + EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event)); + EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event)); + } + }); + + this._hideModalHandler = () => { + if (this._element) { + this.hide(); + } + }; + + EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler); + + if (this._config.selector) { + this._config = { ...this._config, + trigger: 'manual', + selector: '' + }; + } else { + this._fixTitle(); + } + } + + _fixTitle() { + const title = this._element.getAttribute('title'); + + const originalTitleType = typeof this._element.getAttribute('data-bs-original-title'); + + if (title || originalTitleType !== 'string') { + this._element.setAttribute('data-bs-original-title', title || ''); + + if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) { + this._element.setAttribute('aria-label', title); + } + + this._element.setAttribute('title', ''); + } + } + + _enter(event, context) { + context = this._initializeOnDelegatedTarget(event, context); + + if (event) { + context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true; + } + + if (context.getTipElement().classList.contains(CLASS_NAME_SHOW$3) || context._hoverState === HOVER_STATE_SHOW) { + context._hoverState = HOVER_STATE_SHOW; + return; + } + + clearTimeout(context._timeout); + context._hoverState = HOVER_STATE_SHOW; + + if (!context._config.delay || !context._config.delay.show) { + context.show(); + return; + } + + context._timeout = setTimeout(() => { + if (context._hoverState === HOVER_STATE_SHOW) { + context.show(); + } + }, context._config.delay.show); + } + + _leave(event, context) { + context = this._initializeOnDelegatedTarget(event, context); + + if (event) { + context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] = context._element.contains(event.relatedTarget); + } + + if (context._isWithActiveTrigger()) { + return; + } + + clearTimeout(context._timeout); + context._hoverState = HOVER_STATE_OUT; + + if (!context._config.delay || !context._config.delay.hide) { + context.hide(); + return; + } + + context._timeout = setTimeout(() => { + if (context._hoverState === HOVER_STATE_OUT) { + context.hide(); + } + }, context._config.delay.hide); + } + + _isWithActiveTrigger() { + for (const trigger in this._activeTrigger) { + if (this._activeTrigger[trigger]) { + return true; + } + } + + return false; + } + + _getConfig(config) { + const dataAttributes = Manipulator.getDataAttributes(this._element); + Object.keys(dataAttributes).forEach(dataAttr => { + if (DISALLOWED_ATTRIBUTES.has(dataAttr)) { + delete dataAttributes[dataAttr]; + } + }); + config = { ...this.constructor.Default, + ...dataAttributes, + ...(typeof config === 'object' && config ? config : {}) + }; + config.container = config.container === false ? document.body : getElement(config.container); + + if (typeof config.delay === 'number') { + config.delay = { + show: config.delay, + hide: config.delay + }; + } + + if (typeof config.title === 'number') { + config.title = config.title.toString(); + } + + if (typeof config.content === 'number') { + config.content = config.content.toString(); + } + + typeCheckConfig(NAME$4, config, this.constructor.DefaultType); + + if (config.sanitize) { + config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn); + } + + return config; + } + + _getDelegateConfig() { + const config = {}; + + if (this._config) { + for (const key in this._config) { + if (this.constructor.Default[key] !== this._config[key]) { + config[key] = this._config[key]; + } + } + } + + return config; + } + + _cleanTipClass() { + const tip = this.getTipElement(); + const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX$1); + + if (tabClass !== null && tabClass.length > 0) { + tabClass.map(token => token.trim()).forEach(tClass => tip.classList.remove(tClass)); + } + } + + _handlePopperPlacementChange(popperData) { + const { + state + } = popperData; + + if (!state) { + return; + } + + this.tip = state.elements.popper; + + this._cleanTipClass(); + + this._addAttachmentClass(this._getAttachment(state.placement)); + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Tooltip.getOrCreateInstance(this, config); + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + } + }); + } + + } + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Tooltip to jQuery only if jQuery is present + */ + + + defineJQueryPlugin(Tooltip); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): popover.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$3 = 'popover'; + const DATA_KEY$3 = 'bs.popover'; + const EVENT_KEY$3 = `.${DATA_KEY$3}`; + const CLASS_PREFIX = 'bs-popover'; + const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`, 'g'); + const Default$2 = { ...Tooltip.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>' + }; + const DefaultType$2 = { ...Tooltip.DefaultType, + content: '(string|element|function)' + }; + const Event$1 = { + HIDE: `hide${EVENT_KEY$3}`, + HIDDEN: `hidden${EVENT_KEY$3}`, + SHOW: `show${EVENT_KEY$3}`, + SHOWN: `shown${EVENT_KEY$3}`, + INSERTED: `inserted${EVENT_KEY$3}`, + CLICK: `click${EVENT_KEY$3}`, + FOCUSIN: `focusin${EVENT_KEY$3}`, + FOCUSOUT: `focusout${EVENT_KEY$3}`, + MOUSEENTER: `mouseenter${EVENT_KEY$3}`, + MOUSELEAVE: `mouseleave${EVENT_KEY$3}` + }; + const CLASS_NAME_FADE$2 = 'fade'; + const CLASS_NAME_SHOW$2 = 'show'; + const SELECTOR_TITLE = '.popover-header'; + const SELECTOR_CONTENT = '.popover-body'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Popover extends Tooltip { + // Getters + static get Default() { + return Default$2; + } + + static get NAME() { + return NAME$3; + } + + static get Event() { + return Event$1; + } + + static get DefaultType() { + return DefaultType$2; + } // Overrides + + + isWithContent() { + return this.getTitle() || this._getContent(); + } + + getTipElement() { + if (this.tip) { + return this.tip; + } + + this.tip = super.getTipElement(); + + if (!this.getTitle()) { + SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove(); + } + + if (!this._getContent()) { + SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove(); + } + + return this.tip; + } + + setContent() { + const tip = this.getTipElement(); // we use append for html objects to maintain js events + + this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle()); + + let content = this._getContent(); + + if (typeof content === 'function') { + content = content.call(this._element); + } + + this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content); + tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2); + } // Private + + + _addAttachmentClass(attachment) { + this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`); + } + + _getContent() { + return this._element.getAttribute('data-bs-content') || this._config.content; + } + + _cleanTipClass() { + const tip = this.getTipElement(); + const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX); + + if (tabClass !== null && tabClass.length > 0) { + tabClass.map(token => token.trim()).forEach(tClass => tip.classList.remove(tClass)); + } + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Popover.getOrCreateInstance(this, config); + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + } + }); + } + + } + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Popover to jQuery only if jQuery is present + */ + + + defineJQueryPlugin(Popover); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): scrollspy.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$2 = 'scrollspy'; + const DATA_KEY$2 = 'bs.scrollspy'; + const EVENT_KEY$2 = `.${DATA_KEY$2}`; + const DATA_API_KEY$1 = '.data-api'; + const Default$1 = { + offset: 10, + method: 'auto', + target: '' + }; + const DefaultType$1 = { + offset: 'number', + method: 'string', + target: '(string|element)' + }; + const EVENT_ACTIVATE = `activate${EVENT_KEY$2}`; + const EVENT_SCROLL = `scroll${EVENT_KEY$2}`; + const EVENT_LOAD_DATA_API = `load${EVENT_KEY$2}${DATA_API_KEY$1}`; + const CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'; + const CLASS_NAME_ACTIVE$1 = 'active'; + const SELECTOR_DATA_SPY = '[data-bs-spy="scroll"]'; + const SELECTOR_NAV_LIST_GROUP$1 = '.nav, .list-group'; + const SELECTOR_NAV_LINKS = '.nav-link'; + const SELECTOR_NAV_ITEMS = '.nav-item'; + const SELECTOR_LIST_ITEMS = '.list-group-item'; + const SELECTOR_DROPDOWN$1 = '.dropdown'; + const SELECTOR_DROPDOWN_TOGGLE$1 = '.dropdown-toggle'; + const METHOD_OFFSET = 'offset'; + const METHOD_POSITION = 'position'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class ScrollSpy extends BaseComponent { + constructor(element, config) { + super(element); + this._scrollElement = this._element.tagName === 'BODY' ? window : this._element; + this._config = this._getConfig(config); + this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`; + this._offsets = []; + this._targets = []; + this._activeTarget = null; + this._scrollHeight = 0; + EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process()); + this.refresh(); + + this._process(); + } // Getters + + + static get Default() { + return Default$1; + } + + static get NAME() { + return NAME$2; + } // Public + + + refresh() { + const autoMethod = this._scrollElement === this._scrollElement.window ? METHOD_OFFSET : METHOD_POSITION; + const offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method; + const offsetBase = offsetMethod === METHOD_POSITION ? this._getScrollTop() : 0; + this._offsets = []; + this._targets = []; + this._scrollHeight = this._getScrollHeight(); + const targets = SelectorEngine.find(this._selector); + targets.map(element => { + const targetSelector = getSelectorFromElement(element); + const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null; + + if (target) { + const targetBCR = target.getBoundingClientRect(); + + if (targetBCR.width || targetBCR.height) { + return [Manipulator[offsetMethod](target).top + offsetBase, targetSelector]; + } + } + + return null; + }).filter(item => item).sort((a, b) => a[0] - b[0]).forEach(item => { + this._offsets.push(item[0]); + + this._targets.push(item[1]); + }); + } + + dispose() { + EventHandler.off(this._scrollElement, EVENT_KEY$2); + super.dispose(); + } // Private + + + _getConfig(config) { + config = { ...Default$1, + ...Manipulator.getDataAttributes(this._element), + ...(typeof config === 'object' && config ? config : {}) + }; + + if (typeof config.target !== 'string' && isElement$1(config.target)) { + let { + id + } = config.target; + + if (!id) { + id = getUID(NAME$2); + config.target.id = id; + } + + config.target = `#${id}`; + } + + typeCheckConfig(NAME$2, config, DefaultType$1); + return config; + } + + _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 scrollTop = this._getScrollTop() + this._config.offset; + + const scrollHeight = this._getScrollHeight(); + + const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight(); + + if (this._scrollHeight !== scrollHeight) { + this.refresh(); + } + + if (scrollTop >= maxScroll) { + const target = this._targets[this._targets.length - 1]; + + if (this._activeTarget !== target) { + this._activate(target); + } + + return; + } + + if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) { + this._activeTarget = null; + + this._clear(); + + return; + } + + for (let i = this._offsets.length; i--;) { + const isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]); + + if (isActiveTarget) { + this._activate(this._targets[i]); + } + } + } + + _activate(target) { + this._activeTarget = target; + + this._clear(); + + const queries = this._selector.split(',').map(selector => `${selector}[data-bs-target="${target}"],${selector}[href="${target}"]`); + + const link = SelectorEngine.findOne(queries.join(',')); + + if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) { + SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE$1, link.closest(SELECTOR_DROPDOWN$1)).classList.add(CLASS_NAME_ACTIVE$1); + link.classList.add(CLASS_NAME_ACTIVE$1); + } else { + // Set triggered link as active + link.classList.add(CLASS_NAME_ACTIVE$1); + SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP$1).forEach(listGroup => { + // Set triggered links parents as active + // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor + SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`).forEach(item => item.classList.add(CLASS_NAME_ACTIVE$1)); // Handle special case when .nav-link is inside .nav-item + + SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS).forEach(navItem => { + SelectorEngine.children(navItem, SELECTOR_NAV_LINKS).forEach(item => item.classList.add(CLASS_NAME_ACTIVE$1)); + }); + }); + } + + EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, { + relatedTarget: target + }); + } + + _clear() { + SelectorEngine.find(this._selector).filter(node => node.classList.contains(CLASS_NAME_ACTIVE$1)).forEach(node => node.classList.remove(CLASS_NAME_ACTIVE$1)); + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = ScrollSpy.getOrCreateInstance(this, config); + + if (typeof config !== 'string') { + return; + } + + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + }); + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(window, EVENT_LOAD_DATA_API, () => { + SelectorEngine.find(SELECTOR_DATA_SPY).forEach(spy => new ScrollSpy(spy)); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .ScrollSpy to jQuery only if jQuery is present + */ + + defineJQueryPlugin(ScrollSpy); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): tab.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$1 = 'tab'; + const DATA_KEY$1 = 'bs.tab'; + const EVENT_KEY$1 = `.${DATA_KEY$1}`; + const DATA_API_KEY = '.data-api'; + const EVENT_HIDE$1 = `hide${EVENT_KEY$1}`; + const EVENT_HIDDEN$1 = `hidden${EVENT_KEY$1}`; + const EVENT_SHOW$1 = `show${EVENT_KEY$1}`; + const EVENT_SHOWN$1 = `shown${EVENT_KEY$1}`; + const EVENT_CLICK_DATA_API = `click${EVENT_KEY$1}${DATA_API_KEY}`; + const CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'; + const CLASS_NAME_ACTIVE = 'active'; + const CLASS_NAME_FADE$1 = 'fade'; + const CLASS_NAME_SHOW$1 = 'show'; + const SELECTOR_DROPDOWN = '.dropdown'; + const SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'; + const SELECTOR_ACTIVE = '.active'; + const SELECTOR_ACTIVE_UL = ':scope > li > .active'; + const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]'; + const SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'; + const SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Tab extends BaseComponent { + // Getters + static get NAME() { + return NAME$1; + } // Public + + + show() { + if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && this._element.classList.contains(CLASS_NAME_ACTIVE)) { + return; + } + + let previous; + const target = getElementFromSelector(this._element); + + const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP); + + if (listElement) { + const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE; + previous = SelectorEngine.find(itemSelector, listElement); + previous = previous[previous.length - 1]; + } + + const hideEvent = previous ? EventHandler.trigger(previous, EVENT_HIDE$1, { + relatedTarget: this._element + }) : null; + const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$1, { + relatedTarget: previous + }); + + if (showEvent.defaultPrevented || hideEvent !== null && hideEvent.defaultPrevented) { + return; + } + + this._activate(this._element, listElement); + + const complete = () => { + EventHandler.trigger(previous, EVENT_HIDDEN$1, { + relatedTarget: this._element + }); + EventHandler.trigger(this._element, EVENT_SHOWN$1, { + relatedTarget: previous + }); + }; + + if (target) { + this._activate(target, target.parentNode, complete); + } else { + complete(); + } + } // Private + + + _activate(element, container, callback) { + const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? SelectorEngine.find(SELECTOR_ACTIVE_UL, container) : SelectorEngine.children(container, SELECTOR_ACTIVE); + const active = activeElements[0]; + const isTransitioning = callback && active && active.classList.contains(CLASS_NAME_FADE$1); + + const complete = () => this._transitionComplete(element, active, callback); + + if (active && isTransitioning) { + active.classList.remove(CLASS_NAME_SHOW$1); + + this._queueCallback(complete, element, true); + } else { + complete(); + } + } + + _transitionComplete(element, active, callback) { + if (active) { + active.classList.remove(CLASS_NAME_ACTIVE); + const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode); + + if (dropdownChild) { + dropdownChild.classList.remove(CLASS_NAME_ACTIVE); + } + + if (active.getAttribute('role') === 'tab') { + active.setAttribute('aria-selected', false); + } + } + + element.classList.add(CLASS_NAME_ACTIVE); + + if (element.getAttribute('role') === 'tab') { + element.setAttribute('aria-selected', true); + } + + reflow(element); + + if (element.classList.contains(CLASS_NAME_FADE$1)) { + element.classList.add(CLASS_NAME_SHOW$1); + } + + let parent = element.parentNode; + + if (parent && parent.nodeName === 'LI') { + parent = parent.parentNode; + } + + if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) { + const dropdownElement = element.closest(SELECTOR_DROPDOWN); + + if (dropdownElement) { + SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement).forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE)); + } + + element.setAttribute('aria-expanded', true); + } + + if (callback) { + callback(); + } + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Tab.getOrCreateInstance(this); + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + } + }); + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) { + if (['A', 'AREA'].includes(this.tagName)) { + event.preventDefault(); + } + + if (isDisabled(this)) { + return; + } + + const data = Tab.getOrCreateInstance(this); + data.show(); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Tab to jQuery only if jQuery is present + */ + + defineJQueryPlugin(Tab); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): toast.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME = 'toast'; + const DATA_KEY = 'bs.toast'; + const EVENT_KEY = `.${DATA_KEY}`; + const EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`; + const EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`; + const EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`; + const EVENT_FOCUSIN = `focusin${EVENT_KEY}`; + const EVENT_FOCUSOUT = `focusout${EVENT_KEY}`; + const EVENT_HIDE = `hide${EVENT_KEY}`; + const EVENT_HIDDEN = `hidden${EVENT_KEY}`; + const EVENT_SHOW = `show${EVENT_KEY}`; + const EVENT_SHOWN = `shown${EVENT_KEY}`; + const CLASS_NAME_FADE = 'fade'; + const CLASS_NAME_HIDE = 'hide'; + const CLASS_NAME_SHOW = 'show'; + const CLASS_NAME_SHOWING = 'showing'; + const DefaultType = { + animation: 'boolean', + autohide: 'boolean', + delay: 'number' + }; + const Default = { + animation: true, + autohide: true, + delay: 5000 + }; + const SELECTOR_DATA_DISMISS = '[data-bs-dismiss="toast"]'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Toast extends BaseComponent { + constructor(element, config) { + super(element); + this._config = this._getConfig(config); + this._timeout = null; + this._hasMouseInteraction = false; + this._hasKeyboardInteraction = false; + + this._setListeners(); + } // Getters + + + static get DefaultType() { + return DefaultType; + } + + static get Default() { + return Default; + } + + static get NAME() { + return NAME; + } // Public + + + show() { + const showEvent = EventHandler.trigger(this._element, EVENT_SHOW); + + if (showEvent.defaultPrevented) { + return; + } + + this._clearTimeout(); + + if (this._config.animation) { + this._element.classList.add(CLASS_NAME_FADE); + } + + const complete = () => { + this._element.classList.remove(CLASS_NAME_SHOWING); + + this._element.classList.add(CLASS_NAME_SHOW); + + EventHandler.trigger(this._element, EVENT_SHOWN); + + this._maybeScheduleHide(); + }; + + this._element.classList.remove(CLASS_NAME_HIDE); + + reflow(this._element); + + this._element.classList.add(CLASS_NAME_SHOWING); + + this._queueCallback(complete, this._element, this._config.animation); + } + + hide() { + if (!this._element.classList.contains(CLASS_NAME_SHOW)) { + return; + } + + const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE); + + if (hideEvent.defaultPrevented) { + return; + } + + const complete = () => { + this._element.classList.add(CLASS_NAME_HIDE); + + EventHandler.trigger(this._element, EVENT_HIDDEN); + }; + + this._element.classList.remove(CLASS_NAME_SHOW); + + this._queueCallback(complete, this._element, this._config.animation); + } + + dispose() { + this._clearTimeout(); + + if (this._element.classList.contains(CLASS_NAME_SHOW)) { + this._element.classList.remove(CLASS_NAME_SHOW); + } + + super.dispose(); + } // Private + + + _getConfig(config) { + config = { ...Default, + ...Manipulator.getDataAttributes(this._element), + ...(typeof config === 'object' && config ? config : {}) + }; + typeCheckConfig(NAME, config, this.constructor.DefaultType); + return config; + } + + _maybeScheduleHide() { + if (!this._config.autohide) { + return; + } + + if (this._hasMouseInteraction || this._hasKeyboardInteraction) { + return; + } + + this._timeout = setTimeout(() => { + this.hide(); + }, this._config.delay); + } + + _onInteraction(event, isInteracting) { + switch (event.type) { + case 'mouseover': + case 'mouseout': + this._hasMouseInteraction = isInteracting; + break; + + case 'focusin': + case 'focusout': + this._hasKeyboardInteraction = isInteracting; + break; + } + + if (isInteracting) { + this._clearTimeout(); + + return; + } + + const nextElement = event.relatedTarget; + + if (this._element === nextElement || this._element.contains(nextElement)) { + return; + } + + this._maybeScheduleHide(); + } + + _setListeners() { + EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide()); + EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true)); + EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false)); + EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true)); + EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false)); + } + + _clearTimeout() { + clearTimeout(this._timeout); + this._timeout = null; + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Toast.getOrCreateInstance(this, config); + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](this); + } + }); + } + + } + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Toast to jQuery only if jQuery is present + */ + + + defineJQueryPlugin(Toast); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.1): index.umd.js + * Licensed under MIT (https:/github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + var index_umd = { + Alert, + Button, + Carousel, + Collapse, + Dropdown, + Modal, + Offcanvas, + Popover, + ScrollSpy, + Tab, + Toast, + Tooltip + }; + + return index_umd; + +}))); +//# sourceMappingURL=oe-bcl-default.bundle.js.map diff --git a/assets/js/oe-bcl-default.bundle.js.map b/assets/js/oe-bcl-default.bundle.js.map new file mode 100644 index 00000000..1ded7548 --- /dev/null +++ b/assets/js/oe-bcl-default.bundle.js.map @@ -0,0 +1 @@ +{"version":3,"file":"oe-bcl-default.bundle.js","sources":["../../../../bootstrap/js/src/dom/selector-engine.js","../../../../bootstrap/js/src/util/index.js","../../../../bootstrap/js/src/dom/event-handler.js","../../../../bootstrap/js/src/dom/data.js","../../../../bootstrap/js/src/base-component.js","../../../../bootstrap/js/src/alert.js","../../../../bootstrap/js/src/button.js","../../../../bootstrap/js/src/dom/manipulator.js","../../../../bootstrap/js/src/carousel.js","../../../../bootstrap/js/src/collapse.js","../../../../node_modules/@popperjs/core/lib/enums.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../../../../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../../../../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../../../../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/contains.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../../../../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../../../../node_modules/@popperjs/core/lib/utils/math.js","../../../../node_modules/@popperjs/core/lib/utils/within.js","../../../../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../../../../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../../../../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../../../../node_modules/@popperjs/core/lib/modifiers/arrow.js","../../../../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../../../../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../../../../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../../../../node_modules/@popperjs/core/lib/utils/getVariation.js","../../../../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../../../../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../../../../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../../../../node_modules/@popperjs/core/lib/modifiers/flip.js","../../../../node_modules/@popperjs/core/lib/modifiers/hide.js","../../../../node_modules/@popperjs/core/lib/modifiers/offset.js","../../../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../../../../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../../../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../../../../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../../../../node_modules/@popperjs/core/lib/utils/debounce.js","../../../../node_modules/@popperjs/core/lib/utils/mergeByName.js","../../../../node_modules/@popperjs/core/lib/createPopper.js","../../../../node_modules/@popperjs/core/lib/popper-lite.js","../../../../node_modules/@popperjs/core/lib/popper.js","../../../../bootstrap/js/src/dropdown.js","../../../../bootstrap/js/src/util/scrollbar.js","../../../../bootstrap/js/src/util/backdrop.js","../../../../bootstrap/js/src/modal.js","../../../../bootstrap/js/src/offcanvas.js","../../../../bootstrap/js/src/util/sanitizer.js","../../../../bootstrap/js/src/tooltip.js","../../../../bootstrap/js/src/popover.js","../../../../bootstrap/js/src/scrollspy.js","../../../../bootstrap/js/src/tab.js","../../../../bootstrap/js/src/toast.js","../index.umd.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NODE_TEXT = 3\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children)\n .filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n\n let ancestor = element.parentNode\n\n while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {\n if (ancestor.matches(selector)) {\n parents.push(ancestor)\n }\n\n ancestor = ancestor.parentNode\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n }\n}\n\nexport default SelectorEngine\n","import SelectorEngine from '../dom/selector-engine'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = obj => {\n if (obj === null || obj === undefined) {\n return `${obj}`\n }\n\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return SelectorEngine.findOne(obj)\n }\n\n return null\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n return getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\nconst reflow = element => element.offsetHeight\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n DOMContentLoadedCallbacks.forEach(callback => callback())\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element depending on the direction and if cycle is allowed\n if (index === -1) {\n return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]\n }\n\n const listLength = list.length\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n getNextActiveElement,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute,\n executeAfterTransition\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\nconst customEventsRegex = /^(mouseenter|mouseleave)/i\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * ------------------------------------------------------------------------\n * Private methods\n * ------------------------------------------------------------------------\n */\n\nfunction getUidEvent(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getEvent(element) {\n const uid = getUidEvent(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n event.delegateTarget = element\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (let i = domElements.length; i--;) {\n if (domElements[i] === target) {\n event.delegateTarget = target\n\n if (handler.oneOff) {\n // eslint-disable-next-line unicorn/consistent-destructuring\n EventHandler.off(element, event.type, selector, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n\n // To please ESLint\n return null\n }\n}\n\nfunction findHandler(events, handler, delegationSelector = null) {\n const uidEventList = Object.keys(events)\n\n for (let i = 0, len = uidEventList.length; i < len; i++) {\n const event = events[uidEventList[i]]\n\n if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {\n return event\n }\n }\n\n return null\n}\n\nfunction normalizeParams(originalTypeEvent, handler, delegationFn) {\n const delegation = typeof handler === 'string'\n const originalHandler = delegation ? delegationFn : handler\n\n let typeEvent = getTypeEvent(originalTypeEvent)\n const isNative = nativeEvents.has(typeEvent)\n\n if (!isNative) {\n typeEvent = originalTypeEvent\n }\n\n return [delegation, originalHandler, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n if (!handler) {\n handler = delegationFn\n delegationFn = null\n }\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (customEventsRegex.test(originalTypeEvent)) {\n const wrapFn = fn => {\n return function (event) {\n if (!event.relatedTarget || (event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget))) {\n return fn.call(this, event)\n }\n }\n }\n\n if (delegationFn) {\n delegationFn = wrapFn(delegationFn)\n } else {\n handler = wrapFn(handler)\n }\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const events = getEvent(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null)\n\n if (previousFn) {\n previousFn.oneOff = previousFn.oneOff && oneOff\n\n return\n }\n\n const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = delegation ?\n bootstrapDelegationHandler(element, handler, delegationFn) :\n bootstrapHandler(element, handler)\n\n fn.delegationSelector = delegation ? handler : null\n fn.originalHandler = originalHandler\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, delegation)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n Object.keys(storeElementEvent).forEach(handlerKey => {\n if (handlerKey.includes(namespace)) {\n const event = storeElementEvent[handlerKey]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n}\n\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '')\n return customEvents[event] || event\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, false)\n },\n\n one(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFn) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getEvent(element)\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof originalHandler !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!events || !events[typeEvent]) {\n return\n }\n\n removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null)\n return\n }\n\n if (isNamespace) {\n Object.keys(events).forEach(elementEvent => {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n })\n }\n\n const storeElementEvent = events[typeEvent] || {}\n Object.keys(storeElementEvent).forEach(keyHandlers => {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n const event = storeElementEvent[keyHandlers]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = getTypeEvent(event)\n const inNamespace = event !== typeEvent\n const isNative = nativeEvents.has(typeEvent)\n\n let jQueryEvent\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n let evt = null\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n if (isNative) {\n evt = document.createEvent('HTMLEvents')\n evt.initEvent(typeEvent, bubbles, true)\n } else {\n evt = new CustomEvent(event, {\n bubbles,\n cancelable: true\n })\n }\n\n // merge custom information in our event\n if (typeof args !== 'undefined') {\n Object.keys(args).forEach(key => {\n Object.defineProperty(evt, key, {\n get() {\n return args[key]\n }\n })\n })\n }\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst elementMap = new Map()\n\nexport default {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map())\n }\n\n const instanceMap = elementMap.get(element)\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`)\n return\n }\n\n instanceMap.set(key, instance)\n },\n\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null\n }\n\n return null\n },\n\n remove(element, key) {\n if (!elementMap.has(element)) {\n return\n }\n\n const instanceMap = elementMap.get(element)\n\n instanceMap.delete(key)\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element)\n }\n }\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\nimport {\n executeAfterTransition,\n getElement\n} from './util/index'\nimport EventHandler from './dom/event-handler'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst VERSION = '5.0.2'\n\nclass BaseComponent {\n constructor(element) {\n element = getElement(element)\n\n if (!element) {\n return\n }\n\n this._element = element\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n Object.getOwnPropertyNames(this).forEach(propertyName => {\n this[propertyName] = null\n })\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated)\n }\n\n /** Static */\n\n static getInstance(element) {\n return Data.get(element, this.DATA_KEY)\n }\n\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DISMISS = '[data-bs-dismiss=\"alert\"]'\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_ALERT = 'alert'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n close(element) {\n const rootElement = element ? this._getRootElement(element) : this._element\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent === null || customEvent.defaultPrevented) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n // Private\n\n _getRootElement(element) {\n return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`)\n }\n\n _triggerCloseEvent(element) {\n return EventHandler.trigger(element, EVENT_CLOSE)\n }\n\n _removeElement(element) {\n element.classList.remove(CLASS_NAME_SHOW)\n\n const isAnimated = element.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(() => this._destroyElement(element), element, isAnimated)\n }\n\n _destroyElement(element) {\n element.remove()\n\n EventHandler.trigger(element, EVENT_CLOSED)\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this)\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert.handleDismiss(new Alert()))\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Alert to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this)\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n const data = Button.getOrCreateInstance(button)\n\n data.toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Button to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(val) {\n if (val === 'true') {\n return true\n }\n\n if (val === 'false') {\n return false\n }\n\n if (val === Number(val).toString()) {\n return Number(val)\n }\n\n if (val === '' || val === 'null') {\n return null\n }\n\n return val\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n\n Object.keys(element.dataset)\n .filter(key => key.startsWith('bs'))\n .forEach(key => {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n })\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n },\n\n offset(element) {\n const rect = element.getBoundingClientRect()\n\n return {\n top: rect.top + document.body.scrollTop,\n left: rect.left + document.body.scrollLeft\n }\n },\n\n position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n }\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n getNextActiveElement,\n reflow,\n triggerTransitionEnd,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n slide: false,\n pause: 'hover',\n wrap: true,\n touch: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)',\n keyboard: 'boolean',\n slide: '(boolean|string)',\n pause: '(string|boolean)',\n wrap: 'boolean',\n touch: 'boolean'\n}\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY]: DIRECTION_LEFT\n}\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_INDICATOR = '[data-bs-target]'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n next() {\n this._slide(ORDER_NEXT)\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n this._slide(ORDER_PREV)\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) {\n triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config && this._config.interval && !this._isPaused) {\n this._updateInterval()\n\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const order = index > activeIndex ?\n ORDER_NEXT :\n ORDER_PREV\n\n this._slide(order, this._items[index])\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n this.touchDeltaX = 0\n\n if (!direction) {\n return\n }\n\n this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT)\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event))\n EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event))\n }\n\n if (this._config.touch && this._touchSupported) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n const start = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchStartX = event.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.touches[0].clientX\n }\n }\n\n const move = event => {\n // ensure swiping with one touch and not pinching\n this.touchDeltaX = event.touches && event.touches.length > 1 ?\n 0 :\n event.touches[0].clientX - this.touchStartX\n }\n\n const end = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {\n EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault())\n })\n\n if (this._pointerEvent) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n const direction = KEY_TO_DIRECTION[event.key]\n if (direction) {\n event.preventDefault()\n this._slide(direction)\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode ?\n SelectorEngine.find(SELECTOR_ITEM, element.parentNode) :\n []\n\n return this._items.indexOf(element)\n }\n\n _getItemByOrder(order, activeElement) {\n const isNext = order === ORDER_NEXT\n return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap)\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element))\n\n return EventHandler.trigger(this._element, EVENT_SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement)\n\n for (let i = 0; i < indicators.length; i++) {\n if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {\n indicators[i].classList.add(CLASS_NAME_ACTIVE)\n indicators[i].setAttribute('aria-current', 'true')\n break\n }\n }\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n if (elementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = elementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n }\n\n _slide(directionOrOrder, element) {\n const order = this._directionToOrder(directionOrOrder)\n const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || this._getItemByOrder(order, activeElement)\n\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n const isNext = order === ORDER_NEXT\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n const eventDirectionName = this._orderToDirection(order)\n\n if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {\n this._isSliding = false\n return\n }\n\n if (this._isSliding) {\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n this._activeElement = nextElement\n\n const triggerSlidEvent = () => {\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }\n\n if (this._element.classList.contains(CLASS_NAME_SLIDE)) {\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n setTimeout(triggerSlidEvent, 0)\n }\n\n this._queueCallback(completeCallBack, activeElement, true)\n } else {\n activeElement.classList.remove(CLASS_NAME_ACTIVE)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n this._isSliding = false\n triggerSlidEvent()\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _directionToOrder(direction) {\n if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) {\n return direction\n }\n\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (![ORDER_NEXT, ORDER_PREV].includes(order)) {\n return order\n }\n\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n\n static carouselInterface(element, config) {\n const data = Carousel.getOrCreateInstance(element, config)\n\n let { _config } = data\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Carousel.carouselInterface(this, config)\n })\n }\n\n static dataApiClickHandler(event) {\n const target = getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel.carouselInterface(target, config)\n\n if (slideIndex) {\n Carousel.getInstance(target).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler)\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (let i = 0, len = carousels.length; i < len; i++) {\n Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i]))\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Carousel to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElement,\n getSelectorFromElement,\n getElementFromSelector,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n toggle: true,\n parent: ''\n}\n\nconst DefaultType = {\n toggle: 'boolean',\n parent: '(string|element)'\n}\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.show, .collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._isTransitioning = false\n this._config = this._getConfig(config)\n this._triggerArray = SelectorEngine.find(\n `${SELECTOR_DATA_TOGGLE}[href=\"#${this._element.id}\"],` +\n `${SELECTOR_DATA_TOGGLE}[data-bs-target=\"#${this._element.id}\"]`\n )\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElem => foundElem === this._element)\n\n if (selector !== null && filterElement.length) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent)\n .filter(elem => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-bs-parent') === this._config.parent\n }\n\n return elem.classList.contains(CLASS_NAME_COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n const container = SelectorEngine.findOne(this._selector)\n if (actives) {\n const tempActiveData = actives.find(elem => container !== elem)\n activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null\n\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n if (actives) {\n actives.forEach(elemActive => {\n if (container !== elemActive) {\n Collapse.collapseInterface(elemActive, 'hide')\n }\n\n if (!activesData) {\n Data.set(elemActive, DATA_KEY, null)\n }\n })\n }\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n this._triggerArray.forEach(element => {\n element.classList.remove(CLASS_NAME_COLLAPSED)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n\n this._queueCallback(complete, this._element, true)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const elem = getElementFromSelector(trigger)\n\n if (elem && !elem.classList.contains(CLASS_NAME_SHOW)) {\n trigger.classList.add(CLASS_NAME_COLLAPSED)\n trigger.setAttribute('aria-expanded', false)\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n\n this._queueCallback(complete, this._element, true)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT\n }\n\n _getParent() {\n let { parent } = this._config\n\n parent = getElement(parent)\n\n const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent=\"${parent}\"]`\n\n SelectorEngine.find(selector, parent)\n .forEach(element => {\n const selected = getElementFromSelector(element)\n\n this._addAriaAndCollapsedClass(\n selected,\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (!element || !triggerArray.length) {\n return\n }\n\n const isOpen = element.classList.contains(CLASS_NAME_SHOW)\n\n triggerArray.forEach(elem => {\n if (isOpen) {\n elem.classList.remove(CLASS_NAME_COLLAPSED)\n } else {\n elem.classList.add(CLASS_NAME_COLLAPSED)\n }\n\n elem.setAttribute('aria-expanded', isOpen)\n })\n }\n\n // Static\n\n static collapseInterface(element, config) {\n let data = Collapse.getInstance(element)\n const _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Collapse.collapseInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n const triggerData = Manipulator.getDataAttributes(this)\n const selector = getSelectorFromElement(this)\n const selectorElements = SelectorEngine.find(selector)\n\n selectorElements.forEach(element => {\n const data = Collapse.getInstance(element)\n let config\n if (data) {\n // update parent attribute\n if (data._parent === null && typeof triggerData.parent === 'string') {\n data._config.parent = triggerData.parent\n data._parent = data._getParent()\n }\n\n config = 'toggle'\n } else {\n config = triggerData\n }\n\n Collapse.collapseInterface(element, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Collapse to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Collapse)\n\nexport default Collapse\n","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export default function getBoundingClientRect(element) {\n var rect = element.getBoundingClientRect();\n return {\n width: rect.width,\n height: rect.height,\n top: rect.top,\n right: rect.right,\n bottom: rect.bottom,\n left: rect.left,\n x: rect.left,\n y: rect.top\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;\n var isIE = navigator.userAgent.indexOf('Trident') !== -1;\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport default function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport within from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n if (!isHTMLElement(arrowElement)) {\n console.error(['Popper: \"arrow\" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' '));\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: \"arrow\" modifier\\'s `element` must be a child of the popper', 'element.'].join(' '));\n }\n\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","import { top, left, right, bottom } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref) {\n var x = _ref.x,\n y = _ref.y;\n var win = window;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(round(x * dpr) / dpr) || 0,\n y: round(round(y * dpr) / dpr) || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets;\n\n var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets,\n _ref3$x = _ref3.x,\n x = _ref3$x === void 0 ? 0 : _ref3$x,\n _ref3$y = _ref3.y,\n y = _ref3$y === void 0 ? 0 : _ref3$y;\n\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top) {\n sideY = bottom; // $FlowFixMe[prop-missing]\n\n y -= offsetParent[heightProp] - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left) {\n sideX = right; // $FlowFixMe[prop-missing]\n\n x -= offsetParent[widthProp] - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref4) {\n var state = _ref4.state,\n options = _ref4.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n\n if (process.env.NODE_ENV !== \"production\") {\n var transitionProperty = getComputedStyle(state.elements.popper).transitionProperty || '';\n\n if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {\n return transitionProperty.indexOf(property) >= 0;\n })) {\n console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: \"transform\", \"top\", \"right\", \"bottom\", \"left\".', '\\n\\n', 'Disable the \"computeStyles\" modifier\\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\\n\\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));\n }\n }\n\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If <html> has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on <html>\n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nexport default function getViewportRect(element) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper\n // can be obscured underneath it.\n // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even\n // if it isn't open, so if this isn't available, the popper will be detected\n // to overflow the bottom of the screen too early.\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently)\n // In Chrome, it returns a value very close to 0 (+/-) but contains rounding\n // errors due to floating point numbers, so we need to check precision.\n // Safari returns a number <= 0, usually < -1 when pinch-zoomed\n // Feature detection fails in mobile emulation mode in Chrome.\n // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) <\n // 0.001\n // Fallback here: \"Not Safari\" userAgent\n\n if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element) {\n var rect = getBoundingClientRect(element);\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var referenceElement = state.elements.reference;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);\n var referenceClientRect = getBoundingClientRect(referenceElement);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, \"auto\" cannot be used to allow \"bottom-start\".', 'Use \"auto-start\" instead.'].join(' '));\n }\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\";\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport within from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { max as mathMax, min as mathMin } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis || checkAltAxis) {\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = popperOffsets[mainAxis] + overflow[mainSide];\n var max = popperOffsets[mainAxis] - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0;\n var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue;\n\n if (checkMainAxis) {\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var _preventedOffset = within(tether ? mathMin(_min, tetherMin) : _min, _offset, tether ? mathMax(_max, tetherMax) : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\"; // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement);\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport getComputedStyle from \"./dom-utils/getComputedStyle.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport validateModifiers from \"./utils/validateModifiers.js\";\nimport uniqueBy from \"./utils/uniqueBy.js\";\nimport getBasePlacement from \"./utils/getBasePlacement.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nimport { auto } from \"./enums.js\";\nvar INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';\nvar INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(options) {\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n }); // Validate the provided modifiers so that the consumer will get warned\n // if one of the modifiers is invalid for any reason\n\n if (process.env.NODE_ENV !== \"production\") {\n var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {\n var name = _ref.name;\n return name;\n });\n validateModifiers(modifiers);\n\n if (getBasePlacement(state.options.placement) === auto) {\n var flipModifier = state.orderedModifiers.find(function (_ref2) {\n var name = _ref2.name;\n return name === 'flip';\n });\n\n if (!flipModifier) {\n console.error(['Popper: \"auto\" placements require the \"flip\" modifier be', 'present and enabled to work.'].join(' '));\n }\n }\n\n var _getComputedStyle = getComputedStyle(popper),\n marginTop = _getComputedStyle.marginTop,\n marginRight = _getComputedStyle.marginRight,\n marginBottom = _getComputedStyle.marginBottom,\n marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can\n // cause bugs with positioning, so we'll warn the consumer\n\n\n if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {\n return parseFloat(margin);\n })) {\n console.warn(['Popper: CSS \"margin\" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));\n }\n }\n\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n var __debug_loops__ = 0;\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (process.env.NODE_ENV !== \"production\") {\n __debug_loops__ += 1;\n\n if (__debug_loops__ > 100) {\n console.error(INFINITE_LOOP_ERROR);\n break;\n }\n }\n\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref3) {\n var name = _ref3.name,\n _ref3$options = _ref3.options,\n options = _ref3$options === void 0 ? {} : _ref3$options,\n effect = _ref3.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n getElement,\n getElementFromSelector,\n isDisabled,\n isElement,\n isVisible,\n isRTL,\n noop,\n getNextActiveElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst SPACE_KEY = 'Space'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY}`)\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_NAVBAR = 'navbar'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]'\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'\n\nconst Default = {\n offset: [0, 2],\n boundary: 'clippingParents',\n reference: 'toggle',\n display: 'dynamic',\n popperConfig: null,\n autoClose: true\n}\n\nconst DefaultType = {\n offset: '(array|string|function)',\n boundary: '(string|element)',\n reference: '(string|element|object)',\n display: 'string',\n popperConfig: '(null|object|function)',\n autoClose: '(boolean|string)'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (isDisabled(this._element)) {\n return\n }\n\n const isActive = this._element.classList.contains(CLASS_NAME_SHOW)\n\n if (isActive) {\n this.hide()\n return\n }\n\n this.show()\n }\n\n show() {\n if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this._element)\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n // Totally disable Popper for Dropdowns in Navbar\n if (this._inNavbar) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'none')\n } else {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference)\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false)\n\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n\n if (isDisplayStatic) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static')\n }\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n !parent.closest(SELECTOR_NAVBAR_NAV)) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.on(elem, 'mouseover', noop))\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.toggle(CLASS_NAME_SHOW)\n this._element.classList.toggle(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n this._completeHide(relatedTarget)\n }\n\n dispose() {\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK, event => {\n event.preventDefault()\n this.toggle()\n })\n }\n\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.off(elem, 'mouseover', noop))\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.remove(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._element.setAttribute('aria-expanded', 'false')\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _getMenuElement() {\n return SelectorEngine.next(this._element, SELECTOR_MENU)[0]\n }\n\n _getPlacement() {\n const parentDropdown = this._element.parentNode\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display\n if (this._config.display === 'static') {\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _selectMenuItem({ key, target }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible)\n\n if (!items.length) {\n return\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus()\n }\n\n // Static\n\n static dropdownInterface(element, config) {\n const data = Dropdown.getOrCreateInstance(element, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Dropdown.dropdownInterface(this, config)\n })\n }\n\n static clearMenus(event) {\n if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {\n return\n }\n\n const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const context = Dropdown.getInstance(toggles[i])\n if (!context || context._config.autoClose === false) {\n continue\n }\n\n if (!context._element.classList.contains(CLASS_NAME_SHOW)) {\n continue\n }\n\n const relatedTarget = {\n relatedTarget: context._element\n }\n\n if (event) {\n const composedPath = event.composedPath()\n const isMenuTarget = composedPath.includes(context._menu)\n if (\n composedPath.includes(context._element) ||\n (context._config.autoClose === 'inside' && !isMenuTarget) ||\n (context._config.autoClose === 'outside' && isMenuTarget)\n ) {\n continue\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue\n }\n\n if (event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n }\n\n context._completeHide(relatedTarget)\n }\n }\n\n static getParentFromElement(element) {\n return getElementFromSelector(element) || element.parentNode\n }\n\n static dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName) ?\n event.key === SPACE_KEY || (event.key !== ESCAPE_KEY &&\n ((event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY) ||\n event.target.closest(SELECTOR_MENU))) :\n !REGEXP_KEYDOWN.test(event.key)) {\n return\n }\n\n const isActive = this.classList.contains(CLASS_NAME_SHOW)\n\n if (!isActive && event.key === ESCAPE_KEY) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (isDisabled(this)) {\n return\n }\n\n const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n\n if (event.key === ESCAPE_KEY) {\n getToggleButton().focus()\n Dropdown.clearMenus()\n return\n }\n\n if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) {\n if (!isActive) {\n getToggleButton().click()\n }\n\n Dropdown.getInstance(getToggleButton())._selectMenuItem(event)\n return\n }\n\n if (!isActive || event.key === SPACE_KEY) {\n Dropdown.clearMenus()\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n Dropdown.dropdownInterface(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Dropdown to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport SelectorEngine from '../dom/selector-engine'\nimport Manipulator from '../dom/manipulator'\nimport { isElement } from './index'\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body\n }\n\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth\n return Math.abs(window.innerWidth - documentWidth)\n }\n\n hide() {\n const width = this.getWidth()\n this._disableOverFlow()\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width)\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width)\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width)\n }\n\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow')\n this._element.style.overflow = 'hidden'\n }\n\n _setElementAttributes(selector, styleProp, callback) {\n const scrollbarWidth = this.getWidth()\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return\n }\n\n this._saveInitialAttribute(element, styleProp)\n const calculatedValue = window.getComputedStyle(element)[styleProp]\n element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n reset() {\n this._resetElementAttributes(this._element, 'overflow')\n this._resetElementAttributes(this._element, 'paddingRight')\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight')\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight')\n }\n\n _saveInitialAttribute(element, styleProp) {\n const actualValue = element.style[styleProp]\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProp, actualValue)\n }\n }\n\n _resetElementAttributes(selector, styleProp) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProp)\n if (typeof value === 'undefined') {\n element.style.removeProperty(styleProp)\n } else {\n Manipulator.removeDataAttribute(element, styleProp)\n element.style[styleProp] = value\n }\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector)\n } else {\n SelectorEngine.find(selector, this._element).forEach(callBack)\n }\n }\n\n isOverflowing() {\n return this.getWidth() > 0\n }\n}\n\nexport default ScrollBarHelper\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { execute, executeAfterTransition, getElement, reflow, typeCheckConfig } from './index'\n\nconst Default = {\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n isAnimated: false,\n rootElement: 'body', // give the choice to place backdrop under different elements\n clickCallback: null\n}\n\nconst DefaultType = {\n isVisible: 'boolean',\n isAnimated: 'boolean',\n rootElement: '(element|string)',\n clickCallback: '(function|null)'\n}\nconst NAME = 'backdrop'\nconst CLASS_NAME_BACKDROP = 'modal-backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nclass Backdrop {\n constructor(config) {\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\n }\n\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n if (this._config.isAnimated) {\n reflow(this._getElement())\n }\n\n this._getElement().classList.add(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n execute(callback)\n })\n }\n\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._getElement().classList.remove(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n this.dispose()\n execute(callback)\n })\n }\n\n // Private\n\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div')\n backdrop.className = CLASS_NAME_BACKDROP\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE)\n }\n\n this._element = backdrop\n }\n\n return this._element\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' ? config : {})\n }\n\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement)\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n this._config.rootElement.appendChild(this._getElement())\n\n EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n dispose() {\n if (!this._isAppended) {\n return\n }\n\n EventHandler.off(this._element, EVENT_MOUSEDOWN)\n\n this._element.remove()\n this._isAppended = false\n }\n\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated)\n }\n}\n\nexport default Backdrop\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport ScrollBarHelper from './util/scrollbar'\nimport BaseComponent from './base-component'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean'\n}\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"modal\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element)\n this._backdrop = this._initializeBackDrop()\n this._isShown = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollBar = new ScrollBarHelper()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n\n if (this._isAnimated()) {\n this._isTransitioning = true\n }\n\n this._scrollBar.hide()\n\n document.body.classList.add(CLASS_NAME_OPEN)\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, event => this.hide(event))\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event && ['A', 'AREA'].includes(event.target.tagName)) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n const isAnimated = this._isAnimated()\n\n if (isAnimated) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.off(document, EVENT_FOCUSIN)\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS)\n\n this._queueCallback(() => this._hideModal(), this._element, isAnimated)\n }\n\n dispose() {\n [window, this._dialog]\n .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))\n\n this._backdrop.dispose()\n super.dispose()\n\n /**\n * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `EVENT_CLICK_DATA_API` event that should remain\n */\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value\n isAnimated: this._isAnimated()\n })\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const isAnimated = this._isAnimated()\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n if (isAnimated) {\n reflow(this._element)\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, isAnimated)\n }\n\n _enforceFocus() {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n this._element !== event.target &&\n !this._element.contains(event.target)) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault()\n this.hide()\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition()\n }\n })\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog())\n } else {\n EventHandler.off(window, EVENT_RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n this._scrollBar.reset()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _showBackdrop(callback) {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, event => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n\n if (event.target !== event.currentTarget) {\n return\n }\n\n if (this._config.backdrop === true) {\n this.hide()\n } else if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n }\n })\n\n this._backdrop.show(callback)\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE)\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const { classList, scrollHeight, style } = this._element\n const isModalOverflowing = scrollHeight > document.documentElement.clientHeight\n\n // return if the following background transition hasn't yet completed\n if ((!isModalOverflowing && style.overflowY === 'hidden') || classList.contains(CLASS_NAME_STATIC)) {\n return\n }\n\n if (!isModalOverflowing) {\n style.overflowY = 'hidden'\n }\n\n classList.add(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n classList.remove(CLASS_NAME_STATIC)\n if (!isModalOverflowing) {\n this._queueCallback(() => {\n style.overflowY = ''\n }, this._dialog)\n }\n }, this._dialog)\n\n this._element.focus()\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const scrollbarWidth = this._scrollBar.getWidth()\n const isBodyOverflowing = scrollbarWidth > 0\n\n if ((!isBodyOverflowing && isModalOverflowing && !isRTL()) || (isBodyOverflowing && !isModalOverflowing && isRTL())) {\n this._element.style.paddingLeft = `${scrollbarWidth}px`\n }\n\n if ((isBodyOverflowing && !isModalOverflowing && !isRTL()) || (!isBodyOverflowing && isModalOverflowing && isRTL())) {\n this._element.style.paddingRight = `${scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n const data = Modal.getOrCreateInstance(target)\n\n data.toggle(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible,\n typeCheckConfig\n} from './util/index'\nimport ScrollBarHelper from './util/scrollbar'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Manipulator from './dom/manipulator'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: 'boolean',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\nconst CLASS_NAME_SHOW = 'show'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"offcanvas\"]'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._addEventListeners()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._element.style.visibility = 'visible'\n\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n this._enforceFocusOnElement(this._element)\n }\n\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const completeCallBack = () => {\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n EventHandler.off(document, EVENT_FOCUSIN)\n this._element.blur()\n this._isShown = false\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._element.style.visibility = 'hidden'\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n super.dispose()\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: this._config.backdrop,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _enforceFocusOnElement(element) {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n element !== event.target &&\n !element.contains(event.target)) {\n element.focus()\n }\n })\n element.focus()\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n this.hide()\n }\n })\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (allReadyOpen && allReadyOpen !== target) {\n Offcanvas.getInstance(allReadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () =>\n SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())\n)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attr, allowedAttributeList) => {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attrName)) {\n if (uriAttrs.has(attrName)) {\n return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attrName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const allowlistKeys = Object.keys(allowList)\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (!allowlistKeys.includes(elName)) {\n el.remove()\n\n continue\n }\n\n const attributeList = [].concat(...el.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || [])\n\n attributeList.forEach(attr => {\n if (!allowedAttribute(attr, allowedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport {\n DefaultAllowlist,\n sanitizeHtml\n} from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.appendChild(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n this.tip = element.children[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle())\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.appendChild(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n let title = this._element.getAttribute('data-bs-original-title')\n\n if (!title) {\n title = typeof this._config.title === 'function' ?\n this._config.title.call(this._element) :\n this._config.title\n }\n\n return title\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || Data.get(event.delegateTarget, dataKey)\n\n if (!context) {\n context = new this.constructor(event.delegateTarget, this._getDelegateConfig())\n Data.set(event.delegateTarget, dataKey, context)\n }\n\n return context\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this._config) {\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport SelectorEngine from './dom/selector-engine'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement: 'right',\n offset: [0, 8],\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(string|element|function)'\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n this.tip = super.getTipElement()\n\n if (!this.getTitle()) {\n SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove()\n }\n\n if (!this._getContent()) {\n SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove()\n }\n\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n\n // we use append for html objects to maintain js events\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this._element)\n }\n\n this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n // Private\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getContent() {\n return this._element.getAttribute('data-bs-content') || this._config.content\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Popover to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getSelectorFromElement,\n getUID,\n isElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n offset: 10,\n method: 'auto',\n target: ''\n}\n\nconst DefaultType = {\n offset: 'number',\n method: 'string',\n target: '(string|element)'\n}\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._scrollElement = this._element.tagName === 'BODY' ? window : this._element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process())\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window ?\n METHOD_OFFSET :\n METHOD_POSITION\n\n const offsetMethod = this._config.method === 'auto' ?\n autoMethod :\n this._config.method\n\n const offsetBase = offsetMethod === METHOD_POSITION ?\n this._getScrollTop() :\n 0\n\n this._offsets = []\n this._targets = []\n this._scrollHeight = this._getScrollHeight()\n\n const targets = SelectorEngine.find(this._selector)\n\n targets.map(element => {\n const targetSelector = getSelectorFromElement(element)\n const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n return [\n Manipulator[offsetMethod](target).top + offsetBase,\n targetSelector\n ]\n }\n }\n\n return null\n })\n .filter(item => item)\n .sort((a, b) => a[0] - b[0])\n .forEach(item => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n EventHandler.off(this._scrollElement, EVENT_KEY)\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (typeof config.target !== 'string' && isElement(config.target)) {\n let { id } = config.target\n if (!id) {\n id = getUID(NAME)\n config.target.id = id\n }\n\n config.target = `#${id}`\n }\n\n typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window ?\n this._scrollElement.pageYOffset :\n this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window ?\n window.innerHeight :\n this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n for (let i = this._offsets.length; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = this._selector.split(',')\n .map(selector => `${selector}[data-bs-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const link = SelectorEngine.findOne(queries.join(','))\n\n if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, link.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n\n link.classList.add(CLASS_NAME_ACTIVE)\n } else {\n // Set triggered link as active\n link.classList.add(CLASS_NAME_ACTIVE)\n\n SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP)\n .forEach(listGroup => {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n\n // Handle special case when .nav-link is inside .nav-item\n SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS)\n .forEach(navItem => {\n SelectorEngine.children(navItem, SELECTOR_NAV_LINKS)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n })\n })\n }\n\n EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, {\n relatedTarget: target\n })\n }\n\n _clear() {\n SelectorEngine.find(this._selector)\n .filter(node => node.classList.contains(CLASS_NAME_ACTIVE))\n .forEach(node => node.classList.remove(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n SelectorEngine.find(SELECTOR_DATA_SPY)\n .forEach(spy => new ScrollSpy(spy))\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .ScrollSpy to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n reflow\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_UL = ':scope > li > .active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tab extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n if ((this._element.parentNode &&\n this._element.parentNode.nodeType === Node.ELEMENT_NODE &&\n this._element.classList.contains(CLASS_NAME_ACTIVE))) {\n return\n }\n\n let previous\n const target = getElementFromSelector(this._element)\n const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP)\n\n if (listElement) {\n const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE\n previous = SelectorEngine.find(itemSelector, listElement)\n previous = previous[previous.length - 1]\n }\n\n const hideEvent = previous ?\n EventHandler.trigger(previous, EVENT_HIDE, {\n relatedTarget: this._element\n }) :\n null\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget: previous\n })\n\n if (showEvent.defaultPrevented || (hideEvent !== null && hideEvent.defaultPrevented)) {\n return\n }\n\n this._activate(this._element, listElement)\n\n const complete = () => {\n EventHandler.trigger(previous, EVENT_HIDDEN, {\n relatedTarget: this._element\n })\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget: previous\n })\n }\n\n if (target) {\n this._activate(target, target.parentNode, complete)\n } else {\n complete()\n }\n }\n\n // Private\n\n _activate(element, container, callback) {\n const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ?\n SelectorEngine.find(SELECTOR_ACTIVE_UL, container) :\n SelectorEngine.children(container, SELECTOR_ACTIVE)\n\n const active = activeElements[0]\n const isTransitioning = callback && (active && active.classList.contains(CLASS_NAME_FADE))\n\n const complete = () => this._transitionComplete(element, active, callback)\n\n if (active && isTransitioning) {\n active.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, element, true)\n } else {\n complete()\n }\n }\n\n _transitionComplete(element, active, callback) {\n if (active) {\n active.classList.remove(CLASS_NAME_ACTIVE)\n\n const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode)\n\n if (dropdownChild) {\n dropdownChild.classList.remove(CLASS_NAME_ACTIVE)\n }\n\n if (active.getAttribute('role') === 'tab') {\n active.setAttribute('aria-selected', false)\n }\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n if (element.getAttribute('role') === 'tab') {\n element.setAttribute('aria-selected', true)\n }\n\n reflow(element)\n\n if (element.classList.contains(CLASS_NAME_FADE)) {\n element.classList.add(CLASS_NAME_SHOW)\n }\n\n let parent = element.parentNode\n if (parent && parent.nodeName === 'LI') {\n parent = parent.parentNode\n }\n\n if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) {\n const dropdownElement = element.closest(SELECTOR_DROPDOWN)\n\n if (dropdownElement) {\n SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement)\n .forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE))\n }\n\n element.setAttribute('aria-expanded', true)\n }\n\n if (callback) {\n callback()\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tab.getOrCreateInstance(this)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const data = Tab.getOrCreateInstance(this)\n data.show()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tab to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'bs.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`\nconst EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_FOCUSOUT = `focusout${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"toast\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._timeout = null\n this._hasMouseInteraction = false\n this._hasKeyboardInteraction = false\n this._setListeners()\n }\n\n // Getters\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n this._element.classList.add(CLASS_NAME_SHOW)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n this._maybeScheduleHide()\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE)\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n hide() {\n if (!this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n return config\n }\n\n _maybeScheduleHide() {\n if (!this._config.autohide) {\n return\n }\n\n if (this._hasMouseInteraction || this._hasKeyboardInteraction) {\n return\n }\n\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n\n _onInteraction(event, isInteracting) {\n switch (event.type) {\n case 'mouseover':\n case 'mouseout':\n this._hasMouseInteraction = isInteracting\n break\n case 'focusin':\n case 'focusout':\n this._hasKeyboardInteraction = isInteracting\n break\n default:\n break\n }\n\n if (isInteracting) {\n this._clearTimeout()\n return\n }\n\n const nextElement = event.relatedTarget\n if (this._element === nextElement || this._element.contains(nextElement)) {\n return\n }\n\n this._maybeScheduleHide()\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false))\n EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false))\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Toast.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Toast to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Toast)\n\nexport default Toast\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): index.umd.js\n * Licensed under MIT (https:/github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Alert from \"@openeuropa/bcl-bootstrap/js/src/alert\";\nimport Button from \"@openeuropa/bcl-bootstrap/js/src/button\";\nimport Carousel from \"@openeuropa/bcl-bootstrap/js/src/carousel\";\nimport Collapse from \"@openeuropa/bcl-bootstrap/js/src/collapse\";\nimport Dropdown from \"@openeuropa/bcl-bootstrap/js/src/dropdown\";\nimport Modal from \"@openeuropa/bcl-bootstrap/js/src/modal\";\nimport Offcanvas from \"@openeuropa/bcl-bootstrap/js/src/offcanvas\";\nimport Popover from \"@openeuropa/bcl-bootstrap/js/src/popover\";\nimport ScrollSpy from \"@openeuropa/bcl-bootstrap/js/src/scrollspy\";\nimport Tab from \"@openeuropa/bcl-bootstrap/js/src/tab\";\nimport Toast from \"@openeuropa/bcl-bootstrap/js/src/toast\";\nimport Tooltip from \"@openeuropa/bcl-bootstrap/js/src/tooltip\";\n\nexport default {\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n};\n"],"names":["NODE_TEXT","SelectorEngine","find","selector","element","document","documentElement","concat","Element","prototype","querySelectorAll","call","findOne","querySelector","children","filter","child","matches","parents","ancestor","parentNode","nodeType","Node","ELEMENT_NODE","push","prev","previous","previousElementSibling","next","nextElementSibling","MAX_UID","MILLISECONDS_MULTIPLIER","TRANSITION_END","toType","obj","undefined","toString","match","toLowerCase","getUID","prefix","Math","floor","random","getElementById","getSelector","getAttribute","hrefAttr","includes","startsWith","split","trim","getSelectorFromElement","getElementFromSelector","getTransitionDurationFromElement","transitionDuration","transitionDelay","window","getComputedStyle","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","triggerTransitionEnd","dispatchEvent","Event","isElement","jquery","getElement","length","typeCheckConfig","componentName","config","configTypes","Object","keys","forEach","property","expectedTypes","value","valueType","RegExp","test","TypeError","toUpperCase","isVisible","getClientRects","getPropertyValue","isDisabled","classList","contains","disabled","hasAttribute","findShadowRoot","attachShadow","getRootNode","root","ShadowRoot","noop","reflow","offsetHeight","getjQuery","jQuery","body","DOMContentLoadedCallbacks","onDOMContentLoaded","callback","readyState","addEventListener","isRTL","dir","defineJQueryPlugin","plugin","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","execute","executeAfterTransition","transitionElement","waitForTransition","durationPadding","emulatedDuration","called","handler","target","removeEventListener","setTimeout","getNextActiveElement","list","activeElement","shouldGetNext","isCycleAllowed","index","indexOf","listLength","max","min","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","customEventsRegex","nativeEvents","Set","getUidEvent","uid","getEvent","bootstrapHandler","event","delegateTarget","oneOff","EventHandler","off","type","apply","bootstrapDelegationHandler","domElements","i","findHandler","events","delegationSelector","uidEventList","len","originalHandler","normalizeParams","originalTypeEvent","delegationFn","delegation","typeEvent","getTypeEvent","isNative","has","addHandler","wrapFn","relatedTarget","handlers","previousFn","replace","removeHandler","Boolean","removeNamespacedHandlers","namespace","storeElementEvent","handlerKey","on","one","inNamespace","isNamespace","elementEvent","slice","keyHandlers","trigger","args","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","evt","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","createEvent","initEvent","CustomEvent","cancelable","key","defineProperty","get","preventDefault","elementMap","Map","set","instance","instanceMap","size","console","error","Array","from","remove","delete","VERSION","BaseComponent","constructor","_element","Data","DATA_KEY","dispose","EVENT_KEY","getOwnPropertyNames","propertyName","_queueCallback","isAnimated","getInstance","getOrCreateInstance","Error","DATA_API_KEY","SELECTOR_DISMISS","EVENT_CLOSE","EVENT_CLOSED","EVENT_CLICK_DATA_API","CLASS_NAME_ALERT","CLASS_NAME_FADE","CLASS_NAME_SHOW","Alert","close","rootElement","_getRootElement","customEvent","_triggerCloseEvent","_removeElement","closest","_destroyElement","each","data","handleDismiss","alertInstance","CLASS_NAME_ACTIVE","SELECTOR_DATA_TOGGLE","Button","toggle","setAttribute","button","normalizeData","val","normalizeDataKey","chr","Manipulator","setDataAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","dataset","pureKey","charAt","getDataAttribute","offset","rect","getBoundingClientRect","top","scrollTop","left","scrollLeft","position","offsetTop","offsetLeft","ARROW_LEFT_KEY","ARROW_RIGHT_KEY","TOUCHEVENT_COMPAT_WAIT","SWIPE_THRESHOLD","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","KEY_TO_DIRECTION","EVENT_SLIDE","EVENT_SLID","EVENT_KEYDOWN","EVENT_MOUSEENTER","EVENT_MOUSELEAVE","EVENT_TOUCHSTART","EVENT_TOUCHMOVE","EVENT_TOUCHEND","EVENT_POINTERDOWN","EVENT_POINTERUP","EVENT_DRAG_START","EVENT_LOAD_DATA_API","CLASS_NAME_CAROUSEL","CLASS_NAME_SLIDE","CLASS_NAME_END","CLASS_NAME_START","CLASS_NAME_NEXT","CLASS_NAME_PREV","CLASS_NAME_POINTER_EVENT","SELECTOR_ACTIVE","SELECTOR_ACTIVE_ITEM","SELECTOR_ITEM","SELECTOR_ITEM_IMG","SELECTOR_NEXT_PREV","SELECTOR_INDICATORS","SELECTOR_INDICATOR","SELECTOR_DATA_SLIDE","SELECTOR_DATA_RIDE","POINTER_TYPE_TOUCH","POINTER_TYPE_PEN","Carousel","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","PointerEvent","_addEventListeners","_slide","nextWhenVisible","hidden","cycle","clearInterval","_updateInterval","setInterval","visibilityState","bind","to","activeIndex","_getItemIndex","order","_handleSwipe","absDeltax","abs","direction","_keydown","_addTouchEventListeners","start","pointerType","clientX","touches","move","end","clearTimeout","itemImg","e","add","tagName","_getItemByOrder","isNext","_triggerSlideEvent","eventDirectionName","targetIndex","fromIndex","_setActiveIndicatorElement","activeIndicator","indicators","parseInt","elementInterval","defaultInterval","directionOrOrder","_directionToOrder","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","_orderToDirection","slideEvent","triggerSlidEvent","completeCallBack","carouselInterface","action","ride","dataApiClickHandler","slideIndex","carousels","parent","EVENT_SHOW","EVENT_SHOWN","EVENT_HIDE","EVENT_HIDDEN","CLASS_NAME_COLLAPSE","CLASS_NAME_COLLAPSING","CLASS_NAME_COLLAPSED","WIDTH","HEIGHT","SELECTOR_ACTIVES","Collapse","_isTransitioning","_triggerArray","id","toggleList","elem","filterElement","foundElem","_selector","_parent","_getParent","_addAriaAndCollapsedClass","hide","show","actives","activesData","container","tempActiveData","startEvent","elemActive","collapseInterface","dimension","_getDimension","style","setTransitioning","complete","capitalizedDimension","scrollSize","triggerArrayLength","isTransitioning","selected","triggerArray","isOpen","triggerData","selectorElements","bottom","right","auto","basePlacements","clippingParents","viewport","popper","reference","variationPlacements","reduce","acc","placement","placements","beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite","modifierPhases","getNodeName","nodeName","getWindow","node","ownerDocument","defaultView","OwnElement","isHTMLElement","HTMLElement","isShadowRoot","applyStyles","_ref","state","elements","styles","assign","effect","_ref2","initialStyles","options","strategy","margin","arrow","styleProperties","hasOwnProperty","attribute","enabled","phase","requires","getBasePlacement","width","height","x","y","getLayoutRect","clientRect","offsetWidth","rootNode","isSameNode","host","isTableElement","getDocumentElement","getParentNode","assignedSlot","getTrueOffsetParent","offsetParent","getContainingBlock","isFirefox","userAgent","isIE","elementCss","currentNode","css","transform","perspective","contain","willChange","getOffsetParent","getMainAxisFromPlacement","round","within","mathMax","mathMin","getFreshSideObject","mergePaddingObject","paddingObject","expandToHashMap","hashMap","toPaddingObject","padding","rects","_state$modifiersData$","arrowElement","popperOffsets","modifiersData","basePlacement","axis","isVertical","arrowRect","minProp","maxProp","endDiff","startDiff","arrowOffsetParent","clientSize","clientHeight","clientWidth","centerToReference","center","axisProp","centerOffset","_options$element","requiresIfExists","unsetSides","roundOffsetsByDPR","win","dpr","devicePixelRatio","mapToStyles","_Object$assign2","popperRect","offsets","gpuAcceleration","adaptive","roundOffsets","_ref3","_ref3$x","_ref3$y","hasX","hasY","sideX","sideY","heightProp","widthProp","commonStyles","_Object$assign","computeStyles","_ref4","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","passive","_options$scroll","scroll","_options$resize","resize","scrollParents","scrollParent","update","hash","getOppositePlacement","matched","getOppositeVariationPlacement","getWindowScroll","pageXOffset","pageYOffset","getWindowScrollBarX","getViewportRect","html","visualViewport","getDocumentRect","_element$ownerDocumen","winScroll","scrollWidth","scrollHeight","isScrollParent","_getComputedStyle","overflow","overflowX","overflowY","getScrollParent","listScrollParents","isBody","updatedList","rectToClientRect","getInnerBoundingClientRect","clientTop","clientLeft","getClientRectFromMixedType","clippingParent","getClippingParents","canEscapeClipping","clipperElement","getClippingRect","boundary","rootBoundary","mainClippingParents","firstClippingParent","clippingRect","accRect","getVariation","computeOffsets","variation","commonX","commonY","mainAxis","detectOverflow","_options","_options$placement","_options$boundary","_options$rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","referenceElement","clippingClientRect","contextElement","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","multiply","computeAutoPlacement","flipVariations","_options$allowedAutoP","allowedAutoPlacements","allPlacements","allowedPlacements","overflows","sort","a","b","getExpandedFallbackPlacements","oppositePlacement","flip","_skip","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","preferredPlacement","isBasePlacement","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","mainVariationSide","altVariationSide","checks","every","check","numberOfChecks","_loop","_i","fittingPlacement","_ret","reset","getSideOffsets","preventedOffsets","isAnySideFullyClipped","some","side","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","distanceAndSkiddingToXY","invertDistance","skidding","distance","_options$offset","_data$state$placement","getAltAxis","_options$tether","tether","_options$tetherOffset","tetherOffset","tetherOffsetValue","mainSide","altSide","additive","minLen","maxLen","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","clientOffset","offsetModifierValue","tetherMin","tetherMax","preventedOffset","_mainSide","_altSide","_offset","_min","_max","_preventedOffset","getHTMLElementScroll","getNodeScroll","getCompositeRect","elementOrVirtualElement","isFixed","isOffsetParentAnElement","modifiers","map","visited","result","modifier","dep","depModifier","orderModifiers","orderedModifiers","debounce","pending","Promise","resolve","then","mergeByName","merged","current","existing","DEFAULT_OPTIONS","areValidElements","_len","arguments","_key","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","createPopper","effectCleanupFns","isDestroyed","setOptions","cleanupModifierEffects","m","runModifierEffects","forceUpdate","_state$elements","_state$orderedModifie","_state$orderedModifie2","destroy","onFirstUpdate","_ref3$options","cleanupFn","noopFn","eventListeners","ESCAPE_KEY","SPACE_KEY","TAB_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","RIGHT_MOUSE_BUTTON","REGEXP_KEYDOWN","EVENT_CLICK","EVENT_KEYDOWN_DATA_API","EVENT_KEYUP_DATA_API","CLASS_NAME_DROPUP","CLASS_NAME_DROPEND","CLASS_NAME_DROPSTART","CLASS_NAME_NAVBAR","SELECTOR_MENU","SELECTOR_NAVBAR_NAV","SELECTOR_VISIBLE_ITEMS","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","display","popperConfig","autoClose","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","isActive","getParentFromElement","showEvent","Popper","_getPopperConfig","isDisplayStatic","focus","_completeHide","hideEvent","_getPlacement","parentDropdown","isEnd","_getOffset","popperData","defaultBsPopperConfig","_selectMenuItem","items","dropdownInterface","clearMenus","toggles","context","composedPath","isMenuTarget","clickEvent","dataApiKeydownHandler","stopPropagation","getToggleButton","click","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","ScrollBarHelper","getWidth","documentWidth","innerWidth","_disableOverFlow","_setElementAttributes","calculatedValue","_saveInitialAttribute","styleProp","scrollbarWidth","manipulationCallBack","_applyManipulationCallback","_resetElementAttributes","actualValue","removeProperty","callBack","isOverflowing","clickCallback","CLASS_NAME_BACKDROP","EVENT_MOUSEDOWN","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","createElement","className","appendChild","EVENT_HIDE_PREVENTED","EVENT_FOCUSIN","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_KEYDOWN_DISMISS","EVENT_MOUSEUP_DISMISS","EVENT_MOUSEDOWN_DISMISS","CLASS_NAME_OPEN","CLASS_NAME_STATIC","SELECTOR_DIALOG","SELECTOR_MODAL_BODY","SELECTOR_DATA_DISMISS","Modal","_dialog","_backdrop","_initializeBackDrop","_isShown","_ignoreBackdropClick","_scrollBar","_isAnimated","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","_hideModal","htmlElement","handleUpdate","modalBody","_enforceFocus","transitionComplete","_triggerBackdropTransition","_resetAdjustments","currentTarget","isModalOverflowing","isBodyOverflowing","paddingLeft","paddingRight","OPEN_SELECTOR","Offcanvas","visibility","_enforceFocusOnElement","blur","completeCallback","allReadyOpen","el","uriAttrs","ARIA_ATTRIBUTE_PATTERN","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeValue","regExp","attrRegex","DefaultAllowlist","area","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","domParser","DOMParser","createdDocument","parseFromString","allowlistKeys","elName","attributeList","allowedAttributes","innerHTML","CLASS_PREFIX","BSCLS_PREFIX_REGEX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","customClass","sanitize","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","CLASS_NAME_MODAL","HOVER_STATE_SHOW","HOVER_STATE_OUT","SELECTOR_TOOLTIP_INNER","TRIGGER_HOVER","TRIGGER_FOCUS","TRIGGER_CLICK","TRIGGER_MANUAL","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","_initializeOnDelegatedTarget","_isWithActiveTrigger","_enter","_leave","getTipElement","_hideModalHandler","isWithContent","shadowRoot","isInTheDom","tipId","setContent","attachment","_getAttachment","_addAttachmentClass","prevHoverState","_cleanTipClass","getTitle","setElementContent","content","textContent","updateAttachment","dataKey","_getDelegateConfig","_handlePopperPlacementChange","triggers","eventIn","eventOut","_fixTitle","originalTitleType","dataAttributes","dataAttr","tabClass","token","tClass","SELECTOR_TITLE","SELECTOR_CONTENT","Popover","_getContent","method","EVENT_ACTIVATE","EVENT_SCROLL","CLASS_NAME_DROPDOWN_ITEM","SELECTOR_DATA_SPY","SELECTOR_NAV_LIST_GROUP","SELECTOR_NAV_LINKS","SELECTOR_NAV_ITEMS","SELECTOR_LIST_ITEMS","SELECTOR_DROPDOWN","SELECTOR_DROPDOWN_TOGGLE","METHOD_OFFSET","METHOD_POSITION","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targets","targetSelector","targetBCR","item","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","isActiveTarget","queries","link","join","listGroup","navItem","spy","CLASS_NAME_DROPDOWN_MENU","SELECTOR_ACTIVE_UL","SELECTOR_DROPDOWN_ACTIVE_CHILD","Tab","listElement","itemSelector","activeElements","active","_transitionComplete","dropdownChild","dropdownElement","dropdown","EVENT_MOUSEOVER","EVENT_MOUSEOUT","EVENT_FOCUSOUT","CLASS_NAME_HIDE","CLASS_NAME_SHOWING","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","_onInteraction","isInteracting"],"mappings":"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"} \ No newline at end of file diff --git a/assets/js/oe-bcl-default.bundle.min.js b/assets/js/oe-bcl-default.bundle.min.js new file mode 100644 index 00000000..c151448b --- /dev/null +++ b/assets/js/oe-bcl-default.bundle.min.js @@ -0,0 +1,2 @@ +!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={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[]}},e="transitionend",i=t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t},n=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},s=t=>{const e=n(t);return e&&document.querySelector(e)?e:null},o=t=>{const e=n(t);return e?document.querySelector(e):null},r=t=>{t.dispatchEvent(new Event(e))},a=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),l=e=>a(e)?e.jquery?e[0]:e:"string"==typeof e&&e.length>0?t.findOne(e):null,c=(t,e,i)=>{Object.keys(i).forEach((n=>{const s=i[n],o=e[n],r=o&&a(o)?"element":null==(l=o)?`${l}`:{}.toString.call(l).match(/\s([a-z]+)/i)[1].toLowerCase();var l;if(!new RegExp(s).test(r))throw new TypeError(`${t.toUpperCase()}: Option "${n}" provided type "${r}" but expected type "${s}".`)}))},h=t=>!(!a(t)||0===t.getClientRects().length)&&"visible"===getComputedStyle(t).getPropertyValue("visibility"),d=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),u=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?u(t.parentNode):null},f=()=>{},p=t=>t.offsetHeight,m=()=>{const{jQuery:t}=window;return t&&!document.body.hasAttribute("data-bs-no-jquery")?t:null},g=[],_=()=>"rtl"===document.documentElement.dir,b=t=>{var e;e=()=>{const e=m();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?(g.length||document.addEventListener("DOMContentLoaded",(()=>{g.forEach((t=>t()))})),g.push(e)):e()},v=t=>{"function"==typeof t&&t()},y=(t,i,n=!0)=>{if(!n)return void v(t);const s=(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 o=!1;const a=({target:n})=>{n===i&&(o=!0,i.removeEventListener(e,a),v(t))};i.addEventListener(e,a),setTimeout((()=>{o||r(i)}),s)},w=(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))]},E=/[^.]*(?=\..*)\.|.*/,A=/\..*/,T=/::\d+$/,O={};let C=1;const L={mouseenter:"mouseover",mouseleave:"mouseout"},k=/^(mouseenter|mouseleave)/i,x=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 D(t,e){return e&&`${e}::${C++}`||t.uidEvent||C++}function S(t){const e=D(t);return t.uidEvent=e,O[e]=O[e]||{},O[e]}function I(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 N(t,e,i){const n="string"==typeof e,s=n?i:e;let o=P(t);return x.has(o)||(o=t),[n,s,o]}function j(t,e,i,n,s){if("string"!=typeof e||!t)return;if(i||(i=n,n=null),k.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]=N(e,i,n),l=S(t),c=l[a]||(l[a]={}),h=I(c,r,o?i:null);if(h)return void(h.oneOff=h.oneOff&&s);const d=D(r,e.replace(E,"")),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&&H.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&&H.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 M(t,e,i,n,s){const o=I(e[i],n,s);o&&(t.removeEventListener(i,o,Boolean(s)),delete e[i][o.uidEvent])}function P(t){return t=t.replace(A,""),L[t]||t}const H={on(t,e,i,n){j(t,e,i,n,!1)},one(t,e,i,n){j(t,e,i,n,!0)},off(t,e,i,n){if("string"!=typeof e||!t)return;const[s,o,r]=N(e,i,n),a=r!==e,l=S(t),c=e.startsWith(".");if(void 0!==o){if(!l||!l[r])return;return void M(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];M(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(T,"");if(!a||e.includes(n)){const e=h[i];M(t,l,r,e.originalHandler,e.delegationSelector)}}))},trigger(t,e,i){if("string"!=typeof e||!t)return null;const n=m(),s=P(e),o=e!==s,r=x.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}},R=new Map;var B={set(t,e,i){R.has(t)||R.set(t,new Map);const n=R.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)=>R.has(t)&&R.get(t).get(e)||null,remove(t,e){if(!R.has(t))return;const i=R.get(t);i.delete(e),0===i.size&&R.delete(t)}};class ${constructor(t){(t=l(t))&&(this._element=t,B.set(this._element,this.constructor.DATA_KEY,this))}dispose(){B.remove(this._element,this.constructor.DATA_KEY),H.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach((t=>{this[t]=null}))}_queueCallback(t,e,i=!0){y(t,e,i)}static getInstance(t){return B.get(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.0.2"}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}`}}class W extends ${static get NAME(){return"alert"}close(t){const e=t?this._getRootElement(t):this._element,i=this._triggerCloseEvent(e);null===i||i.defaultPrevented||this._removeElement(e)}_getRootElement(t){return o(t)||t.closest(".alert")}_triggerCloseEvent(t){return H.trigger(t,"close.bs.alert")}_removeElement(t){t.classList.remove("show");const e=t.classList.contains("fade");this._queueCallback((()=>this._destroyElement(t)),t,e)}_destroyElement(t){t.remove(),H.trigger(t,"closed.bs.alert")}static jQueryInterface(t){return this.each((function(){const e=W.getOrCreateInstance(this);"close"===t&&e[t](this)}))}static handleDismiss(t){return function(e){e&&e.preventDefault(),t.close(this)}}}H.on(document,"click.bs.alert.data-api",'[data-bs-dismiss="alert"]',W.handleDismiss(new W)),b(W);const q='[data-bs-toggle="button"]';class z extends ${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 U(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()}`))}H.on(document,"click.bs.button.data-api",q,(t=>{t.preventDefault();const e=t.target.closest(q);z.getOrCreateInstance(e).toggle()})),b(z);const V={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]=U(t.dataset[i])})),e},getDataAttribute:(t,e)=>U(t.getAttribute(`data-bs-${F(e)}`)),offset(t){const e=t.getBoundingClientRect();return{top:e.top+document.body.scrollTop,left:e.left+document.body.scrollLeft}},position:t=>({top:t.offsetTop,left:t.offsetLeft})},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",st="touch";class ot extends ${constructor(e,i){super(e),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(i),this._indicatorsElement=t.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&&h(this._element)&&this.next()}prev(){this._slide(G)}pause(e){e||(this._isPaused=!0),t.findOne(".carousel-item-next, .carousel-item-prev",this._element)&&(r(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(e){this._activeElement=t.findOne(nt,this._element);const i=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding)return void H.one(this._element,et,(()=>this.to(e)));if(i===e)return this.pause(),void this.cycle();const n=e>i?Q:G;this._slide(n,this._items[e])}_getConfig(t){return t={...X,...V.getDataAttributes(this._element),..."object"==typeof t?t:{}},c(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&&H.on(this._element,"keydown.bs.carousel",(t=>this._keydown(t))),"hover"===this._config.pause&&(H.on(this._element,"mouseenter.bs.carousel",(t=>this.pause(t))),H.on(this._element,"mouseleave.bs.carousel",(t=>this.cycle(t)))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){const e=t=>{!this._pointerEvent||"pen"!==t.pointerType&&t.pointerType!==st?this._pointerEvent||(this.touchStartX=t.touches[0].clientX):this.touchStartX=t.clientX},i=t=>{this.touchDeltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this.touchStartX},n=t=>{!this._pointerEvent||"pen"!==t.pointerType&&t.pointerType!==st||(this.touchDeltaX=t.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))};t.find(".carousel-item img",this._element).forEach((t=>{H.on(t,"dragstart.bs.carousel",(t=>t.preventDefault()))})),this._pointerEvent?(H.on(this._element,"pointerdown.bs.carousel",(t=>e(t))),H.on(this._element,"pointerup.bs.carousel",(t=>n(t))),this._element.classList.add("pointer-event")):(H.on(this._element,"touchstart.bs.carousel",(t=>e(t))),H.on(this._element,"touchmove.bs.carousel",(t=>i(t))),H.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(e){return this._items=e&&e.parentNode?t.find(".carousel-item",e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(t,e){const i=t===Q;return w(this._items,e,i,this._config.wrap)}_triggerSlideEvent(e,i){const n=this._getItemIndex(e),s=this._getItemIndex(t.findOne(nt,this._element));return H.trigger(this._element,"slide.bs.carousel",{relatedTarget:e,direction:i,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){const i=t.findOne(".active",this._indicatorsElement);i.classList.remove(it),i.removeAttribute("aria-current");const n=t.find("[data-bs-target]",this._indicatorsElement);for(let t=0;t<n.length;t++)if(Number.parseInt(n[t].getAttribute("data-bs-slide-to"),10)===this._getItemIndex(e)){n[t].classList.add(it),n[t].setAttribute("aria-current","true");break}}}_updateInterval(){const e=this._activeElement||t.findOne(nt,this._element);if(!e)return;const i=Number.parseInt(e.getAttribute("data-bs-interval"),10);i?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,this._config.interval=i):this._config.interval=this._config.defaultInterval||this._config.interval}_slide(e,i){const n=this._directionToOrder(e),s=t.findOne(nt,this._element),o=this._getItemIndex(s),r=i||this._getItemByOrder(n,s),a=this._getItemIndex(r),l=Boolean(this._interval),c=n===Q,h=c?"carousel-item-start":"carousel-item-end",d=c?"carousel-item-next":"carousel-item-prev",u=this._orderToDirection(n);if(r&&r.classList.contains(it))return void(this._isSliding=!1);if(this._isSliding)return;if(this._triggerSlideEvent(r,u).defaultPrevented)return;if(!s||!r)return;this._isSliding=!0,l&&this.pause(),this._setActiveIndicatorElement(r),this._activeElement=r;const f=()=>{H.trigger(this._element,et,{relatedTarget:r,direction:u,from:o,to:a})};if(this._element.classList.contains("slide")){r.classList.add(d),p(r),s.classList.add(h),r.classList.add(h);const t=()=>{r.classList.remove(h,d),r.classList.add(it),s.classList.remove(it,d,h),this._isSliding=!1,setTimeout(f,0)};this._queueCallback(t,s,!0)}else s.classList.remove(it),r.classList.add(it),this._isSliding=!1,f();l&&this.cycle()}_directionToOrder(t){return[J,Z].includes(t)?_()?t===Z?G:Q:t===Z?Q:G:t}_orderToDirection(t){return[Q,G].includes(t)?_()?t===G?Z:J:t===G?J:Z:t}static carouselInterface(t,e){const i=ot.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(){ot.carouselInterface(this,t)}))}static dataApiClickHandler(t){const e=o(this);if(!e||!e.classList.contains("carousel"))return;const i={...V.getDataAttributes(e),...V.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(i.interval=!1),ot.carouselInterface(e,i),n&&ot.getInstance(e).to(n),t.preventDefault()}}H.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",ot.dataApiClickHandler),H.on(window,"load.bs.carousel.data-api",(()=>{const e=t.find('[data-bs-ride="carousel"]');for(let t=0,i=e.length;t<i;t++)ot.carouselInterface(e[t],ot.getInstance(e[t]))})),b(ot);const rt="collapse",at={toggle:!0,parent:""},lt={toggle:"boolean",parent:"(string|element)"},ct="show",ht="collapse",dt="collapsing",ut="collapsed",ft="width",pt='[data-bs-toggle="collapse"]';class mt extends ${constructor(e,i){super(e),this._isTransitioning=!1,this._config=this._getConfig(i),this._triggerArray=t.find(`${pt}[href="#${this._element.id}"],${pt}[data-bs-target="#${this._element.id}"]`);const n=t.find(pt);for(let e=0,i=n.length;e<i;e++){const i=n[e],o=s(i),r=t.find(o).filter((t=>t===this._element));null!==o&&r.length&&(this._selector=o,this._triggerArray.push(i))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}static get Default(){return at}static get NAME(){return rt}toggle(){this._element.classList.contains(ct)?this.hide():this.show()}show(){if(this._isTransitioning||this._element.classList.contains(ct))return;let e,i;this._parent&&(e=t.find(".show, .collapsing",this._parent).filter((t=>"string"==typeof this._config.parent?t.getAttribute("data-bs-parent")===this._config.parent:t.classList.contains(ht))),0===e.length&&(e=null));const n=t.findOne(this._selector);if(e){const t=e.find((t=>n!==t));if(i=t?mt.getInstance(t):null,i&&i._isTransitioning)return}if(H.trigger(this._element,"show.bs.collapse").defaultPrevented)return;e&&e.forEach((t=>{n!==t&&mt.collapseInterface(t,"hide"),i||B.set(t,"bs.collapse",null)}));const s=this._getDimension();this._element.classList.remove(ht),this._element.classList.add(dt),this._element.style[s]=0,this._triggerArray.length&&this._triggerArray.forEach((t=>{t.classList.remove(ut),t.setAttribute("aria-expanded",!0)})),this.setTransitioning(!0);const o=`scroll${s[0].toUpperCase()+s.slice(1)}`;this._queueCallback((()=>{this._element.classList.remove(dt),this._element.classList.add(ht,ct),this._element.style[s]="",this.setTransitioning(!1),H.trigger(this._element,"shown.bs.collapse")}),this._element,!0),this._element.style[s]=`${this._element[o]}px`}hide(){if(this._isTransitioning||!this._element.classList.contains(ct))return;if(H.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const t=this._getDimension();this._element.style[t]=`${this._element.getBoundingClientRect()[t]}px`,p(this._element),this._element.classList.add(dt),this._element.classList.remove(ht,ct);const e=this._triggerArray.length;if(e>0)for(let t=0;t<e;t++){const e=this._triggerArray[t],i=o(e);i&&!i.classList.contains(ct)&&(e.classList.add(ut),e.setAttribute("aria-expanded",!1))}this.setTransitioning(!0),this._element.style[t]="",this._queueCallback((()=>{this.setTransitioning(!1),this._element.classList.remove(dt),this._element.classList.add(ht),H.trigger(this._element,"hidden.bs.collapse")}),this._element,!0)}setTransitioning(t){this._isTransitioning=t}_getConfig(t){return(t={...at,...t}).toggle=Boolean(t.toggle),c(rt,t,lt),t}_getDimension(){return this._element.classList.contains(ft)?ft:"height"}_getParent(){let{parent:e}=this._config;e=l(e);const i=`${pt}[data-bs-parent="${e}"]`;return t.find(i,e).forEach((t=>{const e=o(t);this._addAriaAndCollapsedClass(e,[t])})),e}_addAriaAndCollapsedClass(t,e){if(!t||!e.length)return;const i=t.classList.contains(ct);e.forEach((t=>{i?t.classList.remove(ut):t.classList.add(ut),t.setAttribute("aria-expanded",i)}))}static collapseInterface(t,e){let i=mt.getInstance(t);const n={...at,...V.getDataAttributes(t),..."object"==typeof e&&e?e:{}};if(!i&&n.toggle&&"string"==typeof e&&/show|hide/.test(e)&&(n.toggle=!1),i||(i=new mt(t,n)),"string"==typeof e){if(void 0===i[e])throw new TypeError(`No method named "${e}"`);i[e]()}}static jQueryInterface(t){return this.each((function(){mt.collapseInterface(this,t)}))}}H.on(document,"click.bs.collapse.data-api",pt,(function(e){("A"===e.target.tagName||e.delegateTarget&&"A"===e.delegateTarget.tagName)&&e.preventDefault();const i=V.getDataAttributes(this),n=s(this);t.find(n).forEach((t=>{const e=mt.getInstance(t);let n;e?(null===e._parent&&"string"==typeof i.parent&&(e._config.parent=i.parent,e._parent=e._getParent()),n="toggle"):n=i,mt.collapseInterface(t,n)}))})),b(mt);var gt="top",_t="bottom",bt="right",vt="left",yt="auto",wt=[gt,_t,bt,vt],Et="start",At="end",Tt="clippingParents",Ot="viewport",Ct="popper",Lt="reference",kt=wt.reduce((function(t,e){return t.concat([e+"-"+Et,e+"-"+At])}),[]),xt=[].concat(wt,[yt]).reduce((function(t,e){return t.concat([e,e+"-"+Et,e+"-"+At])}),[]),Dt="beforeRead",St="read",It="afterRead",Nt="beforeMain",jt="main",Mt="afterMain",Pt="beforeWrite",Ht="write",Rt="afterWrite",Bt=[Dt,St,It,Nt,jt,Mt,Pt,Ht,Rt];function $t(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 qt(t){return t instanceof Wt(t).Element||t instanceof Element}function zt(t){return t instanceof Wt(t).HTMLElement||t instanceof HTMLElement}function Ut(t){return"undefined"!=typeof ShadowRoot&&(t instanceof Wt(t).ShadowRoot||t instanceof ShadowRoot)}var 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)&&$t(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)&&$t(n)&&(Object.assign(n.style,o),Object.keys(s).forEach((function(t){n.removeAttribute(t)})))}))}},requires:["computeStyles"]};function Vt(t){return t.split("-")[0]}function Kt(t){var e=t.getBoundingClientRect();return{width:e.width,height:e.height,top:e.top,right:e.right,bottom:e.bottom,left:e.left,x:e.left,y:e.top}}function Xt(t){var e=Kt(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 Yt(t,e){var i=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(i&&Ut(i)){var n=e;do{if(n&&t.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function Qt(t){return Wt(t).getComputedStyle(t)}function Gt(t){return["table","td","th"].indexOf($t(t))>=0}function Zt(t){return((qt(t)?t.ownerDocument:t.document)||window.document).documentElement}function Jt(t){return"html"===$t(t)?t:t.assignedSlot||t.parentNode||(Ut(t)?t.host:null)||Zt(t)}function te(t){return zt(t)&&"fixed"!==Qt(t).position?t.offsetParent:null}function ee(t){for(var e=Wt(t),i=te(t);i&&Gt(i)&&"static"===Qt(i).position;)i=te(i);return i&&("html"===$t(i)||"body"===$t(i)&&"static"===Qt(i).position)?e:i||function(t){var e=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&zt(t)&&"fixed"===Qt(t).position)return null;for(var i=Jt(t);zt(i)&&["html","body"].indexOf($t(i))<0;){var n=Qt(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 ie(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}var ne=Math.max,se=Math.min,oe=Math.round;function re(t,e,i){return ne(t,se(e,i))}function ae(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function le(t,e){return e.reduce((function(e,i){return e[i]=t,e}),{})}var ce={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=Vt(i.placement),l=ie(a),c=[vt,bt].indexOf(a)>=0?"height":"width";if(o&&r){var h=function(t,e){return ae("number"!=typeof(t="function"==typeof t?t(Object.assign({},e.rects,{placement:e.placement})):t)?t:le(t,wt))}(s.padding,i),d=Xt(o),u="y"===l?gt:vt,f="y"===l?_t:bt,p=i.rects.reference[c]+i.rects.reference[l]-r[l]-i.rects.popper[c],m=r[l]-i.rects.reference[l],g=ee(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=re(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)))&&Yt(e.elements.popper,n)&&(e.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]},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.offsets,r=t.position,a=t.gpuAcceleration,l=t.adaptive,c=t.roundOffsets,h=!0===c?function(t){var e=t.x,i=t.y,n=window.devicePixelRatio||1;return{x:oe(oe(e*n)/n)||0,y:oe(oe(i*n)/n)||0}}(o):"function"==typeof c?c(o):o,d=h.x,u=void 0===d?0:d,f=h.y,p=void 0===f?0:f,m=o.hasOwnProperty("x"),g=o.hasOwnProperty("y"),_=vt,b=gt,v=window;if(l){var y=ee(i),w="clientHeight",E="clientWidth";y===Wt(i)&&"static"!==Qt(y=Zt(i)).position&&(w="scrollHeight",E="scrollWidth"),y=y,s===gt&&(b=_t,p-=y[w]-n.height,p*=a?1:-1),s===vt&&(_=bt,u-=y[E]-n.width,u*=a?1:-1)}var A,T=Object.assign({position:r},l&&he);return a?Object.assign({},T,((A={})[b]=g?"0":"",A[_]=m?"0":"",A.transform=(v.devicePixelRatio||1)<2?"translate("+u+"px, "+p+"px)":"translate3d("+u+"px, "+p+"px, 0)",A)):Object.assign({},T,((e={})[b]=g?p+"px":"",e[_]=m?u+"px":"",e.transform="",e))}var 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:Vt(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:{}},fe={passive:!0},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:{}},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 Kt(Zt(t)).left+ve(t).scrollLeft}function we(t){var e=Qt(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($t(t))>=0?t.ownerDocument.body:zt(t)&&we(t)?t:Ee(Jt(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(Jt(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===Ot?Te(function(t){var e=Wt(t),i=Zt(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=Kt(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=Zt(t),n=ve(t),s=null==(e=t.ownerDocument)?void 0:e.body,o=ne(i.scrollWidth,i.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),r=ne(i.scrollHeight,i.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),a=-n.scrollLeft+ye(t),l=-n.scrollTop;return"rtl"===Qt(s||i).direction&&(a+=ne(i.clientWidth,s?s.clientWidth:0)-o),{width:o,height:r,x:a,y:l}}(Zt(t)))}function Ce(t){return t.split("-")[1]}function Le(t){var e,i=t.reference,n=t.element,s=t.placement,o=s?Vt(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 gt:e={x:a,y:i.y-n.height};break;case _t:e={x:a,y:i.y+i.height};break;case bt:e={x:i.x+i.width,y:l};break;case vt:e={x:i.x-n.width,y:l};break;default:e={x:i.x,y:i.y}}var c=o?ie(o):null;if(null!=c){var h="y"===c?"height":"width";switch(r){case Et:e[c]=e[c]-(i[h]/2-n[h]/2);break;case At: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?Tt:o,a=i.rootBoundary,l=void 0===a?Ot:a,c=i.elementContext,h=void 0===c?Ct:c,d=i.altBoundary,u=void 0!==d&&d,f=i.padding,p=void 0===f?0:f,m=ae("number"!=typeof p?p:le(p,wt)),g=h===Ct?Lt:Ct,_=t.elements.reference,b=t.rects.popper,v=t.elements[u?g:h],y=function(t,e,i){var n="clippingParents"===e?function(t){var e=Ae(Jt(t)),i=["absolute","fixed"].indexOf(Qt(t).position)>=0&&zt(t)?ee(t):t;return qt(i)?e.filter((function(t){return qt(t)&&Yt(t,i)&&"body"!==$t(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=ne(n.top,e.top),e.right=se(n.right,e.right),e.bottom=se(n.bottom,e.bottom),e.left=ne(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}(qt(v)?v:v.contextElement||Zt(t.elements.popper),r,l),w=Kt(_),E=Le({reference:w,element:b,strategy:"absolute",placement:s}),A=Te(Object.assign({},b,E)),T=h===Ct?A:w,O={top:y.top-T.top+m.top,bottom:T.bottom-y.bottom+m.bottom,left:y.left-T.left+m.left,right:T.right-y.right+m.right},C=t.modifiersData.offset;if(h===Ct&&C){var L=C[s];Object.keys(O).forEach((function(t){var e=[bt,_t].indexOf(t)>=0?1:-1,i=[gt,_t].indexOf(t)>=0?"y":"x";O[t]+=L[i]*e}))}return O}function xe(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?xt:l,h=Ce(n),d=h?a?kt:kt.filter((function(t){return Ce(t)===h})):wt,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})[Vt(i)],e}),{});return Object.keys(f).sort((function(t,e){return f[t]-f[e]}))}var De={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,_=Vt(g),b=l||(_!==g&&p?function(t){if(Vt(t)===yt)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(Vt(i)===yt?xe(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],L=Vt(C),k=Ce(C)===Et,x=[gt,_t].indexOf(L)>=0,D=x?"width":"height",S=ke(e,{placement:C,boundary:h,rootBoundary:d,altBoundary:u,padding:c}),I=x?k?bt:vt:k?_t:gt;y[D]>w[D]&&(I=ge(I));var N=ge(I),j=[];if(o&&j.push(S[L]<=0),a&&j.push(S[I]<=0,S[N]<=0),j.every((function(t){return t}))){T=C,A=!1;break}E.set(C,j)}if(A)for(var M=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"},P=p?3:1;P>0&&"break"!==M(P);P--);e.placement!==T&&(e.modifiersData[n]._skip=!0,e.placement=T,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function Se(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 Ie(t){return[gt,bt,_t,vt].some((function(e){return t[e]>=0}))}var 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=Se(r,n),c=Se(a,s,o),h=Ie(l),d=Ie(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})}},je={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=xt.reduce((function(t,i){return t[i]=function(t,e,i){var n=Vt(t),s=[vt,gt].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,[vt,bt].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}},Me={name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var e=t.state,i=t.name;e.modifiersData[i]=Le({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}},Pe={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}),_=Vt(e.placement),b=Ce(e.placement),v=!b,y=ie(_),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 L="y"===y?gt:vt,k="y"===y?_t:bt,x="y"===y?"height":"width",D=E[y],S=E[y]+g[L],I=E[y]-g[k],N=f?-T[x]/2:0,j=b===Et?A[x]:T[x],M=b===Et?-T[x]:-A[x],P=e.elements.arrow,H=f&&P?Xt(P):{width:0,height:0},R=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},B=R[L],$=R[k],W=re(0,A[x],H[x]),q=v?A[x]/2-N-W-B-O:j-W-B-O,z=v?-A[x]/2+N+W+$+O:M+W+$+O,U=e.elements.arrow&&ee(e.elements.arrow),F=U?"y"===y?U.clientTop||0:U.clientLeft||0:0,V=e.modifiersData.offset?e.modifiersData.offset[e.placement][y]:0,K=E[y]+q-V-F,X=E[y]+z-V;if(o){var Y=re(f?se(S,K):S,D,f?ne(I,X):I);E[y]=Y,C[y]=Y-D}if(a){var Q="x"===y?gt:vt,G="x"===y?_t:bt,Z=E[w],J=Z+g[Q],tt=Z-g[G],et=re(f?se(J,K):J,Z,f?ne(tt,X):tt);E[w]=et,C[w]=et-Z}}e.modifiersData[n]=C}},requiresIfExists:["offset"]};function He(t,e,i){void 0===i&&(i=!1);var n,s,o=Zt(e),r=Kt(t),a=zt(e),l={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(a||!a&&!i)&&(("body"!==$t(e)||we(o))&&(l=(n=e)!==Wt(n)&&zt(n)?{scrollLeft:(s=n).scrollLeft,scrollTop:s.scrollTop}:ve(n)),zt(e)?((c=Kt(e)).x+=e.clientLeft,c.y+=e.clientTop):o&&(c.x=ye(o))),{x:r.left+l.scrollLeft-c.x,y:r.top+l.scrollTop-c.y,width:r.width,height:r.height}}function Re(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 $e(){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){d(),a.options=Object.assign({},o,a.options,i),a.scrollParents={reference:qt(t)?Ae(t):t.contextElement?Ae(t.contextElement):[],popper:Ae(e)};var s,r,c=function(t){var e=Re(t);return Bt.reduce((function(t,i){return t.concat(e.filter((function(t){return t.phase===i})))}),[])}((s=[].concat(n,a.options.modifiers),r=s.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(r).map((function(t){return r[t]}))));return a.orderedModifiers=c.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($e(e,i)){a.rects={reference:He(e,ee(i),"fixed"===a.options.strategy),popper:Xt(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(!$e(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 qe=We(),ze=We({defaultModifiers:[pe,Me,ue,Ft]}),Ue=We({defaultModifiers:[pe,Me,ue,Ft,je,De,Pe,ce,Ne]}),Fe=Object.freeze({__proto__:null,popperGenerator:We,detectOverflow:ke,createPopperBase:qe,createPopper:Ue,createPopperLite:ze,top:gt,bottom:_t,right:bt,left:vt,auto:yt,basePlacements:wt,start:Et,end:At,clippingParents:Tt,viewport:Ot,popper:Ct,reference:Lt,variationPlacements:kt,placements:xt,beforeRead:Dt,read:St,afterRead:It,beforeMain:Nt,main:jt,afterMain:Mt,beforeWrite:Pt,write:Ht,afterWrite:Rt,modifierPhases:Bt,applyStyles:Ft,arrow:ce,computeStyles:ue,eventListeners:pe,flip:De,hide:Ne,offset:je,popperOffsets:Me,preventOverflow:Pe});const Ve="dropdown",Ke="Escape",Xe="Space",Ye="ArrowUp",Qe="ArrowDown",Ge=new RegExp("ArrowUp|ArrowDown|Escape"),Ze="click.bs.dropdown.data-api",Je="keydown.bs.dropdown.data-api",ti="show",ei='[data-bs-toggle="dropdown"]',ii=".dropdown-menu",ni=_()?"top-end":"top-start",si=_()?"top-start":"top-end",oi=_()?"bottom-end":"bottom-start",ri=_()?"bottom-start":"bottom-end",ai=_()?"left-start":"right-start",li=_()?"right-start":"left-start",ci={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},hi={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class di extends ${constructor(t,e){super(t),this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}static get Default(){return ci}static get DefaultType(){return hi}static get NAME(){return Ve}toggle(){d(this._element)||(this._element.classList.contains(ti)?this.hide():this.show())}show(){if(d(this._element)||this._menu.classList.contains(ti))return;const t=di.getParentFromElement(this._element),e={relatedTarget:this._element};if(!H.trigger(this._element,"show.bs.dropdown",e).defaultPrevented){if(this._inNavbar)V.setDataAttribute(this._menu,"popper","none");else{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:a(this._config.reference)?e=l(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=Ue(e,this._menu,i),n&&V.setDataAttribute(this._menu,"popper","static")}"ontouchstart"in document.documentElement&&!t.closest(".navbar-nav")&&[].concat(...document.body.children).forEach((t=>H.on(t,"mouseover",f))),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.toggle(ti),this._element.classList.toggle(ti),H.trigger(this._element,"shown.bs.dropdown",e)}}hide(){if(d(this._element)||!this._menu.classList.contains(ti))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()}_addEventListeners(){H.on(this._element,"click.bs.dropdown",(t=>{t.preventDefault(),this.toggle()}))}_completeHide(t){H.trigger(this._element,"hide.bs.dropdown",t).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>H.off(t,"mouseover",f))),this._popper&&this._popper.destroy(),this._menu.classList.remove(ti),this._element.classList.remove(ti),this._element.setAttribute("aria-expanded","false"),V.removeDataAttribute(this._menu,"popper"),H.trigger(this._element,"hidden.bs.dropdown",t))}_getConfig(t){if(t={...this.constructor.Default,...V.getDataAttributes(this._element),...t},c(Ve,t,this.constructor.DefaultType),"object"==typeof t.reference&&!a(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError(`${Ve.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return t}_getMenuElement(){return t.next(this._element,ii)[0]}_getPlacement(){const t=this._element.parentNode;if(t.classList.contains("dropend"))return ai;if(t.classList.contains("dropstart"))return li;const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?si:ni:e?ri:oi}_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:e,target:i}){const n=t.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(h);n.length&&w(n,i,e===Qe,!n.includes(i)).focus()}static dropdownInterface(t,e){const i=di.getOrCreateInstance(t,e);if("string"==typeof e){if(void 0===i[e])throw new TypeError(`No method named "${e}"`);i[e]()}}static jQueryInterface(t){return this.each((function(){di.dropdownInterface(this,t)}))}static clearMenus(e){if(e&&(2===e.button||"keyup"===e.type&&"Tab"!==e.key))return;const i=t.find(ei);for(let t=0,n=i.length;t<n;t++){const n=di.getInstance(i[t]);if(!n||!1===n._config.autoClose)continue;if(!n._element.classList.contains(ti))continue;const s={relatedTarget:n._element};if(e){const t=e.composedPath(),i=t.includes(n._menu);if(t.includes(n._element)||"inside"===n._config.autoClose&&!i||"outside"===n._config.autoClose&&i)continue;if(n._menu.contains(e.target)&&("keyup"===e.type&&"Tab"===e.key||/input|select|option|textarea|form/i.test(e.target.tagName)))continue;"click"===e.type&&(s.clickEvent=e)}n._completeHide(s)}}static getParentFromElement(t){return o(t)||t.parentNode}static dataApiKeydownHandler(e){if(/input|textarea/i.test(e.target.tagName)?e.key===Xe||e.key!==Ke&&(e.key!==Qe&&e.key!==Ye||e.target.closest(ii)):!Ge.test(e.key))return;const i=this.classList.contains(ti);if(!i&&e.key===Ke)return;if(e.preventDefault(),e.stopPropagation(),d(this))return;const n=()=>this.matches(ei)?this:t.prev(this,ei)[0];return e.key===Ke?(n().focus(),void di.clearMenus()):e.key===Ye||e.key===Qe?(i||n().click(),void di.getInstance(n())._selectMenuItem(e)):void(i&&e.key!==Xe||di.clearMenus())}}H.on(document,Je,ei,di.dataApiKeydownHandler),H.on(document,Je,ii,di.dataApiKeydownHandler),H.on(document,Ze,di.clearMenus),H.on(document,"keyup.bs.dropdown.data-api",di.clearMenus),H.on(document,Ze,ei,(function(t){t.preventDefault(),di.dropdownInterface(this)})),b(di);const ui=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",fi=".sticky-top";class pi{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(ui,"paddingRight",(e=>e+t)),this._setElementAttributes(fi,"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(ui,"paddingRight"),this._resetElementAttributes(fi,"marginRight")}_saveInitialAttribute(t,e){const i=t.style[e];i&&V.setDataAttribute(t,e,i)}_resetElementAttributes(t,e){this._applyManipulationCallback(t,(t=>{const i=V.getDataAttribute(t,e);void 0===i?t.style.removeProperty(e):(V.removeDataAttribute(t,e),t.style[e]=i)}))}_applyManipulationCallback(e,i){a(e)?i(e):t.find(e,this._element).forEach(i)}isOverflowing(){return this.getWidth()>0}}const mi={isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},gi={isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},_i="show",bi="mousedown.bs.backdrop";class vi{constructor(t){this._config=this._getConfig(t),this._isAppended=!1,this._element=null}show(t){this._config.isVisible?(this._append(),this._config.isAnimated&&p(this._getElement()),this._getElement().classList.add(_i),this._emulateAnimation((()=>{v(t)}))):v(t)}hide(t){this._config.isVisible?(this._getElement().classList.remove(_i),this._emulateAnimation((()=>{this.dispose(),v(t)}))):v(t)}_getElement(){if(!this._element){const t=document.createElement("div");t.className="modal-backdrop",this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_getConfig(t){return(t={...mi,..."object"==typeof t?t:{}}).rootElement=l(t.rootElement),c("backdrop",t,gi),t}_append(){this._isAppended||(this._config.rootElement.appendChild(this._getElement()),H.on(this._getElement(),bi,(()=>{v(this._config.clickCallback)})),this._isAppended=!0)}dispose(){this._isAppended&&(H.off(this._element,bi),this._element.remove(),this._isAppended=!1)}_emulateAnimation(t){y(t,this._getElement(),this._config.isAnimated)}}const yi="modal",wi="Escape",Ei={backdrop:!0,keyboard:!0,focus:!0},Ai={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},Ti="hidden.bs.modal",Oi="show.bs.modal",Ci="focusin.bs.modal",Li="resize.bs.modal",ki="click.dismiss.bs.modal",xi="keydown.dismiss.bs.modal",Di="mousedown.dismiss.bs.modal",Si="modal-open",Ii="show",Ni="modal-static";class ji extends ${constructor(e,i){super(e),this._config=this._getConfig(i),this._dialog=t.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new pi}static get Default(){return Ei}static get NAME(){return yi}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||this._isTransitioning||H.trigger(this._element,Oi,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(Si),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),H.on(this._element,ki,'[data-bs-dismiss="modal"]',(t=>this.hide(t))),H.on(this._dialog,Di,(()=>{H.one(this._element,"mouseup.dismiss.bs.modal",(t=>{t.target===this._element&&(this._ignoreBackdropClick=!0)}))})),this._showBackdrop((()=>this._showElement(t))))}hide(t){if(t&&["A","AREA"].includes(t.target.tagName)&&t.preventDefault(),!this._isShown||this._isTransitioning)return;if(H.trigger(this._element,"hide.bs.modal").defaultPrevented)return;this._isShown=!1;const e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),H.off(document,Ci),this._element.classList.remove(Ii),H.off(this._element,ki),H.off(this._dialog,Di),this._queueCallback((()=>this._hideModal()),this._element,e)}dispose(){[window,this._dialog].forEach((t=>H.off(t,".bs.modal"))),this._backdrop.dispose(),super.dispose(),H.off(document,Ci)}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new vi({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_getConfig(t){return t={...Ei,...V.getDataAttributes(this._element),..."object"==typeof t?t:{}},c(yi,t,Ai),t}_showElement(e){const i=this._isAnimated(),n=t.findOne(".modal-body",this._dialog);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(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,n&&(n.scrollTop=0),i&&p(this._element),this._element.classList.add(Ii),this._config.focus&&this._enforceFocus(),this._queueCallback((()=>{this._config.focus&&this._element.focus(),this._isTransitioning=!1,H.trigger(this._element,"shown.bs.modal",{relatedTarget:e})}),this._dialog,i)}_enforceFocus(){H.off(document,Ci),H.on(document,Ci,(t=>{document===t.target||this._element===t.target||this._element.contains(t.target)||this._element.focus()}))}_setEscapeEvent(){this._isShown?H.on(this._element,xi,(t=>{this._config.keyboard&&t.key===wi?(t.preventDefault(),this.hide()):this._config.keyboard||t.key!==wi||this._triggerBackdropTransition()})):H.off(this._element,xi)}_setResizeEvent(){this._isShown?H.on(window,Li,(()=>this._adjustDialog())):H.off(window,Li)}_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(Si),this._resetAdjustments(),this._scrollBar.reset(),H.trigger(this._element,Ti)}))}_showBackdrop(t){H.on(this._element,ki,(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(H.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(Ni)||(n||(i.overflowY="hidden"),t.add(Ni),this._queueCallback((()=>{t.remove(Ni),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&&!_()||i&&!t&&_())&&(this._element.style.paddingLeft=`${e}px`),(i&&!t&&!_()||!i&&t&&_())&&(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=ji.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t](e)}}))}}H.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(t){const e=o(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),H.one(e,Oi,(t=>{t.defaultPrevented||H.one(e,Ti,(()=>{h(this)&&this.focus()}))})),ji.getOrCreateInstance(e).toggle(this)})),b(ji);const Mi="offcanvas",Pi={backdrop:!0,keyboard:!0,scroll:!1},Hi={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},Ri="show",Bi=".offcanvas.show",$i="hidden.bs.offcanvas",Wi="focusin.bs.offcanvas";class qi extends ${constructor(t,e){super(t),this._config=this._getConfig(e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._addEventListeners()}static get NAME(){return Mi}static get Default(){return Pi}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||H.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||((new pi).hide(),this._enforceFocusOnElement(this._element)),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Ri),this._queueCallback((()=>{H.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})}),this._element,!0))}hide(){this._isShown&&(H.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||(H.off(document,Wi),this._element.blur(),this._isShown=!1,this._element.classList.remove(Ri),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 pi).reset(),H.trigger(this._element,$i)}),this._element,!0)))}dispose(){this._backdrop.dispose(),super.dispose(),H.off(document,Wi)}_getConfig(t){return t={...Pi,...V.getDataAttributes(this._element),..."object"==typeof t?t:{}},c(Mi,t,Hi),t}_initializeBackDrop(){return new vi({isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_enforceFocusOnElement(t){H.off(document,Wi),H.on(document,Wi,(e=>{document===e.target||t===e.target||t.contains(e.target)||t.focus()})),t.focus()}_addEventListeners(){H.on(this._element,"click.dismiss.bs.offcanvas",'[data-bs-dismiss="offcanvas"]',(()=>this.hide())),H.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=qi.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)}}))}}H.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(e){const i=o(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),d(this))return;H.one(i,$i,(()=>{h(this)&&this.focus()}));const n=t.findOne(Bi);n&&n!==i&&qi.getInstance(n).hide(),qi.getOrCreateInstance(i).toggle(this)})),H.on(window,"load.bs.offcanvas.data-api",(()=>t.find(Bi).forEach((t=>qi.getOrCreateInstance(t).show())))),b(qi);const zi=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Ui=/^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i,Fi=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,Vi=(t,e)=>{const i=t.nodeName.toLowerCase();if(e.includes(i))return!zi.has(i)||Boolean(Ui.test(t.nodeValue)||Fi.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 Ki(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=Object.keys(e),o=[].concat(...n.body.querySelectorAll("*"));for(let t=0,i=o.length;t<i;t++){const i=o[t],n=i.nodeName.toLowerCase();if(!s.includes(n)){i.remove();continue}const r=[].concat(...i.attributes),a=[].concat(e["*"]||[],e[n]||[]);r.forEach((t=>{Vi(t,a)||i.removeAttribute(t.nodeName)}))}return n.body.innerHTML}const Xi="tooltip",Yi=new RegExp("(^|\\s)bs-tooltip\\S+","g"),Qi=new Set(["sanitize","allowList","sanitizeFn"]),Gi={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)"},Zi={AUTO:"auto",TOP:"top",RIGHT:_()?"left":"right",BOTTOM:"bottom",LEFT:_()?"right":"left"},Ji={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},tn={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"},en="fade",nn="show",sn="show",on="out",rn="hover",an="focus";class ln extends ${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 Ji}static get NAME(){return Xi}static get Event(){return tn}static get DefaultType(){return Gi}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(nn))return void this._leave(null,this);this._enter(null,this)}}dispose(){clearTimeout(this._timeout),H.off(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this.tip&&this.tip.remove(),this._popper&&this._popper.destroy(),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=H.trigger(this._element,this.constructor.Event.SHOW),e=u(this._element),n=null===e?this._element.ownerDocument.documentElement.contains(this._element):e.contains(this._element);if(t.defaultPrevented||!n)return;const s=this.getTipElement(),o=i(this.constructor.NAME);s.setAttribute("id",o),this._element.setAttribute("aria-describedby",o),this.setContent(),this._config.animation&&s.classList.add(en);const r="function"==typeof this._config.placement?this._config.placement.call(this,s,this._element):this._config.placement,a=this._getAttachment(r);this._addAttachmentClass(a);const{container:l}=this._config;B.set(s,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.appendChild(s),H.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=Ue(this._element,s,this._getPopperConfig(a)),s.classList.add(nn);const c="function"==typeof this._config.customClass?this._config.customClass():this._config.customClass;c&&s.classList.add(...c.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>{H.on(t,"mouseover",f)}));const h=this.tip.classList.contains(en);this._queueCallback((()=>{const t=this._hoverState;this._hoverState=null,H.trigger(this._element,this.constructor.Event.SHOWN),t===on&&this._leave(null,this)}),this.tip,h)}hide(){if(!this._popper)return;const t=this.getTipElement();if(H.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;t.classList.remove(nn),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>H.off(t,"mouseover",f))),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1;const e=this.tip.classList.contains(en);this._queueCallback((()=>{this._isWithActiveTrigger()||(this._hoverState!==sn&&t.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),H.trigger(this._element,this.constructor.Event.HIDDEN),this._popper&&(this._popper.destroy(),this._popper=null))}),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");return t.innerHTML=this._config.template,this.tip=t.children[0],this.tip}setContent(){const e=this.getTipElement();this.setElementContent(t.findOne(".tooltip-inner",e),this.getTitle()),e.classList.remove(en,nn)}setElementContent(t,e){if(null!==t)return a(e)?(e=l(e),void(this._config.html?e.parentNode!==t&&(t.innerHTML="",t.appendChild(e)):t.textContent=e.textContent)):void(this._config.html?(this._config.sanitize&&(e=Ki(e,this._config.allowList,this._config.sanitizeFn)),t.innerHTML=e):t.textContent=e)}getTitle(){let t=this._element.getAttribute("data-bs-original-title");return t||(t="function"==typeof this._config.title?this._config.title.call(this._element):this._config.title),t}updateAttachment(t){return"right"===t?"end":"left"===t?"start":t}_initializeOnDelegatedTarget(t,e){const i=this.constructor.DATA_KEY;return(e=e||B.get(t.delegateTarget,i))||(e=new this.constructor(t.delegateTarget,this._getDelegateConfig()),B.set(t.delegateTarget,i,e)),e}_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(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(`bs-tooltip-${this.updateAttachment(t)}`)}_getAttachment(t){return Zi[t.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach((t=>{if("click"===t)H.on(this._element,this.constructor.Event.CLICK,this._config.selector,(t=>this.toggle(t)));else if("manual"!==t){const e=t===rn?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,i=t===rn?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;H.on(this._element,e,this._config.selector,(t=>this._enter(t))),H.on(this._element,i,this._config.selector,(t=>this._leave(t)))}})),this._hideModalHandler=()=>{this._element&&this.hide()},H.on(this._element.closest(".modal"),"hide.bs.modal",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?an:rn]=!0),e.getTipElement().classList.contains(nn)||e._hoverState===sn?e._hoverState=sn:(clearTimeout(e._timeout),e._hoverState=sn,e._config.delay&&e._config.delay.show?e._timeout=setTimeout((()=>{e._hoverState===sn&&e.show()}),e._config.delay.show):e.show())}_leave(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusout"===t.type?an:rn]=e._element.contains(t.relatedTarget)),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState=on,e._config.delay&&e._config.delay.hide?e._timeout=setTimeout((()=>{e._hoverState===on&&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=V.getDataAttributes(this._element);return Object.keys(e).forEach((t=>{Qi.has(t)&&delete e[t]})),(t={...this.constructor.Default,...e,..."object"==typeof t&&t?t:{}}).container=!1===t.container?document.body:l(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()),c(Xi,t,this.constructor.DefaultType),t.sanitize&&(t.template=Ki(t.template,t.allowList,t.sanitizeFn)),t}_getDelegateConfig(){const t={};if(this._config)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=t.getAttribute("class").match(Yi);null!==e&&e.length>0&&e.map((t=>t.trim())).forEach((e=>t.classList.remove(e)))}_handlePopperPlacementChange(t){const{state:e}=t;e&&(this.tip=e.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(e.placement)))}static jQueryInterface(t){return this.each((function(){const e=ln.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}b(ln);const cn=new RegExp("(^|\\s)bs-popover\\S+","g"),hn={...ln.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>'},dn={...ln.DefaultType,content:"(string|element|function)"},un={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"},fn=".popover-header",pn=".popover-body";class mn extends ln{static get Default(){return hn}static get NAME(){return"popover"}static get Event(){return un}static get DefaultType(){return dn}isWithContent(){return this.getTitle()||this._getContent()}getTipElement(){return this.tip||(this.tip=super.getTipElement(),this.getTitle()||t.findOne(fn,this.tip).remove(),this._getContent()||t.findOne(pn,this.tip).remove()),this.tip}setContent(){const e=this.getTipElement();this.setElementContent(t.findOne(fn,e),this.getTitle());let i=this._getContent();"function"==typeof i&&(i=i.call(this._element)),this.setElementContent(t.findOne(pn,e),i),e.classList.remove("fade","show")}_addAttachmentClass(t){this.getTipElement().classList.add(`bs-popover-${this.updateAttachment(t)}`)}_getContent(){return this._element.getAttribute("data-bs-content")||this._config.content}_cleanTipClass(){const t=this.getTipElement(),e=t.getAttribute("class").match(cn);null!==e&&e.length>0&&e.map((t=>t.trim())).forEach((e=>t.classList.remove(e)))}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]()}}))}}b(mn);const gn="scrollspy",_n={offset:10,method:"auto",target:""},bn={offset:"number",method:"string",target:"(string|element)"},vn="active",yn="position";class wn extends ${constructor(t,e){super(t),this._scrollElement="BODY"===this._element.tagName?window:this._element,this._config=this._getConfig(e),this._selector=`${this._config.target} .nav-link, ${this._config.target} .list-group-item, ${this._config.target} .dropdown-item`,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,H.on(this._scrollElement,"scroll.bs.scrollspy",(()=>this._process())),this.refresh(),this._process()}static get Default(){return _n}static get NAME(){return gn}refresh(){const e=this._scrollElement===this._scrollElement.window?"offset":yn,i="auto"===this._config.method?e:this._config.method,n=i===yn?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),t.find(this._selector).map((e=>{const o=s(e),r=o?t.findOne(o):null;if(r){const t=r.getBoundingClientRect();if(t.width||t.height)return[V[i](r).top+n,o]}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(){H.off(this._scrollElement,".bs.scrollspy"),super.dispose()}_getConfig(t){if("string"!=typeof(t={..._n,...V.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}}).target&&a(t.target)){let{id:e}=t.target;e||(e=i(gn),t.target.id=e),t.target=`#${e}`}return c(gn,t,bn),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(e){this._activeTarget=e,this._clear();const i=this._selector.split(",").map((t=>`${t}[data-bs-target="${e}"],${t}[href="${e}"]`)),n=t.findOne(i.join(","));n.classList.contains("dropdown-item")?(t.findOne(".dropdown-toggle",n.closest(".dropdown")).classList.add(vn),n.classList.add(vn)):(n.classList.add(vn),t.parents(n,".nav, .list-group").forEach((e=>{t.prev(e,".nav-link, .list-group-item").forEach((t=>t.classList.add(vn))),t.prev(e,".nav-item").forEach((e=>{t.children(e,".nav-link").forEach((t=>t.classList.add(vn)))}))}))),H.trigger(this._scrollElement,"activate.bs.scrollspy",{relatedTarget:e})}_clear(){t.find(this._selector).filter((t=>t.classList.contains(vn))).forEach((t=>t.classList.remove(vn)))}static jQueryInterface(t){return this.each((function(){const e=wn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}H.on(window,"load.bs.scrollspy.data-api",(()=>{t.find('[data-bs-spy="scroll"]').forEach((t=>new wn(t)))})),b(wn);const En="active",An="fade",Tn="show",On=".active",Cn=":scope > li > .active";class Ln extends ${static get NAME(){return"tab"}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(En))return;let e;const i=o(this._element),n=this._element.closest(".nav, .list-group");if(n){const i="UL"===n.nodeName||"OL"===n.nodeName?Cn:On;e=t.find(i,n),e=e[e.length-1]}const s=e?H.trigger(e,"hide.bs.tab",{relatedTarget:this._element}):null;if(H.trigger(this._element,"show.bs.tab",{relatedTarget:e}).defaultPrevented||null!==s&&s.defaultPrevented)return;this._activate(this._element,n);const r=()=>{H.trigger(e,"hidden.bs.tab",{relatedTarget:this._element}),H.trigger(this._element,"shown.bs.tab",{relatedTarget:e})};i?this._activate(i,i.parentNode,r):r()}_activate(e,i,n){const s=(!i||"UL"!==i.nodeName&&"OL"!==i.nodeName?t.children(i,On):t.find(Cn,i))[0],o=n&&s&&s.classList.contains(An),r=()=>this._transitionComplete(e,s,n);s&&o?(s.classList.remove(Tn),this._queueCallback(r,e,!0)):r()}_transitionComplete(e,i,n){if(i){i.classList.remove(En);const e=t.findOne(":scope > .dropdown-menu .active",i.parentNode);e&&e.classList.remove(En),"tab"===i.getAttribute("role")&&i.setAttribute("aria-selected",!1)}e.classList.add(En),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(An)&&e.classList.add(Tn);let s=e.parentNode;if(s&&"LI"===s.nodeName&&(s=s.parentNode),s&&s.classList.contains("dropdown-menu")){const i=e.closest(".dropdown");i&&t.find(".dropdown-toggle",i).forEach((t=>t.classList.add(En))),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(t){return this.each((function(){const e=Ln.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}H.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(),d(this)||Ln.getOrCreateInstance(this).show()})),b(Ln);const kn="toast",xn="hide",Dn="show",Sn="showing",In={animation:"boolean",autohide:"boolean",delay:"number"},Nn={animation:!0,autohide:!0,delay:5e3};class jn extends ${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 In}static get Default(){return Nn}static get NAME(){return kn}show(){H.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove(xn),p(this._element),this._element.classList.add(Sn),this._queueCallback((()=>{this._element.classList.remove(Sn),this._element.classList.add(Dn),H.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()}),this._element,this._config.animation))}hide(){this._element.classList.contains(Dn)&&(H.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.remove(Dn),this._queueCallback((()=>{this._element.classList.add(xn),H.trigger(this._element,"hidden.bs.toast")}),this._element,this._config.animation)))}dispose(){this._clearTimeout(),this._element.classList.contains(Dn)&&this._element.classList.remove(Dn),super.dispose()}_getConfig(t){return t={...Nn,...V.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}},c(kn,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(){H.on(this._element,"click.dismiss.bs.toast",'[data-bs-dismiss="toast"]',(()=>this.hide())),H.on(this._element,"mouseover.bs.toast",(t=>this._onInteraction(t,!0))),H.on(this._element,"mouseout.bs.toast",(t=>this._onInteraction(t,!1))),H.on(this._element,"focusin.bs.toast",(t=>this._onInteraction(t,!0))),H.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=jn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}return b(jn),{Alert:W,Button:z,Carousel:ot,Collapse:mt,Dropdown:di,Modal:ji,Offcanvas:qi,Popover:mn,ScrollSpy:wn,Tab:Ln,Toast:jn,Tooltip:ln}})); +//# sourceMappingURL=oe-bcl-default.bundle.min.js.map diff --git a/assets/js/oe-bcl-default.bundle.min.js.map b/assets/js/oe-bcl-default.bundle.min.js.map new file mode 100644 index 00000000..3cf4a7f1 --- /dev/null +++ b/assets/js/oe-bcl-default.bundle.min.js.map @@ -0,0 +1 @@ +{"version":3,"file":"oe-bcl-default.bundle.min.js","sources":["../../../../bootstrap/js/src/dom/selector-engine.js","../../../../bootstrap/js/src/util/index.js","../../../../bootstrap/js/src/dom/event-handler.js","../../../../bootstrap/js/src/dom/data.js","../../../../bootstrap/js/src/base-component.js","../../../../bootstrap/js/src/alert.js","../../../../bootstrap/js/src/button.js","../../../../bootstrap/js/src/dom/manipulator.js","../../../../bootstrap/js/src/carousel.js","../../../../bootstrap/js/src/collapse.js","../../../../node_modules/@popperjs/core/lib/enums.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../../../../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../../../../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../../../../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/contains.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../../../../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../../../../node_modules/@popperjs/core/lib/utils/math.js","../../../../node_modules/@popperjs/core/lib/utils/within.js","../../../../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../../../../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../../../../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../../../../node_modules/@popperjs/core/lib/modifiers/arrow.js","../../../../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../../../../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../../../../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../../../../node_modules/@popperjs/core/lib/utils/getVariation.js","../../../../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../../../../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../../../../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../../../../node_modules/@popperjs/core/lib/modifiers/flip.js","../../../../node_modules/@popperjs/core/lib/modifiers/hide.js","../../../../node_modules/@popperjs/core/lib/modifiers/offset.js","../../../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../../../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../../../../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../../../../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../../../../node_modules/@popperjs/core/lib/createPopper.js","../../../../node_modules/@popperjs/core/lib/utils/debounce.js","../../../../node_modules/@popperjs/core/lib/utils/mergeByName.js","../../../../node_modules/@popperjs/core/lib/popper-lite.js","../../../../node_modules/@popperjs/core/lib/popper.js","../../../../bootstrap/js/src/dropdown.js","../../../../bootstrap/js/src/util/scrollbar.js","../../../../bootstrap/js/src/util/backdrop.js","../../../../bootstrap/js/src/modal.js","../../../../bootstrap/js/src/offcanvas.js","../../../../bootstrap/js/src/util/sanitizer.js","../../../../bootstrap/js/src/tooltip.js","../../../../bootstrap/js/src/popover.js","../../../../bootstrap/js/src/scrollspy.js","../../../../bootstrap/js/src/tab.js","../../../../bootstrap/js/src/toast.js","../index.umd.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NODE_TEXT = 3\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children)\n .filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n\n let ancestor = element.parentNode\n\n while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {\n if (ancestor.matches(selector)) {\n parents.push(ancestor)\n }\n\n ancestor = ancestor.parentNode\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n }\n}\n\nexport default SelectorEngine\n","import SelectorEngine from '../dom/selector-engine'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = obj => {\n if (obj === null || obj === undefined) {\n return `${obj}`\n }\n\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return SelectorEngine.findOne(obj)\n }\n\n return null\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n return getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\nconst reflow = element => element.offsetHeight\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n DOMContentLoadedCallbacks.forEach(callback => callback())\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element depending on the direction and if cycle is allowed\n if (index === -1) {\n return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]\n }\n\n const listLength = list.length\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n getNextActiveElement,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute,\n executeAfterTransition\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\nconst customEventsRegex = /^(mouseenter|mouseleave)/i\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * ------------------------------------------------------------------------\n * Private methods\n * ------------------------------------------------------------------------\n */\n\nfunction getUidEvent(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getEvent(element) {\n const uid = getUidEvent(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n event.delegateTarget = element\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (let i = domElements.length; i--;) {\n if (domElements[i] === target) {\n event.delegateTarget = target\n\n if (handler.oneOff) {\n // eslint-disable-next-line unicorn/consistent-destructuring\n EventHandler.off(element, event.type, selector, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n\n // To please ESLint\n return null\n }\n}\n\nfunction findHandler(events, handler, delegationSelector = null) {\n const uidEventList = Object.keys(events)\n\n for (let i = 0, len = uidEventList.length; i < len; i++) {\n const event = events[uidEventList[i]]\n\n if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {\n return event\n }\n }\n\n return null\n}\n\nfunction normalizeParams(originalTypeEvent, handler, delegationFn) {\n const delegation = typeof handler === 'string'\n const originalHandler = delegation ? delegationFn : handler\n\n let typeEvent = getTypeEvent(originalTypeEvent)\n const isNative = nativeEvents.has(typeEvent)\n\n if (!isNative) {\n typeEvent = originalTypeEvent\n }\n\n return [delegation, originalHandler, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n if (!handler) {\n handler = delegationFn\n delegationFn = null\n }\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (customEventsRegex.test(originalTypeEvent)) {\n const wrapFn = fn => {\n return function (event) {\n if (!event.relatedTarget || (event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget))) {\n return fn.call(this, event)\n }\n }\n }\n\n if (delegationFn) {\n delegationFn = wrapFn(delegationFn)\n } else {\n handler = wrapFn(handler)\n }\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const events = getEvent(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null)\n\n if (previousFn) {\n previousFn.oneOff = previousFn.oneOff && oneOff\n\n return\n }\n\n const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = delegation ?\n bootstrapDelegationHandler(element, handler, delegationFn) :\n bootstrapHandler(element, handler)\n\n fn.delegationSelector = delegation ? handler : null\n fn.originalHandler = originalHandler\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, delegation)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n Object.keys(storeElementEvent).forEach(handlerKey => {\n if (handlerKey.includes(namespace)) {\n const event = storeElementEvent[handlerKey]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n}\n\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '')\n return customEvents[event] || event\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, false)\n },\n\n one(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFn) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getEvent(element)\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof originalHandler !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!events || !events[typeEvent]) {\n return\n }\n\n removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null)\n return\n }\n\n if (isNamespace) {\n Object.keys(events).forEach(elementEvent => {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n })\n }\n\n const storeElementEvent = events[typeEvent] || {}\n Object.keys(storeElementEvent).forEach(keyHandlers => {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n const event = storeElementEvent[keyHandlers]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = getTypeEvent(event)\n const inNamespace = event !== typeEvent\n const isNative = nativeEvents.has(typeEvent)\n\n let jQueryEvent\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n let evt = null\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n if (isNative) {\n evt = document.createEvent('HTMLEvents')\n evt.initEvent(typeEvent, bubbles, true)\n } else {\n evt = new CustomEvent(event, {\n bubbles,\n cancelable: true\n })\n }\n\n // merge custom information in our event\n if (typeof args !== 'undefined') {\n Object.keys(args).forEach(key => {\n Object.defineProperty(evt, key, {\n get() {\n return args[key]\n }\n })\n })\n }\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst elementMap = new Map()\n\nexport default {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map())\n }\n\n const instanceMap = elementMap.get(element)\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`)\n return\n }\n\n instanceMap.set(key, instance)\n },\n\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null\n }\n\n return null\n },\n\n remove(element, key) {\n if (!elementMap.has(element)) {\n return\n }\n\n const instanceMap = elementMap.get(element)\n\n instanceMap.delete(key)\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element)\n }\n }\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\nimport {\n executeAfterTransition,\n getElement\n} from './util/index'\nimport EventHandler from './dom/event-handler'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst VERSION = '5.0.2'\n\nclass BaseComponent {\n constructor(element) {\n element = getElement(element)\n\n if (!element) {\n return\n }\n\n this._element = element\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n Object.getOwnPropertyNames(this).forEach(propertyName => {\n this[propertyName] = null\n })\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated)\n }\n\n /** Static */\n\n static getInstance(element) {\n return Data.get(element, this.DATA_KEY)\n }\n\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DISMISS = '[data-bs-dismiss=\"alert\"]'\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_ALERT = 'alert'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n close(element) {\n const rootElement = element ? this._getRootElement(element) : this._element\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent === null || customEvent.defaultPrevented) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n // Private\n\n _getRootElement(element) {\n return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`)\n }\n\n _triggerCloseEvent(element) {\n return EventHandler.trigger(element, EVENT_CLOSE)\n }\n\n _removeElement(element) {\n element.classList.remove(CLASS_NAME_SHOW)\n\n const isAnimated = element.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(() => this._destroyElement(element), element, isAnimated)\n }\n\n _destroyElement(element) {\n element.remove()\n\n EventHandler.trigger(element, EVENT_CLOSED)\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this)\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert.handleDismiss(new Alert()))\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Alert to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this)\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n const data = Button.getOrCreateInstance(button)\n\n data.toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Button to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(val) {\n if (val === 'true') {\n return true\n }\n\n if (val === 'false') {\n return false\n }\n\n if (val === Number(val).toString()) {\n return Number(val)\n }\n\n if (val === '' || val === 'null') {\n return null\n }\n\n return val\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n\n Object.keys(element.dataset)\n .filter(key => key.startsWith('bs'))\n .forEach(key => {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n })\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n },\n\n offset(element) {\n const rect = element.getBoundingClientRect()\n\n return {\n top: rect.top + document.body.scrollTop,\n left: rect.left + document.body.scrollLeft\n }\n },\n\n position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n }\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n getNextActiveElement,\n reflow,\n triggerTransitionEnd,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n slide: false,\n pause: 'hover',\n wrap: true,\n touch: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)',\n keyboard: 'boolean',\n slide: '(boolean|string)',\n pause: '(string|boolean)',\n wrap: 'boolean',\n touch: 'boolean'\n}\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY]: DIRECTION_LEFT\n}\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_INDICATOR = '[data-bs-target]'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n next() {\n this._slide(ORDER_NEXT)\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n this._slide(ORDER_PREV)\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) {\n triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config && this._config.interval && !this._isPaused) {\n this._updateInterval()\n\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const order = index > activeIndex ?\n ORDER_NEXT :\n ORDER_PREV\n\n this._slide(order, this._items[index])\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n this.touchDeltaX = 0\n\n if (!direction) {\n return\n }\n\n this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT)\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event))\n EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event))\n }\n\n if (this._config.touch && this._touchSupported) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n const start = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchStartX = event.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.touches[0].clientX\n }\n }\n\n const move = event => {\n // ensure swiping with one touch and not pinching\n this.touchDeltaX = event.touches && event.touches.length > 1 ?\n 0 :\n event.touches[0].clientX - this.touchStartX\n }\n\n const end = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {\n EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault())\n })\n\n if (this._pointerEvent) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n const direction = KEY_TO_DIRECTION[event.key]\n if (direction) {\n event.preventDefault()\n this._slide(direction)\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode ?\n SelectorEngine.find(SELECTOR_ITEM, element.parentNode) :\n []\n\n return this._items.indexOf(element)\n }\n\n _getItemByOrder(order, activeElement) {\n const isNext = order === ORDER_NEXT\n return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap)\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element))\n\n return EventHandler.trigger(this._element, EVENT_SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement)\n\n for (let i = 0; i < indicators.length; i++) {\n if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {\n indicators[i].classList.add(CLASS_NAME_ACTIVE)\n indicators[i].setAttribute('aria-current', 'true')\n break\n }\n }\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n if (elementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = elementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n }\n\n _slide(directionOrOrder, element) {\n const order = this._directionToOrder(directionOrOrder)\n const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || this._getItemByOrder(order, activeElement)\n\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n const isNext = order === ORDER_NEXT\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n const eventDirectionName = this._orderToDirection(order)\n\n if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {\n this._isSliding = false\n return\n }\n\n if (this._isSliding) {\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n this._activeElement = nextElement\n\n const triggerSlidEvent = () => {\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }\n\n if (this._element.classList.contains(CLASS_NAME_SLIDE)) {\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n setTimeout(triggerSlidEvent, 0)\n }\n\n this._queueCallback(completeCallBack, activeElement, true)\n } else {\n activeElement.classList.remove(CLASS_NAME_ACTIVE)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n this._isSliding = false\n triggerSlidEvent()\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _directionToOrder(direction) {\n if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) {\n return direction\n }\n\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (![ORDER_NEXT, ORDER_PREV].includes(order)) {\n return order\n }\n\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n\n static carouselInterface(element, config) {\n const data = Carousel.getOrCreateInstance(element, config)\n\n let { _config } = data\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Carousel.carouselInterface(this, config)\n })\n }\n\n static dataApiClickHandler(event) {\n const target = getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel.carouselInterface(target, config)\n\n if (slideIndex) {\n Carousel.getInstance(target).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler)\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (let i = 0, len = carousels.length; i < len; i++) {\n Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i]))\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Carousel to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElement,\n getSelectorFromElement,\n getElementFromSelector,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n toggle: true,\n parent: ''\n}\n\nconst DefaultType = {\n toggle: 'boolean',\n parent: '(string|element)'\n}\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.show, .collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._isTransitioning = false\n this._config = this._getConfig(config)\n this._triggerArray = SelectorEngine.find(\n `${SELECTOR_DATA_TOGGLE}[href=\"#${this._element.id}\"],` +\n `${SELECTOR_DATA_TOGGLE}[data-bs-target=\"#${this._element.id}\"]`\n )\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElem => foundElem === this._element)\n\n if (selector !== null && filterElement.length) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent)\n .filter(elem => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-bs-parent') === this._config.parent\n }\n\n return elem.classList.contains(CLASS_NAME_COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n const container = SelectorEngine.findOne(this._selector)\n if (actives) {\n const tempActiveData = actives.find(elem => container !== elem)\n activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null\n\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n if (actives) {\n actives.forEach(elemActive => {\n if (container !== elemActive) {\n Collapse.collapseInterface(elemActive, 'hide')\n }\n\n if (!activesData) {\n Data.set(elemActive, DATA_KEY, null)\n }\n })\n }\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n this._triggerArray.forEach(element => {\n element.classList.remove(CLASS_NAME_COLLAPSED)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n\n this._queueCallback(complete, this._element, true)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const elem = getElementFromSelector(trigger)\n\n if (elem && !elem.classList.contains(CLASS_NAME_SHOW)) {\n trigger.classList.add(CLASS_NAME_COLLAPSED)\n trigger.setAttribute('aria-expanded', false)\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n\n this._queueCallback(complete, this._element, true)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT\n }\n\n _getParent() {\n let { parent } = this._config\n\n parent = getElement(parent)\n\n const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent=\"${parent}\"]`\n\n SelectorEngine.find(selector, parent)\n .forEach(element => {\n const selected = getElementFromSelector(element)\n\n this._addAriaAndCollapsedClass(\n selected,\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (!element || !triggerArray.length) {\n return\n }\n\n const isOpen = element.classList.contains(CLASS_NAME_SHOW)\n\n triggerArray.forEach(elem => {\n if (isOpen) {\n elem.classList.remove(CLASS_NAME_COLLAPSED)\n } else {\n elem.classList.add(CLASS_NAME_COLLAPSED)\n }\n\n elem.setAttribute('aria-expanded', isOpen)\n })\n }\n\n // Static\n\n static collapseInterface(element, config) {\n let data = Collapse.getInstance(element)\n const _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Collapse.collapseInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n const triggerData = Manipulator.getDataAttributes(this)\n const selector = getSelectorFromElement(this)\n const selectorElements = SelectorEngine.find(selector)\n\n selectorElements.forEach(element => {\n const data = Collapse.getInstance(element)\n let config\n if (data) {\n // update parent attribute\n if (data._parent === null && typeof triggerData.parent === 'string') {\n data._config.parent = triggerData.parent\n data._parent = data._getParent()\n }\n\n config = 'toggle'\n } else {\n config = triggerData\n }\n\n Collapse.collapseInterface(element, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Collapse to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Collapse)\n\nexport default Collapse\n","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export default function getBoundingClientRect(element) {\n var rect = element.getBoundingClientRect();\n return {\n width: rect.width,\n height: rect.height,\n top: rect.top,\n right: rect.right,\n bottom: rect.bottom,\n left: rect.left,\n x: rect.left,\n y: rect.top\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;\n var isIE = navigator.userAgent.indexOf('Trident') !== -1;\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport default function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport within from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n if (!isHTMLElement(arrowElement)) {\n console.error(['Popper: \"arrow\" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' '));\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: \"arrow\" modifier\\'s `element` must be a child of the popper', 'element.'].join(' '));\n }\n\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","import { top, left, right, bottom } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref) {\n var x = _ref.x,\n y = _ref.y;\n var win = window;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(round(x * dpr) / dpr) || 0,\n y: round(round(y * dpr) / dpr) || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets;\n\n var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets,\n _ref3$x = _ref3.x,\n x = _ref3$x === void 0 ? 0 : _ref3$x,\n _ref3$y = _ref3.y,\n y = _ref3$y === void 0 ? 0 : _ref3$y;\n\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top) {\n sideY = bottom; // $FlowFixMe[prop-missing]\n\n y -= offsetParent[heightProp] - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left) {\n sideX = right; // $FlowFixMe[prop-missing]\n\n x -= offsetParent[widthProp] - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref4) {\n var state = _ref4.state,\n options = _ref4.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n\n if (process.env.NODE_ENV !== \"production\") {\n var transitionProperty = getComputedStyle(state.elements.popper).transitionProperty || '';\n\n if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {\n return transitionProperty.indexOf(property) >= 0;\n })) {\n console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: \"transform\", \"top\", \"right\", \"bottom\", \"left\".', '\\n\\n', 'Disable the \"computeStyles\" modifier\\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\\n\\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));\n }\n }\n\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If <html> has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on <html>\n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element) {\n var rect = getBoundingClientRect(element);\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nexport default function getViewportRect(element) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper\n // can be obscured underneath it.\n // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even\n // if it isn't open, so if this isn't available, the popper will be detected\n // to overflow the bottom of the screen too early.\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently)\n // In Chrome, it returns a value very close to 0 (+/-) but contains rounding\n // errors due to floating point numbers, so we need to check precision.\n // Safari returns a number <= 0, usually < -1 when pinch-zoomed\n // Feature detection fails in mobile emulation mode in Chrome.\n // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) <\n // 0.001\n // Fallback here: \"Not Safari\" userAgent\n\n if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var referenceElement = state.elements.reference;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);\n var referenceClientRect = getBoundingClientRect(referenceElement);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, \"auto\" cannot be used to allow \"bottom-start\".', 'Use \"auto-start\" instead.'].join(' '));\n }\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\";\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport within from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { max as mathMax, min as mathMin } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis || checkAltAxis) {\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = popperOffsets[mainAxis] + overflow[mainSide];\n var max = popperOffsets[mainAxis] - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0;\n var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue;\n\n if (checkMainAxis) {\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var _preventedOffset = within(tether ? mathMin(_min, tetherMin) : _min, _offset, tether ? mathMax(_max, tetherMax) : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\"; // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement);\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport getComputedStyle from \"./dom-utils/getComputedStyle.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport validateModifiers from \"./utils/validateModifiers.js\";\nimport uniqueBy from \"./utils/uniqueBy.js\";\nimport getBasePlacement from \"./utils/getBasePlacement.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nimport { auto } from \"./enums.js\";\nvar INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';\nvar INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(options) {\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n }); // Validate the provided modifiers so that the consumer will get warned\n // if one of the modifiers is invalid for any reason\n\n if (process.env.NODE_ENV !== \"production\") {\n var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {\n var name = _ref.name;\n return name;\n });\n validateModifiers(modifiers);\n\n if (getBasePlacement(state.options.placement) === auto) {\n var flipModifier = state.orderedModifiers.find(function (_ref2) {\n var name = _ref2.name;\n return name === 'flip';\n });\n\n if (!flipModifier) {\n console.error(['Popper: \"auto\" placements require the \"flip\" modifier be', 'present and enabled to work.'].join(' '));\n }\n }\n\n var _getComputedStyle = getComputedStyle(popper),\n marginTop = _getComputedStyle.marginTop,\n marginRight = _getComputedStyle.marginRight,\n marginBottom = _getComputedStyle.marginBottom,\n marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can\n // cause bugs with positioning, so we'll warn the consumer\n\n\n if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {\n return parseFloat(margin);\n })) {\n console.warn(['Popper: CSS \"margin\" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));\n }\n }\n\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n var __debug_loops__ = 0;\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (process.env.NODE_ENV !== \"production\") {\n __debug_loops__ += 1;\n\n if (__debug_loops__ > 100) {\n console.error(INFINITE_LOOP_ERROR);\n break;\n }\n }\n\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref3) {\n var name = _ref3.name,\n _ref3$options = _ref3.options,\n options = _ref3$options === void 0 ? {} : _ref3$options,\n effect = _ref3.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n getElement,\n getElementFromSelector,\n isDisabled,\n isElement,\n isVisible,\n isRTL,\n noop,\n getNextActiveElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst SPACE_KEY = 'Space'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY}`)\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_NAVBAR = 'navbar'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]'\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'\n\nconst Default = {\n offset: [0, 2],\n boundary: 'clippingParents',\n reference: 'toggle',\n display: 'dynamic',\n popperConfig: null,\n autoClose: true\n}\n\nconst DefaultType = {\n offset: '(array|string|function)',\n boundary: '(string|element)',\n reference: '(string|element|object)',\n display: 'string',\n popperConfig: '(null|object|function)',\n autoClose: '(boolean|string)'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (isDisabled(this._element)) {\n return\n }\n\n const isActive = this._element.classList.contains(CLASS_NAME_SHOW)\n\n if (isActive) {\n this.hide()\n return\n }\n\n this.show()\n }\n\n show() {\n if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this._element)\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n // Totally disable Popper for Dropdowns in Navbar\n if (this._inNavbar) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'none')\n } else {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference)\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false)\n\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n\n if (isDisplayStatic) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static')\n }\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n !parent.closest(SELECTOR_NAVBAR_NAV)) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.on(elem, 'mouseover', noop))\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.toggle(CLASS_NAME_SHOW)\n this._element.classList.toggle(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n this._completeHide(relatedTarget)\n }\n\n dispose() {\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK, event => {\n event.preventDefault()\n this.toggle()\n })\n }\n\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.off(elem, 'mouseover', noop))\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.remove(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._element.setAttribute('aria-expanded', 'false')\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _getMenuElement() {\n return SelectorEngine.next(this._element, SELECTOR_MENU)[0]\n }\n\n _getPlacement() {\n const parentDropdown = this._element.parentNode\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display\n if (this._config.display === 'static') {\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _selectMenuItem({ key, target }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible)\n\n if (!items.length) {\n return\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus()\n }\n\n // Static\n\n static dropdownInterface(element, config) {\n const data = Dropdown.getOrCreateInstance(element, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Dropdown.dropdownInterface(this, config)\n })\n }\n\n static clearMenus(event) {\n if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {\n return\n }\n\n const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const context = Dropdown.getInstance(toggles[i])\n if (!context || context._config.autoClose === false) {\n continue\n }\n\n if (!context._element.classList.contains(CLASS_NAME_SHOW)) {\n continue\n }\n\n const relatedTarget = {\n relatedTarget: context._element\n }\n\n if (event) {\n const composedPath = event.composedPath()\n const isMenuTarget = composedPath.includes(context._menu)\n if (\n composedPath.includes(context._element) ||\n (context._config.autoClose === 'inside' && !isMenuTarget) ||\n (context._config.autoClose === 'outside' && isMenuTarget)\n ) {\n continue\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue\n }\n\n if (event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n }\n\n context._completeHide(relatedTarget)\n }\n }\n\n static getParentFromElement(element) {\n return getElementFromSelector(element) || element.parentNode\n }\n\n static dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName) ?\n event.key === SPACE_KEY || (event.key !== ESCAPE_KEY &&\n ((event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY) ||\n event.target.closest(SELECTOR_MENU))) :\n !REGEXP_KEYDOWN.test(event.key)) {\n return\n }\n\n const isActive = this.classList.contains(CLASS_NAME_SHOW)\n\n if (!isActive && event.key === ESCAPE_KEY) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (isDisabled(this)) {\n return\n }\n\n const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n\n if (event.key === ESCAPE_KEY) {\n getToggleButton().focus()\n Dropdown.clearMenus()\n return\n }\n\n if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) {\n if (!isActive) {\n getToggleButton().click()\n }\n\n Dropdown.getInstance(getToggleButton())._selectMenuItem(event)\n return\n }\n\n if (!isActive || event.key === SPACE_KEY) {\n Dropdown.clearMenus()\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n Dropdown.dropdownInterface(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Dropdown to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport SelectorEngine from '../dom/selector-engine'\nimport Manipulator from '../dom/manipulator'\nimport { isElement } from './index'\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body\n }\n\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth\n return Math.abs(window.innerWidth - documentWidth)\n }\n\n hide() {\n const width = this.getWidth()\n this._disableOverFlow()\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width)\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width)\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width)\n }\n\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow')\n this._element.style.overflow = 'hidden'\n }\n\n _setElementAttributes(selector, styleProp, callback) {\n const scrollbarWidth = this.getWidth()\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return\n }\n\n this._saveInitialAttribute(element, styleProp)\n const calculatedValue = window.getComputedStyle(element)[styleProp]\n element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n reset() {\n this._resetElementAttributes(this._element, 'overflow')\n this._resetElementAttributes(this._element, 'paddingRight')\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight')\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight')\n }\n\n _saveInitialAttribute(element, styleProp) {\n const actualValue = element.style[styleProp]\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProp, actualValue)\n }\n }\n\n _resetElementAttributes(selector, styleProp) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProp)\n if (typeof value === 'undefined') {\n element.style.removeProperty(styleProp)\n } else {\n Manipulator.removeDataAttribute(element, styleProp)\n element.style[styleProp] = value\n }\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector)\n } else {\n SelectorEngine.find(selector, this._element).forEach(callBack)\n }\n }\n\n isOverflowing() {\n return this.getWidth() > 0\n }\n}\n\nexport default ScrollBarHelper\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { execute, executeAfterTransition, getElement, reflow, typeCheckConfig } from './index'\n\nconst Default = {\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n isAnimated: false,\n rootElement: 'body', // give the choice to place backdrop under different elements\n clickCallback: null\n}\n\nconst DefaultType = {\n isVisible: 'boolean',\n isAnimated: 'boolean',\n rootElement: '(element|string)',\n clickCallback: '(function|null)'\n}\nconst NAME = 'backdrop'\nconst CLASS_NAME_BACKDROP = 'modal-backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nclass Backdrop {\n constructor(config) {\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\n }\n\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n if (this._config.isAnimated) {\n reflow(this._getElement())\n }\n\n this._getElement().classList.add(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n execute(callback)\n })\n }\n\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._getElement().classList.remove(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n this.dispose()\n execute(callback)\n })\n }\n\n // Private\n\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div')\n backdrop.className = CLASS_NAME_BACKDROP\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE)\n }\n\n this._element = backdrop\n }\n\n return this._element\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' ? config : {})\n }\n\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement)\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n this._config.rootElement.appendChild(this._getElement())\n\n EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n dispose() {\n if (!this._isAppended) {\n return\n }\n\n EventHandler.off(this._element, EVENT_MOUSEDOWN)\n\n this._element.remove()\n this._isAppended = false\n }\n\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated)\n }\n}\n\nexport default Backdrop\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport ScrollBarHelper from './util/scrollbar'\nimport BaseComponent from './base-component'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean'\n}\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"modal\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element)\n this._backdrop = this._initializeBackDrop()\n this._isShown = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollBar = new ScrollBarHelper()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n\n if (this._isAnimated()) {\n this._isTransitioning = true\n }\n\n this._scrollBar.hide()\n\n document.body.classList.add(CLASS_NAME_OPEN)\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, event => this.hide(event))\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event && ['A', 'AREA'].includes(event.target.tagName)) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n const isAnimated = this._isAnimated()\n\n if (isAnimated) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.off(document, EVENT_FOCUSIN)\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS)\n\n this._queueCallback(() => this._hideModal(), this._element, isAnimated)\n }\n\n dispose() {\n [window, this._dialog]\n .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))\n\n this._backdrop.dispose()\n super.dispose()\n\n /**\n * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `EVENT_CLICK_DATA_API` event that should remain\n */\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value\n isAnimated: this._isAnimated()\n })\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const isAnimated = this._isAnimated()\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n if (isAnimated) {\n reflow(this._element)\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, isAnimated)\n }\n\n _enforceFocus() {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n this._element !== event.target &&\n !this._element.contains(event.target)) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault()\n this.hide()\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition()\n }\n })\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog())\n } else {\n EventHandler.off(window, EVENT_RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n this._scrollBar.reset()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _showBackdrop(callback) {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, event => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n\n if (event.target !== event.currentTarget) {\n return\n }\n\n if (this._config.backdrop === true) {\n this.hide()\n } else if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n }\n })\n\n this._backdrop.show(callback)\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE)\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const { classList, scrollHeight, style } = this._element\n const isModalOverflowing = scrollHeight > document.documentElement.clientHeight\n\n // return if the following background transition hasn't yet completed\n if ((!isModalOverflowing && style.overflowY === 'hidden') || classList.contains(CLASS_NAME_STATIC)) {\n return\n }\n\n if (!isModalOverflowing) {\n style.overflowY = 'hidden'\n }\n\n classList.add(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n classList.remove(CLASS_NAME_STATIC)\n if (!isModalOverflowing) {\n this._queueCallback(() => {\n style.overflowY = ''\n }, this._dialog)\n }\n }, this._dialog)\n\n this._element.focus()\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const scrollbarWidth = this._scrollBar.getWidth()\n const isBodyOverflowing = scrollbarWidth > 0\n\n if ((!isBodyOverflowing && isModalOverflowing && !isRTL()) || (isBodyOverflowing && !isModalOverflowing && isRTL())) {\n this._element.style.paddingLeft = `${scrollbarWidth}px`\n }\n\n if ((isBodyOverflowing && !isModalOverflowing && !isRTL()) || (!isBodyOverflowing && isModalOverflowing && isRTL())) {\n this._element.style.paddingRight = `${scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n const data = Modal.getOrCreateInstance(target)\n\n data.toggle(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible,\n typeCheckConfig\n} from './util/index'\nimport ScrollBarHelper from './util/scrollbar'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Manipulator from './dom/manipulator'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: 'boolean',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\nconst CLASS_NAME_SHOW = 'show'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"offcanvas\"]'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._addEventListeners()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._element.style.visibility = 'visible'\n\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n this._enforceFocusOnElement(this._element)\n }\n\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const completeCallBack = () => {\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n EventHandler.off(document, EVENT_FOCUSIN)\n this._element.blur()\n this._isShown = false\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._element.style.visibility = 'hidden'\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n super.dispose()\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: this._config.backdrop,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _enforceFocusOnElement(element) {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n element !== event.target &&\n !element.contains(event.target)) {\n element.focus()\n }\n })\n element.focus()\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n this.hide()\n }\n })\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (allReadyOpen && allReadyOpen !== target) {\n Offcanvas.getInstance(allReadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () =>\n SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())\n)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attr, allowedAttributeList) => {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attrName)) {\n if (uriAttrs.has(attrName)) {\n return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attrName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const allowlistKeys = Object.keys(allowList)\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (!allowlistKeys.includes(elName)) {\n el.remove()\n\n continue\n }\n\n const attributeList = [].concat(...el.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || [])\n\n attributeList.forEach(attr => {\n if (!allowedAttribute(attr, allowedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport {\n DefaultAllowlist,\n sanitizeHtml\n} from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.appendChild(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n this.tip = element.children[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle())\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.appendChild(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n let title = this._element.getAttribute('data-bs-original-title')\n\n if (!title) {\n title = typeof this._config.title === 'function' ?\n this._config.title.call(this._element) :\n this._config.title\n }\n\n return title\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || Data.get(event.delegateTarget, dataKey)\n\n if (!context) {\n context = new this.constructor(event.delegateTarget, this._getDelegateConfig())\n Data.set(event.delegateTarget, dataKey, context)\n }\n\n return context\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this._config) {\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport SelectorEngine from './dom/selector-engine'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement: 'right',\n offset: [0, 8],\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(string|element|function)'\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n this.tip = super.getTipElement()\n\n if (!this.getTitle()) {\n SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove()\n }\n\n if (!this._getContent()) {\n SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove()\n }\n\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n\n // we use append for html objects to maintain js events\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this._element)\n }\n\n this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n // Private\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getContent() {\n return this._element.getAttribute('data-bs-content') || this._config.content\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Popover to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getSelectorFromElement,\n getUID,\n isElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n offset: 10,\n method: 'auto',\n target: ''\n}\n\nconst DefaultType = {\n offset: 'number',\n method: 'string',\n target: '(string|element)'\n}\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._scrollElement = this._element.tagName === 'BODY' ? window : this._element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process())\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window ?\n METHOD_OFFSET :\n METHOD_POSITION\n\n const offsetMethod = this._config.method === 'auto' ?\n autoMethod :\n this._config.method\n\n const offsetBase = offsetMethod === METHOD_POSITION ?\n this._getScrollTop() :\n 0\n\n this._offsets = []\n this._targets = []\n this._scrollHeight = this._getScrollHeight()\n\n const targets = SelectorEngine.find(this._selector)\n\n targets.map(element => {\n const targetSelector = getSelectorFromElement(element)\n const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n return [\n Manipulator[offsetMethod](target).top + offsetBase,\n targetSelector\n ]\n }\n }\n\n return null\n })\n .filter(item => item)\n .sort((a, b) => a[0] - b[0])\n .forEach(item => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n EventHandler.off(this._scrollElement, EVENT_KEY)\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (typeof config.target !== 'string' && isElement(config.target)) {\n let { id } = config.target\n if (!id) {\n id = getUID(NAME)\n config.target.id = id\n }\n\n config.target = `#${id}`\n }\n\n typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window ?\n this._scrollElement.pageYOffset :\n this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window ?\n window.innerHeight :\n this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n for (let i = this._offsets.length; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = this._selector.split(',')\n .map(selector => `${selector}[data-bs-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const link = SelectorEngine.findOne(queries.join(','))\n\n if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, link.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n\n link.classList.add(CLASS_NAME_ACTIVE)\n } else {\n // Set triggered link as active\n link.classList.add(CLASS_NAME_ACTIVE)\n\n SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP)\n .forEach(listGroup => {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n\n // Handle special case when .nav-link is inside .nav-item\n SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS)\n .forEach(navItem => {\n SelectorEngine.children(navItem, SELECTOR_NAV_LINKS)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n })\n })\n }\n\n EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, {\n relatedTarget: target\n })\n }\n\n _clear() {\n SelectorEngine.find(this._selector)\n .filter(node => node.classList.contains(CLASS_NAME_ACTIVE))\n .forEach(node => node.classList.remove(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n SelectorEngine.find(SELECTOR_DATA_SPY)\n .forEach(spy => new ScrollSpy(spy))\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .ScrollSpy to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n reflow\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_UL = ':scope > li > .active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tab extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n if ((this._element.parentNode &&\n this._element.parentNode.nodeType === Node.ELEMENT_NODE &&\n this._element.classList.contains(CLASS_NAME_ACTIVE))) {\n return\n }\n\n let previous\n const target = getElementFromSelector(this._element)\n const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP)\n\n if (listElement) {\n const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE\n previous = SelectorEngine.find(itemSelector, listElement)\n previous = previous[previous.length - 1]\n }\n\n const hideEvent = previous ?\n EventHandler.trigger(previous, EVENT_HIDE, {\n relatedTarget: this._element\n }) :\n null\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget: previous\n })\n\n if (showEvent.defaultPrevented || (hideEvent !== null && hideEvent.defaultPrevented)) {\n return\n }\n\n this._activate(this._element, listElement)\n\n const complete = () => {\n EventHandler.trigger(previous, EVENT_HIDDEN, {\n relatedTarget: this._element\n })\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget: previous\n })\n }\n\n if (target) {\n this._activate(target, target.parentNode, complete)\n } else {\n complete()\n }\n }\n\n // Private\n\n _activate(element, container, callback) {\n const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ?\n SelectorEngine.find(SELECTOR_ACTIVE_UL, container) :\n SelectorEngine.children(container, SELECTOR_ACTIVE)\n\n const active = activeElements[0]\n const isTransitioning = callback && (active && active.classList.contains(CLASS_NAME_FADE))\n\n const complete = () => this._transitionComplete(element, active, callback)\n\n if (active && isTransitioning) {\n active.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, element, true)\n } else {\n complete()\n }\n }\n\n _transitionComplete(element, active, callback) {\n if (active) {\n active.classList.remove(CLASS_NAME_ACTIVE)\n\n const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode)\n\n if (dropdownChild) {\n dropdownChild.classList.remove(CLASS_NAME_ACTIVE)\n }\n\n if (active.getAttribute('role') === 'tab') {\n active.setAttribute('aria-selected', false)\n }\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n if (element.getAttribute('role') === 'tab') {\n element.setAttribute('aria-selected', true)\n }\n\n reflow(element)\n\n if (element.classList.contains(CLASS_NAME_FADE)) {\n element.classList.add(CLASS_NAME_SHOW)\n }\n\n let parent = element.parentNode\n if (parent && parent.nodeName === 'LI') {\n parent = parent.parentNode\n }\n\n if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) {\n const dropdownElement = element.closest(SELECTOR_DROPDOWN)\n\n if (dropdownElement) {\n SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement)\n .forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE))\n }\n\n element.setAttribute('aria-expanded', true)\n }\n\n if (callback) {\n callback()\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tab.getOrCreateInstance(this)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const data = Tab.getOrCreateInstance(this)\n data.show()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tab to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'bs.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`\nconst EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_FOCUSOUT = `focusout${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"toast\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._timeout = null\n this._hasMouseInteraction = false\n this._hasKeyboardInteraction = false\n this._setListeners()\n }\n\n // Getters\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n this._element.classList.add(CLASS_NAME_SHOW)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n this._maybeScheduleHide()\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE)\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n hide() {\n if (!this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n return config\n }\n\n _maybeScheduleHide() {\n if (!this._config.autohide) {\n return\n }\n\n if (this._hasMouseInteraction || this._hasKeyboardInteraction) {\n return\n }\n\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n\n _onInteraction(event, isInteracting) {\n switch (event.type) {\n case 'mouseover':\n case 'mouseout':\n this._hasMouseInteraction = isInteracting\n break\n case 'focusin':\n case 'focusout':\n this._hasKeyboardInteraction = isInteracting\n break\n default:\n break\n }\n\n if (isInteracting) {\n this._clearTimeout()\n return\n }\n\n const nextElement = event.relatedTarget\n if (this._element === nextElement || this._element.contains(nextElement)) {\n return\n }\n\n this._maybeScheduleHide()\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false))\n EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false))\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Toast.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Toast to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Toast)\n\nexport default Toast\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): index.umd.js\n * Licensed under MIT (https:/github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Alert from \"@openeuropa/bcl-bootstrap/js/src/alert\";\nimport Button from \"@openeuropa/bcl-bootstrap/js/src/button\";\nimport Carousel from \"@openeuropa/bcl-bootstrap/js/src/carousel\";\nimport Collapse from \"@openeuropa/bcl-bootstrap/js/src/collapse\";\nimport Dropdown from \"@openeuropa/bcl-bootstrap/js/src/dropdown\";\nimport Modal from \"@openeuropa/bcl-bootstrap/js/src/modal\";\nimport Offcanvas from \"@openeuropa/bcl-bootstrap/js/src/offcanvas\";\nimport Popover from \"@openeuropa/bcl-bootstrap/js/src/popover\";\nimport ScrollSpy from \"@openeuropa/bcl-bootstrap/js/src/scrollspy\";\nimport Tab from \"@openeuropa/bcl-bootstrap/js/src/tab\";\nimport Toast from \"@openeuropa/bcl-bootstrap/js/src/toast\";\nimport Tooltip from \"@openeuropa/bcl-bootstrap/js/src/tooltip\";\n\nexport default {\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n};\n"],"names":["SelectorEngine","find","selector","element","document","documentElement","concat","Element","prototype","querySelectorAll","call","findOne","querySelector","children","filter","child","matches","parents","ancestor","parentNode","nodeType","Node","ELEMENT_NODE","push","prev","previous","previousElementSibling","next","nextElementSibling","TRANSITION_END","getUID","prefix","Math","floor","random","getElementById","getSelector","getAttribute","hrefAttr","includes","startsWith","split","trim","getSelectorFromElement","getElementFromSelector","triggerTransitionEnd","dispatchEvent","Event","isElement","obj","jquery","getElement","length","typeCheckConfig","componentName","config","configTypes","Object","keys","forEach","property","expectedTypes","value","valueType","toString","match","toLowerCase","RegExp","test","TypeError","toUpperCase","isVisible","getClientRects","getComputedStyle","getPropertyValue","isDisabled","classList","contains","disabled","hasAttribute","findShadowRoot","attachShadow","getRootNode","root","ShadowRoot","noop","reflow","offsetHeight","getjQuery","jQuery","window","body","DOMContentLoadedCallbacks","isRTL","dir","defineJQueryPlugin","plugin","callback","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","readyState","addEventListener","execute","executeAfterTransition","transitionElement","waitForTransition","emulatedDuration","transitionDuration","transitionDelay","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","getTransitionDurationFromElement","called","handler","target","removeEventListener","setTimeout","getNextActiveElement","list","activeElement","shouldGetNext","isCycleAllowed","index","indexOf","listLength","max","min","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","customEventsRegex","nativeEvents","Set","getUidEvent","uid","getEvent","findHandler","events","delegationSelector","uidEventList","i","len","event","originalHandler","normalizeParams","originalTypeEvent","delegationFn","delegation","typeEvent","getTypeEvent","has","addHandler","oneOff","wrapFn","relatedTarget","delegateTarget","this","handlers","previousFn","replace","domElements","EventHandler","off","type","apply","bootstrapDelegationHandler","bootstrapHandler","removeHandler","Boolean","on","one","inNamespace","isNamespace","elementEvent","namespace","storeElementEvent","handlerKey","removeNamespacedHandlers","slice","keyHandlers","trigger","args","isNative","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","evt","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","createEvent","initEvent","CustomEvent","cancelable","key","defineProperty","get","preventDefault","elementMap","Map","set","instance","instanceMap","size","console","error","Array","from","remove","delete","BaseComponent","constructor","_element","Data","DATA_KEY","dispose","EVENT_KEY","getOwnPropertyNames","propertyName","_queueCallback","isAnimated","getInstance","Error","Alert","close","rootElement","_getRootElement","customEvent","_triggerCloseEvent","_removeElement","closest","_destroyElement","each","data","getOrCreateInstance","alertInstance","handleDismiss","SELECTOR_DATA_TOGGLE","Button","toggle","setAttribute","normalizeData","val","normalizeDataKey","chr","button","Manipulator","setDataAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","dataset","pureKey","charAt","getDataAttribute","offset","rect","getBoundingClientRect","top","scrollTop","left","scrollLeft","position","offsetTop","offsetLeft","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","KEY_TO_DIRECTION","EVENT_SLID","CLASS_NAME_ACTIVE","SELECTOR_ACTIVE_ITEM","POINTER_TYPE_TOUCH","Carousel","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","PointerEvent","_addEventListeners","_slide","nextWhenVisible","hidden","cycle","clearInterval","_updateInterval","setInterval","visibilityState","bind","to","activeIndex","_getItemIndex","order","_handleSwipe","absDeltax","abs","direction","_keydown","_addTouchEventListeners","start","pointerType","touches","clientX","move","end","clearTimeout","itemImg","e","add","tagName","_getItemByOrder","isNext","_triggerSlideEvent","eventDirectionName","targetIndex","fromIndex","_setActiveIndicatorElement","activeIndicator","indicators","parseInt","elementInterval","defaultInterval","directionOrOrder","_directionToOrder","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","_orderToDirection","triggerSlidEvent","completeCallBack","action","ride","carouselInterface","slideIndex","dataApiClickHandler","carousels","parent","CLASS_NAME_SHOW","CLASS_NAME_COLLAPSE","CLASS_NAME_COLLAPSING","CLASS_NAME_COLLAPSED","WIDTH","Collapse","_isTransitioning","_triggerArray","id","toggleList","elem","filterElement","foundElem","_selector","_parent","_getParent","_addAriaAndCollapsedClass","hide","show","actives","activesData","container","tempActiveData","elemActive","collapseInterface","dimension","_getDimension","style","setTransitioning","scrollSize","triggerArrayLength","isTransitioning","selected","triggerArray","isOpen","triggerData","bottom","right","auto","basePlacements","clippingParents","viewport","popper","reference","variationPlacements","reduce","acc","placement","placements","beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite","modifierPhases","getNodeName","nodeName","getWindow","node","ownerDocument","defaultView","isHTMLElement","HTMLElement","isShadowRoot","enabled","phase","_ref","state","elements","styles","assign","effect","_ref2","initialStyles","options","strategy","margin","arrow","hasOwnProperty","attribute","requires","getBasePlacement","width","height","x","y","getLayoutRect","clientRect","offsetWidth","rootNode","isSameNode","host","isTableElement","getDocumentElement","getParentNode","assignedSlot","getTrueOffsetParent","offsetParent","getOffsetParent","isFirefox","userAgent","currentNode","css","transform","perspective","contain","willChange","getContainingBlock","getMainAxisFromPlacement","round","within","mathMax","mathMin","mergePaddingObject","paddingObject","expandToHashMap","hashMap","_state$modifiersData$","arrowElement","popperOffsets","modifiersData","basePlacement","axis","padding","rects","toPaddingObject","arrowRect","minProp","maxProp","endDiff","startDiff","arrowOffsetParent","clientSize","clientHeight","clientWidth","centerToReference","center","axisProp","centerOffset","_options$element","requiresIfExists","unsetSides","mapToStyles","_Object$assign2","popperRect","offsets","gpuAcceleration","adaptive","roundOffsets","_ref3","dpr","devicePixelRatio","roundOffsetsByDPR","_ref3$x","_ref3$y","hasX","hasY","sideX","sideY","win","heightProp","widthProp","_Object$assign","commonStyles","_ref4","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","passive","_options$scroll","scroll","_options$resize","resize","scrollParents","scrollParent","update","hash","getOppositePlacement","matched","getOppositeVariationPlacement","getWindowScroll","pageXOffset","pageYOffset","getWindowScrollBarX","isScrollParent","_getComputedStyle","overflow","overflowX","overflowY","getScrollParent","listScrollParents","_element$ownerDocumen","isBody","visualViewport","updatedList","rectToClientRect","getClientRectFromMixedType","clippingParent","html","getViewportRect","clientTop","clientLeft","getInnerBoundingClientRect","winScroll","scrollWidth","scrollHeight","getDocumentRect","getVariation","computeOffsets","variation","commonX","commonY","mainAxis","detectOverflow","_options","_options$placement","_options$boundary","boundary","_options$rootBoundary","rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","referenceElement","clippingClientRect","mainClippingParents","clipperElement","getClippingParents","firstClippingParent","clippingRect","accRect","getClippingRect","contextElement","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","multiply","computeAutoPlacement","flipVariations","_options$allowedAutoP","allowedAutoPlacements","allPlacements","allowedPlacements","overflows","sort","a","b","_skip","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","preferredPlacement","oppositePlacement","getExpandedFallbackPlacements","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","isVertical","mainVariationSide","altVariationSide","checks","every","check","_loop","_i","fittingPlacement","reset","getSideOffsets","preventedOffsets","isAnySideFullyClipped","some","side","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","_options$offset","invertDistance","skidding","distance","distanceAndSkiddingToXY","_data$state$placement","_options$tether","tether","_options$tetherOffset","tetherOffset","isBasePlacement","tetherOffsetValue","mainSide","altSide","additive","minLen","maxLen","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","clientOffset","offsetModifierValue","tetherMin","tetherMax","preventedOffset","_mainSide","_altSide","_offset","_min","_max","_preventedOffset","getCompositeRect","elementOrVirtualElement","isFixed","isOffsetParentAnElement","modifiers","map","visited","result","modifier","dep","depModifier","DEFAULT_OPTIONS","areValidElements","_len","arguments","_key","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","pending","orderedModifiers","effectCleanupFns","isDestroyed","setOptions","cleanupModifierEffects","merged","orderModifiers","current","existing","m","_ref3$options","cleanupFn","forceUpdate","_state$elements","_state$orderedModifie","_state$orderedModifie2","Promise","resolve","then","undefined","destroy","onFirstUpdate","createPopper","eventListeners","computeStyles","applyStyles","flip","ESCAPE_KEY","SPACE_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","REGEXP_KEYDOWN","EVENT_CLICK_DATA_API","EVENT_KEYDOWN_DATA_API","SELECTOR_MENU","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","display","popperConfig","autoClose","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","getParentFromElement","Popper","_getPopperConfig","isDisplayStatic","focus","_completeHide","_getPlacement","parentDropdown","isEnd","_getOffset","popperData","defaultBsPopperConfig","_selectMenuItem","items","dropdownInterface","toggles","context","composedPath","isMenuTarget","clickEvent","isActive","stopPropagation","getToggleButton","clearMenus","click","dataApiKeydownHandler","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","ScrollBarHelper","getWidth","documentWidth","innerWidth","_disableOverFlow","_setElementAttributes","calculatedValue","_saveInitialAttribute","styleProp","scrollbarWidth","_applyManipulationCallback","_resetElementAttributes","actualValue","removeProperty","callBack","isOverflowing","clickCallback","EVENT_MOUSEDOWN","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","createElement","className","appendChild","EVENT_HIDDEN","EVENT_SHOW","EVENT_FOCUSIN","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_KEYDOWN_DISMISS","EVENT_MOUSEDOWN_DISMISS","CLASS_NAME_OPEN","CLASS_NAME_STATIC","Modal","_dialog","_backdrop","_initializeBackDrop","_isShown","_ignoreBackdropClick","_scrollBar","_isAnimated","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","_hideModal","htmlElement","handleUpdate","modalBody","_enforceFocus","_triggerBackdropTransition","_resetAdjustments","currentTarget","isModalOverflowing","isBodyOverflowing","paddingLeft","paddingRight","showEvent","OPEN_SELECTOR","Offcanvas","visibility","_enforceFocusOnElement","blur","allReadyOpen","el","uriAttrs","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeValue","regExp","attrRegex","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","createdDocument","DOMParser","parseFromString","allowlistKeys","elName","attributeList","allowedAttributes","innerHTML","BSCLS_PREFIX_REGEX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","customClass","sanitize","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","area","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","CLASS_NAME_FADE","HOVER_STATE_SHOW","HOVER_STATE_OUT","TRIGGER_HOVER","TRIGGER_FOCUS","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","_initializeOnDelegatedTarget","_isWithActiveTrigger","_enter","_leave","getTipElement","_hideModalHandler","isWithContent","shadowRoot","isInTheDom","tipId","setContent","attachment","_getAttachment","_addAttachmentClass","prevHoverState","_cleanTipClass","getTitle","setElementContent","content","textContent","updateAttachment","dataKey","_getDelegateConfig","_handlePopperPlacementChange","eventIn","eventOut","_fixTitle","originalTitleType","dataAttributes","dataAttr","tabClass","token","tClass","SELECTOR_TITLE","SELECTOR_CONTENT","Popover","_getContent","super","method","METHOD_POSITION","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targetSelector","targetBCR","item","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","queries","link","join","listGroup","navItem","spy","SELECTOR_ACTIVE","SELECTOR_ACTIVE_UL","Tab","listElement","itemSelector","hideEvent","complete","active","_transitionComplete","dropdownChild","dropdownElement","dropdown","CLASS_NAME_HIDE","CLASS_NAME_SHOWING","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","_onInteraction","isInteracting"],"mappings":"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"} \ No newline at end of file diff --git a/assets/js/oe-bcl-default.esm.js b/assets/js/oe-bcl-default.esm.js new file mode 100644 index 00000000..5e82d702 --- /dev/null +++ b/assets/js/oe-bcl-default.esm.js @@ -0,0 +1,4962 @@ +import * as Popper from '@popperjs/core'; + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): dom/selector-engine.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ +const NODE_TEXT = 3; +const SelectorEngine = { + find(selector, element = document.documentElement) { + return [].concat(...Element.prototype.querySelectorAll.call(element, selector)); + }, + + findOne(selector, element = document.documentElement) { + return Element.prototype.querySelector.call(element, selector); + }, + + children(element, selector) { + return [].concat(...element.children).filter(child => child.matches(selector)); + }, + + parents(element, selector) { + const parents = []; + let ancestor = element.parentNode; + + while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) { + if (ancestor.matches(selector)) { + parents.push(ancestor); + } + + ancestor = ancestor.parentNode; + } + + return parents; + }, + + prev(element, selector) { + let previous = element.previousElementSibling; + + while (previous) { + if (previous.matches(selector)) { + return [previous]; + } + + previous = previous.previousElementSibling; + } + + return []; + }, + + next(element, selector) { + let next = element.nextElementSibling; + + while (next) { + if (next.matches(selector)) { + return [next]; + } + + next = next.nextElementSibling; + } + + return []; + } + +}; + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): util/index.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + +const MAX_UID = 1000000; +const MILLISECONDS_MULTIPLIER = 1000; +const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp) + +const toType = obj => { + if (obj === null || obj === undefined) { + return `${obj}`; + } + + return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase(); +}; +/** + * -------------------------------------------------------------------------- + * Public Util Api + * -------------------------------------------------------------------------- + */ + + +const getUID = prefix => { + do { + prefix += Math.floor(Math.random() * MAX_UID); + } while (document.getElementById(prefix)); + + return prefix; +}; + +const getSelector = element => { + let selector = element.getAttribute('data-bs-target'); + + if (!selector || selector === '#') { + let hrefAttr = element.getAttribute('href'); // The only valid content that could double as a selector are IDs or classes, + // so everything starting with `#` or `.`. If a "real" URL is used as the selector, + // `document.querySelector` will rightfully complain it is invalid. + // See https://github.com/twbs/bootstrap/issues/32273 + + if (!hrefAttr || !hrefAttr.includes('#') && !hrefAttr.startsWith('.')) { + return null; + } // Just in case some CMS puts out a full URL with the anchor appended + + + if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) { + hrefAttr = `#${hrefAttr.split('#')[1]}`; + } + + selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null; + } + + return selector; +}; + +const getSelectorFromElement = element => { + const selector = getSelector(element); + + if (selector) { + return document.querySelector(selector) ? selector : null; + } + + return null; +}; + +const getElementFromSelector = element => { + const selector = getSelector(element); + return selector ? document.querySelector(selector) : null; +}; + +const getTransitionDurationFromElement = element => { + if (!element) { + return 0; + } // Get transition-duration of the element + + + let { + transitionDuration, + transitionDelay + } = window.getComputedStyle(element); + const floatTransitionDuration = Number.parseFloat(transitionDuration); + const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found + + if (!floatTransitionDuration && !floatTransitionDelay) { + return 0; + } // If multiple durations are defined, take the first + + + transitionDuration = transitionDuration.split(',')[0]; + transitionDelay = transitionDelay.split(',')[0]; + return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; +}; + +const triggerTransitionEnd = element => { + element.dispatchEvent(new Event(TRANSITION_END)); +}; + +const isElement = obj => { + if (!obj || typeof obj !== 'object') { + return false; + } + + if (typeof obj.jquery !== 'undefined') { + obj = obj[0]; + } + + return typeof obj.nodeType !== 'undefined'; +}; + +const getElement = obj => { + if (isElement(obj)) { + // it's a jQuery object or a node element + return obj.jquery ? obj[0] : obj; + } + + if (typeof obj === 'string' && obj.length > 0) { + return SelectorEngine.findOne(obj); + } + + return null; +}; + +const typeCheckConfig = (componentName, config, configTypes) => { + Object.keys(configTypes).forEach(property => { + const expectedTypes = configTypes[property]; + const value = config[property]; + const valueType = value && isElement(value) ? 'element' : toType(value); + + if (!new RegExp(expectedTypes).test(valueType)) { + throw new TypeError(`${componentName.toUpperCase()}: Option "${property}" provided type "${valueType}" but expected type "${expectedTypes}".`); + } + }); +}; + +const isVisible = element => { + if (!isElement(element) || element.getClientRects().length === 0) { + return false; + } + + return getComputedStyle(element).getPropertyValue('visibility') === 'visible'; +}; + +const isDisabled = element => { + if (!element || element.nodeType !== Node.ELEMENT_NODE) { + return true; + } + + if (element.classList.contains('disabled')) { + return true; + } + + if (typeof element.disabled !== 'undefined') { + return element.disabled; + } + + return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'; +}; + +const findShadowRoot = element => { + if (!document.documentElement.attachShadow) { + return null; + } // Can find the shadow root otherwise it'll return the document + + + if (typeof element.getRootNode === 'function') { + const root = element.getRootNode(); + return root instanceof ShadowRoot ? root : null; + } + + if (element instanceof ShadowRoot) { + return element; + } // when we don't find a shadow root + + + if (!element.parentNode) { + return null; + } + + return findShadowRoot(element.parentNode); +}; + +const noop = () => {}; + +const reflow = element => element.offsetHeight; + +const getjQuery = () => { + const { + jQuery + } = window; + + if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) { + return jQuery; + } + + return null; +}; + +const DOMContentLoadedCallbacks = []; + +const onDOMContentLoaded = callback => { + if (document.readyState === 'loading') { + // add listener on the first call when the document is in loading state + if (!DOMContentLoadedCallbacks.length) { + document.addEventListener('DOMContentLoaded', () => { + DOMContentLoadedCallbacks.forEach(callback => callback()); + }); + } + + DOMContentLoadedCallbacks.push(callback); + } else { + callback(); + } +}; + +const isRTL = () => document.documentElement.dir === 'rtl'; + +const defineJQueryPlugin = plugin => { + onDOMContentLoaded(() => { + const $ = getjQuery(); + /* istanbul ignore if */ + + if ($) { + const name = plugin.NAME; + const JQUERY_NO_CONFLICT = $.fn[name]; + $.fn[name] = plugin.jQueryInterface; + $.fn[name].Constructor = plugin; + + $.fn[name].noConflict = () => { + $.fn[name] = JQUERY_NO_CONFLICT; + return plugin.jQueryInterface; + }; + } + }); +}; + +const execute = callback => { + if (typeof callback === 'function') { + callback(); + } +}; + +const executeAfterTransition = (callback, transitionElement, waitForTransition = true) => { + if (!waitForTransition) { + execute(callback); + return; + } + + const durationPadding = 5; + const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding; + let called = false; + + const handler = ({ + target + }) => { + if (target !== transitionElement) { + return; + } + + called = true; + transitionElement.removeEventListener(TRANSITION_END, handler); + execute(callback); + }; + + transitionElement.addEventListener(TRANSITION_END, handler); + setTimeout(() => { + if (!called) { + triggerTransitionEnd(transitionElement); + } + }, emulatedDuration); +}; +/** + * Return the previous/next element of a list. + * + * @param {array} list The list of elements + * @param activeElement The active element + * @param shouldGetNext Choose to get next or previous element + * @param isCycleAllowed + * @return {Element|elem} The proper element + */ + + +const getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => { + let index = list.indexOf(activeElement); // if the element does not exist in the list return an element depending on the direction and if cycle is allowed + + if (index === -1) { + return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]; + } + + const listLength = list.length; + index += shouldGetNext ? 1 : -1; + + if (isCycleAllowed) { + index = (index + listLength) % listLength; + } + + return list[Math.max(0, Math.min(index, listLength - 1))]; +}; + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): dom/event-handler.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + +const namespaceRegex = /[^.]*(?=\..*)\.|.*/; +const stripNameRegex = /\..*/; +const stripUidRegex = /::\d+$/; +const eventRegistry = {}; // Events storage + +let uidEvent = 1; +const customEvents = { + mouseenter: 'mouseover', + mouseleave: 'mouseout' +}; +const customEventsRegex = /^(mouseenter|mouseleave)/i; +const nativeEvents = 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']); +/** + * ------------------------------------------------------------------------ + * Private methods + * ------------------------------------------------------------------------ + */ + +function getUidEvent(element, uid) { + return uid && `${uid}::${uidEvent++}` || element.uidEvent || uidEvent++; +} + +function getEvent(element) { + const uid = getUidEvent(element); + element.uidEvent = uid; + eventRegistry[uid] = eventRegistry[uid] || {}; + return eventRegistry[uid]; +} + +function bootstrapHandler(element, fn) { + return function handler(event) { + event.delegateTarget = element; + + if (handler.oneOff) { + EventHandler.off(element, event.type, fn); + } + + return fn.apply(element, [event]); + }; +} + +function bootstrapDelegationHandler(element, selector, fn) { + return function handler(event) { + const domElements = element.querySelectorAll(selector); + + for (let { + target + } = event; target && target !== this; target = target.parentNode) { + for (let i = domElements.length; i--;) { + if (domElements[i] === target) { + event.delegateTarget = target; + + if (handler.oneOff) { + // eslint-disable-next-line unicorn/consistent-destructuring + EventHandler.off(element, event.type, selector, fn); + } + + return fn.apply(target, [event]); + } + } + } // To please ESLint + + + return null; + }; +} + +function findHandler(events, handler, delegationSelector = null) { + const uidEventList = Object.keys(events); + + for (let i = 0, len = uidEventList.length; i < len; i++) { + const event = events[uidEventList[i]]; + + if (event.originalHandler === handler && event.delegationSelector === delegationSelector) { + return event; + } + } + + return null; +} + +function normalizeParams(originalTypeEvent, handler, delegationFn) { + const delegation = typeof handler === 'string'; + const originalHandler = delegation ? delegationFn : handler; + let typeEvent = getTypeEvent(originalTypeEvent); + const isNative = nativeEvents.has(typeEvent); + + if (!isNative) { + typeEvent = originalTypeEvent; + } + + return [delegation, originalHandler, typeEvent]; +} + +function addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) { + if (typeof originalTypeEvent !== 'string' || !element) { + return; + } + + if (!handler) { + handler = delegationFn; + delegationFn = null; + } // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position + // this prevents the handler from being dispatched the same way as mouseover or mouseout does + + + if (customEventsRegex.test(originalTypeEvent)) { + const wrapFn = fn => { + return function (event) { + if (!event.relatedTarget || event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget)) { + return fn.call(this, event); + } + }; + }; + + if (delegationFn) { + delegationFn = wrapFn(delegationFn); + } else { + handler = wrapFn(handler); + } + } + + const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn); + const events = getEvent(element); + const handlers = events[typeEvent] || (events[typeEvent] = {}); + const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null); + + if (previousFn) { + previousFn.oneOff = previousFn.oneOff && oneOff; + return; + } + + const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, '')); + const fn = delegation ? bootstrapDelegationHandler(element, handler, delegationFn) : bootstrapHandler(element, handler); + fn.delegationSelector = delegation ? handler : null; + fn.originalHandler = originalHandler; + fn.oneOff = oneOff; + fn.uidEvent = uid; + handlers[uid] = fn; + element.addEventListener(typeEvent, fn, delegation); +} + +function removeHandler(element, events, typeEvent, handler, delegationSelector) { + const fn = findHandler(events[typeEvent], handler, delegationSelector); + + if (!fn) { + return; + } + + element.removeEventListener(typeEvent, fn, Boolean(delegationSelector)); + delete events[typeEvent][fn.uidEvent]; +} + +function removeNamespacedHandlers(element, events, typeEvent, namespace) { + const storeElementEvent = events[typeEvent] || {}; + Object.keys(storeElementEvent).forEach(handlerKey => { + if (handlerKey.includes(namespace)) { + const event = storeElementEvent[handlerKey]; + removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector); + } + }); +} + +function getTypeEvent(event) { + // allow to get the native events from namespaced events ('click.bs.button' --> 'click') + event = event.replace(stripNameRegex, ''); + return customEvents[event] || event; +} + +const EventHandler = { + on(element, event, handler, delegationFn) { + addHandler(element, event, handler, delegationFn, false); + }, + + one(element, event, handler, delegationFn) { + addHandler(element, event, handler, delegationFn, true); + }, + + off(element, originalTypeEvent, handler, delegationFn) { + if (typeof originalTypeEvent !== 'string' || !element) { + return; + } + + const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn); + const inNamespace = typeEvent !== originalTypeEvent; + const events = getEvent(element); + const isNamespace = originalTypeEvent.startsWith('.'); + + if (typeof originalHandler !== 'undefined') { + // Simplest case: handler is passed, remove that listener ONLY. + if (!events || !events[typeEvent]) { + return; + } + + removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null); + return; + } + + if (isNamespace) { + Object.keys(events).forEach(elementEvent => { + removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1)); + }); + } + + const storeElementEvent = events[typeEvent] || {}; + Object.keys(storeElementEvent).forEach(keyHandlers => { + const handlerKey = keyHandlers.replace(stripUidRegex, ''); + + if (!inNamespace || originalTypeEvent.includes(handlerKey)) { + const event = storeElementEvent[keyHandlers]; + removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector); + } + }); + }, + + trigger(element, event, args) { + if (typeof event !== 'string' || !element) { + return null; + } + + const $ = getjQuery(); + const typeEvent = getTypeEvent(event); + const inNamespace = event !== typeEvent; + const isNative = nativeEvents.has(typeEvent); + let jQueryEvent; + let bubbles = true; + let nativeDispatch = true; + let defaultPrevented = false; + let evt = null; + + if (inNamespace && $) { + jQueryEvent = $.Event(event, args); + $(element).trigger(jQueryEvent); + bubbles = !jQueryEvent.isPropagationStopped(); + nativeDispatch = !jQueryEvent.isImmediatePropagationStopped(); + defaultPrevented = jQueryEvent.isDefaultPrevented(); + } + + if (isNative) { + evt = document.createEvent('HTMLEvents'); + evt.initEvent(typeEvent, bubbles, true); + } else { + evt = new CustomEvent(event, { + bubbles, + cancelable: true + }); + } // merge custom information in our event + + + if (typeof args !== 'undefined') { + Object.keys(args).forEach(key => { + Object.defineProperty(evt, key, { + get() { + return args[key]; + } + + }); + }); + } + + if (defaultPrevented) { + evt.preventDefault(); + } + + if (nativeDispatch) { + element.dispatchEvent(evt); + } + + if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') { + jQueryEvent.preventDefault(); + } + + return evt; + } + +}; + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): dom/data.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ +const elementMap = new Map(); +var Data = { + set(element, key, instance) { + if (!elementMap.has(element)) { + elementMap.set(element, new Map()); + } + + const instanceMap = elementMap.get(element); // make it clear we only want one instance per element + // can be removed later when multiple key/instances are fine to be used + + if (!instanceMap.has(key) && instanceMap.size !== 0) { + // eslint-disable-next-line no-console + console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`); + return; + } + + instanceMap.set(key, instance); + }, + + get(element, key) { + if (elementMap.has(element)) { + return elementMap.get(element).get(key) || null; + } + + return null; + }, + + remove(element, key) { + if (!elementMap.has(element)) { + return; + } + + const instanceMap = elementMap.get(element); + instanceMap.delete(key); // free up element references if there are no instances left for an element + + if (instanceMap.size === 0) { + elementMap.delete(element); + } + } + +}; + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): base-component.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + +const VERSION = '5.0.2'; + +class BaseComponent { + constructor(element) { + element = getElement(element); + + if (!element) { + return; + } + + this._element = element; + Data.set(this._element, this.constructor.DATA_KEY, this); + } + + dispose() { + Data.remove(this._element, this.constructor.DATA_KEY); + EventHandler.off(this._element, this.constructor.EVENT_KEY); + Object.getOwnPropertyNames(this).forEach(propertyName => { + this[propertyName] = null; + }); + } + + _queueCallback(callback, element, isAnimated = true) { + executeAfterTransition(callback, element, isAnimated); + } + /** Static */ + + + static getInstance(element) { + return Data.get(element, this.DATA_KEY); + } + + static getOrCreateInstance(element, config = {}) { + return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null); + } + + static get VERSION() { + return VERSION; + } + + 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}`; + } + +} + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): alert.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + +const NAME$c = 'alert'; +const DATA_KEY$b = 'bs.alert'; +const EVENT_KEY$b = `.${DATA_KEY$b}`; +const DATA_API_KEY$8 = '.data-api'; +const SELECTOR_DISMISS = '[data-bs-dismiss="alert"]'; +const EVENT_CLOSE = `close${EVENT_KEY$b}`; +const EVENT_CLOSED = `closed${EVENT_KEY$b}`; +const EVENT_CLICK_DATA_API$7 = `click${EVENT_KEY$b}${DATA_API_KEY$8}`; +const CLASS_NAME_ALERT = 'alert'; +const CLASS_NAME_FADE$6 = 'fade'; +const CLASS_NAME_SHOW$9 = 'show'; +/** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + +class Alert extends BaseComponent { + // Getters + static get NAME() { + return NAME$c; + } // Public + + + close(element) { + const rootElement = element ? this._getRootElement(element) : this._element; + + const customEvent = this._triggerCloseEvent(rootElement); + + if (customEvent === null || customEvent.defaultPrevented) { + return; + } + + this._removeElement(rootElement); + } // Private + + + _getRootElement(element) { + return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`); + } + + _triggerCloseEvent(element) { + return EventHandler.trigger(element, EVENT_CLOSE); + } + + _removeElement(element) { + element.classList.remove(CLASS_NAME_SHOW$9); + const isAnimated = element.classList.contains(CLASS_NAME_FADE$6); + + this._queueCallback(() => this._destroyElement(element), element, isAnimated); + } + + _destroyElement(element) { + element.remove(); + EventHandler.trigger(element, EVENT_CLOSED); + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Alert.getOrCreateInstance(this); + + if (config === 'close') { + data[config](this); + } + }); + } + + static handleDismiss(alertInstance) { + return function (event) { + if (event) { + event.preventDefault(); + } + + alertInstance.close(this); + }; + } + +} +/** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + +EventHandler.on(document, EVENT_CLICK_DATA_API$7, SELECTOR_DISMISS, Alert.handleDismiss(new Alert())); +/** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Alert to jQuery only if jQuery is present + */ + +defineJQueryPlugin(Alert); + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): button.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + +const NAME$b = 'button'; +const DATA_KEY$a = 'bs.button'; +const EVENT_KEY$a = `.${DATA_KEY$a}`; +const DATA_API_KEY$7 = '.data-api'; +const CLASS_NAME_ACTIVE$3 = 'active'; +const SELECTOR_DATA_TOGGLE$5 = '[data-bs-toggle="button"]'; +const EVENT_CLICK_DATA_API$6 = `click${EVENT_KEY$a}${DATA_API_KEY$7}`; +/** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + +class Button extends BaseComponent { + // Getters + static get NAME() { + return NAME$b; + } // Public + + + toggle() { + // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method + this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE$3)); + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Button.getOrCreateInstance(this); + + if (config === 'toggle') { + data[config](); + } + }); + } + +} +/** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + +EventHandler.on(document, EVENT_CLICK_DATA_API$6, SELECTOR_DATA_TOGGLE$5, event => { + event.preventDefault(); + const button = event.target.closest(SELECTOR_DATA_TOGGLE$5); + const data = Button.getOrCreateInstance(button); + data.toggle(); +}); +/** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Button to jQuery only if jQuery is present + */ + +defineJQueryPlugin(Button); + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): dom/manipulator.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +function normalizeData(val) { + if (val === 'true') { + return true; + } + + if (val === 'false') { + return false; + } + + if (val === Number(val).toString()) { + return Number(val); + } + + if (val === '' || val === 'null') { + return null; + } + + return val; +} + +function normalizeDataKey(key) { + return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`); +} + +const Manipulator = { + setDataAttribute(element, key, value) { + element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value); + }, + + removeDataAttribute(element, key) { + element.removeAttribute(`data-bs-${normalizeDataKey(key)}`); + }, + + getDataAttributes(element) { + if (!element) { + return {}; + } + + const attributes = {}; + Object.keys(element.dataset).filter(key => key.startsWith('bs')).forEach(key => { + let pureKey = key.replace(/^bs/, ''); + pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length); + attributes[pureKey] = normalizeData(element.dataset[key]); + }); + return attributes; + }, + + getDataAttribute(element, key) { + return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`)); + }, + + offset(element) { + const rect = element.getBoundingClientRect(); + return { + top: rect.top + document.body.scrollTop, + left: rect.left + document.body.scrollLeft + }; + }, + + position(element) { + return { + top: element.offsetTop, + left: element.offsetLeft + }; + } + +}; + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): carousel.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + +const NAME$a = 'carousel'; +const DATA_KEY$9 = 'bs.carousel'; +const EVENT_KEY$9 = `.${DATA_KEY$9}`; +const DATA_API_KEY$6 = '.data-api'; +const ARROW_LEFT_KEY = 'ArrowLeft'; +const ARROW_RIGHT_KEY = 'ArrowRight'; +const TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch + +const SWIPE_THRESHOLD = 40; +const Default$9 = { + interval: 5000, + keyboard: true, + slide: false, + pause: 'hover', + wrap: true, + touch: true +}; +const DefaultType$9 = { + interval: '(number|boolean)', + keyboard: 'boolean', + slide: '(boolean|string)', + pause: '(string|boolean)', + wrap: 'boolean', + touch: 'boolean' +}; +const ORDER_NEXT = 'next'; +const ORDER_PREV = 'prev'; +const DIRECTION_LEFT = 'left'; +const DIRECTION_RIGHT = 'right'; +const KEY_TO_DIRECTION = { + [ARROW_LEFT_KEY]: DIRECTION_RIGHT, + [ARROW_RIGHT_KEY]: DIRECTION_LEFT +}; +const EVENT_SLIDE = `slide${EVENT_KEY$9}`; +const EVENT_SLID = `slid${EVENT_KEY$9}`; +const EVENT_KEYDOWN = `keydown${EVENT_KEY$9}`; +const EVENT_MOUSEENTER = `mouseenter${EVENT_KEY$9}`; +const EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY$9}`; +const EVENT_TOUCHSTART = `touchstart${EVENT_KEY$9}`; +const EVENT_TOUCHMOVE = `touchmove${EVENT_KEY$9}`; +const EVENT_TOUCHEND = `touchend${EVENT_KEY$9}`; +const EVENT_POINTERDOWN = `pointerdown${EVENT_KEY$9}`; +const EVENT_POINTERUP = `pointerup${EVENT_KEY$9}`; +const EVENT_DRAG_START = `dragstart${EVENT_KEY$9}`; +const EVENT_LOAD_DATA_API$2 = `load${EVENT_KEY$9}${DATA_API_KEY$6}`; +const EVENT_CLICK_DATA_API$5 = `click${EVENT_KEY$9}${DATA_API_KEY$6}`; +const CLASS_NAME_CAROUSEL = 'carousel'; +const CLASS_NAME_ACTIVE$2 = 'active'; +const CLASS_NAME_SLIDE = 'slide'; +const CLASS_NAME_END = 'carousel-item-end'; +const CLASS_NAME_START = 'carousel-item-start'; +const CLASS_NAME_NEXT = 'carousel-item-next'; +const CLASS_NAME_PREV = 'carousel-item-prev'; +const CLASS_NAME_POINTER_EVENT = 'pointer-event'; +const SELECTOR_ACTIVE$1 = '.active'; +const SELECTOR_ACTIVE_ITEM = '.active.carousel-item'; +const SELECTOR_ITEM = '.carousel-item'; +const SELECTOR_ITEM_IMG = '.carousel-item img'; +const SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'; +const SELECTOR_INDICATORS = '.carousel-indicators'; +const SELECTOR_INDICATOR = '[data-bs-target]'; +const SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'; +const SELECTOR_DATA_RIDE = '[data-bs-ride="carousel"]'; +const POINTER_TYPE_TOUCH = 'touch'; +const POINTER_TYPE_PEN = 'pen'; +/** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + +class Carousel extends BaseComponent { + constructor(element, config) { + super(element); + this._items = null; + this._interval = null; + this._activeElement = null; + this._isPaused = false; + this._isSliding = false; + this.touchTimeout = null; + this.touchStartX = 0; + this.touchDeltaX = 0; + this._config = this._getConfig(config); + this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element); + this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0; + this._pointerEvent = Boolean(window.PointerEvent); + + this._addEventListeners(); + } // Getters + + + static get Default() { + return Default$9; + } + + static get NAME() { + return NAME$a; + } // Public + + + next() { + this._slide(ORDER_NEXT); + } + + nextWhenVisible() { + // Don't call next when the page isn't visible + // or the carousel or its parent isn't visible + if (!document.hidden && isVisible(this._element)) { + this.next(); + } + } + + prev() { + this._slide(ORDER_PREV); + } + + pause(event) { + if (!event) { + this._isPaused = true; + } + + if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) { + triggerTransitionEnd(this._element); + this.cycle(true); + } + + clearInterval(this._interval); + this._interval = null; + } + + cycle(event) { + if (!event) { + this._isPaused = false; + } + + if (this._interval) { + clearInterval(this._interval); + this._interval = null; + } + + if (this._config && this._config.interval && !this._isPaused) { + this._updateInterval(); + + this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval); + } + } + + to(index) { + this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); + + const activeIndex = this._getItemIndex(this._activeElement); + + if (index > this._items.length - 1 || index < 0) { + return; + } + + if (this._isSliding) { + EventHandler.one(this._element, EVENT_SLID, () => this.to(index)); + return; + } + + if (activeIndex === index) { + this.pause(); + this.cycle(); + return; + } + + const order = index > activeIndex ? ORDER_NEXT : ORDER_PREV; + + this._slide(order, this._items[index]); + } // Private + + + _getConfig(config) { + config = { ...Default$9, + ...Manipulator.getDataAttributes(this._element), + ...(typeof config === 'object' ? config : {}) + }; + typeCheckConfig(NAME$a, config, DefaultType$9); + return config; + } + + _handleSwipe() { + const absDeltax = Math.abs(this.touchDeltaX); + + if (absDeltax <= SWIPE_THRESHOLD) { + return; + } + + const direction = absDeltax / this.touchDeltaX; + this.touchDeltaX = 0; + + if (!direction) { + return; + } + + this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT); + } + + _addEventListeners() { + if (this._config.keyboard) { + EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event)); + } + + if (this._config.pause === 'hover') { + EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event)); + EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event)); + } + + if (this._config.touch && this._touchSupported) { + this._addTouchEventListeners(); + } + } + + _addTouchEventListeners() { + const start = event => { + if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) { + this.touchStartX = event.clientX; + } else if (!this._pointerEvent) { + this.touchStartX = event.touches[0].clientX; + } + }; + + const move = event => { + // ensure swiping with one touch and not pinching + this.touchDeltaX = event.touches && event.touches.length > 1 ? 0 : event.touches[0].clientX - this.touchStartX; + }; + + const end = event => { + if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) { + this.touchDeltaX = event.clientX - this.touchStartX; + } + + this._handleSwipe(); + + if (this._config.pause === 'hover') { + // If it's a touch-enabled device, mouseenter/leave are fired as + // part of the mouse compatibility events on first tap - the carousel + // would stop cycling until user tapped out of it; + // here, we listen for touchend, explicitly pause the carousel + // (as if it's the second time we tap on it, mouseenter compat event + // is NOT fired) and after a timeout (to allow for mouse compatibility + // events to fire) we explicitly restart cycling + this.pause(); + + if (this.touchTimeout) { + clearTimeout(this.touchTimeout); + } + + this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval); + } + }; + + SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => { + EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault()); + }); + + if (this._pointerEvent) { + EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event)); + EventHandler.on(this._element, EVENT_POINTERUP, event => end(event)); + + this._element.classList.add(CLASS_NAME_POINTER_EVENT); + } else { + EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event)); + EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event)); + EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event)); + } + } + + _keydown(event) { + if (/input|textarea/i.test(event.target.tagName)) { + return; + } + + const direction = KEY_TO_DIRECTION[event.key]; + + if (direction) { + event.preventDefault(); + + this._slide(direction); + } + } + + _getItemIndex(element) { + this._items = element && element.parentNode ? SelectorEngine.find(SELECTOR_ITEM, element.parentNode) : []; + return this._items.indexOf(element); + } + + _getItemByOrder(order, activeElement) { + const isNext = order === ORDER_NEXT; + return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap); + } + + _triggerSlideEvent(relatedTarget, eventDirectionName) { + const targetIndex = this._getItemIndex(relatedTarget); + + const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)); + + return EventHandler.trigger(this._element, EVENT_SLIDE, { + relatedTarget, + direction: eventDirectionName, + from: fromIndex, + to: targetIndex + }); + } + + _setActiveIndicatorElement(element) { + if (this._indicatorsElement) { + const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE$1, this._indicatorsElement); + activeIndicator.classList.remove(CLASS_NAME_ACTIVE$2); + activeIndicator.removeAttribute('aria-current'); + const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement); + + for (let i = 0; i < indicators.length; i++) { + if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) { + indicators[i].classList.add(CLASS_NAME_ACTIVE$2); + indicators[i].setAttribute('aria-current', 'true'); + break; + } + } + } + } + + _updateInterval() { + const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); + + if (!element) { + return; + } + + const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10); + + if (elementInterval) { + this._config.defaultInterval = this._config.defaultInterval || this._config.interval; + this._config.interval = elementInterval; + } else { + this._config.interval = this._config.defaultInterval || this._config.interval; + } + } + + _slide(directionOrOrder, element) { + const order = this._directionToOrder(directionOrOrder); + + const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); + + const activeElementIndex = this._getItemIndex(activeElement); + + const nextElement = element || this._getItemByOrder(order, activeElement); + + const nextElementIndex = this._getItemIndex(nextElement); + + const isCycling = Boolean(this._interval); + const isNext = order === ORDER_NEXT; + const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END; + const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV; + + const eventDirectionName = this._orderToDirection(order); + + if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE$2)) { + this._isSliding = false; + return; + } + + if (this._isSliding) { + return; + } + + const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName); + + if (slideEvent.defaultPrevented) { + return; + } + + if (!activeElement || !nextElement) { + // Some weirdness is happening, so we bail + return; + } + + this._isSliding = true; + + if (isCycling) { + this.pause(); + } + + this._setActiveIndicatorElement(nextElement); + + this._activeElement = nextElement; + + const triggerSlidEvent = () => { + EventHandler.trigger(this._element, EVENT_SLID, { + relatedTarget: nextElement, + direction: eventDirectionName, + from: activeElementIndex, + to: nextElementIndex + }); + }; + + if (this._element.classList.contains(CLASS_NAME_SLIDE)) { + nextElement.classList.add(orderClassName); + reflow(nextElement); + activeElement.classList.add(directionalClassName); + nextElement.classList.add(directionalClassName); + + const completeCallBack = () => { + nextElement.classList.remove(directionalClassName, orderClassName); + nextElement.classList.add(CLASS_NAME_ACTIVE$2); + activeElement.classList.remove(CLASS_NAME_ACTIVE$2, orderClassName, directionalClassName); + this._isSliding = false; + setTimeout(triggerSlidEvent, 0); + }; + + this._queueCallback(completeCallBack, activeElement, true); + } else { + activeElement.classList.remove(CLASS_NAME_ACTIVE$2); + nextElement.classList.add(CLASS_NAME_ACTIVE$2); + this._isSliding = false; + triggerSlidEvent(); + } + + if (isCycling) { + this.cycle(); + } + } + + _directionToOrder(direction) { + if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) { + return direction; + } + + if (isRTL()) { + return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT; + } + + return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV; + } + + _orderToDirection(order) { + if (![ORDER_NEXT, ORDER_PREV].includes(order)) { + return order; + } + + if (isRTL()) { + return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT; + } + + return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT; + } // Static + + + static carouselInterface(element, config) { + const data = Carousel.getOrCreateInstance(element, config); + let { + _config + } = data; + + if (typeof config === 'object') { + _config = { ..._config, + ...config + }; + } + + const action = typeof config === 'string' ? config : _config.slide; + + if (typeof config === 'number') { + data.to(config); + } else if (typeof action === 'string') { + if (typeof data[action] === 'undefined') { + throw new TypeError(`No method named "${action}"`); + } + + data[action](); + } else if (_config.interval && _config.ride) { + data.pause(); + data.cycle(); + } + } + + static jQueryInterface(config) { + return this.each(function () { + Carousel.carouselInterface(this, config); + }); + } + + static dataApiClickHandler(event) { + const target = getElementFromSelector(this); + + if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) { + return; + } + + const config = { ...Manipulator.getDataAttributes(target), + ...Manipulator.getDataAttributes(this) + }; + const slideIndex = this.getAttribute('data-bs-slide-to'); + + if (slideIndex) { + config.interval = false; + } + + Carousel.carouselInterface(target, config); + + if (slideIndex) { + Carousel.getInstance(target).to(slideIndex); + } + + event.preventDefault(); + } + +} +/** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + +EventHandler.on(document, EVENT_CLICK_DATA_API$5, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler); +EventHandler.on(window, EVENT_LOAD_DATA_API$2, () => { + const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE); + + for (let i = 0, len = carousels.length; i < len; i++) { + Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i])); + } +}); +/** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Carousel to jQuery only if jQuery is present + */ + +defineJQueryPlugin(Carousel); + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): collapse.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + +const NAME$9 = 'collapse'; +const DATA_KEY$8 = 'bs.collapse'; +const EVENT_KEY$8 = `.${DATA_KEY$8}`; +const DATA_API_KEY$5 = '.data-api'; +const Default$8 = { + toggle: true, + parent: '' +}; +const DefaultType$8 = { + toggle: 'boolean', + parent: '(string|element)' +}; +const EVENT_SHOW$5 = `show${EVENT_KEY$8}`; +const EVENT_SHOWN$5 = `shown${EVENT_KEY$8}`; +const EVENT_HIDE$5 = `hide${EVENT_KEY$8}`; +const EVENT_HIDDEN$5 = `hidden${EVENT_KEY$8}`; +const EVENT_CLICK_DATA_API$4 = `click${EVENT_KEY$8}${DATA_API_KEY$5}`; +const CLASS_NAME_SHOW$8 = 'show'; +const CLASS_NAME_COLLAPSE = 'collapse'; +const CLASS_NAME_COLLAPSING = 'collapsing'; +const CLASS_NAME_COLLAPSED = 'collapsed'; +const WIDTH = 'width'; +const HEIGHT = 'height'; +const SELECTOR_ACTIVES = '.show, .collapsing'; +const SELECTOR_DATA_TOGGLE$4 = '[data-bs-toggle="collapse"]'; +/** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + +class Collapse extends BaseComponent { + constructor(element, config) { + super(element); + this._isTransitioning = false; + this._config = this._getConfig(config); + this._triggerArray = SelectorEngine.find(`${SELECTOR_DATA_TOGGLE$4}[href="#${this._element.id}"],` + `${SELECTOR_DATA_TOGGLE$4}[data-bs-target="#${this._element.id}"]`); + const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE$4); + + for (let i = 0, len = toggleList.length; i < len; i++) { + const elem = toggleList[i]; + const selector = getSelectorFromElement(elem); + const filterElement = SelectorEngine.find(selector).filter(foundElem => foundElem === this._element); + + if (selector !== null && filterElement.length) { + this._selector = selector; + + this._triggerArray.push(elem); + } + } + + this._parent = this._config.parent ? this._getParent() : null; + + if (!this._config.parent) { + this._addAriaAndCollapsedClass(this._element, this._triggerArray); + } + + if (this._config.toggle) { + this.toggle(); + } + } // Getters + + + static get Default() { + return Default$8; + } + + static get NAME() { + return NAME$9; + } // Public + + + toggle() { + if (this._element.classList.contains(CLASS_NAME_SHOW$8)) { + this.hide(); + } else { + this.show(); + } + } + + show() { + if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW$8)) { + return; + } + + let actives; + let activesData; + + if (this._parent) { + actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent).filter(elem => { + if (typeof this._config.parent === 'string') { + return elem.getAttribute('data-bs-parent') === this._config.parent; + } + + return elem.classList.contains(CLASS_NAME_COLLAPSE); + }); + + if (actives.length === 0) { + actives = null; + } + } + + const container = SelectorEngine.findOne(this._selector); + + if (actives) { + const tempActiveData = actives.find(elem => container !== elem); + activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null; + + if (activesData && activesData._isTransitioning) { + return; + } + } + + const startEvent = EventHandler.trigger(this._element, EVENT_SHOW$5); + + if (startEvent.defaultPrevented) { + return; + } + + if (actives) { + actives.forEach(elemActive => { + if (container !== elemActive) { + Collapse.collapseInterface(elemActive, 'hide'); + } + + if (!activesData) { + Data.set(elemActive, DATA_KEY$8, null); + } + }); + } + + const dimension = this._getDimension(); + + this._element.classList.remove(CLASS_NAME_COLLAPSE); + + this._element.classList.add(CLASS_NAME_COLLAPSING); + + this._element.style[dimension] = 0; + + if (this._triggerArray.length) { + this._triggerArray.forEach(element => { + element.classList.remove(CLASS_NAME_COLLAPSED); + element.setAttribute('aria-expanded', true); + }); + } + + this.setTransitioning(true); + + const complete = () => { + this._element.classList.remove(CLASS_NAME_COLLAPSING); + + this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$8); + + this._element.style[dimension] = ''; + this.setTransitioning(false); + EventHandler.trigger(this._element, EVENT_SHOWN$5); + }; + + const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1); + const scrollSize = `scroll${capitalizedDimension}`; + + this._queueCallback(complete, this._element, true); + + this._element.style[dimension] = `${this._element[scrollSize]}px`; + } + + hide() { + if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW$8)) { + return; + } + + const startEvent = EventHandler.trigger(this._element, EVENT_HIDE$5); + + if (startEvent.defaultPrevented) { + return; + } + + const dimension = this._getDimension(); + + this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`; + reflow(this._element); + + this._element.classList.add(CLASS_NAME_COLLAPSING); + + this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$8); + + const triggerArrayLength = this._triggerArray.length; + + if (triggerArrayLength > 0) { + for (let i = 0; i < triggerArrayLength; i++) { + const trigger = this._triggerArray[i]; + const elem = getElementFromSelector(trigger); + + if (elem && !elem.classList.contains(CLASS_NAME_SHOW$8)) { + trigger.classList.add(CLASS_NAME_COLLAPSED); + trigger.setAttribute('aria-expanded', false); + } + } + } + + this.setTransitioning(true); + + const complete = () => { + this.setTransitioning(false); + + this._element.classList.remove(CLASS_NAME_COLLAPSING); + + this._element.classList.add(CLASS_NAME_COLLAPSE); + + EventHandler.trigger(this._element, EVENT_HIDDEN$5); + }; + + this._element.style[dimension] = ''; + + this._queueCallback(complete, this._element, true); + } + + setTransitioning(isTransitioning) { + this._isTransitioning = isTransitioning; + } // Private + + + _getConfig(config) { + config = { ...Default$8, + ...config + }; + config.toggle = Boolean(config.toggle); // Coerce string values + + typeCheckConfig(NAME$9, config, DefaultType$8); + return config; + } + + _getDimension() { + return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT; + } + + _getParent() { + let { + parent + } = this._config; + parent = getElement(parent); + const selector = `${SELECTOR_DATA_TOGGLE$4}[data-bs-parent="${parent}"]`; + SelectorEngine.find(selector, parent).forEach(element => { + const selected = getElementFromSelector(element); + + this._addAriaAndCollapsedClass(selected, [element]); + }); + return parent; + } + + _addAriaAndCollapsedClass(element, triggerArray) { + if (!element || !triggerArray.length) { + return; + } + + const isOpen = element.classList.contains(CLASS_NAME_SHOW$8); + triggerArray.forEach(elem => { + if (isOpen) { + elem.classList.remove(CLASS_NAME_COLLAPSED); + } else { + elem.classList.add(CLASS_NAME_COLLAPSED); + } + + elem.setAttribute('aria-expanded', isOpen); + }); + } // Static + + + static collapseInterface(element, config) { + let data = Collapse.getInstance(element); + const _config = { ...Default$8, + ...Manipulator.getDataAttributes(element), + ...(typeof config === 'object' && config ? config : {}) + }; + + if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) { + _config.toggle = false; + } + + if (!data) { + data = new Collapse(element, _config); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + } + } + + static jQueryInterface(config) { + return this.each(function () { + Collapse.collapseInterface(this, config); + }); + } + +} +/** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + +EventHandler.on(document, EVENT_CLICK_DATA_API$4, SELECTOR_DATA_TOGGLE$4, function (event) { + // preventDefault only for <a> elements (which change the URL) not inside the collapsible element + if (event.target.tagName === 'A' || event.delegateTarget && event.delegateTarget.tagName === 'A') { + event.preventDefault(); + } + + const triggerData = Manipulator.getDataAttributes(this); + const selector = getSelectorFromElement(this); + const selectorElements = SelectorEngine.find(selector); + selectorElements.forEach(element => { + const data = Collapse.getInstance(element); + let config; + + if (data) { + // update parent attribute + if (data._parent === null && typeof triggerData.parent === 'string') { + data._config.parent = triggerData.parent; + data._parent = data._getParent(); + } + + config = 'toggle'; + } else { + config = triggerData; + } + + Collapse.collapseInterface(element, config); + }); +}); +/** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Collapse to jQuery only if jQuery is present + */ + +defineJQueryPlugin(Collapse); + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): dropdown.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + +const NAME$8 = 'dropdown'; +const DATA_KEY$7 = 'bs.dropdown'; +const EVENT_KEY$7 = `.${DATA_KEY$7}`; +const DATA_API_KEY$4 = '.data-api'; +const ESCAPE_KEY$2 = 'Escape'; +const SPACE_KEY = 'Space'; +const TAB_KEY = 'Tab'; +const ARROW_UP_KEY = 'ArrowUp'; +const ARROW_DOWN_KEY = 'ArrowDown'; +const RIGHT_MOUSE_BUTTON = 2; // MouseEvent.button value for the secondary button, usually the right button + +const REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY$2}`); +const EVENT_HIDE$4 = `hide${EVENT_KEY$7}`; +const EVENT_HIDDEN$4 = `hidden${EVENT_KEY$7}`; +const EVENT_SHOW$4 = `show${EVENT_KEY$7}`; +const EVENT_SHOWN$4 = `shown${EVENT_KEY$7}`; +const EVENT_CLICK = `click${EVENT_KEY$7}`; +const EVENT_CLICK_DATA_API$3 = `click${EVENT_KEY$7}${DATA_API_KEY$4}`; +const EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY$7}${DATA_API_KEY$4}`; +const EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY$7}${DATA_API_KEY$4}`; +const CLASS_NAME_SHOW$7 = 'show'; +const CLASS_NAME_DROPUP = 'dropup'; +const CLASS_NAME_DROPEND = 'dropend'; +const CLASS_NAME_DROPSTART = 'dropstart'; +const CLASS_NAME_NAVBAR = 'navbar'; +const SELECTOR_DATA_TOGGLE$3 = '[data-bs-toggle="dropdown"]'; +const SELECTOR_MENU = '.dropdown-menu'; +const SELECTOR_NAVBAR_NAV = '.navbar-nav'; +const SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'; +const PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'; +const PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'; +const PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'; +const PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'; +const PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'; +const PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'; +const Default$7 = { + offset: [0, 2], + boundary: 'clippingParents', + reference: 'toggle', + display: 'dynamic', + popperConfig: null, + autoClose: true +}; +const DefaultType$7 = { + offset: '(array|string|function)', + boundary: '(string|element)', + reference: '(string|element|object)', + display: 'string', + popperConfig: '(null|object|function)', + autoClose: '(boolean|string)' +}; +/** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + +class Dropdown extends BaseComponent { + constructor(element, config) { + super(element); + this._popper = null; + this._config = this._getConfig(config); + this._menu = this._getMenuElement(); + this._inNavbar = this._detectNavbar(); + + this._addEventListeners(); + } // Getters + + + static get Default() { + return Default$7; + } + + static get DefaultType() { + return DefaultType$7; + } + + static get NAME() { + return NAME$8; + } // Public + + + toggle() { + if (isDisabled(this._element)) { + return; + } + + const isActive = this._element.classList.contains(CLASS_NAME_SHOW$7); + + if (isActive) { + this.hide(); + return; + } + + this.show(); + } + + show() { + if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW$7)) { + return; + } + + const parent = Dropdown.getParentFromElement(this._element); + const relatedTarget = { + relatedTarget: this._element + }; + const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$4, relatedTarget); + + if (showEvent.defaultPrevented) { + return; + } // Totally disable Popper for Dropdowns in Navbar + + + if (this._inNavbar) { + Manipulator.setDataAttribute(this._menu, 'popper', 'none'); + } else { + if (typeof Popper === 'undefined') { + throw new TypeError('Bootstrap\'s dropdowns require Popper (https://popper.js.org)'); + } + + let referenceElement = this._element; + + if (this._config.reference === 'parent') { + referenceElement = parent; + } else if (isElement(this._config.reference)) { + referenceElement = getElement(this._config.reference); + } else if (typeof this._config.reference === 'object') { + referenceElement = this._config.reference; + } + + const popperConfig = this._getPopperConfig(); + + const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false); + this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig); + + if (isDisplayStatic) { + Manipulator.setDataAttribute(this._menu, 'popper', 'static'); + } + } // If this is a touch-enabled device we add extra + // empty mouseover listeners to the body's immediate children; + // only needed because of broken event delegation on iOS + // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html + + + if ('ontouchstart' in document.documentElement && !parent.closest(SELECTOR_NAVBAR_NAV)) { + [].concat(...document.body.children).forEach(elem => EventHandler.on(elem, 'mouseover', noop)); + } + + this._element.focus(); + + this._element.setAttribute('aria-expanded', true); + + this._menu.classList.toggle(CLASS_NAME_SHOW$7); + + this._element.classList.toggle(CLASS_NAME_SHOW$7); + + EventHandler.trigger(this._element, EVENT_SHOWN$4, relatedTarget); + } + + hide() { + if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW$7)) { + return; + } + + const relatedTarget = { + relatedTarget: this._element + }; + + this._completeHide(relatedTarget); + } + + dispose() { + if (this._popper) { + this._popper.destroy(); + } + + super.dispose(); + } + + update() { + this._inNavbar = this._detectNavbar(); + + if (this._popper) { + this._popper.update(); + } + } // Private + + + _addEventListeners() { + EventHandler.on(this._element, EVENT_CLICK, event => { + event.preventDefault(); + this.toggle(); + }); + } + + _completeHide(relatedTarget) { + const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$4, relatedTarget); + + if (hideEvent.defaultPrevented) { + return; + } // If this is a touch-enabled device we remove the extra + // empty mouseover listeners we added for iOS support + + + if ('ontouchstart' in document.documentElement) { + [].concat(...document.body.children).forEach(elem => EventHandler.off(elem, 'mouseover', noop)); + } + + if (this._popper) { + this._popper.destroy(); + } + + this._menu.classList.remove(CLASS_NAME_SHOW$7); + + this._element.classList.remove(CLASS_NAME_SHOW$7); + + this._element.setAttribute('aria-expanded', 'false'); + + Manipulator.removeDataAttribute(this._menu, 'popper'); + EventHandler.trigger(this._element, EVENT_HIDDEN$4, relatedTarget); + } + + _getConfig(config) { + config = { ...this.constructor.Default, + ...Manipulator.getDataAttributes(this._element), + ...config + }; + typeCheckConfig(NAME$8, config, this.constructor.DefaultType); + + if (typeof config.reference === 'object' && !isElement(config.reference) && typeof config.reference.getBoundingClientRect !== 'function') { + // Popper virtual elements require a getBoundingClientRect method + throw new TypeError(`${NAME$8.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`); + } + + return config; + } + + _getMenuElement() { + return SelectorEngine.next(this._element, SELECTOR_MENU)[0]; + } + + _getPlacement() { + const parentDropdown = this._element.parentNode; + + if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) { + return PLACEMENT_RIGHT; + } + + if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) { + return PLACEMENT_LEFT; + } // We need to trim the value because custom properties can also include spaces + + + const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'; + + if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) { + return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP; + } + + return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM; + } + + _detectNavbar() { + return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null; + } + + _getOffset() { + const { + offset + } = this._config; + + if (typeof offset === 'string') { + return offset.split(',').map(val => Number.parseInt(val, 10)); + } + + if (typeof offset === 'function') { + return popperData => offset(popperData, this._element); + } + + return offset; + } + + _getPopperConfig() { + const defaultBsPopperConfig = { + placement: this._getPlacement(), + modifiers: [{ + name: 'preventOverflow', + options: { + boundary: this._config.boundary + } + }, { + name: 'offset', + options: { + offset: this._getOffset() + } + }] + }; // Disable Popper if we have a static display + + if (this._config.display === 'static') { + defaultBsPopperConfig.modifiers = [{ + name: 'applyStyles', + enabled: false + }]; + } + + return { ...defaultBsPopperConfig, + ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig) + }; + } + + _selectMenuItem({ + key, + target + }) { + const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible); + + if (!items.length) { + return; + } // if target isn't included in items (e.g. when expanding the dropdown) + // allow cycling to get the last item in case key equals ARROW_UP_KEY + + + getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus(); + } // Static + + + static dropdownInterface(element, config) { + const data = Dropdown.getOrCreateInstance(element, config); + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + } + } + + static jQueryInterface(config) { + return this.each(function () { + Dropdown.dropdownInterface(this, config); + }); + } + + static clearMenus(event) { + if (event && (event.button === RIGHT_MOUSE_BUTTON || event.type === 'keyup' && event.key !== TAB_KEY)) { + return; + } + + const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE$3); + + for (let i = 0, len = toggles.length; i < len; i++) { + const context = Dropdown.getInstance(toggles[i]); + + if (!context || context._config.autoClose === false) { + continue; + } + + if (!context._element.classList.contains(CLASS_NAME_SHOW$7)) { + continue; + } + + const relatedTarget = { + relatedTarget: context._element + }; + + if (event) { + const composedPath = event.composedPath(); + const isMenuTarget = composedPath.includes(context._menu); + + if (composedPath.includes(context._element) || context._config.autoClose === 'inside' && !isMenuTarget || context._config.autoClose === 'outside' && isMenuTarget) { + continue; + } // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu + + + if (context._menu.contains(event.target) && (event.type === 'keyup' && event.key === TAB_KEY || /input|select|option|textarea|form/i.test(event.target.tagName))) { + continue; + } + + if (event.type === 'click') { + relatedTarget.clickEvent = event; + } + } + + context._completeHide(relatedTarget); + } + } + + static getParentFromElement(element) { + return getElementFromSelector(element) || element.parentNode; + } + + static dataApiKeydownHandler(event) { + // If not input/textarea: + // - And not a key in REGEXP_KEYDOWN => not a dropdown command + // If input/textarea: + // - If space key => not a dropdown command + // - If key is other than escape + // - If key is not up or down => not a dropdown command + // - If trigger inside the menu => not a dropdown command + if (/input|textarea/i.test(event.target.tagName) ? event.key === SPACE_KEY || event.key !== ESCAPE_KEY$2 && (event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY || event.target.closest(SELECTOR_MENU)) : !REGEXP_KEYDOWN.test(event.key)) { + return; + } + + const isActive = this.classList.contains(CLASS_NAME_SHOW$7); + + if (!isActive && event.key === ESCAPE_KEY$2) { + return; + } + + event.preventDefault(); + event.stopPropagation(); + + if (isDisabled(this)) { + return; + } + + const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0]; + + if (event.key === ESCAPE_KEY$2) { + getToggleButton().focus(); + Dropdown.clearMenus(); + return; + } + + if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) { + if (!isActive) { + getToggleButton().click(); + } + + Dropdown.getInstance(getToggleButton())._selectMenuItem(event); + + return; + } + + if (!isActive || event.key === SPACE_KEY) { + Dropdown.clearMenus(); + } + } + +} +/** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + +EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE$3, Dropdown.dataApiKeydownHandler); +EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler); +EventHandler.on(document, EVENT_CLICK_DATA_API$3, Dropdown.clearMenus); +EventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus); +EventHandler.on(document, EVENT_CLICK_DATA_API$3, SELECTOR_DATA_TOGGLE$3, function (event) { + event.preventDefault(); + Dropdown.dropdownInterface(this); +}); +/** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Dropdown to jQuery only if jQuery is present + */ + +defineJQueryPlugin(Dropdown); + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): util/scrollBar.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +const SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'; +const SELECTOR_STICKY_CONTENT = '.sticky-top'; + +class ScrollBarHelper { + constructor() { + this._element = document.body; + } + + getWidth() { + // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes + const documentWidth = document.documentElement.clientWidth; + return Math.abs(window.innerWidth - documentWidth); + } + + hide() { + const width = this.getWidth(); + + this._disableOverFlow(); // give padding to element to balance the hidden scrollbar width + + + this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width); // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth + + + this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width); + + this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width); + } + + _disableOverFlow() { + this._saveInitialAttribute(this._element, 'overflow'); + + this._element.style.overflow = 'hidden'; + } + + _setElementAttributes(selector, styleProp, callback) { + const scrollbarWidth = this.getWidth(); + + const manipulationCallBack = element => { + if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) { + return; + } + + this._saveInitialAttribute(element, styleProp); + + const calculatedValue = window.getComputedStyle(element)[styleProp]; + element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`; + }; + + this._applyManipulationCallback(selector, manipulationCallBack); + } + + reset() { + this._resetElementAttributes(this._element, 'overflow'); + + this._resetElementAttributes(this._element, 'paddingRight'); + + this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight'); + + this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight'); + } + + _saveInitialAttribute(element, styleProp) { + const actualValue = element.style[styleProp]; + + if (actualValue) { + Manipulator.setDataAttribute(element, styleProp, actualValue); + } + } + + _resetElementAttributes(selector, styleProp) { + const manipulationCallBack = element => { + const value = Manipulator.getDataAttribute(element, styleProp); + + if (typeof value === 'undefined') { + element.style.removeProperty(styleProp); + } else { + Manipulator.removeDataAttribute(element, styleProp); + element.style[styleProp] = value; + } + }; + + this._applyManipulationCallback(selector, manipulationCallBack); + } + + _applyManipulationCallback(selector, callBack) { + if (isElement(selector)) { + callBack(selector); + } else { + SelectorEngine.find(selector, this._element).forEach(callBack); + } + } + + isOverflowing() { + return this.getWidth() > 0; + } + +} + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): util/backdrop.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ +const Default$6 = { + isVisible: true, + // if false, we use the backdrop helper without adding any element to the dom + isAnimated: false, + rootElement: 'body', + // give the choice to place backdrop under different elements + clickCallback: null +}; +const DefaultType$6 = { + isVisible: 'boolean', + isAnimated: 'boolean', + rootElement: '(element|string)', + clickCallback: '(function|null)' +}; +const NAME$7 = 'backdrop'; +const CLASS_NAME_BACKDROP = 'modal-backdrop'; +const CLASS_NAME_FADE$5 = 'fade'; +const CLASS_NAME_SHOW$6 = 'show'; +const EVENT_MOUSEDOWN = `mousedown.bs.${NAME$7}`; + +class Backdrop { + constructor(config) { + this._config = this._getConfig(config); + this._isAppended = false; + this._element = null; + } + + show(callback) { + if (!this._config.isVisible) { + execute(callback); + return; + } + + this._append(); + + if (this._config.isAnimated) { + reflow(this._getElement()); + } + + this._getElement().classList.add(CLASS_NAME_SHOW$6); + + this._emulateAnimation(() => { + execute(callback); + }); + } + + hide(callback) { + if (!this._config.isVisible) { + execute(callback); + return; + } + + this._getElement().classList.remove(CLASS_NAME_SHOW$6); + + this._emulateAnimation(() => { + this.dispose(); + execute(callback); + }); + } // Private + + + _getElement() { + if (!this._element) { + const backdrop = document.createElement('div'); + backdrop.className = CLASS_NAME_BACKDROP; + + if (this._config.isAnimated) { + backdrop.classList.add(CLASS_NAME_FADE$5); + } + + this._element = backdrop; + } + + return this._element; + } + + _getConfig(config) { + config = { ...Default$6, + ...(typeof config === 'object' ? config : {}) + }; // use getElement() with the default "body" to get a fresh Element on each instantiation + + config.rootElement = getElement(config.rootElement); + typeCheckConfig(NAME$7, config, DefaultType$6); + return config; + } + + _append() { + if (this._isAppended) { + return; + } + + this._config.rootElement.appendChild(this._getElement()); + + EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => { + execute(this._config.clickCallback); + }); + this._isAppended = true; + } + + dispose() { + if (!this._isAppended) { + return; + } + + EventHandler.off(this._element, EVENT_MOUSEDOWN); + + this._element.remove(); + + this._isAppended = false; + } + + _emulateAnimation(callback) { + executeAfterTransition(callback, this._getElement(), this._config.isAnimated); + } + +} + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): modal.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + +const NAME$6 = 'modal'; +const DATA_KEY$6 = 'bs.modal'; +const EVENT_KEY$6 = `.${DATA_KEY$6}`; +const DATA_API_KEY$3 = '.data-api'; +const ESCAPE_KEY$1 = 'Escape'; +const Default$5 = { + backdrop: true, + keyboard: true, + focus: true +}; +const DefaultType$5 = { + backdrop: '(boolean|string)', + keyboard: 'boolean', + focus: 'boolean' +}; +const EVENT_HIDE$3 = `hide${EVENT_KEY$6}`; +const EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY$6}`; +const EVENT_HIDDEN$3 = `hidden${EVENT_KEY$6}`; +const EVENT_SHOW$3 = `show${EVENT_KEY$6}`; +const EVENT_SHOWN$3 = `shown${EVENT_KEY$6}`; +const EVENT_FOCUSIN$2 = `focusin${EVENT_KEY$6}`; +const EVENT_RESIZE = `resize${EVENT_KEY$6}`; +const EVENT_CLICK_DISMISS$2 = `click.dismiss${EVENT_KEY$6}`; +const EVENT_KEYDOWN_DISMISS$1 = `keydown.dismiss${EVENT_KEY$6}`; +const EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY$6}`; +const EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY$6}`; +const EVENT_CLICK_DATA_API$2 = `click${EVENT_KEY$6}${DATA_API_KEY$3}`; +const CLASS_NAME_OPEN = 'modal-open'; +const CLASS_NAME_FADE$4 = 'fade'; +const CLASS_NAME_SHOW$5 = 'show'; +const CLASS_NAME_STATIC = 'modal-static'; +const SELECTOR_DIALOG = '.modal-dialog'; +const SELECTOR_MODAL_BODY = '.modal-body'; +const SELECTOR_DATA_TOGGLE$2 = '[data-bs-toggle="modal"]'; +const SELECTOR_DATA_DISMISS$2 = '[data-bs-dismiss="modal"]'; +/** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + +class Modal extends BaseComponent { + constructor(element, config) { + super(element); + this._config = this._getConfig(config); + this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element); + this._backdrop = this._initializeBackDrop(); + this._isShown = false; + this._ignoreBackdropClick = false; + this._isTransitioning = false; + this._scrollBar = new ScrollBarHelper(); + } // Getters + + + static get Default() { + return Default$5; + } + + static get NAME() { + return NAME$6; + } // Public + + + toggle(relatedTarget) { + return this._isShown ? this.hide() : this.show(relatedTarget); + } + + show(relatedTarget) { + if (this._isShown || this._isTransitioning) { + return; + } + + const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$3, { + relatedTarget + }); + + if (showEvent.defaultPrevented) { + return; + } + + this._isShown = true; + + if (this._isAnimated()) { + this._isTransitioning = true; + } + + this._scrollBar.hide(); + + document.body.classList.add(CLASS_NAME_OPEN); + + this._adjustDialog(); + + this._setEscapeEvent(); + + this._setResizeEvent(); + + EventHandler.on(this._element, EVENT_CLICK_DISMISS$2, SELECTOR_DATA_DISMISS$2, event => this.hide(event)); + EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => { + EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => { + if (event.target === this._element) { + this._ignoreBackdropClick = true; + } + }); + }); + + this._showBackdrop(() => this._showElement(relatedTarget)); + } + + hide(event) { + if (event && ['A', 'AREA'].includes(event.target.tagName)) { + event.preventDefault(); + } + + if (!this._isShown || this._isTransitioning) { + return; + } + + const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$3); + + if (hideEvent.defaultPrevented) { + return; + } + + this._isShown = false; + + const isAnimated = this._isAnimated(); + + if (isAnimated) { + this._isTransitioning = true; + } + + this._setEscapeEvent(); + + this._setResizeEvent(); + + EventHandler.off(document, EVENT_FOCUSIN$2); + + this._element.classList.remove(CLASS_NAME_SHOW$5); + + EventHandler.off(this._element, EVENT_CLICK_DISMISS$2); + EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS); + + this._queueCallback(() => this._hideModal(), this._element, isAnimated); + } + + dispose() { + [window, this._dialog].forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY$6)); + + this._backdrop.dispose(); + + super.dispose(); + /** + * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API` + * Do not move `document` in `htmlElements` array + * It will remove `EVENT_CLICK_DATA_API` event that should remain + */ + + EventHandler.off(document, EVENT_FOCUSIN$2); + } + + handleUpdate() { + this._adjustDialog(); + } // Private + + + _initializeBackDrop() { + return new Backdrop({ + isVisible: Boolean(this._config.backdrop), + // 'static' option will be translated to true, and booleans will keep their value + isAnimated: this._isAnimated() + }); + } + + _getConfig(config) { + config = { ...Default$5, + ...Manipulator.getDataAttributes(this._element), + ...(typeof config === 'object' ? config : {}) + }; + typeCheckConfig(NAME$6, config, DefaultType$5); + return config; + } + + _showElement(relatedTarget) { + const isAnimated = this._isAnimated(); + + const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog); + + if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) { + // Don't move modal's DOM position + document.body.appendChild(this._element); + } + + this._element.style.display = 'block'; + + this._element.removeAttribute('aria-hidden'); + + this._element.setAttribute('aria-modal', true); + + this._element.setAttribute('role', 'dialog'); + + this._element.scrollTop = 0; + + if (modalBody) { + modalBody.scrollTop = 0; + } + + if (isAnimated) { + reflow(this._element); + } + + this._element.classList.add(CLASS_NAME_SHOW$5); + + if (this._config.focus) { + this._enforceFocus(); + } + + const transitionComplete = () => { + if (this._config.focus) { + this._element.focus(); + } + + this._isTransitioning = false; + EventHandler.trigger(this._element, EVENT_SHOWN$3, { + relatedTarget + }); + }; + + this._queueCallback(transitionComplete, this._dialog, isAnimated); + } + + _enforceFocus() { + EventHandler.off(document, EVENT_FOCUSIN$2); // guard against infinite focus loop + + EventHandler.on(document, EVENT_FOCUSIN$2, event => { + if (document !== event.target && this._element !== event.target && !this._element.contains(event.target)) { + this._element.focus(); + } + }); + } + + _setEscapeEvent() { + if (this._isShown) { + EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS$1, event => { + if (this._config.keyboard && event.key === ESCAPE_KEY$1) { + event.preventDefault(); + this.hide(); + } else if (!this._config.keyboard && event.key === ESCAPE_KEY$1) { + this._triggerBackdropTransition(); + } + }); + } else { + EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS$1); + } + } + + _setResizeEvent() { + if (this._isShown) { + EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog()); + } else { + EventHandler.off(window, EVENT_RESIZE); + } + } + + _hideModal() { + this._element.style.display = 'none'; + + this._element.setAttribute('aria-hidden', true); + + this._element.removeAttribute('aria-modal'); + + this._element.removeAttribute('role'); + + this._isTransitioning = false; + + this._backdrop.hide(() => { + document.body.classList.remove(CLASS_NAME_OPEN); + + this._resetAdjustments(); + + this._scrollBar.reset(); + + EventHandler.trigger(this._element, EVENT_HIDDEN$3); + }); + } + + _showBackdrop(callback) { + EventHandler.on(this._element, EVENT_CLICK_DISMISS$2, event => { + if (this._ignoreBackdropClick) { + this._ignoreBackdropClick = false; + return; + } + + if (event.target !== event.currentTarget) { + return; + } + + if (this._config.backdrop === true) { + this.hide(); + } else if (this._config.backdrop === 'static') { + this._triggerBackdropTransition(); + } + }); + + this._backdrop.show(callback); + } + + _isAnimated() { + return this._element.classList.contains(CLASS_NAME_FADE$4); + } + + _triggerBackdropTransition() { + const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED); + + if (hideEvent.defaultPrevented) { + return; + } + + const { + classList, + scrollHeight, + style + } = this._element; + const isModalOverflowing = scrollHeight > document.documentElement.clientHeight; // return if the following background transition hasn't yet completed + + if (!isModalOverflowing && style.overflowY === 'hidden' || classList.contains(CLASS_NAME_STATIC)) { + return; + } + + if (!isModalOverflowing) { + style.overflowY = 'hidden'; + } + + classList.add(CLASS_NAME_STATIC); + + this._queueCallback(() => { + classList.remove(CLASS_NAME_STATIC); + + if (!isModalOverflowing) { + this._queueCallback(() => { + style.overflowY = ''; + }, this._dialog); + } + }, this._dialog); + + this._element.focus(); + } // ---------------------------------------------------------------------- + // the following methods are used to handle overflowing modals + // ---------------------------------------------------------------------- + + + _adjustDialog() { + const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight; + + const scrollbarWidth = this._scrollBar.getWidth(); + + const isBodyOverflowing = scrollbarWidth > 0; + + if (!isBodyOverflowing && isModalOverflowing && !isRTL() || isBodyOverflowing && !isModalOverflowing && isRTL()) { + this._element.style.paddingLeft = `${scrollbarWidth}px`; + } + + if (isBodyOverflowing && !isModalOverflowing && !isRTL() || !isBodyOverflowing && isModalOverflowing && isRTL()) { + this._element.style.paddingRight = `${scrollbarWidth}px`; + } + } + + _resetAdjustments() { + this._element.style.paddingLeft = ''; + this._element.style.paddingRight = ''; + } // Static + + + static jQueryInterface(config, relatedTarget) { + return this.each(function () { + const data = Modal.getOrCreateInstance(this, config); + + if (typeof config !== 'string') { + return; + } + + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](relatedTarget); + }); + } + +} +/** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + +EventHandler.on(document, EVENT_CLICK_DATA_API$2, SELECTOR_DATA_TOGGLE$2, function (event) { + const target = getElementFromSelector(this); + + if (['A', 'AREA'].includes(this.tagName)) { + event.preventDefault(); + } + + EventHandler.one(target, EVENT_SHOW$3, showEvent => { + if (showEvent.defaultPrevented) { + // only register focus restorer if modal will actually get shown + return; + } + + EventHandler.one(target, EVENT_HIDDEN$3, () => { + if (isVisible(this)) { + this.focus(); + } + }); + }); + const data = Modal.getOrCreateInstance(target); + data.toggle(this); +}); +/** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Modal to jQuery only if jQuery is present + */ + +defineJQueryPlugin(Modal); + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): offcanvas.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + +const NAME$5 = 'offcanvas'; +const DATA_KEY$5 = 'bs.offcanvas'; +const EVENT_KEY$5 = `.${DATA_KEY$5}`; +const DATA_API_KEY$2 = '.data-api'; +const EVENT_LOAD_DATA_API$1 = `load${EVENT_KEY$5}${DATA_API_KEY$2}`; +const ESCAPE_KEY = 'Escape'; +const Default$4 = { + backdrop: true, + keyboard: true, + scroll: false +}; +const DefaultType$4 = { + backdrop: 'boolean', + keyboard: 'boolean', + scroll: 'boolean' +}; +const CLASS_NAME_SHOW$4 = 'show'; +const OPEN_SELECTOR = '.offcanvas.show'; +const EVENT_SHOW$2 = `show${EVENT_KEY$5}`; +const EVENT_SHOWN$2 = `shown${EVENT_KEY$5}`; +const EVENT_HIDE$2 = `hide${EVENT_KEY$5}`; +const EVENT_HIDDEN$2 = `hidden${EVENT_KEY$5}`; +const EVENT_FOCUSIN$1 = `focusin${EVENT_KEY$5}`; +const EVENT_CLICK_DATA_API$1 = `click${EVENT_KEY$5}${DATA_API_KEY$2}`; +const EVENT_CLICK_DISMISS$1 = `click.dismiss${EVENT_KEY$5}`; +const EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY$5}`; +const SELECTOR_DATA_DISMISS$1 = '[data-bs-dismiss="offcanvas"]'; +const SELECTOR_DATA_TOGGLE$1 = '[data-bs-toggle="offcanvas"]'; +/** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + +class Offcanvas extends BaseComponent { + constructor(element, config) { + super(element); + this._config = this._getConfig(config); + this._isShown = false; + this._backdrop = this._initializeBackDrop(); + + this._addEventListeners(); + } // Getters + + + static get NAME() { + return NAME$5; + } + + static get Default() { + return Default$4; + } // Public + + + toggle(relatedTarget) { + return this._isShown ? this.hide() : this.show(relatedTarget); + } + + show(relatedTarget) { + if (this._isShown) { + return; + } + + const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$2, { + relatedTarget + }); + + if (showEvent.defaultPrevented) { + return; + } + + this._isShown = true; + this._element.style.visibility = 'visible'; + + this._backdrop.show(); + + if (!this._config.scroll) { + new ScrollBarHelper().hide(); + + this._enforceFocusOnElement(this._element); + } + + this._element.removeAttribute('aria-hidden'); + + this._element.setAttribute('aria-modal', true); + + this._element.setAttribute('role', 'dialog'); + + this._element.classList.add(CLASS_NAME_SHOW$4); + + const completeCallBack = () => { + EventHandler.trigger(this._element, EVENT_SHOWN$2, { + relatedTarget + }); + }; + + this._queueCallback(completeCallBack, this._element, true); + } + + hide() { + if (!this._isShown) { + return; + } + + const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$2); + + if (hideEvent.defaultPrevented) { + return; + } + + EventHandler.off(document, EVENT_FOCUSIN$1); + + this._element.blur(); + + this._isShown = false; + + this._element.classList.remove(CLASS_NAME_SHOW$4); + + this._backdrop.hide(); + + const completeCallback = () => { + this._element.setAttribute('aria-hidden', true); + + this._element.removeAttribute('aria-modal'); + + this._element.removeAttribute('role'); + + this._element.style.visibility = 'hidden'; + + if (!this._config.scroll) { + new ScrollBarHelper().reset(); + } + + EventHandler.trigger(this._element, EVENT_HIDDEN$2); + }; + + this._queueCallback(completeCallback, this._element, true); + } + + dispose() { + this._backdrop.dispose(); + + super.dispose(); + EventHandler.off(document, EVENT_FOCUSIN$1); + } // Private + + + _getConfig(config) { + config = { ...Default$4, + ...Manipulator.getDataAttributes(this._element), + ...(typeof config === 'object' ? config : {}) + }; + typeCheckConfig(NAME$5, config, DefaultType$4); + return config; + } + + _initializeBackDrop() { + return new Backdrop({ + isVisible: this._config.backdrop, + isAnimated: true, + rootElement: this._element.parentNode, + clickCallback: () => this.hide() + }); + } + + _enforceFocusOnElement(element) { + EventHandler.off(document, EVENT_FOCUSIN$1); // guard against infinite focus loop + + EventHandler.on(document, EVENT_FOCUSIN$1, event => { + if (document !== event.target && element !== event.target && !element.contains(event.target)) { + element.focus(); + } + }); + element.focus(); + } + + _addEventListeners() { + EventHandler.on(this._element, EVENT_CLICK_DISMISS$1, SELECTOR_DATA_DISMISS$1, () => this.hide()); + EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => { + if (this._config.keyboard && event.key === ESCAPE_KEY) { + this.hide(); + } + }); + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Offcanvas.getOrCreateInstance(this, config); + + if (typeof config !== 'string') { + return; + } + + if (data[config] === undefined || config.startsWith('_') || config === 'constructor') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](this); + }); + } + +} +/** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + +EventHandler.on(document, EVENT_CLICK_DATA_API$1, SELECTOR_DATA_TOGGLE$1, function (event) { + const target = getElementFromSelector(this); + + if (['A', 'AREA'].includes(this.tagName)) { + event.preventDefault(); + } + + if (isDisabled(this)) { + return; + } + + EventHandler.one(target, EVENT_HIDDEN$2, () => { + // focus on trigger when it is closed + if (isVisible(this)) { + this.focus(); + } + }); // avoid conflict when clicking a toggler of an offcanvas, while another is open + + const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR); + + if (allReadyOpen && allReadyOpen !== target) { + Offcanvas.getInstance(allReadyOpen).hide(); + } + + const data = Offcanvas.getOrCreateInstance(target); + data.toggle(this); +}); +EventHandler.on(window, EVENT_LOAD_DATA_API$1, () => SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())); +/** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + +defineJQueryPlugin(Offcanvas); + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): util/sanitizer.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +const uriAttrs = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']); +const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i; +/** + * A pattern that recognizes a commonly useful subset of URLs that are safe. + * + * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts + */ + +const SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i; +/** + * A pattern that matches safe data URLs. Only matches image, video and audio types. + * + * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts + */ + +const DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i; + +const allowedAttribute = (attr, allowedAttributeList) => { + const attrName = attr.nodeName.toLowerCase(); + + if (allowedAttributeList.includes(attrName)) { + if (uriAttrs.has(attrName)) { + return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue)); + } + + return true; + } + + const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp); // Check if a regular expression validates the attribute. + + for (let i = 0, len = regExp.length; i < len; i++) { + if (regExp[i].test(attrName)) { + return true; + } + } + + return false; +}; + +const DefaultAllowlist = { + // Global attributes allowed on any supplied element below. + '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN], + 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: [] +}; +function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) { + if (!unsafeHtml.length) { + return unsafeHtml; + } + + if (sanitizeFn && typeof sanitizeFn === 'function') { + return sanitizeFn(unsafeHtml); + } + + const domParser = new window.DOMParser(); + const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html'); + const allowlistKeys = Object.keys(allowList); + const elements = [].concat(...createdDocument.body.querySelectorAll('*')); + + for (let i = 0, len = elements.length; i < len; i++) { + const el = elements[i]; + const elName = el.nodeName.toLowerCase(); + + if (!allowlistKeys.includes(elName)) { + el.remove(); + continue; + } + + const attributeList = [].concat(...el.attributes); + const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || []); + attributeList.forEach(attr => { + if (!allowedAttribute(attr, allowedAttributes)) { + el.removeAttribute(attr.nodeName); + } + }); + } + + return createdDocument.body.innerHTML; +} + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): tooltip.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + +const NAME$4 = 'tooltip'; +const DATA_KEY$4 = 'bs.tooltip'; +const EVENT_KEY$4 = `.${DATA_KEY$4}`; +const CLASS_PREFIX$1 = 'bs-tooltip'; +const BSCLS_PREFIX_REGEX$1 = new RegExp(`(^|\\s)${CLASS_PREFIX$1}\\S+`, 'g'); +const DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn']); +const DefaultType$3 = { + 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)' +}; +const AttachmentMap = { + AUTO: 'auto', + TOP: 'top', + RIGHT: isRTL() ? 'left' : 'right', + BOTTOM: 'bottom', + LEFT: isRTL() ? 'right' : 'left' +}; +const Default$3 = { + animation: true, + template: '<div class="tooltip" role="tooltip">' + '<div class="tooltip-arrow"></div>' + '<div class="tooltip-inner"></div>' + '</div>', + trigger: 'hover focus', + title: '', + delay: 0, + html: false, + selector: false, + placement: 'top', + offset: [0, 0], + container: false, + fallbackPlacements: ['top', 'right', 'bottom', 'left'], + boundary: 'clippingParents', + customClass: '', + sanitize: true, + sanitizeFn: null, + allowList: DefaultAllowlist, + popperConfig: null +}; +const Event$2 = { + HIDE: `hide${EVENT_KEY$4}`, + HIDDEN: `hidden${EVENT_KEY$4}`, + SHOW: `show${EVENT_KEY$4}`, + SHOWN: `shown${EVENT_KEY$4}`, + INSERTED: `inserted${EVENT_KEY$4}`, + CLICK: `click${EVENT_KEY$4}`, + FOCUSIN: `focusin${EVENT_KEY$4}`, + FOCUSOUT: `focusout${EVENT_KEY$4}`, + MOUSEENTER: `mouseenter${EVENT_KEY$4}`, + MOUSELEAVE: `mouseleave${EVENT_KEY$4}` +}; +const CLASS_NAME_FADE$3 = 'fade'; +const CLASS_NAME_MODAL = 'modal'; +const CLASS_NAME_SHOW$3 = 'show'; +const HOVER_STATE_SHOW = 'show'; +const HOVER_STATE_OUT = 'out'; +const SELECTOR_TOOLTIP_INNER = '.tooltip-inner'; +const TRIGGER_HOVER = 'hover'; +const TRIGGER_FOCUS = 'focus'; +const TRIGGER_CLICK = 'click'; +const TRIGGER_MANUAL = 'manual'; +/** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + +class Tooltip extends BaseComponent { + constructor(element, config) { + if (typeof Popper === 'undefined') { + throw new TypeError('Bootstrap\'s tooltips require Popper (https://popper.js.org)'); + } + + super(element); // private + + this._isEnabled = true; + this._timeout = 0; + this._hoverState = ''; + this._activeTrigger = {}; + this._popper = null; // Protected + + this._config = this._getConfig(config); + this.tip = null; + + this._setListeners(); + } // Getters + + + static get Default() { + return Default$3; + } + + static get NAME() { + return NAME$4; + } + + static get Event() { + return Event$2; + } + + static get DefaultType() { + return DefaultType$3; + } // Public + + + enable() { + this._isEnabled = true; + } + + disable() { + this._isEnabled = false; + } + + toggleEnabled() { + this._isEnabled = !this._isEnabled; + } + + toggle(event) { + if (!this._isEnabled) { + return; + } + + if (event) { + const context = this._initializeOnDelegatedTarget(event); + + context._activeTrigger.click = !context._activeTrigger.click; + + if (context._isWithActiveTrigger()) { + context._enter(null, context); + } else { + context._leave(null, context); + } + } else { + if (this.getTipElement().classList.contains(CLASS_NAME_SHOW$3)) { + this._leave(null, this); + + return; + } + + this._enter(null, this); + } + } + + dispose() { + clearTimeout(this._timeout); + EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler); + + if (this.tip) { + this.tip.remove(); + } + + if (this._popper) { + this._popper.destroy(); + } + + super.dispose(); + } + + show() { + if (this._element.style.display === 'none') { + throw new Error('Please use show on visible elements'); + } + + if (!(this.isWithContent() && this._isEnabled)) { + return; + } + + const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW); + const shadowRoot = findShadowRoot(this._element); + const isInTheDom = shadowRoot === null ? this._element.ownerDocument.documentElement.contains(this._element) : shadowRoot.contains(this._element); + + if (showEvent.defaultPrevented || !isInTheDom) { + return; + } + + const tip = this.getTipElement(); + const tipId = getUID(this.constructor.NAME); + tip.setAttribute('id', tipId); + + this._element.setAttribute('aria-describedby', tipId); + + this.setContent(); + + if (this._config.animation) { + tip.classList.add(CLASS_NAME_FADE$3); + } + + const placement = typeof this._config.placement === 'function' ? this._config.placement.call(this, tip, this._element) : this._config.placement; + + const attachment = this._getAttachment(placement); + + this._addAttachmentClass(attachment); + + const { + container + } = this._config; + Data.set(tip, this.constructor.DATA_KEY, this); + + if (!this._element.ownerDocument.documentElement.contains(this.tip)) { + container.appendChild(tip); + EventHandler.trigger(this._element, this.constructor.Event.INSERTED); + } + + if (this._popper) { + this._popper.update(); + } else { + this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment)); + } + + tip.classList.add(CLASS_NAME_SHOW$3); + const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass; + + if (customClass) { + tip.classList.add(...customClass.split(' ')); + } // If this is a touch-enabled device we add extra + // empty mouseover listeners to the body's immediate children; + // only needed because of broken event delegation on iOS + // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html + + + if ('ontouchstart' in document.documentElement) { + [].concat(...document.body.children).forEach(element => { + EventHandler.on(element, 'mouseover', noop); + }); + } + + const complete = () => { + const prevHoverState = this._hoverState; + this._hoverState = null; + EventHandler.trigger(this._element, this.constructor.Event.SHOWN); + + if (prevHoverState === HOVER_STATE_OUT) { + this._leave(null, this); + } + }; + + const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE$3); + + this._queueCallback(complete, this.tip, isAnimated); + } + + hide() { + if (!this._popper) { + return; + } + + const tip = this.getTipElement(); + + const complete = () => { + if (this._isWithActiveTrigger()) { + return; + } + + if (this._hoverState !== HOVER_STATE_SHOW) { + tip.remove(); + } + + this._cleanTipClass(); + + this._element.removeAttribute('aria-describedby'); + + EventHandler.trigger(this._element, this.constructor.Event.HIDDEN); + + if (this._popper) { + this._popper.destroy(); + + this._popper = null; + } + }; + + const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE); + + if (hideEvent.defaultPrevented) { + return; + } + + tip.classList.remove(CLASS_NAME_SHOW$3); // If this is a touch-enabled device we remove the extra + // empty mouseover listeners we added for iOS support + + if ('ontouchstart' in document.documentElement) { + [].concat(...document.body.children).forEach(element => EventHandler.off(element, 'mouseover', noop)); + } + + this._activeTrigger[TRIGGER_CLICK] = false; + this._activeTrigger[TRIGGER_FOCUS] = false; + this._activeTrigger[TRIGGER_HOVER] = false; + const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE$3); + + this._queueCallback(complete, this.tip, isAnimated); + + this._hoverState = ''; + } + + update() { + if (this._popper !== null) { + this._popper.update(); + } + } // Protected + + + isWithContent() { + return Boolean(this.getTitle()); + } + + getTipElement() { + if (this.tip) { + return this.tip; + } + + const element = document.createElement('div'); + element.innerHTML = this._config.template; + this.tip = element.children[0]; + return this.tip; + } + + setContent() { + const tip = this.getTipElement(); + this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle()); + tip.classList.remove(CLASS_NAME_FADE$3, CLASS_NAME_SHOW$3); + } + + setElementContent(element, content) { + if (element === null) { + return; + } + + if (isElement(content)) { + content = getElement(content); // content is a DOM node or a jQuery + + if (this._config.html) { + if (content.parentNode !== element) { + element.innerHTML = ''; + element.appendChild(content); + } + } else { + element.textContent = content.textContent; + } + + return; + } + + if (this._config.html) { + if (this._config.sanitize) { + content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn); + } + + element.innerHTML = content; + } else { + element.textContent = content; + } + } + + getTitle() { + let title = this._element.getAttribute('data-bs-original-title'); + + if (!title) { + title = typeof this._config.title === 'function' ? this._config.title.call(this._element) : this._config.title; + } + + return title; + } + + updateAttachment(attachment) { + if (attachment === 'right') { + return 'end'; + } + + if (attachment === 'left') { + return 'start'; + } + + return attachment; + } // Private + + + _initializeOnDelegatedTarget(event, context) { + const dataKey = this.constructor.DATA_KEY; + context = context || Data.get(event.delegateTarget, dataKey); + + if (!context) { + context = new this.constructor(event.delegateTarget, this._getDelegateConfig()); + Data.set(event.delegateTarget, dataKey, context); + } + + return context; + } + + _getOffset() { + const { + offset + } = this._config; + + if (typeof offset === 'string') { + return offset.split(',').map(val => Number.parseInt(val, 10)); + } + + if (typeof offset === 'function') { + return popperData => offset(popperData, this._element); + } + + return offset; + } + + _getPopperConfig(attachment) { + const defaultBsPopperConfig = { + placement: attachment, + 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: true, + phase: 'afterWrite', + fn: data => this._handlePopperPlacementChange(data) + }], + onFirstUpdate: data => { + if (data.options.placement !== data.placement) { + this._handlePopperPlacementChange(data); + } + } + }; + return { ...defaultBsPopperConfig, + ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig) + }; + } + + _addAttachmentClass(attachment) { + this.getTipElement().classList.add(`${CLASS_PREFIX$1}-${this.updateAttachment(attachment)}`); + } + + _getAttachment(placement) { + return AttachmentMap[placement.toUpperCase()]; + } + + _setListeners() { + const triggers = this._config.trigger.split(' '); + + triggers.forEach(trigger => { + if (trigger === 'click') { + EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event)); + } else if (trigger !== TRIGGER_MANUAL) { + const eventIn = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSEENTER : this.constructor.Event.FOCUSIN; + const eventOut = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSELEAVE : this.constructor.Event.FOCUSOUT; + EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event)); + EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event)); + } + }); + + this._hideModalHandler = () => { + if (this._element) { + this.hide(); + } + }; + + EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler); + + if (this._config.selector) { + this._config = { ...this._config, + trigger: 'manual', + selector: '' + }; + } else { + this._fixTitle(); + } + } + + _fixTitle() { + const title = this._element.getAttribute('title'); + + const originalTitleType = typeof this._element.getAttribute('data-bs-original-title'); + + if (title || originalTitleType !== 'string') { + this._element.setAttribute('data-bs-original-title', title || ''); + + if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) { + this._element.setAttribute('aria-label', title); + } + + this._element.setAttribute('title', ''); + } + } + + _enter(event, context) { + context = this._initializeOnDelegatedTarget(event, context); + + if (event) { + context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true; + } + + if (context.getTipElement().classList.contains(CLASS_NAME_SHOW$3) || context._hoverState === HOVER_STATE_SHOW) { + context._hoverState = HOVER_STATE_SHOW; + return; + } + + clearTimeout(context._timeout); + context._hoverState = HOVER_STATE_SHOW; + + if (!context._config.delay || !context._config.delay.show) { + context.show(); + return; + } + + context._timeout = setTimeout(() => { + if (context._hoverState === HOVER_STATE_SHOW) { + context.show(); + } + }, context._config.delay.show); + } + + _leave(event, context) { + context = this._initializeOnDelegatedTarget(event, context); + + if (event) { + context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] = context._element.contains(event.relatedTarget); + } + + if (context._isWithActiveTrigger()) { + return; + } + + clearTimeout(context._timeout); + context._hoverState = HOVER_STATE_OUT; + + if (!context._config.delay || !context._config.delay.hide) { + context.hide(); + return; + } + + context._timeout = setTimeout(() => { + if (context._hoverState === HOVER_STATE_OUT) { + context.hide(); + } + }, context._config.delay.hide); + } + + _isWithActiveTrigger() { + for (const trigger in this._activeTrigger) { + if (this._activeTrigger[trigger]) { + return true; + } + } + + return false; + } + + _getConfig(config) { + const dataAttributes = Manipulator.getDataAttributes(this._element); + Object.keys(dataAttributes).forEach(dataAttr => { + if (DISALLOWED_ATTRIBUTES.has(dataAttr)) { + delete dataAttributes[dataAttr]; + } + }); + config = { ...this.constructor.Default, + ...dataAttributes, + ...(typeof config === 'object' && config ? config : {}) + }; + config.container = config.container === false ? document.body : getElement(config.container); + + if (typeof config.delay === 'number') { + config.delay = { + show: config.delay, + hide: config.delay + }; + } + + if (typeof config.title === 'number') { + config.title = config.title.toString(); + } + + if (typeof config.content === 'number') { + config.content = config.content.toString(); + } + + typeCheckConfig(NAME$4, config, this.constructor.DefaultType); + + if (config.sanitize) { + config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn); + } + + return config; + } + + _getDelegateConfig() { + const config = {}; + + if (this._config) { + for (const key in this._config) { + if (this.constructor.Default[key] !== this._config[key]) { + config[key] = this._config[key]; + } + } + } + + return config; + } + + _cleanTipClass() { + const tip = this.getTipElement(); + const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX$1); + + if (tabClass !== null && tabClass.length > 0) { + tabClass.map(token => token.trim()).forEach(tClass => tip.classList.remove(tClass)); + } + } + + _handlePopperPlacementChange(popperData) { + const { + state + } = popperData; + + if (!state) { + return; + } + + this.tip = state.elements.popper; + + this._cleanTipClass(); + + this._addAttachmentClass(this._getAttachment(state.placement)); + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Tooltip.getOrCreateInstance(this, config); + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + } + }); + } + +} +/** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Tooltip to jQuery only if jQuery is present + */ + + +defineJQueryPlugin(Tooltip); + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): popover.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + +const NAME$3 = 'popover'; +const DATA_KEY$3 = 'bs.popover'; +const EVENT_KEY$3 = `.${DATA_KEY$3}`; +const CLASS_PREFIX = 'bs-popover'; +const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`, 'g'); +const Default$2 = { ...Tooltip.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>' +}; +const DefaultType$2 = { ...Tooltip.DefaultType, + content: '(string|element|function)' +}; +const Event$1 = { + HIDE: `hide${EVENT_KEY$3}`, + HIDDEN: `hidden${EVENT_KEY$3}`, + SHOW: `show${EVENT_KEY$3}`, + SHOWN: `shown${EVENT_KEY$3}`, + INSERTED: `inserted${EVENT_KEY$3}`, + CLICK: `click${EVENT_KEY$3}`, + FOCUSIN: `focusin${EVENT_KEY$3}`, + FOCUSOUT: `focusout${EVENT_KEY$3}`, + MOUSEENTER: `mouseenter${EVENT_KEY$3}`, + MOUSELEAVE: `mouseleave${EVENT_KEY$3}` +}; +const CLASS_NAME_FADE$2 = 'fade'; +const CLASS_NAME_SHOW$2 = 'show'; +const SELECTOR_TITLE = '.popover-header'; +const SELECTOR_CONTENT = '.popover-body'; +/** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + +class Popover extends Tooltip { + // Getters + static get Default() { + return Default$2; + } + + static get NAME() { + return NAME$3; + } + + static get Event() { + return Event$1; + } + + static get DefaultType() { + return DefaultType$2; + } // Overrides + + + isWithContent() { + return this.getTitle() || this._getContent(); + } + + getTipElement() { + if (this.tip) { + return this.tip; + } + + this.tip = super.getTipElement(); + + if (!this.getTitle()) { + SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove(); + } + + if (!this._getContent()) { + SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove(); + } + + return this.tip; + } + + setContent() { + const tip = this.getTipElement(); // we use append for html objects to maintain js events + + this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle()); + + let content = this._getContent(); + + if (typeof content === 'function') { + content = content.call(this._element); + } + + this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content); + tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2); + } // Private + + + _addAttachmentClass(attachment) { + this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`); + } + + _getContent() { + return this._element.getAttribute('data-bs-content') || this._config.content; + } + + _cleanTipClass() { + const tip = this.getTipElement(); + const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX); + + if (tabClass !== null && tabClass.length > 0) { + tabClass.map(token => token.trim()).forEach(tClass => tip.classList.remove(tClass)); + } + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Popover.getOrCreateInstance(this, config); + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + } + }); + } + +} +/** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Popover to jQuery only if jQuery is present + */ + + +defineJQueryPlugin(Popover); + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): scrollspy.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + +const NAME$2 = 'scrollspy'; +const DATA_KEY$2 = 'bs.scrollspy'; +const EVENT_KEY$2 = `.${DATA_KEY$2}`; +const DATA_API_KEY$1 = '.data-api'; +const Default$1 = { + offset: 10, + method: 'auto', + target: '' +}; +const DefaultType$1 = { + offset: 'number', + method: 'string', + target: '(string|element)' +}; +const EVENT_ACTIVATE = `activate${EVENT_KEY$2}`; +const EVENT_SCROLL = `scroll${EVENT_KEY$2}`; +const EVENT_LOAD_DATA_API = `load${EVENT_KEY$2}${DATA_API_KEY$1}`; +const CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'; +const CLASS_NAME_ACTIVE$1 = 'active'; +const SELECTOR_DATA_SPY = '[data-bs-spy="scroll"]'; +const SELECTOR_NAV_LIST_GROUP$1 = '.nav, .list-group'; +const SELECTOR_NAV_LINKS = '.nav-link'; +const SELECTOR_NAV_ITEMS = '.nav-item'; +const SELECTOR_LIST_ITEMS = '.list-group-item'; +const SELECTOR_DROPDOWN$1 = '.dropdown'; +const SELECTOR_DROPDOWN_TOGGLE$1 = '.dropdown-toggle'; +const METHOD_OFFSET = 'offset'; +const METHOD_POSITION = 'position'; +/** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + +class ScrollSpy extends BaseComponent { + constructor(element, config) { + super(element); + this._scrollElement = this._element.tagName === 'BODY' ? window : this._element; + this._config = this._getConfig(config); + this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`; + this._offsets = []; + this._targets = []; + this._activeTarget = null; + this._scrollHeight = 0; + EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process()); + this.refresh(); + + this._process(); + } // Getters + + + static get Default() { + return Default$1; + } + + static get NAME() { + return NAME$2; + } // Public + + + refresh() { + const autoMethod = this._scrollElement === this._scrollElement.window ? METHOD_OFFSET : METHOD_POSITION; + const offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method; + const offsetBase = offsetMethod === METHOD_POSITION ? this._getScrollTop() : 0; + this._offsets = []; + this._targets = []; + this._scrollHeight = this._getScrollHeight(); + const targets = SelectorEngine.find(this._selector); + targets.map(element => { + const targetSelector = getSelectorFromElement(element); + const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null; + + if (target) { + const targetBCR = target.getBoundingClientRect(); + + if (targetBCR.width || targetBCR.height) { + return [Manipulator[offsetMethod](target).top + offsetBase, targetSelector]; + } + } + + return null; + }).filter(item => item).sort((a, b) => a[0] - b[0]).forEach(item => { + this._offsets.push(item[0]); + + this._targets.push(item[1]); + }); + } + + dispose() { + EventHandler.off(this._scrollElement, EVENT_KEY$2); + super.dispose(); + } // Private + + + _getConfig(config) { + config = { ...Default$1, + ...Manipulator.getDataAttributes(this._element), + ...(typeof config === 'object' && config ? config : {}) + }; + + if (typeof config.target !== 'string' && isElement(config.target)) { + let { + id + } = config.target; + + if (!id) { + id = getUID(NAME$2); + config.target.id = id; + } + + config.target = `#${id}`; + } + + typeCheckConfig(NAME$2, config, DefaultType$1); + return config; + } + + _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 scrollTop = this._getScrollTop() + this._config.offset; + + const scrollHeight = this._getScrollHeight(); + + const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight(); + + if (this._scrollHeight !== scrollHeight) { + this.refresh(); + } + + if (scrollTop >= maxScroll) { + const target = this._targets[this._targets.length - 1]; + + if (this._activeTarget !== target) { + this._activate(target); + } + + return; + } + + if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) { + this._activeTarget = null; + + this._clear(); + + return; + } + + for (let i = this._offsets.length; i--;) { + const isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]); + + if (isActiveTarget) { + this._activate(this._targets[i]); + } + } + } + + _activate(target) { + this._activeTarget = target; + + this._clear(); + + const queries = this._selector.split(',').map(selector => `${selector}[data-bs-target="${target}"],${selector}[href="${target}"]`); + + const link = SelectorEngine.findOne(queries.join(',')); + + if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) { + SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE$1, link.closest(SELECTOR_DROPDOWN$1)).classList.add(CLASS_NAME_ACTIVE$1); + link.classList.add(CLASS_NAME_ACTIVE$1); + } else { + // Set triggered link as active + link.classList.add(CLASS_NAME_ACTIVE$1); + SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP$1).forEach(listGroup => { + // Set triggered links parents as active + // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor + SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`).forEach(item => item.classList.add(CLASS_NAME_ACTIVE$1)); // Handle special case when .nav-link is inside .nav-item + + SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS).forEach(navItem => { + SelectorEngine.children(navItem, SELECTOR_NAV_LINKS).forEach(item => item.classList.add(CLASS_NAME_ACTIVE$1)); + }); + }); + } + + EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, { + relatedTarget: target + }); + } + + _clear() { + SelectorEngine.find(this._selector).filter(node => node.classList.contains(CLASS_NAME_ACTIVE$1)).forEach(node => node.classList.remove(CLASS_NAME_ACTIVE$1)); + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = ScrollSpy.getOrCreateInstance(this, config); + + if (typeof config !== 'string') { + return; + } + + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + }); + } + +} +/** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + +EventHandler.on(window, EVENT_LOAD_DATA_API, () => { + SelectorEngine.find(SELECTOR_DATA_SPY).forEach(spy => new ScrollSpy(spy)); +}); +/** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .ScrollSpy to jQuery only if jQuery is present + */ + +defineJQueryPlugin(ScrollSpy); + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): tab.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + +const NAME$1 = 'tab'; +const DATA_KEY$1 = 'bs.tab'; +const EVENT_KEY$1 = `.${DATA_KEY$1}`; +const DATA_API_KEY = '.data-api'; +const EVENT_HIDE$1 = `hide${EVENT_KEY$1}`; +const EVENT_HIDDEN$1 = `hidden${EVENT_KEY$1}`; +const EVENT_SHOW$1 = `show${EVENT_KEY$1}`; +const EVENT_SHOWN$1 = `shown${EVENT_KEY$1}`; +const EVENT_CLICK_DATA_API = `click${EVENT_KEY$1}${DATA_API_KEY}`; +const CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'; +const CLASS_NAME_ACTIVE = 'active'; +const CLASS_NAME_FADE$1 = 'fade'; +const CLASS_NAME_SHOW$1 = 'show'; +const SELECTOR_DROPDOWN = '.dropdown'; +const SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'; +const SELECTOR_ACTIVE = '.active'; +const SELECTOR_ACTIVE_UL = ':scope > li > .active'; +const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]'; +const SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'; +const SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'; +/** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + +class Tab extends BaseComponent { + // Getters + static get NAME() { + return NAME$1; + } // Public + + + show() { + if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && this._element.classList.contains(CLASS_NAME_ACTIVE)) { + return; + } + + let previous; + const target = getElementFromSelector(this._element); + + const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP); + + if (listElement) { + const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE; + previous = SelectorEngine.find(itemSelector, listElement); + previous = previous[previous.length - 1]; + } + + const hideEvent = previous ? EventHandler.trigger(previous, EVENT_HIDE$1, { + relatedTarget: this._element + }) : null; + const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$1, { + relatedTarget: previous + }); + + if (showEvent.defaultPrevented || hideEvent !== null && hideEvent.defaultPrevented) { + return; + } + + this._activate(this._element, listElement); + + const complete = () => { + EventHandler.trigger(previous, EVENT_HIDDEN$1, { + relatedTarget: this._element + }); + EventHandler.trigger(this._element, EVENT_SHOWN$1, { + relatedTarget: previous + }); + }; + + if (target) { + this._activate(target, target.parentNode, complete); + } else { + complete(); + } + } // Private + + + _activate(element, container, callback) { + const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? SelectorEngine.find(SELECTOR_ACTIVE_UL, container) : SelectorEngine.children(container, SELECTOR_ACTIVE); + const active = activeElements[0]; + const isTransitioning = callback && active && active.classList.contains(CLASS_NAME_FADE$1); + + const complete = () => this._transitionComplete(element, active, callback); + + if (active && isTransitioning) { + active.classList.remove(CLASS_NAME_SHOW$1); + + this._queueCallback(complete, element, true); + } else { + complete(); + } + } + + _transitionComplete(element, active, callback) { + if (active) { + active.classList.remove(CLASS_NAME_ACTIVE); + const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode); + + if (dropdownChild) { + dropdownChild.classList.remove(CLASS_NAME_ACTIVE); + } + + if (active.getAttribute('role') === 'tab') { + active.setAttribute('aria-selected', false); + } + } + + element.classList.add(CLASS_NAME_ACTIVE); + + if (element.getAttribute('role') === 'tab') { + element.setAttribute('aria-selected', true); + } + + reflow(element); + + if (element.classList.contains(CLASS_NAME_FADE$1)) { + element.classList.add(CLASS_NAME_SHOW$1); + } + + let parent = element.parentNode; + + if (parent && parent.nodeName === 'LI') { + parent = parent.parentNode; + } + + if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) { + const dropdownElement = element.closest(SELECTOR_DROPDOWN); + + if (dropdownElement) { + SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement).forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE)); + } + + element.setAttribute('aria-expanded', true); + } + + if (callback) { + callback(); + } + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Tab.getOrCreateInstance(this); + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + } + }); + } + +} +/** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + +EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) { + if (['A', 'AREA'].includes(this.tagName)) { + event.preventDefault(); + } + + if (isDisabled(this)) { + return; + } + + const data = Tab.getOrCreateInstance(this); + data.show(); +}); +/** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Tab to jQuery only if jQuery is present + */ + +defineJQueryPlugin(Tab); + +/** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): toast.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ +/** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + +const NAME = 'toast'; +const DATA_KEY = 'bs.toast'; +const EVENT_KEY = `.${DATA_KEY}`; +const EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`; +const EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`; +const EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`; +const EVENT_FOCUSIN = `focusin${EVENT_KEY}`; +const EVENT_FOCUSOUT = `focusout${EVENT_KEY}`; +const EVENT_HIDE = `hide${EVENT_KEY}`; +const EVENT_HIDDEN = `hidden${EVENT_KEY}`; +const EVENT_SHOW = `show${EVENT_KEY}`; +const EVENT_SHOWN = `shown${EVENT_KEY}`; +const CLASS_NAME_FADE = 'fade'; +const CLASS_NAME_HIDE = 'hide'; +const CLASS_NAME_SHOW = 'show'; +const CLASS_NAME_SHOWING = 'showing'; +const DefaultType = { + animation: 'boolean', + autohide: 'boolean', + delay: 'number' +}; +const Default = { + animation: true, + autohide: true, + delay: 5000 +}; +const SELECTOR_DATA_DISMISS = '[data-bs-dismiss="toast"]'; +/** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + +class Toast extends BaseComponent { + constructor(element, config) { + super(element); + this._config = this._getConfig(config); + this._timeout = null; + this._hasMouseInteraction = false; + this._hasKeyboardInteraction = false; + + this._setListeners(); + } // Getters + + + static get DefaultType() { + return DefaultType; + } + + static get Default() { + return Default; + } + + static get NAME() { + return NAME; + } // Public + + + show() { + const showEvent = EventHandler.trigger(this._element, EVENT_SHOW); + + if (showEvent.defaultPrevented) { + return; + } + + this._clearTimeout(); + + if (this._config.animation) { + this._element.classList.add(CLASS_NAME_FADE); + } + + const complete = () => { + this._element.classList.remove(CLASS_NAME_SHOWING); + + this._element.classList.add(CLASS_NAME_SHOW); + + EventHandler.trigger(this._element, EVENT_SHOWN); + + this._maybeScheduleHide(); + }; + + this._element.classList.remove(CLASS_NAME_HIDE); + + reflow(this._element); + + this._element.classList.add(CLASS_NAME_SHOWING); + + this._queueCallback(complete, this._element, this._config.animation); + } + + hide() { + if (!this._element.classList.contains(CLASS_NAME_SHOW)) { + return; + } + + const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE); + + if (hideEvent.defaultPrevented) { + return; + } + + const complete = () => { + this._element.classList.add(CLASS_NAME_HIDE); + + EventHandler.trigger(this._element, EVENT_HIDDEN); + }; + + this._element.classList.remove(CLASS_NAME_SHOW); + + this._queueCallback(complete, this._element, this._config.animation); + } + + dispose() { + this._clearTimeout(); + + if (this._element.classList.contains(CLASS_NAME_SHOW)) { + this._element.classList.remove(CLASS_NAME_SHOW); + } + + super.dispose(); + } // Private + + + _getConfig(config) { + config = { ...Default, + ...Manipulator.getDataAttributes(this._element), + ...(typeof config === 'object' && config ? config : {}) + }; + typeCheckConfig(NAME, config, this.constructor.DefaultType); + return config; + } + + _maybeScheduleHide() { + if (!this._config.autohide) { + return; + } + + if (this._hasMouseInteraction || this._hasKeyboardInteraction) { + return; + } + + this._timeout = setTimeout(() => { + this.hide(); + }, this._config.delay); + } + + _onInteraction(event, isInteracting) { + switch (event.type) { + case 'mouseover': + case 'mouseout': + this._hasMouseInteraction = isInteracting; + break; + + case 'focusin': + case 'focusout': + this._hasKeyboardInteraction = isInteracting; + break; + } + + if (isInteracting) { + this._clearTimeout(); + + return; + } + + const nextElement = event.relatedTarget; + + if (this._element === nextElement || this._element.contains(nextElement)) { + return; + } + + this._maybeScheduleHide(); + } + + _setListeners() { + EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide()); + EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true)); + EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false)); + EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true)); + EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false)); + } + + _clearTimeout() { + clearTimeout(this._timeout); + this._timeout = null; + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Toast.getOrCreateInstance(this, config); + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](this); + } + }); + } + +} +/** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Toast to jQuery only if jQuery is present + */ + + +defineJQueryPlugin(Toast); + +export { Alert, Button, Carousel, Collapse, Dropdown, Modal, Offcanvas, Popover, ScrollSpy, Tab, Toast, Tooltip }; +//# sourceMappingURL=oe-bcl-default.esm.js.map diff --git a/assets/js/oe-bcl-default.esm.js.map b/assets/js/oe-bcl-default.esm.js.map new file mode 100644 index 00000000..73abb89b --- /dev/null +++ b/assets/js/oe-bcl-default.esm.js.map @@ -0,0 +1 @@ +{"version":3,"file":"oe-bcl-default.esm.js","sources":["../../../../bootstrap/js/src/dom/selector-engine.js","../../../../bootstrap/js/src/util/index.js","../../../../bootstrap/js/src/dom/event-handler.js","../../../../bootstrap/js/src/dom/data.js","../../../../bootstrap/js/src/base-component.js","../../../../bootstrap/js/src/alert.js","../../../../bootstrap/js/src/button.js","../../../../bootstrap/js/src/dom/manipulator.js","../../../../bootstrap/js/src/carousel.js","../../../../bootstrap/js/src/collapse.js","../../../../bootstrap/js/src/dropdown.js","../../../../bootstrap/js/src/util/scrollbar.js","../../../../bootstrap/js/src/util/backdrop.js","../../../../bootstrap/js/src/modal.js","../../../../bootstrap/js/src/offcanvas.js","../../../../bootstrap/js/src/util/sanitizer.js","../../../../bootstrap/js/src/tooltip.js","../../../../bootstrap/js/src/popover.js","../../../../bootstrap/js/src/scrollspy.js","../../../../bootstrap/js/src/tab.js","../../../../bootstrap/js/src/toast.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NODE_TEXT = 3\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children)\n .filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n\n let ancestor = element.parentNode\n\n while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {\n if (ancestor.matches(selector)) {\n parents.push(ancestor)\n }\n\n ancestor = ancestor.parentNode\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n }\n}\n\nexport default SelectorEngine\n","import SelectorEngine from '../dom/selector-engine'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = obj => {\n if (obj === null || obj === undefined) {\n return `${obj}`\n }\n\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return SelectorEngine.findOne(obj)\n }\n\n return null\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n return getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\nconst reflow = element => element.offsetHeight\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n DOMContentLoadedCallbacks.forEach(callback => callback())\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element depending on the direction and if cycle is allowed\n if (index === -1) {\n return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]\n }\n\n const listLength = list.length\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n getNextActiveElement,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute,\n executeAfterTransition\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\nconst customEventsRegex = /^(mouseenter|mouseleave)/i\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * ------------------------------------------------------------------------\n * Private methods\n * ------------------------------------------------------------------------\n */\n\nfunction getUidEvent(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getEvent(element) {\n const uid = getUidEvent(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n event.delegateTarget = element\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (let i = domElements.length; i--;) {\n if (domElements[i] === target) {\n event.delegateTarget = target\n\n if (handler.oneOff) {\n // eslint-disable-next-line unicorn/consistent-destructuring\n EventHandler.off(element, event.type, selector, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n\n // To please ESLint\n return null\n }\n}\n\nfunction findHandler(events, handler, delegationSelector = null) {\n const uidEventList = Object.keys(events)\n\n for (let i = 0, len = uidEventList.length; i < len; i++) {\n const event = events[uidEventList[i]]\n\n if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {\n return event\n }\n }\n\n return null\n}\n\nfunction normalizeParams(originalTypeEvent, handler, delegationFn) {\n const delegation = typeof handler === 'string'\n const originalHandler = delegation ? delegationFn : handler\n\n let typeEvent = getTypeEvent(originalTypeEvent)\n const isNative = nativeEvents.has(typeEvent)\n\n if (!isNative) {\n typeEvent = originalTypeEvent\n }\n\n return [delegation, originalHandler, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n if (!handler) {\n handler = delegationFn\n delegationFn = null\n }\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (customEventsRegex.test(originalTypeEvent)) {\n const wrapFn = fn => {\n return function (event) {\n if (!event.relatedTarget || (event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget))) {\n return fn.call(this, event)\n }\n }\n }\n\n if (delegationFn) {\n delegationFn = wrapFn(delegationFn)\n } else {\n handler = wrapFn(handler)\n }\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const events = getEvent(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null)\n\n if (previousFn) {\n previousFn.oneOff = previousFn.oneOff && oneOff\n\n return\n }\n\n const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = delegation ?\n bootstrapDelegationHandler(element, handler, delegationFn) :\n bootstrapHandler(element, handler)\n\n fn.delegationSelector = delegation ? handler : null\n fn.originalHandler = originalHandler\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, delegation)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n Object.keys(storeElementEvent).forEach(handlerKey => {\n if (handlerKey.includes(namespace)) {\n const event = storeElementEvent[handlerKey]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n}\n\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '')\n return customEvents[event] || event\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, false)\n },\n\n one(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFn) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getEvent(element)\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof originalHandler !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!events || !events[typeEvent]) {\n return\n }\n\n removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null)\n return\n }\n\n if (isNamespace) {\n Object.keys(events).forEach(elementEvent => {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n })\n }\n\n const storeElementEvent = events[typeEvent] || {}\n Object.keys(storeElementEvent).forEach(keyHandlers => {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n const event = storeElementEvent[keyHandlers]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = getTypeEvent(event)\n const inNamespace = event !== typeEvent\n const isNative = nativeEvents.has(typeEvent)\n\n let jQueryEvent\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n let evt = null\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n if (isNative) {\n evt = document.createEvent('HTMLEvents')\n evt.initEvent(typeEvent, bubbles, true)\n } else {\n evt = new CustomEvent(event, {\n bubbles,\n cancelable: true\n })\n }\n\n // merge custom information in our event\n if (typeof args !== 'undefined') {\n Object.keys(args).forEach(key => {\n Object.defineProperty(evt, key, {\n get() {\n return args[key]\n }\n })\n })\n }\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst elementMap = new Map()\n\nexport default {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map())\n }\n\n const instanceMap = elementMap.get(element)\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`)\n return\n }\n\n instanceMap.set(key, instance)\n },\n\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null\n }\n\n return null\n },\n\n remove(element, key) {\n if (!elementMap.has(element)) {\n return\n }\n\n const instanceMap = elementMap.get(element)\n\n instanceMap.delete(key)\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element)\n }\n }\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\nimport {\n executeAfterTransition,\n getElement\n} from './util/index'\nimport EventHandler from './dom/event-handler'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst VERSION = '5.0.2'\n\nclass BaseComponent {\n constructor(element) {\n element = getElement(element)\n\n if (!element) {\n return\n }\n\n this._element = element\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n Object.getOwnPropertyNames(this).forEach(propertyName => {\n this[propertyName] = null\n })\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated)\n }\n\n /** Static */\n\n static getInstance(element) {\n return Data.get(element, this.DATA_KEY)\n }\n\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DISMISS = '[data-bs-dismiss=\"alert\"]'\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_ALERT = 'alert'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n close(element) {\n const rootElement = element ? this._getRootElement(element) : this._element\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent === null || customEvent.defaultPrevented) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n // Private\n\n _getRootElement(element) {\n return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`)\n }\n\n _triggerCloseEvent(element) {\n return EventHandler.trigger(element, EVENT_CLOSE)\n }\n\n _removeElement(element) {\n element.classList.remove(CLASS_NAME_SHOW)\n\n const isAnimated = element.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(() => this._destroyElement(element), element, isAnimated)\n }\n\n _destroyElement(element) {\n element.remove()\n\n EventHandler.trigger(element, EVENT_CLOSED)\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this)\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert.handleDismiss(new Alert()))\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Alert to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this)\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n const data = Button.getOrCreateInstance(button)\n\n data.toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Button to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(val) {\n if (val === 'true') {\n return true\n }\n\n if (val === 'false') {\n return false\n }\n\n if (val === Number(val).toString()) {\n return Number(val)\n }\n\n if (val === '' || val === 'null') {\n return null\n }\n\n return val\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n\n Object.keys(element.dataset)\n .filter(key => key.startsWith('bs'))\n .forEach(key => {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n })\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n },\n\n offset(element) {\n const rect = element.getBoundingClientRect()\n\n return {\n top: rect.top + document.body.scrollTop,\n left: rect.left + document.body.scrollLeft\n }\n },\n\n position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n }\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n getNextActiveElement,\n reflow,\n triggerTransitionEnd,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n slide: false,\n pause: 'hover',\n wrap: true,\n touch: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)',\n keyboard: 'boolean',\n slide: '(boolean|string)',\n pause: '(string|boolean)',\n wrap: 'boolean',\n touch: 'boolean'\n}\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY]: DIRECTION_LEFT\n}\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_INDICATOR = '[data-bs-target]'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n next() {\n this._slide(ORDER_NEXT)\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n this._slide(ORDER_PREV)\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) {\n triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config && this._config.interval && !this._isPaused) {\n this._updateInterval()\n\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const order = index > activeIndex ?\n ORDER_NEXT :\n ORDER_PREV\n\n this._slide(order, this._items[index])\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n this.touchDeltaX = 0\n\n if (!direction) {\n return\n }\n\n this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT)\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event))\n EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event))\n }\n\n if (this._config.touch && this._touchSupported) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n const start = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchStartX = event.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.touches[0].clientX\n }\n }\n\n const move = event => {\n // ensure swiping with one touch and not pinching\n this.touchDeltaX = event.touches && event.touches.length > 1 ?\n 0 :\n event.touches[0].clientX - this.touchStartX\n }\n\n const end = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {\n EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault())\n })\n\n if (this._pointerEvent) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n const direction = KEY_TO_DIRECTION[event.key]\n if (direction) {\n event.preventDefault()\n this._slide(direction)\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode ?\n SelectorEngine.find(SELECTOR_ITEM, element.parentNode) :\n []\n\n return this._items.indexOf(element)\n }\n\n _getItemByOrder(order, activeElement) {\n const isNext = order === ORDER_NEXT\n return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap)\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element))\n\n return EventHandler.trigger(this._element, EVENT_SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement)\n\n for (let i = 0; i < indicators.length; i++) {\n if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {\n indicators[i].classList.add(CLASS_NAME_ACTIVE)\n indicators[i].setAttribute('aria-current', 'true')\n break\n }\n }\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n if (elementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = elementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n }\n\n _slide(directionOrOrder, element) {\n const order = this._directionToOrder(directionOrOrder)\n const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || this._getItemByOrder(order, activeElement)\n\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n const isNext = order === ORDER_NEXT\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n const eventDirectionName = this._orderToDirection(order)\n\n if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {\n this._isSliding = false\n return\n }\n\n if (this._isSliding) {\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n this._activeElement = nextElement\n\n const triggerSlidEvent = () => {\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }\n\n if (this._element.classList.contains(CLASS_NAME_SLIDE)) {\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n setTimeout(triggerSlidEvent, 0)\n }\n\n this._queueCallback(completeCallBack, activeElement, true)\n } else {\n activeElement.classList.remove(CLASS_NAME_ACTIVE)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n this._isSliding = false\n triggerSlidEvent()\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _directionToOrder(direction) {\n if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) {\n return direction\n }\n\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (![ORDER_NEXT, ORDER_PREV].includes(order)) {\n return order\n }\n\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n\n static carouselInterface(element, config) {\n const data = Carousel.getOrCreateInstance(element, config)\n\n let { _config } = data\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Carousel.carouselInterface(this, config)\n })\n }\n\n static dataApiClickHandler(event) {\n const target = getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel.carouselInterface(target, config)\n\n if (slideIndex) {\n Carousel.getInstance(target).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler)\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (let i = 0, len = carousels.length; i < len; i++) {\n Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i]))\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Carousel to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElement,\n getSelectorFromElement,\n getElementFromSelector,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n toggle: true,\n parent: ''\n}\n\nconst DefaultType = {\n toggle: 'boolean',\n parent: '(string|element)'\n}\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.show, .collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._isTransitioning = false\n this._config = this._getConfig(config)\n this._triggerArray = SelectorEngine.find(\n `${SELECTOR_DATA_TOGGLE}[href=\"#${this._element.id}\"],` +\n `${SELECTOR_DATA_TOGGLE}[data-bs-target=\"#${this._element.id}\"]`\n )\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElem => foundElem === this._element)\n\n if (selector !== null && filterElement.length) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent)\n .filter(elem => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-bs-parent') === this._config.parent\n }\n\n return elem.classList.contains(CLASS_NAME_COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n const container = SelectorEngine.findOne(this._selector)\n if (actives) {\n const tempActiveData = actives.find(elem => container !== elem)\n activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null\n\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n if (actives) {\n actives.forEach(elemActive => {\n if (container !== elemActive) {\n Collapse.collapseInterface(elemActive, 'hide')\n }\n\n if (!activesData) {\n Data.set(elemActive, DATA_KEY, null)\n }\n })\n }\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n this._triggerArray.forEach(element => {\n element.classList.remove(CLASS_NAME_COLLAPSED)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n\n this._queueCallback(complete, this._element, true)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const elem = getElementFromSelector(trigger)\n\n if (elem && !elem.classList.contains(CLASS_NAME_SHOW)) {\n trigger.classList.add(CLASS_NAME_COLLAPSED)\n trigger.setAttribute('aria-expanded', false)\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n\n this._queueCallback(complete, this._element, true)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT\n }\n\n _getParent() {\n let { parent } = this._config\n\n parent = getElement(parent)\n\n const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent=\"${parent}\"]`\n\n SelectorEngine.find(selector, parent)\n .forEach(element => {\n const selected = getElementFromSelector(element)\n\n this._addAriaAndCollapsedClass(\n selected,\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (!element || !triggerArray.length) {\n return\n }\n\n const isOpen = element.classList.contains(CLASS_NAME_SHOW)\n\n triggerArray.forEach(elem => {\n if (isOpen) {\n elem.classList.remove(CLASS_NAME_COLLAPSED)\n } else {\n elem.classList.add(CLASS_NAME_COLLAPSED)\n }\n\n elem.setAttribute('aria-expanded', isOpen)\n })\n }\n\n // Static\n\n static collapseInterface(element, config) {\n let data = Collapse.getInstance(element)\n const _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Collapse.collapseInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n const triggerData = Manipulator.getDataAttributes(this)\n const selector = getSelectorFromElement(this)\n const selectorElements = SelectorEngine.find(selector)\n\n selectorElements.forEach(element => {\n const data = Collapse.getInstance(element)\n let config\n if (data) {\n // update parent attribute\n if (data._parent === null && typeof triggerData.parent === 'string') {\n data._config.parent = triggerData.parent\n data._parent = data._getParent()\n }\n\n config = 'toggle'\n } else {\n config = triggerData\n }\n\n Collapse.collapseInterface(element, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Collapse to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Collapse)\n\nexport default Collapse\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n getElement,\n getElementFromSelector,\n isDisabled,\n isElement,\n isVisible,\n isRTL,\n noop,\n getNextActiveElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst SPACE_KEY = 'Space'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY}`)\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_NAVBAR = 'navbar'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]'\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'\n\nconst Default = {\n offset: [0, 2],\n boundary: 'clippingParents',\n reference: 'toggle',\n display: 'dynamic',\n popperConfig: null,\n autoClose: true\n}\n\nconst DefaultType = {\n offset: '(array|string|function)',\n boundary: '(string|element)',\n reference: '(string|element|object)',\n display: 'string',\n popperConfig: '(null|object|function)',\n autoClose: '(boolean|string)'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (isDisabled(this._element)) {\n return\n }\n\n const isActive = this._element.classList.contains(CLASS_NAME_SHOW)\n\n if (isActive) {\n this.hide()\n return\n }\n\n this.show()\n }\n\n show() {\n if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this._element)\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n // Totally disable Popper for Dropdowns in Navbar\n if (this._inNavbar) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'none')\n } else {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference)\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false)\n\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n\n if (isDisplayStatic) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static')\n }\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n !parent.closest(SELECTOR_NAVBAR_NAV)) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.on(elem, 'mouseover', noop))\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.toggle(CLASS_NAME_SHOW)\n this._element.classList.toggle(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n this._completeHide(relatedTarget)\n }\n\n dispose() {\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK, event => {\n event.preventDefault()\n this.toggle()\n })\n }\n\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.off(elem, 'mouseover', noop))\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.remove(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._element.setAttribute('aria-expanded', 'false')\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _getMenuElement() {\n return SelectorEngine.next(this._element, SELECTOR_MENU)[0]\n }\n\n _getPlacement() {\n const parentDropdown = this._element.parentNode\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display\n if (this._config.display === 'static') {\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _selectMenuItem({ key, target }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible)\n\n if (!items.length) {\n return\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus()\n }\n\n // Static\n\n static dropdownInterface(element, config) {\n const data = Dropdown.getOrCreateInstance(element, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Dropdown.dropdownInterface(this, config)\n })\n }\n\n static clearMenus(event) {\n if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {\n return\n }\n\n const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const context = Dropdown.getInstance(toggles[i])\n if (!context || context._config.autoClose === false) {\n continue\n }\n\n if (!context._element.classList.contains(CLASS_NAME_SHOW)) {\n continue\n }\n\n const relatedTarget = {\n relatedTarget: context._element\n }\n\n if (event) {\n const composedPath = event.composedPath()\n const isMenuTarget = composedPath.includes(context._menu)\n if (\n composedPath.includes(context._element) ||\n (context._config.autoClose === 'inside' && !isMenuTarget) ||\n (context._config.autoClose === 'outside' && isMenuTarget)\n ) {\n continue\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue\n }\n\n if (event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n }\n\n context._completeHide(relatedTarget)\n }\n }\n\n static getParentFromElement(element) {\n return getElementFromSelector(element) || element.parentNode\n }\n\n static dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName) ?\n event.key === SPACE_KEY || (event.key !== ESCAPE_KEY &&\n ((event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY) ||\n event.target.closest(SELECTOR_MENU))) :\n !REGEXP_KEYDOWN.test(event.key)) {\n return\n }\n\n const isActive = this.classList.contains(CLASS_NAME_SHOW)\n\n if (!isActive && event.key === ESCAPE_KEY) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (isDisabled(this)) {\n return\n }\n\n const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n\n if (event.key === ESCAPE_KEY) {\n getToggleButton().focus()\n Dropdown.clearMenus()\n return\n }\n\n if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) {\n if (!isActive) {\n getToggleButton().click()\n }\n\n Dropdown.getInstance(getToggleButton())._selectMenuItem(event)\n return\n }\n\n if (!isActive || event.key === SPACE_KEY) {\n Dropdown.clearMenus()\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n Dropdown.dropdownInterface(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Dropdown to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport SelectorEngine from '../dom/selector-engine'\nimport Manipulator from '../dom/manipulator'\nimport { isElement } from './index'\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body\n }\n\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth\n return Math.abs(window.innerWidth - documentWidth)\n }\n\n hide() {\n const width = this.getWidth()\n this._disableOverFlow()\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width)\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width)\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width)\n }\n\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow')\n this._element.style.overflow = 'hidden'\n }\n\n _setElementAttributes(selector, styleProp, callback) {\n const scrollbarWidth = this.getWidth()\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return\n }\n\n this._saveInitialAttribute(element, styleProp)\n const calculatedValue = window.getComputedStyle(element)[styleProp]\n element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n reset() {\n this._resetElementAttributes(this._element, 'overflow')\n this._resetElementAttributes(this._element, 'paddingRight')\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight')\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight')\n }\n\n _saveInitialAttribute(element, styleProp) {\n const actualValue = element.style[styleProp]\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProp, actualValue)\n }\n }\n\n _resetElementAttributes(selector, styleProp) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProp)\n if (typeof value === 'undefined') {\n element.style.removeProperty(styleProp)\n } else {\n Manipulator.removeDataAttribute(element, styleProp)\n element.style[styleProp] = value\n }\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector)\n } else {\n SelectorEngine.find(selector, this._element).forEach(callBack)\n }\n }\n\n isOverflowing() {\n return this.getWidth() > 0\n }\n}\n\nexport default ScrollBarHelper\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { execute, executeAfterTransition, getElement, reflow, typeCheckConfig } from './index'\n\nconst Default = {\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n isAnimated: false,\n rootElement: 'body', // give the choice to place backdrop under different elements\n clickCallback: null\n}\n\nconst DefaultType = {\n isVisible: 'boolean',\n isAnimated: 'boolean',\n rootElement: '(element|string)',\n clickCallback: '(function|null)'\n}\nconst NAME = 'backdrop'\nconst CLASS_NAME_BACKDROP = 'modal-backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nclass Backdrop {\n constructor(config) {\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\n }\n\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n if (this._config.isAnimated) {\n reflow(this._getElement())\n }\n\n this._getElement().classList.add(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n execute(callback)\n })\n }\n\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._getElement().classList.remove(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n this.dispose()\n execute(callback)\n })\n }\n\n // Private\n\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div')\n backdrop.className = CLASS_NAME_BACKDROP\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE)\n }\n\n this._element = backdrop\n }\n\n return this._element\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' ? config : {})\n }\n\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement)\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n this._config.rootElement.appendChild(this._getElement())\n\n EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n dispose() {\n if (!this._isAppended) {\n return\n }\n\n EventHandler.off(this._element, EVENT_MOUSEDOWN)\n\n this._element.remove()\n this._isAppended = false\n }\n\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated)\n }\n}\n\nexport default Backdrop\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport ScrollBarHelper from './util/scrollbar'\nimport BaseComponent from './base-component'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean'\n}\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"modal\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element)\n this._backdrop = this._initializeBackDrop()\n this._isShown = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollBar = new ScrollBarHelper()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n\n if (this._isAnimated()) {\n this._isTransitioning = true\n }\n\n this._scrollBar.hide()\n\n document.body.classList.add(CLASS_NAME_OPEN)\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, event => this.hide(event))\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event && ['A', 'AREA'].includes(event.target.tagName)) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n const isAnimated = this._isAnimated()\n\n if (isAnimated) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.off(document, EVENT_FOCUSIN)\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS)\n\n this._queueCallback(() => this._hideModal(), this._element, isAnimated)\n }\n\n dispose() {\n [window, this._dialog]\n .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))\n\n this._backdrop.dispose()\n super.dispose()\n\n /**\n * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `EVENT_CLICK_DATA_API` event that should remain\n */\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value\n isAnimated: this._isAnimated()\n })\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const isAnimated = this._isAnimated()\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n if (isAnimated) {\n reflow(this._element)\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, isAnimated)\n }\n\n _enforceFocus() {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n this._element !== event.target &&\n !this._element.contains(event.target)) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault()\n this.hide()\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition()\n }\n })\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog())\n } else {\n EventHandler.off(window, EVENT_RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n this._scrollBar.reset()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _showBackdrop(callback) {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, event => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n\n if (event.target !== event.currentTarget) {\n return\n }\n\n if (this._config.backdrop === true) {\n this.hide()\n } else if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n }\n })\n\n this._backdrop.show(callback)\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE)\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const { classList, scrollHeight, style } = this._element\n const isModalOverflowing = scrollHeight > document.documentElement.clientHeight\n\n // return if the following background transition hasn't yet completed\n if ((!isModalOverflowing && style.overflowY === 'hidden') || classList.contains(CLASS_NAME_STATIC)) {\n return\n }\n\n if (!isModalOverflowing) {\n style.overflowY = 'hidden'\n }\n\n classList.add(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n classList.remove(CLASS_NAME_STATIC)\n if (!isModalOverflowing) {\n this._queueCallback(() => {\n style.overflowY = ''\n }, this._dialog)\n }\n }, this._dialog)\n\n this._element.focus()\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const scrollbarWidth = this._scrollBar.getWidth()\n const isBodyOverflowing = scrollbarWidth > 0\n\n if ((!isBodyOverflowing && isModalOverflowing && !isRTL()) || (isBodyOverflowing && !isModalOverflowing && isRTL())) {\n this._element.style.paddingLeft = `${scrollbarWidth}px`\n }\n\n if ((isBodyOverflowing && !isModalOverflowing && !isRTL()) || (!isBodyOverflowing && isModalOverflowing && isRTL())) {\n this._element.style.paddingRight = `${scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n const data = Modal.getOrCreateInstance(target)\n\n data.toggle(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible,\n typeCheckConfig\n} from './util/index'\nimport ScrollBarHelper from './util/scrollbar'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Manipulator from './dom/manipulator'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: 'boolean',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\nconst CLASS_NAME_SHOW = 'show'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"offcanvas\"]'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._addEventListeners()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._element.style.visibility = 'visible'\n\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n this._enforceFocusOnElement(this._element)\n }\n\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const completeCallBack = () => {\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n EventHandler.off(document, EVENT_FOCUSIN)\n this._element.blur()\n this._isShown = false\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._element.style.visibility = 'hidden'\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n super.dispose()\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: this._config.backdrop,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _enforceFocusOnElement(element) {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n element !== event.target &&\n !element.contains(event.target)) {\n element.focus()\n }\n })\n element.focus()\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n this.hide()\n }\n })\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (allReadyOpen && allReadyOpen !== target) {\n Offcanvas.getInstance(allReadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () =>\n SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())\n)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attr, allowedAttributeList) => {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attrName)) {\n if (uriAttrs.has(attrName)) {\n return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attrName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const allowlistKeys = Object.keys(allowList)\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (!allowlistKeys.includes(elName)) {\n el.remove()\n\n continue\n }\n\n const attributeList = [].concat(...el.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || [])\n\n attributeList.forEach(attr => {\n if (!allowedAttribute(attr, allowedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport {\n DefaultAllowlist,\n sanitizeHtml\n} from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.appendChild(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n this.tip = element.children[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle())\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.appendChild(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n let title = this._element.getAttribute('data-bs-original-title')\n\n if (!title) {\n title = typeof this._config.title === 'function' ?\n this._config.title.call(this._element) :\n this._config.title\n }\n\n return title\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || Data.get(event.delegateTarget, dataKey)\n\n if (!context) {\n context = new this.constructor(event.delegateTarget, this._getDelegateConfig())\n Data.set(event.delegateTarget, dataKey, context)\n }\n\n return context\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this._config) {\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport SelectorEngine from './dom/selector-engine'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement: 'right',\n offset: [0, 8],\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(string|element|function)'\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n this.tip = super.getTipElement()\n\n if (!this.getTitle()) {\n SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove()\n }\n\n if (!this._getContent()) {\n SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove()\n }\n\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n\n // we use append for html objects to maintain js events\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this._element)\n }\n\n this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n // Private\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getContent() {\n return this._element.getAttribute('data-bs-content') || this._config.content\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Popover to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getSelectorFromElement,\n getUID,\n isElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n offset: 10,\n method: 'auto',\n target: ''\n}\n\nconst DefaultType = {\n offset: 'number',\n method: 'string',\n target: '(string|element)'\n}\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._scrollElement = this._element.tagName === 'BODY' ? window : this._element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process())\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window ?\n METHOD_OFFSET :\n METHOD_POSITION\n\n const offsetMethod = this._config.method === 'auto' ?\n autoMethod :\n this._config.method\n\n const offsetBase = offsetMethod === METHOD_POSITION ?\n this._getScrollTop() :\n 0\n\n this._offsets = []\n this._targets = []\n this._scrollHeight = this._getScrollHeight()\n\n const targets = SelectorEngine.find(this._selector)\n\n targets.map(element => {\n const targetSelector = getSelectorFromElement(element)\n const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n return [\n Manipulator[offsetMethod](target).top + offsetBase,\n targetSelector\n ]\n }\n }\n\n return null\n })\n .filter(item => item)\n .sort((a, b) => a[0] - b[0])\n .forEach(item => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n EventHandler.off(this._scrollElement, EVENT_KEY)\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (typeof config.target !== 'string' && isElement(config.target)) {\n let { id } = config.target\n if (!id) {\n id = getUID(NAME)\n config.target.id = id\n }\n\n config.target = `#${id}`\n }\n\n typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window ?\n this._scrollElement.pageYOffset :\n this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window ?\n window.innerHeight :\n this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n for (let i = this._offsets.length; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = this._selector.split(',')\n .map(selector => `${selector}[data-bs-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const link = SelectorEngine.findOne(queries.join(','))\n\n if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, link.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n\n link.classList.add(CLASS_NAME_ACTIVE)\n } else {\n // Set triggered link as active\n link.classList.add(CLASS_NAME_ACTIVE)\n\n SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP)\n .forEach(listGroup => {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n\n // Handle special case when .nav-link is inside .nav-item\n SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS)\n .forEach(navItem => {\n SelectorEngine.children(navItem, SELECTOR_NAV_LINKS)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n })\n })\n }\n\n EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, {\n relatedTarget: target\n })\n }\n\n _clear() {\n SelectorEngine.find(this._selector)\n .filter(node => node.classList.contains(CLASS_NAME_ACTIVE))\n .forEach(node => node.classList.remove(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n SelectorEngine.find(SELECTOR_DATA_SPY)\n .forEach(spy => new ScrollSpy(spy))\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .ScrollSpy to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n reflow\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_UL = ':scope > li > .active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tab extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n if ((this._element.parentNode &&\n this._element.parentNode.nodeType === Node.ELEMENT_NODE &&\n this._element.classList.contains(CLASS_NAME_ACTIVE))) {\n return\n }\n\n let previous\n const target = getElementFromSelector(this._element)\n const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP)\n\n if (listElement) {\n const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE\n previous = SelectorEngine.find(itemSelector, listElement)\n previous = previous[previous.length - 1]\n }\n\n const hideEvent = previous ?\n EventHandler.trigger(previous, EVENT_HIDE, {\n relatedTarget: this._element\n }) :\n null\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget: previous\n })\n\n if (showEvent.defaultPrevented || (hideEvent !== null && hideEvent.defaultPrevented)) {\n return\n }\n\n this._activate(this._element, listElement)\n\n const complete = () => {\n EventHandler.trigger(previous, EVENT_HIDDEN, {\n relatedTarget: this._element\n })\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget: previous\n })\n }\n\n if (target) {\n this._activate(target, target.parentNode, complete)\n } else {\n complete()\n }\n }\n\n // Private\n\n _activate(element, container, callback) {\n const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ?\n SelectorEngine.find(SELECTOR_ACTIVE_UL, container) :\n SelectorEngine.children(container, SELECTOR_ACTIVE)\n\n const active = activeElements[0]\n const isTransitioning = callback && (active && active.classList.contains(CLASS_NAME_FADE))\n\n const complete = () => this._transitionComplete(element, active, callback)\n\n if (active && isTransitioning) {\n active.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, element, true)\n } else {\n complete()\n }\n }\n\n _transitionComplete(element, active, callback) {\n if (active) {\n active.classList.remove(CLASS_NAME_ACTIVE)\n\n const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode)\n\n if (dropdownChild) {\n dropdownChild.classList.remove(CLASS_NAME_ACTIVE)\n }\n\n if (active.getAttribute('role') === 'tab') {\n active.setAttribute('aria-selected', false)\n }\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n if (element.getAttribute('role') === 'tab') {\n element.setAttribute('aria-selected', true)\n }\n\n reflow(element)\n\n if (element.classList.contains(CLASS_NAME_FADE)) {\n element.classList.add(CLASS_NAME_SHOW)\n }\n\n let parent = element.parentNode\n if (parent && parent.nodeName === 'LI') {\n parent = parent.parentNode\n }\n\n if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) {\n const dropdownElement = element.closest(SELECTOR_DROPDOWN)\n\n if (dropdownElement) {\n SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement)\n .forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE))\n }\n\n element.setAttribute('aria-expanded', true)\n }\n\n if (callback) {\n callback()\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tab.getOrCreateInstance(this)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const data = Tab.getOrCreateInstance(this)\n data.show()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tab to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'bs.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`\nconst EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_FOCUSOUT = `focusout${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"toast\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._timeout = null\n this._hasMouseInteraction = false\n this._hasKeyboardInteraction = false\n this._setListeners()\n }\n\n // Getters\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n this._element.classList.add(CLASS_NAME_SHOW)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n this._maybeScheduleHide()\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE)\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n hide() {\n if (!this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n return config\n }\n\n _maybeScheduleHide() {\n if (!this._config.autohide) {\n return\n }\n\n if (this._hasMouseInteraction || this._hasKeyboardInteraction) {\n return\n }\n\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n\n _onInteraction(event, isInteracting) {\n switch (event.type) {\n case 'mouseover':\n case 'mouseout':\n this._hasMouseInteraction = isInteracting\n break\n case 'focusin':\n case 'focusout':\n this._hasKeyboardInteraction = isInteracting\n break\n default:\n break\n }\n\n if (isInteracting) {\n this._clearTimeout()\n return\n }\n\n const nextElement = event.relatedTarget\n if (this._element === nextElement || this._element.contains(nextElement)) {\n return\n }\n\n this._maybeScheduleHide()\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false))\n EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false))\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Toast.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Toast to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Toast)\n\nexport default Toast\n"],"names":["NODE_TEXT","SelectorEngine","find","selector","element","document","documentElement","concat","Element","prototype","querySelectorAll","call","findOne","querySelector","children","filter","child","matches","parents","ancestor","parentNode","nodeType","Node","ELEMENT_NODE","push","prev","previous","previousElementSibling","next","nextElementSibling","MAX_UID","MILLISECONDS_MULTIPLIER","TRANSITION_END","toType","obj","undefined","toString","match","toLowerCase","getUID","prefix","Math","floor","random","getElementById","getSelector","getAttribute","hrefAttr","includes","startsWith","split","trim","getSelectorFromElement","getElementFromSelector","getTransitionDurationFromElement","transitionDuration","transitionDelay","window","getComputedStyle","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","triggerTransitionEnd","dispatchEvent","Event","isElement","jquery","getElement","length","typeCheckConfig","componentName","config","configTypes","Object","keys","forEach","property","expectedTypes","value","valueType","RegExp","test","TypeError","toUpperCase","isVisible","getClientRects","getPropertyValue","isDisabled","classList","contains","disabled","hasAttribute","findShadowRoot","attachShadow","getRootNode","root","ShadowRoot","noop","reflow","offsetHeight","getjQuery","jQuery","body","DOMContentLoadedCallbacks","onDOMContentLoaded","callback","readyState","addEventListener","isRTL","dir","defineJQueryPlugin","plugin","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","execute","executeAfterTransition","transitionElement","waitForTransition","durationPadding","emulatedDuration","called","handler","target","removeEventListener","setTimeout","getNextActiveElement","list","activeElement","shouldGetNext","isCycleAllowed","index","indexOf","listLength","max","min","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","customEventsRegex","nativeEvents","Set","getUidEvent","uid","getEvent","bootstrapHandler","event","delegateTarget","oneOff","EventHandler","off","type","apply","bootstrapDelegationHandler","domElements","i","findHandler","events","delegationSelector","uidEventList","len","originalHandler","normalizeParams","originalTypeEvent","delegationFn","delegation","typeEvent","getTypeEvent","isNative","has","addHandler","wrapFn","relatedTarget","handlers","previousFn","replace","removeHandler","Boolean","removeNamespacedHandlers","namespace","storeElementEvent","handlerKey","on","one","inNamespace","isNamespace","elementEvent","slice","keyHandlers","trigger","args","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","evt","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","createEvent","initEvent","CustomEvent","cancelable","key","defineProperty","get","preventDefault","elementMap","Map","set","instance","instanceMap","size","console","error","Array","from","remove","delete","VERSION","BaseComponent","constructor","_element","Data","DATA_KEY","dispose","EVENT_KEY","getOwnPropertyNames","propertyName","_queueCallback","isAnimated","getInstance","getOrCreateInstance","Error","DATA_API_KEY","SELECTOR_DISMISS","EVENT_CLOSE","EVENT_CLOSED","EVENT_CLICK_DATA_API","CLASS_NAME_ALERT","CLASS_NAME_FADE","CLASS_NAME_SHOW","Alert","close","rootElement","_getRootElement","customEvent","_triggerCloseEvent","_removeElement","closest","_destroyElement","each","data","handleDismiss","alertInstance","CLASS_NAME_ACTIVE","SELECTOR_DATA_TOGGLE","Button","toggle","setAttribute","button","normalizeData","val","normalizeDataKey","chr","Manipulator","setDataAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","dataset","pureKey","charAt","getDataAttribute","offset","rect","getBoundingClientRect","top","scrollTop","left","scrollLeft","position","offsetTop","offsetLeft","ARROW_LEFT_KEY","ARROW_RIGHT_KEY","TOUCHEVENT_COMPAT_WAIT","SWIPE_THRESHOLD","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","KEY_TO_DIRECTION","EVENT_SLIDE","EVENT_SLID","EVENT_KEYDOWN","EVENT_MOUSEENTER","EVENT_MOUSELEAVE","EVENT_TOUCHSTART","EVENT_TOUCHMOVE","EVENT_TOUCHEND","EVENT_POINTERDOWN","EVENT_POINTERUP","EVENT_DRAG_START","EVENT_LOAD_DATA_API","CLASS_NAME_CAROUSEL","CLASS_NAME_SLIDE","CLASS_NAME_END","CLASS_NAME_START","CLASS_NAME_NEXT","CLASS_NAME_PREV","CLASS_NAME_POINTER_EVENT","SELECTOR_ACTIVE","SELECTOR_ACTIVE_ITEM","SELECTOR_ITEM","SELECTOR_ITEM_IMG","SELECTOR_NEXT_PREV","SELECTOR_INDICATORS","SELECTOR_INDICATOR","SELECTOR_DATA_SLIDE","SELECTOR_DATA_RIDE","POINTER_TYPE_TOUCH","POINTER_TYPE_PEN","Carousel","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","PointerEvent","_addEventListeners","_slide","nextWhenVisible","hidden","cycle","clearInterval","_updateInterval","setInterval","visibilityState","bind","to","activeIndex","_getItemIndex","order","_handleSwipe","absDeltax","abs","direction","_keydown","_addTouchEventListeners","start","pointerType","clientX","touches","move","end","clearTimeout","itemImg","e","add","tagName","_getItemByOrder","isNext","_triggerSlideEvent","eventDirectionName","targetIndex","fromIndex","_setActiveIndicatorElement","activeIndicator","indicators","parseInt","elementInterval","defaultInterval","directionOrOrder","_directionToOrder","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","_orderToDirection","slideEvent","triggerSlidEvent","completeCallBack","carouselInterface","action","ride","dataApiClickHandler","slideIndex","carousels","parent","EVENT_SHOW","EVENT_SHOWN","EVENT_HIDE","EVENT_HIDDEN","CLASS_NAME_COLLAPSE","CLASS_NAME_COLLAPSING","CLASS_NAME_COLLAPSED","WIDTH","HEIGHT","SELECTOR_ACTIVES","Collapse","_isTransitioning","_triggerArray","id","toggleList","elem","filterElement","foundElem","_selector","_parent","_getParent","_addAriaAndCollapsedClass","hide","show","actives","activesData","container","tempActiveData","startEvent","elemActive","collapseInterface","dimension","_getDimension","style","setTransitioning","complete","capitalizedDimension","scrollSize","triggerArrayLength","isTransitioning","selected","triggerArray","isOpen","triggerData","selectorElements","ESCAPE_KEY","SPACE_KEY","TAB_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","RIGHT_MOUSE_BUTTON","REGEXP_KEYDOWN","EVENT_CLICK","EVENT_KEYDOWN_DATA_API","EVENT_KEYUP_DATA_API","CLASS_NAME_DROPUP","CLASS_NAME_DROPEND","CLASS_NAME_DROPSTART","CLASS_NAME_NAVBAR","SELECTOR_MENU","SELECTOR_NAVBAR_NAV","SELECTOR_VISIBLE_ITEMS","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","boundary","reference","display","popperConfig","autoClose","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","isActive","getParentFromElement","showEvent","Popper","referenceElement","_getPopperConfig","isDisplayStatic","modifiers","modifier","enabled","createPopper","focus","_completeHide","destroy","update","hideEvent","_getPlacement","parentDropdown","isEnd","_getOffset","map","popperData","defaultBsPopperConfig","placement","options","_selectMenuItem","items","dropdownInterface","clearMenus","toggles","context","composedPath","isMenuTarget","clickEvent","dataApiKeydownHandler","stopPropagation","getToggleButton","click","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","ScrollBarHelper","getWidth","documentWidth","clientWidth","innerWidth","width","_disableOverFlow","_setElementAttributes","calculatedValue","_saveInitialAttribute","overflow","styleProp","scrollbarWidth","manipulationCallBack","_applyManipulationCallback","reset","_resetElementAttributes","actualValue","removeProperty","callBack","isOverflowing","clickCallback","CLASS_NAME_BACKDROP","EVENT_MOUSEDOWN","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","createElement","className","appendChild","EVENT_HIDE_PREVENTED","EVENT_FOCUSIN","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_KEYDOWN_DISMISS","EVENT_MOUSEUP_DISMISS","EVENT_MOUSEDOWN_DISMISS","CLASS_NAME_OPEN","CLASS_NAME_STATIC","SELECTOR_DIALOG","SELECTOR_MODAL_BODY","SELECTOR_DATA_DISMISS","Modal","_dialog","_backdrop","_initializeBackDrop","_isShown","_ignoreBackdropClick","_scrollBar","_isAnimated","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","_hideModal","htmlElement","handleUpdate","modalBody","_enforceFocus","transitionComplete","_triggerBackdropTransition","_resetAdjustments","currentTarget","scrollHeight","isModalOverflowing","clientHeight","overflowY","isBodyOverflowing","paddingLeft","paddingRight","scroll","OPEN_SELECTOR","Offcanvas","visibility","_enforceFocusOnElement","blur","completeCallback","allReadyOpen","el","uriAttrs","ARIA_ATTRIBUTE_PATTERN","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeName","nodeValue","regExp","attrRegex","DefaultAllowlist","a","area","b","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","domParser","DOMParser","createdDocument","parseFromString","allowlistKeys","elements","elName","attributeList","allowedAttributes","innerHTML","CLASS_PREFIX","BSCLS_PREFIX_REGEX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","html","fallbackPlacements","customClass","sanitize","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","CLASS_NAME_MODAL","HOVER_STATE_SHOW","HOVER_STATE_OUT","SELECTOR_TOOLTIP_INNER","TRIGGER_HOVER","TRIGGER_FOCUS","TRIGGER_CLICK","TRIGGER_MANUAL","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","_initializeOnDelegatedTarget","_isWithActiveTrigger","_enter","_leave","getTipElement","_hideModalHandler","isWithContent","shadowRoot","isInTheDom","ownerDocument","tipId","setContent","attachment","_getAttachment","_addAttachmentClass","prevHoverState","_cleanTipClass","getTitle","setElementContent","content","textContent","updateAttachment","dataKey","_getDelegateConfig","phase","_handlePopperPlacementChange","onFirstUpdate","triggers","eventIn","eventOut","_fixTitle","originalTitleType","dataAttributes","dataAttr","tabClass","token","tClass","state","popper","SELECTOR_TITLE","SELECTOR_CONTENT","Popover","_getContent","method","EVENT_ACTIVATE","EVENT_SCROLL","CLASS_NAME_DROPDOWN_ITEM","SELECTOR_DATA_SPY","SELECTOR_NAV_LIST_GROUP","SELECTOR_NAV_LINKS","SELECTOR_NAV_ITEMS","SELECTOR_LIST_ITEMS","SELECTOR_DROPDOWN","SELECTOR_DROPDOWN_TOGGLE","METHOD_OFFSET","METHOD_POSITION","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targets","targetSelector","targetBCR","height","item","sort","pageYOffset","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","isActiveTarget","queries","link","join","listGroup","navItem","node","spy","CLASS_NAME_DROPDOWN_MENU","SELECTOR_ACTIVE_UL","SELECTOR_DROPDOWN_ACTIVE_CHILD","Tab","listElement","itemSelector","activeElements","active","_transitionComplete","dropdownChild","dropdownElement","dropdown","EVENT_MOUSEOVER","EVENT_MOUSEOUT","EVENT_FOCUSOUT","CLASS_NAME_HIDE","CLASS_NAME_SHOWING","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","_onInteraction","isInteracting"],"mappings":"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"} \ No newline at end of file diff --git a/assets/js/oe-bcl-default.esm.min.js b/assets/js/oe-bcl-default.esm.min.js new file mode 100644 index 00000000..246b3df8 --- /dev/null +++ b/assets/js/oe-bcl-default.esm.min.js @@ -0,0 +1,2 @@ +import*as t from"@popperjs/core";const e={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 s=[];let i=t.parentNode;for(;i&&i.nodeType===Node.ELEMENT_NODE&&3!==i.nodeType;)i.matches(e)&&s.push(i),i=i.parentNode;return s},prev(t,e){let s=t.previousElementSibling;for(;s;){if(s.matches(e))return[s];s=s.previousElementSibling}return[]},next(t,e){let s=t.nextElementSibling;for(;s;){if(s.matches(e))return[s];s=s.nextElementSibling}return[]}},s=t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t},i=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let s=t.getAttribute("href");if(!s||!s.includes("#")&&!s.startsWith("."))return null;s.includes("#")&&!s.startsWith("#")&&(s=`#${s.split("#")[1]}`),e=s&&"#"!==s?s.trim():null}return e},n=t=>{const e=i(t);return e&&document.querySelector(e)?e:null},o=t=>{const e=i(t);return e?document.querySelector(e):null},r=t=>{t.dispatchEvent(new Event("transitionend"))},a=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),l=t=>a(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?e.findOne(t):null,c=(t,e,s)=>{Object.keys(s).forEach((i=>{const n=s[i],o=e[i],r=o&&a(o)?"element":null==(l=o)?`${l}`:{}.toString.call(l).match(/\s([a-z]+)/i)[1].toLowerCase();var l;if(!new RegExp(n).test(r))throw new TypeError(`${t.toUpperCase()}: Option "${i}" provided type "${r}" but expected type "${n}".`)}))},h=t=>!(!a(t)||0===t.getClientRects().length)&&"visible"===getComputedStyle(t).getPropertyValue("visibility"),d=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),u=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?u(t.parentNode):null},g=()=>{},m=t=>t.offsetHeight,p=()=>{const{jQuery:t}=window;return t&&!document.body.hasAttribute("data-bs-no-jquery")?t:null},f=[],_=()=>"rtl"===document.documentElement.dir,b=t=>{var e;e=()=>{const e=p();if(e){const s=t.NAME,i=e.fn[s];e.fn[s]=t.jQueryInterface,e.fn[s].Constructor=t,e.fn[s].noConflict=()=>(e.fn[s]=i,t.jQueryInterface)}},"loading"===document.readyState?(f.length||document.addEventListener("DOMContentLoaded",(()=>{f.forEach((t=>t()))})),f.push(e)):e()},v=t=>{"function"==typeof t&&t()},y=(t,e,s=!0)=>{if(!s)return void v(t);const i=(t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:s}=window.getComputedStyle(t);const i=Number.parseFloat(e),n=Number.parseFloat(s);return i||n?(e=e.split(",")[0],s=s.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(s))):0})(e)+5;let n=!1;const o=({target:s})=>{s===e&&(n=!0,e.removeEventListener("transitionend",o),v(t))};e.addEventListener("transitionend",o),setTimeout((()=>{n||r(e)}),i)},E=(t,e,s,i)=>{let n=t.indexOf(e);if(-1===n)return t[!s&&i?t.length-1:0];const o=t.length;return n+=s?1:-1,i&&(n=(n+o)%o),t[Math.max(0,Math.min(n,o-1))]},w=/[^.]*(?=\..*)\.|.*/,A=/\..*/,T=/::\d+$/,C={};let k=1;const L={mouseenter:"mouseover",mouseleave:"mouseout"},D=/^(mouseenter|mouseleave)/i,O=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 I(t,e){return e&&`${e}::${k++}`||t.uidEvent||k++}function N(t){const e=I(t);return t.uidEvent=e,C[e]=C[e]||{},C[e]}function S(t,e,s=null){const i=Object.keys(t);for(let n=0,o=i.length;n<o;n++){const o=t[i[n]];if(o.originalHandler===e&&o.delegationSelector===s)return o}return null}function x(t,e,s){const i="string"==typeof e,n=i?s:e;let o=j(t);return O.has(o)||(o=t),[i,n,o]}function M(t,e,s,i,n){if("string"!=typeof e||!t)return;if(s||(s=i,i=null),D.test(e)){const t=t=>function(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};i?i=t(i):s=t(s)}const[o,r,a]=x(e,s,i),l=N(t),c=l[a]||(l[a]={}),h=S(c,r,o?s:null);if(h)return void(h.oneOff=h.oneOff&&n);const d=I(r,e.replace(w,"")),u=o?function(t,e,s){return function i(n){const o=t.querySelectorAll(e);for(let{target:r}=n;r&&r!==this;r=r.parentNode)for(let a=o.length;a--;)if(o[a]===r)return n.delegateTarget=r,i.oneOff&&H.off(t,n.type,e,s),s.apply(r,[n]);return null}}(t,s,i):function(t,e){return function s(i){return i.delegateTarget=t,s.oneOff&&H.off(t,i.type,e),e.apply(t,[i])}}(t,s);u.delegationSelector=o?s:null,u.originalHandler=r,u.oneOff=n,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function P(t,e,s,i,n){const o=S(e[s],i,n);o&&(t.removeEventListener(s,o,Boolean(n)),delete e[s][o.uidEvent])}function j(t){return t=t.replace(A,""),L[t]||t}const H={on(t,e,s,i){M(t,e,s,i,!1)},one(t,e,s,i){M(t,e,s,i,!0)},off(t,e,s,i){if("string"!=typeof e||!t)return;const[n,o,r]=x(e,s,i),a=r!==e,l=N(t),c=e.startsWith(".");if(void 0!==o){if(!l||!l[r])return;return void P(t,l,r,o,n?s:null)}c&&Object.keys(l).forEach((s=>{!function(t,e,s,i){const n=e[s]||{};Object.keys(n).forEach((o=>{if(o.includes(i)){const i=n[o];P(t,e,s,i.originalHandler,i.delegationSelector)}}))}(t,l,s,e.slice(1))}));const h=l[r]||{};Object.keys(h).forEach((s=>{const i=s.replace(T,"");if(!a||e.includes(i)){const e=h[s];P(t,l,r,e.originalHandler,e.delegationSelector)}}))},trigger(t,e,s){if("string"!=typeof e||!t)return null;const i=p(),n=j(e),o=e!==n,r=O.has(n);let a,l=!0,c=!0,h=!1,d=null;return o&&i&&(a=i.Event(e,s),i(t).trigger(a),l=!a.isPropagationStopped(),c=!a.isImmediatePropagationStopped(),h=a.isDefaultPrevented()),r?(d=document.createEvent("HTMLEvents"),d.initEvent(n,l,!0)):d=new CustomEvent(e,{bubbles:l,cancelable:!0}),void 0!==s&&Object.keys(s).forEach((t=>{Object.defineProperty(d,t,{get:()=>s[t]})})),h&&d.preventDefault(),c&&t.dispatchEvent(d),d.defaultPrevented&&void 0!==a&&a.preventDefault(),d}},$=new Map;var R={set(t,e,s){$.has(t)||$.set(t,new Map);const i=$.get(t);i.has(e)||0===i.size?i.set(e,s):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(i.keys())[0]}.`)},get:(t,e)=>$.has(t)&&$.get(t).get(e)||null,remove(t,e){if(!$.has(t))return;const s=$.get(t);s.delete(e),0===s.size&&$.delete(t)}};class B{constructor(t){(t=l(t))&&(this._element=t,R.set(this._element,this.constructor.DATA_KEY,this))}dispose(){R.remove(this._element,this.constructor.DATA_KEY),H.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach((t=>{this[t]=null}))}_queueCallback(t,e,s=!0){y(t,e,s)}static getInstance(t){return R.get(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.0.2"}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}`}}class W extends B{static get NAME(){return"alert"}close(t){const e=t?this._getRootElement(t):this._element,s=this._triggerCloseEvent(e);null===s||s.defaultPrevented||this._removeElement(e)}_getRootElement(t){return o(t)||t.closest(".alert")}_triggerCloseEvent(t){return H.trigger(t,"close.bs.alert")}_removeElement(t){t.classList.remove("show");const e=t.classList.contains("fade");this._queueCallback((()=>this._destroyElement(t)),t,e)}_destroyElement(t){t.remove(),H.trigger(t,"closed.bs.alert")}static jQueryInterface(t){return this.each((function(){const e=W.getOrCreateInstance(this);"close"===t&&e[t](this)}))}static handleDismiss(t){return function(e){e&&e.preventDefault(),t.close(this)}}}H.on(document,"click.bs.alert.data-api",'[data-bs-dismiss="alert"]',W.handleDismiss(new W)),b(W);class q 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=q.getOrCreateInstance(this);"toggle"===t&&e[t]()}))}}function z(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()}`))}H.on(document,"click.bs.button.data-api",'[data-bs-toggle="button"]',(t=>{t.preventDefault();const e=t.target.closest('[data-bs-toggle="button"]');q.getOrCreateInstance(e).toggle()})),b(q);const U={setDataAttribute(t,e,s){t.setAttribute(`data-bs-${F(e)}`,s)},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((s=>{let i=s.replace(/^bs/,"");i=i.charAt(0).toLowerCase()+i.slice(1,i.length),e[i]=z(t.dataset[s])})),e},getDataAttribute:(t,e)=>z(t.getAttribute(`data-bs-${F(e)}`)),offset(t){const e=t.getBoundingClientRect();return{top:e.top+document.body.scrollTop,left:e.left+document.body.scrollLeft}},position:t=>({top:t.offsetTop,left:t.offsetLeft})},K={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},V={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},Q="next",X="prev",Y="left",G="right",Z={ArrowLeft:G,ArrowRight:Y};class J extends B{constructor(t,s){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(s),this._indicatorsElement=e.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 K}static get NAME(){return"carousel"}next(){this._slide(Q)}nextWhenVisible(){!document.hidden&&h(this._element)&&this.next()}prev(){this._slide(X)}pause(t){t||(this._isPaused=!0),e.findOne(".carousel-item-next, .carousel-item-prev",this._element)&&(r(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=e.findOne(".active.carousel-item",this._element);const s=this._getItemIndex(this._activeElement);if(t>this._items.length-1||t<0)return;if(this._isSliding)return void H.one(this._element,"slid.bs.carousel",(()=>this.to(t)));if(s===t)return this.pause(),void this.cycle();const i=t>s?Q:X;this._slide(i,this._items[t])}_getConfig(t){return t={...K,...U.getDataAttributes(this._element),..."object"==typeof t?t:{}},c("carousel",t,V),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?G:Y)}_addEventListeners(){this._config.keyboard&&H.on(this._element,"keydown.bs.carousel",(t=>this._keydown(t))),"hover"===this._config.pause&&(H.on(this._element,"mouseenter.bs.carousel",(t=>this.pause(t))),H.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?this._pointerEvent||(this.touchStartX=t.touches[0].clientX):this.touchStartX=t.clientX},s=t=>{this.touchDeltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this.touchStartX},i=t=>{!this._pointerEvent||"pen"!==t.pointerType&&"touch"!==t.pointerType||(this.touchDeltaX=t.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))};e.find(".carousel-item img",this._element).forEach((t=>{H.on(t,"dragstart.bs.carousel",(t=>t.preventDefault()))})),this._pointerEvent?(H.on(this._element,"pointerdown.bs.carousel",(e=>t(e))),H.on(this._element,"pointerup.bs.carousel",(t=>i(t))),this._element.classList.add("pointer-event")):(H.on(this._element,"touchstart.bs.carousel",(e=>t(e))),H.on(this._element,"touchmove.bs.carousel",(t=>s(t))),H.on(this._element,"touchend.bs.carousel",(t=>i(t))))}_keydown(t){if(/input|textarea/i.test(t.target.tagName))return;const e=Z[t.key];e&&(t.preventDefault(),this._slide(e))}_getItemIndex(t){return this._items=t&&t.parentNode?e.find(".carousel-item",t.parentNode):[],this._items.indexOf(t)}_getItemByOrder(t,e){const s=t===Q;return E(this._items,e,s,this._config.wrap)}_triggerSlideEvent(t,s){const i=this._getItemIndex(t),n=this._getItemIndex(e.findOne(".active.carousel-item",this._element));return H.trigger(this._element,"slide.bs.carousel",{relatedTarget:t,direction:s,from:n,to:i})}_setActiveIndicatorElement(t){if(this._indicatorsElement){const s=e.findOne(".active",this._indicatorsElement);s.classList.remove("active"),s.removeAttribute("aria-current");const i=e.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("active"),i[e].setAttribute("aria-current","true");break}}}_updateInterval(){const t=this._activeElement||e.findOne(".active.carousel-item",this._element);if(!t)return;const s=Number.parseInt(t.getAttribute("data-bs-interval"),10);s?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,this._config.interval=s):this._config.interval=this._config.defaultInterval||this._config.interval}_slide(t,s){const i=this._directionToOrder(t),n=e.findOne(".active.carousel-item",this._element),o=this._getItemIndex(n),r=s||this._getItemByOrder(i,n),a=this._getItemIndex(r),l=Boolean(this._interval),c=i===Q,h=c?"carousel-item-start":"carousel-item-end",d=c?"carousel-item-next":"carousel-item-prev",u=this._orderToDirection(i);if(r&&r.classList.contains("active"))return void(this._isSliding=!1);if(this._isSliding)return;if(this._triggerSlideEvent(r,u).defaultPrevented)return;if(!n||!r)return;this._isSliding=!0,l&&this.pause(),this._setActiveIndicatorElement(r),this._activeElement=r;const g=()=>{H.trigger(this._element,"slid.bs.carousel",{relatedTarget:r,direction:u,from:o,to:a})};if(this._element.classList.contains("slide")){r.classList.add(d),m(r),n.classList.add(h),r.classList.add(h);const t=()=>{r.classList.remove(h,d),r.classList.add("active"),n.classList.remove("active",d,h),this._isSliding=!1,setTimeout(g,0)};this._queueCallback(t,n,!0)}else n.classList.remove("active"),r.classList.add("active"),this._isSliding=!1,g();l&&this.cycle()}_directionToOrder(t){return[G,Y].includes(t)?_()?t===Y?X:Q:t===Y?Q:X:t}_orderToDirection(t){return[Q,X].includes(t)?_()?t===X?Y:G:t===X?G:Y:t}static carouselInterface(t,e){const s=J.getOrCreateInstance(t,e);let{_config:i}=s;"object"==typeof e&&(i={...i,...e});const n="string"==typeof e?e:i.slide;if("number"==typeof e)s.to(e);else if("string"==typeof n){if(void 0===s[n])throw new TypeError(`No method named "${n}"`);s[n]()}else i.interval&&i.ride&&(s.pause(),s.cycle())}static jQueryInterface(t){return this.each((function(){J.carouselInterface(this,t)}))}static dataApiClickHandler(t){const e=o(this);if(!e||!e.classList.contains("carousel"))return;const s={...U.getDataAttributes(e),...U.getDataAttributes(this)},i=this.getAttribute("data-bs-slide-to");i&&(s.interval=!1),J.carouselInterface(e,s),i&&J.getInstance(e).to(i),t.preventDefault()}}H.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",J.dataApiClickHandler),H.on(window,"load.bs.carousel.data-api",(()=>{const t=e.find('[data-bs-ride="carousel"]');for(let e=0,s=t.length;e<s;e++)J.carouselInterface(t[e],J.getInstance(t[e]))})),b(J);const tt={toggle:!0,parent:""},et={toggle:"boolean",parent:"(string|element)"};class st extends B{constructor(t,s){super(t),this._isTransitioning=!1,this._config=this._getConfig(s),this._triggerArray=e.find(`[data-bs-toggle="collapse"][href="#${this._element.id}"],[data-bs-toggle="collapse"][data-bs-target="#${this._element.id}"]`);const i=e.find('[data-bs-toggle="collapse"]');for(let t=0,s=i.length;t<s;t++){const s=i[t],o=n(s),r=e.find(o).filter((t=>t===this._element));null!==o&&r.length&&(this._selector=o,this._triggerArray.push(s))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}static get Default(){return tt}static get NAME(){return"collapse"}toggle(){this._element.classList.contains("show")?this.hide():this.show()}show(){if(this._isTransitioning||this._element.classList.contains("show"))return;let t,s;this._parent&&(t=e.find(".show, .collapsing",this._parent).filter((t=>"string"==typeof this._config.parent?t.getAttribute("data-bs-parent")===this._config.parent:t.classList.contains("collapse"))),0===t.length&&(t=null));const i=e.findOne(this._selector);if(t){const e=t.find((t=>i!==t));if(s=e?st.getInstance(e):null,s&&s._isTransitioning)return}if(H.trigger(this._element,"show.bs.collapse").defaultPrevented)return;t&&t.forEach((t=>{i!==t&&st.collapseInterface(t,"hide"),s||R.set(t,"bs.collapse",null)}));const n=this._getDimension();this._element.classList.remove("collapse"),this._element.classList.add("collapsing"),this._element.style[n]=0,this._triggerArray.length&&this._triggerArray.forEach((t=>{t.classList.remove("collapsed"),t.setAttribute("aria-expanded",!0)})),this.setTransitioning(!0);const o=`scroll${n[0].toUpperCase()+n.slice(1)}`;this._queueCallback((()=>{this._element.classList.remove("collapsing"),this._element.classList.add("collapse","show"),this._element.style[n]="",this.setTransitioning(!1),H.trigger(this._element,"shown.bs.collapse")}),this._element,!0),this._element.style[n]=`${this._element[o]}px`}hide(){if(this._isTransitioning||!this._element.classList.contains("show"))return;if(H.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const t=this._getDimension();this._element.style[t]=`${this._element.getBoundingClientRect()[t]}px`,m(this._element),this._element.classList.add("collapsing"),this._element.classList.remove("collapse","show");const e=this._triggerArray.length;if(e>0)for(let t=0;t<e;t++){const e=this._triggerArray[t],s=o(e);s&&!s.classList.contains("show")&&(e.classList.add("collapsed"),e.setAttribute("aria-expanded",!1))}this.setTransitioning(!0),this._element.style[t]="",this._queueCallback((()=>{this.setTransitioning(!1),this._element.classList.remove("collapsing"),this._element.classList.add("collapse"),H.trigger(this._element,"hidden.bs.collapse")}),this._element,!0)}setTransitioning(t){this._isTransitioning=t}_getConfig(t){return(t={...tt,...t}).toggle=Boolean(t.toggle),c("collapse",t,et),t}_getDimension(){return this._element.classList.contains("width")?"width":"height"}_getParent(){let{parent:t}=this._config;t=l(t);const s=`[data-bs-toggle="collapse"][data-bs-parent="${t}"]`;return e.find(s,t).forEach((t=>{const e=o(t);this._addAriaAndCollapsedClass(e,[t])})),t}_addAriaAndCollapsedClass(t,e){if(!t||!e.length)return;const s=t.classList.contains("show");e.forEach((t=>{s?t.classList.remove("collapsed"):t.classList.add("collapsed"),t.setAttribute("aria-expanded",s)}))}static collapseInterface(t,e){let s=st.getInstance(t);const i={...tt,...U.getDataAttributes(t),..."object"==typeof e&&e?e:{}};if(!s&&i.toggle&&"string"==typeof e&&/show|hide/.test(e)&&(i.toggle=!1),s||(s=new st(t,i)),"string"==typeof e){if(void 0===s[e])throw new TypeError(`No method named "${e}"`);s[e]()}}static jQueryInterface(t){return this.each((function(){st.collapseInterface(this,t)}))}}H.on(document,"click.bs.collapse.data-api",'[data-bs-toggle="collapse"]',(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();const s=U.getDataAttributes(this),i=n(this);e.find(i).forEach((t=>{const e=st.getInstance(t);let i;e?(null===e._parent&&"string"==typeof s.parent&&(e._config.parent=s.parent,e._parent=e._getParent()),i="toggle"):i=s,st.collapseInterface(t,i)}))})),b(st);const it=new RegExp("ArrowUp|ArrowDown|Escape"),nt=_()?"top-end":"top-start",ot=_()?"top-start":"top-end",rt=_()?"bottom-end":"bottom-start",at=_()?"bottom-start":"bottom-end",lt=_()?"left-start":"right-start",ct=_()?"right-start":"left-start",ht={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},dt={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class ut extends B{constructor(t,e){super(t),this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}static get Default(){return ht}static get DefaultType(){return dt}static get NAME(){return"dropdown"}toggle(){d(this._element)||(this._element.classList.contains("show")?this.hide():this.show())}show(){if(d(this._element)||this._menu.classList.contains("show"))return;const e=ut.getParentFromElement(this._element),s={relatedTarget:this._element};if(!H.trigger(this._element,"show.bs.dropdown",s).defaultPrevented){if(this._inNavbar)U.setDataAttribute(this._menu,"popper","none");else{if(void 0===t)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let s=this._element;"parent"===this._config.reference?s=e:a(this._config.reference)?s=l(this._config.reference):"object"==typeof this._config.reference&&(s=this._config.reference);const i=this._getPopperConfig(),n=i.modifiers.find((t=>"applyStyles"===t.name&&!1===t.enabled));this._popper=t.createPopper(s,this._menu,i),n&&U.setDataAttribute(this._menu,"popper","static")}"ontouchstart"in document.documentElement&&!e.closest(".navbar-nav")&&[].concat(...document.body.children).forEach((t=>H.on(t,"mouseover",g))),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.toggle("show"),this._element.classList.toggle("show"),H.trigger(this._element,"shown.bs.dropdown",s)}}hide(){if(d(this._element)||!this._menu.classList.contains("show"))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()}_addEventListeners(){H.on(this._element,"click.bs.dropdown",(t=>{t.preventDefault(),this.toggle()}))}_completeHide(t){H.trigger(this._element,"hide.bs.dropdown",t).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>H.off(t,"mouseover",g))),this._popper&&this._popper.destroy(),this._menu.classList.remove("show"),this._element.classList.remove("show"),this._element.setAttribute("aria-expanded","false"),U.removeDataAttribute(this._menu,"popper"),H.trigger(this._element,"hidden.bs.dropdown",t))}_getConfig(t){if(t={...this.constructor.Default,...U.getDataAttributes(this._element),...t},c("dropdown",t,this.constructor.DefaultType),"object"==typeof t.reference&&!a(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError(`${"dropdown".toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return t}_getMenuElement(){return e.next(this._element,".dropdown-menu")[0]}_getPlacement(){const t=this._element.parentNode;if(t.classList.contains("dropend"))return lt;if(t.classList.contains("dropstart"))return ct;const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?ot:nt:e?at:rt}_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:s}){const i=e.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(h);i.length&&E(i,s,"ArrowDown"===t,!i.includes(s)).focus()}static dropdownInterface(t,e){const s=ut.getOrCreateInstance(t,e);if("string"==typeof e){if(void 0===s[e])throw new TypeError(`No method named "${e}"`);s[e]()}}static jQueryInterface(t){return this.each((function(){ut.dropdownInterface(this,t)}))}static clearMenus(t){if(t&&(2===t.button||"keyup"===t.type&&"Tab"!==t.key))return;const s=e.find('[data-bs-toggle="dropdown"]');for(let e=0,i=s.length;e<i;e++){const i=ut.getInstance(s[e]);if(!i||!1===i._config.autoClose)continue;if(!i._element.classList.contains("show"))continue;const n={relatedTarget:i._element};if(t){const e=t.composedPath(),s=e.includes(i._menu);if(e.includes(i._element)||"inside"===i._config.autoClose&&!s||"outside"===i._config.autoClose&&s)continue;if(i._menu.contains(t.target)&&("keyup"===t.type&&"Tab"===t.key||/input|select|option|textarea|form/i.test(t.target.tagName)))continue;"click"===t.type&&(n.clickEvent=t)}i._completeHide(n)}}static getParentFromElement(t){return o(t)||t.parentNode}static dataApiKeydownHandler(t){if(/input|textarea/i.test(t.target.tagName)?"Space"===t.key||"Escape"!==t.key&&("ArrowDown"!==t.key&&"ArrowUp"!==t.key||t.target.closest(".dropdown-menu")):!it.test(t.key))return;const s=this.classList.contains("show");if(!s&&"Escape"===t.key)return;if(t.preventDefault(),t.stopPropagation(),d(this))return;const i=()=>this.matches('[data-bs-toggle="dropdown"]')?this:e.prev(this,'[data-bs-toggle="dropdown"]')[0];return"Escape"===t.key?(i().focus(),void ut.clearMenus()):"ArrowUp"===t.key||"ArrowDown"===t.key?(s||i().click(),void ut.getInstance(i())._selectMenuItem(t)):void(s&&"Space"!==t.key||ut.clearMenus())}}H.on(document,"keydown.bs.dropdown.data-api",'[data-bs-toggle="dropdown"]',ut.dataApiKeydownHandler),H.on(document,"keydown.bs.dropdown.data-api",".dropdown-menu",ut.dataApiKeydownHandler),H.on(document,"click.bs.dropdown.data-api",ut.clearMenus),H.on(document,"keyup.bs.dropdown.data-api",ut.clearMenus),H.on(document,"click.bs.dropdown.data-api",'[data-bs-toggle="dropdown"]',(function(t){t.preventDefault(),ut.dropdownInterface(this)})),b(ut);class gt{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(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top","paddingRight",(e=>e+t)),this._setElementAttributes(".sticky-top","marginRight",(e=>e-t))}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(t,e,s){const i=this.getWidth();this._applyManipulationCallback(t,(t=>{if(t!==this._element&&window.innerWidth>t.clientWidth+i)return;this._saveInitialAttribute(t,e);const n=window.getComputedStyle(t)[e];t.style[e]=`${s(Number.parseFloat(n))}px`}))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top","paddingRight"),this._resetElementAttributes(".sticky-top","marginRight")}_saveInitialAttribute(t,e){const s=t.style[e];s&&U.setDataAttribute(t,e,s)}_resetElementAttributes(t,e){this._applyManipulationCallback(t,(t=>{const s=U.getDataAttribute(t,e);void 0===s?t.style.removeProperty(e):(U.removeDataAttribute(t,e),t.style[e]=s)}))}_applyManipulationCallback(t,s){a(t)?s(t):e.find(t,this._element).forEach(s)}isOverflowing(){return this.getWidth()>0}}const mt={isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},pt={isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"};class ft{constructor(t){this._config=this._getConfig(t),this._isAppended=!1,this._element=null}show(t){this._config.isVisible?(this._append(),this._config.isAnimated&&m(this._getElement()),this._getElement().classList.add("show"),this._emulateAnimation((()=>{v(t)}))):v(t)}hide(t){this._config.isVisible?(this._getElement().classList.remove("show"),this._emulateAnimation((()=>{this.dispose(),v(t)}))):v(t)}_getElement(){if(!this._element){const t=document.createElement("div");t.className="modal-backdrop",this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_getConfig(t){return(t={...mt,..."object"==typeof t?t:{}}).rootElement=l(t.rootElement),c("backdrop",t,pt),t}_append(){this._isAppended||(this._config.rootElement.appendChild(this._getElement()),H.on(this._getElement(),"mousedown.bs.backdrop",(()=>{v(this._config.clickCallback)})),this._isAppended=!0)}dispose(){this._isAppended&&(H.off(this._element,"mousedown.bs.backdrop"),this._element.remove(),this._isAppended=!1)}_emulateAnimation(t){y(t,this._getElement(),this._config.isAnimated)}}const _t={backdrop:!0,keyboard:!0,focus:!0},bt={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"};class vt extends B{constructor(t,s){super(t),this._config=this._getConfig(s),this._dialog=e.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new gt}static get Default(){return _t}static get NAME(){return"modal"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||this._isTransitioning||H.trigger(this._element,"show.bs.modal",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add("modal-open"),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),H.on(this._element,"click.dismiss.bs.modal",'[data-bs-dismiss="modal"]',(t=>this.hide(t))),H.on(this._dialog,"mousedown.dismiss.bs.modal",(()=>{H.one(this._element,"mouseup.dismiss.bs.modal",(t=>{t.target===this._element&&(this._ignoreBackdropClick=!0)}))})),this._showBackdrop((()=>this._showElement(t))))}hide(t){if(t&&["A","AREA"].includes(t.target.tagName)&&t.preventDefault(),!this._isShown||this._isTransitioning)return;if(H.trigger(this._element,"hide.bs.modal").defaultPrevented)return;this._isShown=!1;const e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),H.off(document,"focusin.bs.modal"),this._element.classList.remove("show"),H.off(this._element,"click.dismiss.bs.modal"),H.off(this._dialog,"mousedown.dismiss.bs.modal"),this._queueCallback((()=>this._hideModal()),this._element,e)}dispose(){[window,this._dialog].forEach((t=>H.off(t,".bs.modal"))),this._backdrop.dispose(),super.dispose(),H.off(document,"focusin.bs.modal")}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ft({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_getConfig(t){return t={..._t,...U.getDataAttributes(this._element),..."object"==typeof t?t:{}},c("modal",t,bt),t}_showElement(t){const s=this._isAnimated(),i=e.findOne(".modal-body",this._dialog);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(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),s&&m(this._element),this._element.classList.add("show"),this._config.focus&&this._enforceFocus(),this._queueCallback((()=>{this._config.focus&&this._element.focus(),this._isTransitioning=!1,H.trigger(this._element,"shown.bs.modal",{relatedTarget:t})}),this._dialog,s)}_enforceFocus(){H.off(document,"focusin.bs.modal"),H.on(document,"focusin.bs.modal",(t=>{document===t.target||this._element===t.target||this._element.contains(t.target)||this._element.focus()}))}_setEscapeEvent(){this._isShown?H.on(this._element,"keydown.dismiss.bs.modal",(t=>{this._config.keyboard&&"Escape"===t.key?(t.preventDefault(),this.hide()):this._config.keyboard||"Escape"!==t.key||this._triggerBackdropTransition()})):H.off(this._element,"keydown.dismiss.bs.modal")}_setResizeEvent(){this._isShown?H.on(window,"resize.bs.modal",(()=>this._adjustDialog())):H.off(window,"resize.bs.modal")}_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("modal-open"),this._resetAdjustments(),this._scrollBar.reset(),H.trigger(this._element,"hidden.bs.modal")}))}_showBackdrop(t){H.on(this._element,"click.dismiss.bs.modal",(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(H.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const{classList:t,scrollHeight:e,style:s}=this._element,i=e>document.documentElement.clientHeight;!i&&"hidden"===s.overflowY||t.contains("modal-static")||(i||(s.overflowY="hidden"),t.add("modal-static"),this._queueCallback((()=>{t.remove("modal-static"),i||this._queueCallback((()=>{s.overflowY=""}),this._dialog)}),this._dialog),this._element.focus())}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._scrollBar.getWidth(),s=e>0;(!s&&t&&!_()||s&&!t&&_())&&(this._element.style.paddingLeft=`${e}px`),(s&&!t&&!_()||!s&&t&&_())&&(this._element.style.paddingRight=`${e}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const s=vt.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===s[t])throw new TypeError(`No method named "${t}"`);s[t](e)}}))}}H.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(t){const e=o(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),H.one(e,"show.bs.modal",(t=>{t.defaultPrevented||H.one(e,"hidden.bs.modal",(()=>{h(this)&&this.focus()}))})),vt.getOrCreateInstance(e).toggle(this)})),b(vt);const yt={backdrop:!0,keyboard:!0,scroll:!1},Et={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"};class wt extends B{constructor(t,e){super(t),this._config=this._getConfig(e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._addEventListeners()}static get NAME(){return"offcanvas"}static get Default(){return yt}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||H.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||((new gt).hide(),this._enforceFocusOnElement(this._element)),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add("show"),this._queueCallback((()=>{H.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})}),this._element,!0))}hide(){this._isShown&&(H.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||(H.off(document,"focusin.bs.offcanvas"),this._element.blur(),this._isShown=!1,this._element.classList.remove("show"),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 gt).reset(),H.trigger(this._element,"hidden.bs.offcanvas")}),this._element,!0)))}dispose(){this._backdrop.dispose(),super.dispose(),H.off(document,"focusin.bs.offcanvas")}_getConfig(t){return t={...yt,...U.getDataAttributes(this._element),..."object"==typeof t?t:{}},c("offcanvas",t,Et),t}_initializeBackDrop(){return new ft({isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_enforceFocusOnElement(t){H.off(document,"focusin.bs.offcanvas"),H.on(document,"focusin.bs.offcanvas",(e=>{document===e.target||t===e.target||t.contains(e.target)||t.focus()})),t.focus()}_addEventListeners(){H.on(this._element,"click.dismiss.bs.offcanvas",'[data-bs-dismiss="offcanvas"]',(()=>this.hide())),H.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=wt.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)}}))}}H.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(t){const s=o(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),d(this))return;H.one(s,"hidden.bs.offcanvas",(()=>{h(this)&&this.focus()}));const i=e.findOne(".offcanvas.show");i&&i!==s&&wt.getInstance(i).hide(),wt.getOrCreateInstance(s).toggle(this)})),H.on(window,"load.bs.offcanvas.data-api",(()=>e.find(".offcanvas.show").forEach((t=>wt.getOrCreateInstance(t).show())))),b(wt);const At=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Tt=/^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i,Ct=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,kt=(t,e)=>{const s=t.nodeName.toLowerCase();if(e.includes(s))return!At.has(s)||Boolean(Tt.test(t.nodeValue)||Ct.test(t.nodeValue));const i=e.filter((t=>t instanceof RegExp));for(let t=0,e=i.length;t<e;t++)if(i[t].test(s))return!0;return!1};function Lt(t,e,s){if(!t.length)return t;if(s&&"function"==typeof s)return s(t);const i=(new window.DOMParser).parseFromString(t,"text/html"),n=Object.keys(e),o=[].concat(...i.body.querySelectorAll("*"));for(let t=0,s=o.length;t<s;t++){const s=o[t],i=s.nodeName.toLowerCase();if(!n.includes(i)){s.remove();continue}const r=[].concat(...s.attributes),a=[].concat(e["*"]||[],e[i]||[]);r.forEach((t=>{kt(t,a)||s.removeAttribute(t.nodeName)}))}return i.body.innerHTML}const Dt=new RegExp("(^|\\s)bs-tooltip\\S+","g"),Ot=new Set(["sanitize","allowList","sanitizeFn"]),It={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)"},Nt={AUTO:"auto",TOP:"top",RIGHT:_()?"left":"right",BOTTOM:"bottom",LEFT:_()?"right":"left"},St={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},xt={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"};class Mt extends B{constructor(e,s){if(void 0===t)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(s),this.tip=null,this._setListeners()}static get Default(){return St}static get NAME(){return"tooltip"}static get Event(){return xt}static get DefaultType(){return It}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("show"))return void this._leave(null,this);this._enter(null,this)}}dispose(){clearTimeout(this._timeout),H.off(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this.tip&&this.tip.remove(),this._popper&&this._popper.destroy(),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 e=H.trigger(this._element,this.constructor.Event.SHOW),i=u(this._element),n=null===i?this._element.ownerDocument.documentElement.contains(this._element):i.contains(this._element);if(e.defaultPrevented||!n)return;const o=this.getTipElement(),r=s(this.constructor.NAME);o.setAttribute("id",r),this._element.setAttribute("aria-describedby",r),this.setContent(),this._config.animation&&o.classList.add("fade");const a="function"==typeof this._config.placement?this._config.placement.call(this,o,this._element):this._config.placement,l=this._getAttachment(a);this._addAttachmentClass(l);const{container:c}=this._config;R.set(o,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(c.appendChild(o),H.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=t.createPopper(this._element,o,this._getPopperConfig(l)),o.classList.add("show");const h="function"==typeof this._config.customClass?this._config.customClass():this._config.customClass;h&&o.classList.add(...h.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>{H.on(t,"mouseover",g)}));const d=this.tip.classList.contains("fade");this._queueCallback((()=>{const t=this._hoverState;this._hoverState=null,H.trigger(this._element,this.constructor.Event.SHOWN),"out"===t&&this._leave(null,this)}),this.tip,d)}hide(){if(!this._popper)return;const t=this.getTipElement();if(H.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;t.classList.remove("show"),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>H.off(t,"mouseover",g))),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1;const e=this.tip.classList.contains("fade");this._queueCallback((()=>{this._isWithActiveTrigger()||("show"!==this._hoverState&&t.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),H.trigger(this._element,this.constructor.Event.HIDDEN),this._popper&&(this._popper.destroy(),this._popper=null))}),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");return t.innerHTML=this._config.template,this.tip=t.children[0],this.tip}setContent(){const t=this.getTipElement();this.setElementContent(e.findOne(".tooltip-inner",t),this.getTitle()),t.classList.remove("fade","show")}setElementContent(t,e){if(null!==t)return a(e)?(e=l(e),void(this._config.html?e.parentNode!==t&&(t.innerHTML="",t.appendChild(e)):t.textContent=e.textContent)):void(this._config.html?(this._config.sanitize&&(e=Lt(e,this._config.allowList,this._config.sanitizeFn)),t.innerHTML=e):t.textContent=e)}getTitle(){let t=this._element.getAttribute("data-bs-original-title");return t||(t="function"==typeof this._config.title?this._config.title.call(this._element):this._config.title),t}updateAttachment(t){return"right"===t?"end":"left"===t?"start":t}_initializeOnDelegatedTarget(t,e){const s=this.constructor.DATA_KEY;return(e=e||R.get(t.delegateTarget,s))||(e=new this.constructor(t.delegateTarget,this._getDelegateConfig()),R.set(t.delegateTarget,s,e)),e}_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(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(`bs-tooltip-${this.updateAttachment(t)}`)}_getAttachment(t){return Nt[t.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach((t=>{if("click"===t)H.on(this._element,this.constructor.Event.CLICK,this._config.selector,(t=>this.toggle(t)));else if("manual"!==t){const e="hover"===t?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,s="hover"===t?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;H.on(this._element,e,this._config.selector,(t=>this._enter(t))),H.on(this._element,s,this._config.selector,(t=>this._leave(t)))}})),this._hideModalHandler=()=>{this._element&&this.hide()},H.on(this._element.closest(".modal"),"hide.bs.modal",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?"focus":"hover"]=!0),e.getTipElement().classList.contains("show")||"show"===e._hoverState?e._hoverState="show":(clearTimeout(e._timeout),e._hoverState="show",e._config.delay&&e._config.delay.show?e._timeout=setTimeout((()=>{"show"===e._hoverState&&e.show()}),e._config.delay.show):e.show())}_leave(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusout"===t.type?"focus":"hover"]=e._element.contains(t.relatedTarget)),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState="out",e._config.delay&&e._config.delay.hide?e._timeout=setTimeout((()=>{"out"===e._hoverState&&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=>{Ot.has(t)&&delete e[t]})),(t={...this.constructor.Default,...e,..."object"==typeof t&&t?t:{}}).container=!1===t.container?document.body:l(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()),c("tooltip",t,this.constructor.DefaultType),t.sanitize&&(t.template=Lt(t.template,t.allowList,t.sanitizeFn)),t}_getDelegateConfig(){const t={};if(this._config)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=t.getAttribute("class").match(Dt);null!==e&&e.length>0&&e.map((t=>t.trim())).forEach((e=>t.classList.remove(e)))}_handlePopperPlacementChange(t){const{state:e}=t;e&&(this.tip=e.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(e.placement)))}static jQueryInterface(t){return this.each((function(){const e=Mt.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}b(Mt);const Pt=new RegExp("(^|\\s)bs-popover\\S+","g"),jt={...Mt.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>'},Ht={...Mt.DefaultType,content:"(string|element|function)"},$t={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 Rt extends Mt{static get Default(){return jt}static get NAME(){return"popover"}static get Event(){return $t}static get DefaultType(){return Ht}isWithContent(){return this.getTitle()||this._getContent()}getTipElement(){return this.tip||(this.tip=super.getTipElement(),this.getTitle()||e.findOne(".popover-header",this.tip).remove(),this._getContent()||e.findOne(".popover-body",this.tip).remove()),this.tip}setContent(){const t=this.getTipElement();this.setElementContent(e.findOne(".popover-header",t),this.getTitle());let s=this._getContent();"function"==typeof s&&(s=s.call(this._element)),this.setElementContent(e.findOne(".popover-body",t),s),t.classList.remove("fade","show")}_addAttachmentClass(t){this.getTipElement().classList.add(`bs-popover-${this.updateAttachment(t)}`)}_getContent(){return this._element.getAttribute("data-bs-content")||this._config.content}_cleanTipClass(){const t=this.getTipElement(),e=t.getAttribute("class").match(Pt);null!==e&&e.length>0&&e.map((t=>t.trim())).forEach((e=>t.classList.remove(e)))}static jQueryInterface(t){return this.each((function(){const e=Rt.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}b(Rt);const Bt={offset:10,method:"auto",target:""},Wt={offset:"number",method:"string",target:"(string|element)"};class qt extends B{constructor(t,e){super(t),this._scrollElement="BODY"===this._element.tagName?window:this._element,this._config=this._getConfig(e),this._selector=`${this._config.target} .nav-link, ${this._config.target} .list-group-item, ${this._config.target} .dropdown-item`,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,H.on(this._scrollElement,"scroll.bs.scrollspy",(()=>this._process())),this.refresh(),this._process()}static get Default(){return Bt}static get NAME(){return"scrollspy"}refresh(){const t=this._scrollElement===this._scrollElement.window?"offset":"position",s="auto"===this._config.method?t:this._config.method,i="position"===s?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),e.find(this._selector).map((t=>{const o=n(t),r=o?e.findOne(o):null;if(r){const t=r.getBoundingClientRect();if(t.width||t.height)return[U[s](r).top+i,o]}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(){H.off(this._scrollElement,".bs.scrollspy"),super.dispose()}_getConfig(t){if("string"!=typeof(t={...Bt,...U.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}}).target&&a(t.target)){let{id:e}=t.target;e||(e=s("scrollspy"),t.target.id=e),t.target=`#${e}`}return c("scrollspy",t,Wt),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(),s=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=s){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 s=this._selector.split(",").map((e=>`${e}[data-bs-target="${t}"],${e}[href="${t}"]`)),i=e.findOne(s.join(","));i.classList.contains("dropdown-item")?(e.findOne(".dropdown-toggle",i.closest(".dropdown")).classList.add("active"),i.classList.add("active")):(i.classList.add("active"),e.parents(i,".nav, .list-group").forEach((t=>{e.prev(t,".nav-link, .list-group-item").forEach((t=>t.classList.add("active"))),e.prev(t,".nav-item").forEach((t=>{e.children(t,".nav-link").forEach((t=>t.classList.add("active")))}))}))),H.trigger(this._scrollElement,"activate.bs.scrollspy",{relatedTarget:t})}_clear(){e.find(this._selector).filter((t=>t.classList.contains("active"))).forEach((t=>t.classList.remove("active")))}static jQueryInterface(t){return this.each((function(){const e=qt.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}H.on(window,"load.bs.scrollspy.data-api",(()=>{e.find('[data-bs-spy="scroll"]').forEach((t=>new qt(t)))})),b(qt);class zt extends B{static get NAME(){return"tab"}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains("active"))return;let t;const s=o(this._element),i=this._element.closest(".nav, .list-group");if(i){const s="UL"===i.nodeName||"OL"===i.nodeName?":scope > li > .active":".active";t=e.find(s,i),t=t[t.length-1]}const n=t?H.trigger(t,"hide.bs.tab",{relatedTarget:this._element}):null;if(H.trigger(this._element,"show.bs.tab",{relatedTarget:t}).defaultPrevented||null!==n&&n.defaultPrevented)return;this._activate(this._element,i);const r=()=>{H.trigger(t,"hidden.bs.tab",{relatedTarget:this._element}),H.trigger(this._element,"shown.bs.tab",{relatedTarget:t})};s?this._activate(s,s.parentNode,r):r()}_activate(t,s,i){const n=(!s||"UL"!==s.nodeName&&"OL"!==s.nodeName?e.children(s,".active"):e.find(":scope > li > .active",s))[0],o=i&&n&&n.classList.contains("fade"),r=()=>this._transitionComplete(t,n,i);n&&o?(n.classList.remove("show"),this._queueCallback(r,t,!0)):r()}_transitionComplete(t,s,i){if(s){s.classList.remove("active");const t=e.findOne(":scope > .dropdown-menu .active",s.parentNode);t&&t.classList.remove("active"),"tab"===s.getAttribute("role")&&s.setAttribute("aria-selected",!1)}t.classList.add("active"),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),m(t),t.classList.contains("fade")&&t.classList.add("show");let n=t.parentNode;if(n&&"LI"===n.nodeName&&(n=n.parentNode),n&&n.classList.contains("dropdown-menu")){const s=t.closest(".dropdown");s&&e.find(".dropdown-toggle",s).forEach((t=>t.classList.add("active"))),t.setAttribute("aria-expanded",!0)}i&&i()}static jQueryInterface(t){return this.each((function(){const e=zt.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}H.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(),d(this)||zt.getOrCreateInstance(this).show()})),b(zt);const Ft={animation:"boolean",autohide:"boolean",delay:"number"},Ut={animation:!0,autohide:!0,delay:5e3};class Kt 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 Ft}static get Default(){return Ut}static get NAME(){return"toast"}show(){H.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove("hide"),m(this._element),this._element.classList.add("showing"),this._queueCallback((()=>{this._element.classList.remove("showing"),this._element.classList.add("show"),H.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()}),this._element,this._config.animation))}hide(){this._element.classList.contains("show")&&(H.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.remove("show"),this._queueCallback((()=>{this._element.classList.add("hide"),H.trigger(this._element,"hidden.bs.toast")}),this._element,this._config.animation)))}dispose(){this._clearTimeout(),this._element.classList.contains("show")&&this._element.classList.remove("show"),super.dispose()}_getConfig(t){return t={...Ut,...U.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}},c("toast",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 s=t.relatedTarget;this._element===s||this._element.contains(s)||this._maybeScheduleHide()}_setListeners(){H.on(this._element,"click.dismiss.bs.toast",'[data-bs-dismiss="toast"]',(()=>this.hide())),H.on(this._element,"mouseover.bs.toast",(t=>this._onInteraction(t,!0))),H.on(this._element,"mouseout.bs.toast",(t=>this._onInteraction(t,!1))),H.on(this._element,"focusin.bs.toast",(t=>this._onInteraction(t,!0))),H.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=Kt.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}b(Kt);export{W as Alert,q as Button,J as Carousel,st as Collapse,ut as Dropdown,vt as Modal,wt as Offcanvas,Rt as Popover,qt as ScrollSpy,zt as Tab,Kt as Toast,Mt as Tooltip}; +//# sourceMappingURL=oe-bcl-default.esm.min.js.map diff --git a/assets/js/oe-bcl-default.esm.min.js.map b/assets/js/oe-bcl-default.esm.min.js.map new file mode 100644 index 00000000..cd6edf42 --- /dev/null +++ b/assets/js/oe-bcl-default.esm.min.js.map @@ -0,0 +1 @@ +{"version":3,"file":"oe-bcl-default.esm.min.js","sources":["../../../../bootstrap/js/src/dom/selector-engine.js","../../../../bootstrap/js/src/util/index.js","../../../../bootstrap/js/src/dom/event-handler.js","../../../../bootstrap/js/src/dom/data.js","../../../../bootstrap/js/src/base-component.js","../../../../bootstrap/js/src/alert.js","../../../../bootstrap/js/src/button.js","../../../../bootstrap/js/src/dom/manipulator.js","../../../../bootstrap/js/src/carousel.js","../../../../bootstrap/js/src/collapse.js","../../../../bootstrap/js/src/dropdown.js","../../../../bootstrap/js/src/util/scrollbar.js","../../../../bootstrap/js/src/util/backdrop.js","../../../../bootstrap/js/src/modal.js","../../../../bootstrap/js/src/offcanvas.js","../../../../bootstrap/js/src/util/sanitizer.js","../../../../bootstrap/js/src/tooltip.js","../../../../bootstrap/js/src/popover.js","../../../../bootstrap/js/src/scrollspy.js","../../../../bootstrap/js/src/tab.js","../../../../bootstrap/js/src/toast.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NODE_TEXT = 3\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children)\n .filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n\n let ancestor = element.parentNode\n\n while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {\n if (ancestor.matches(selector)) {\n parents.push(ancestor)\n }\n\n ancestor = ancestor.parentNode\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n }\n}\n\nexport default SelectorEngine\n","import SelectorEngine from '../dom/selector-engine'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = obj => {\n if (obj === null || obj === undefined) {\n return `${obj}`\n }\n\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return SelectorEngine.findOne(obj)\n }\n\n return null\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n return getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\nconst reflow = element => element.offsetHeight\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n DOMContentLoadedCallbacks.forEach(callback => callback())\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element depending on the direction and if cycle is allowed\n if (index === -1) {\n return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]\n }\n\n const listLength = list.length\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n getNextActiveElement,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute,\n executeAfterTransition\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\nconst customEventsRegex = /^(mouseenter|mouseleave)/i\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * ------------------------------------------------------------------------\n * Private methods\n * ------------------------------------------------------------------------\n */\n\nfunction getUidEvent(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getEvent(element) {\n const uid = getUidEvent(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n event.delegateTarget = element\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (let i = domElements.length; i--;) {\n if (domElements[i] === target) {\n event.delegateTarget = target\n\n if (handler.oneOff) {\n // eslint-disable-next-line unicorn/consistent-destructuring\n EventHandler.off(element, event.type, selector, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n\n // To please ESLint\n return null\n }\n}\n\nfunction findHandler(events, handler, delegationSelector = null) {\n const uidEventList = Object.keys(events)\n\n for (let i = 0, len = uidEventList.length; i < len; i++) {\n const event = events[uidEventList[i]]\n\n if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {\n return event\n }\n }\n\n return null\n}\n\nfunction normalizeParams(originalTypeEvent, handler, delegationFn) {\n const delegation = typeof handler === 'string'\n const originalHandler = delegation ? delegationFn : handler\n\n let typeEvent = getTypeEvent(originalTypeEvent)\n const isNative = nativeEvents.has(typeEvent)\n\n if (!isNative) {\n typeEvent = originalTypeEvent\n }\n\n return [delegation, originalHandler, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n if (!handler) {\n handler = delegationFn\n delegationFn = null\n }\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (customEventsRegex.test(originalTypeEvent)) {\n const wrapFn = fn => {\n return function (event) {\n if (!event.relatedTarget || (event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget))) {\n return fn.call(this, event)\n }\n }\n }\n\n if (delegationFn) {\n delegationFn = wrapFn(delegationFn)\n } else {\n handler = wrapFn(handler)\n }\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const events = getEvent(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null)\n\n if (previousFn) {\n previousFn.oneOff = previousFn.oneOff && oneOff\n\n return\n }\n\n const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = delegation ?\n bootstrapDelegationHandler(element, handler, delegationFn) :\n bootstrapHandler(element, handler)\n\n fn.delegationSelector = delegation ? handler : null\n fn.originalHandler = originalHandler\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, delegation)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n Object.keys(storeElementEvent).forEach(handlerKey => {\n if (handlerKey.includes(namespace)) {\n const event = storeElementEvent[handlerKey]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n}\n\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '')\n return customEvents[event] || event\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, false)\n },\n\n one(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFn) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getEvent(element)\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof originalHandler !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!events || !events[typeEvent]) {\n return\n }\n\n removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null)\n return\n }\n\n if (isNamespace) {\n Object.keys(events).forEach(elementEvent => {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n })\n }\n\n const storeElementEvent = events[typeEvent] || {}\n Object.keys(storeElementEvent).forEach(keyHandlers => {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n const event = storeElementEvent[keyHandlers]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = getTypeEvent(event)\n const inNamespace = event !== typeEvent\n const isNative = nativeEvents.has(typeEvent)\n\n let jQueryEvent\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n let evt = null\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n if (isNative) {\n evt = document.createEvent('HTMLEvents')\n evt.initEvent(typeEvent, bubbles, true)\n } else {\n evt = new CustomEvent(event, {\n bubbles,\n cancelable: true\n })\n }\n\n // merge custom information in our event\n if (typeof args !== 'undefined') {\n Object.keys(args).forEach(key => {\n Object.defineProperty(evt, key, {\n get() {\n return args[key]\n }\n })\n })\n }\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst elementMap = new Map()\n\nexport default {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map())\n }\n\n const instanceMap = elementMap.get(element)\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`)\n return\n }\n\n instanceMap.set(key, instance)\n },\n\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null\n }\n\n return null\n },\n\n remove(element, key) {\n if (!elementMap.has(element)) {\n return\n }\n\n const instanceMap = elementMap.get(element)\n\n instanceMap.delete(key)\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element)\n }\n }\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\nimport {\n executeAfterTransition,\n getElement\n} from './util/index'\nimport EventHandler from './dom/event-handler'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst VERSION = '5.0.2'\n\nclass BaseComponent {\n constructor(element) {\n element = getElement(element)\n\n if (!element) {\n return\n }\n\n this._element = element\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n Object.getOwnPropertyNames(this).forEach(propertyName => {\n this[propertyName] = null\n })\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated)\n }\n\n /** Static */\n\n static getInstance(element) {\n return Data.get(element, this.DATA_KEY)\n }\n\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DISMISS = '[data-bs-dismiss=\"alert\"]'\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_ALERT = 'alert'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n close(element) {\n const rootElement = element ? this._getRootElement(element) : this._element\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent === null || customEvent.defaultPrevented) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n // Private\n\n _getRootElement(element) {\n return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`)\n }\n\n _triggerCloseEvent(element) {\n return EventHandler.trigger(element, EVENT_CLOSE)\n }\n\n _removeElement(element) {\n element.classList.remove(CLASS_NAME_SHOW)\n\n const isAnimated = element.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(() => this._destroyElement(element), element, isAnimated)\n }\n\n _destroyElement(element) {\n element.remove()\n\n EventHandler.trigger(element, EVENT_CLOSED)\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this)\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert.handleDismiss(new Alert()))\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Alert to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this)\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n const data = Button.getOrCreateInstance(button)\n\n data.toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Button to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(val) {\n if (val === 'true') {\n return true\n }\n\n if (val === 'false') {\n return false\n }\n\n if (val === Number(val).toString()) {\n return Number(val)\n }\n\n if (val === '' || val === 'null') {\n return null\n }\n\n return val\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n\n Object.keys(element.dataset)\n .filter(key => key.startsWith('bs'))\n .forEach(key => {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n })\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n },\n\n offset(element) {\n const rect = element.getBoundingClientRect()\n\n return {\n top: rect.top + document.body.scrollTop,\n left: rect.left + document.body.scrollLeft\n }\n },\n\n position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n }\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n getNextActiveElement,\n reflow,\n triggerTransitionEnd,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n slide: false,\n pause: 'hover',\n wrap: true,\n touch: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)',\n keyboard: 'boolean',\n slide: '(boolean|string)',\n pause: '(string|boolean)',\n wrap: 'boolean',\n touch: 'boolean'\n}\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY]: DIRECTION_LEFT\n}\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_INDICATOR = '[data-bs-target]'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n next() {\n this._slide(ORDER_NEXT)\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n this._slide(ORDER_PREV)\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) {\n triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config && this._config.interval && !this._isPaused) {\n this._updateInterval()\n\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const order = index > activeIndex ?\n ORDER_NEXT :\n ORDER_PREV\n\n this._slide(order, this._items[index])\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n this.touchDeltaX = 0\n\n if (!direction) {\n return\n }\n\n this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT)\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event))\n EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event))\n }\n\n if (this._config.touch && this._touchSupported) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n const start = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchStartX = event.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.touches[0].clientX\n }\n }\n\n const move = event => {\n // ensure swiping with one touch and not pinching\n this.touchDeltaX = event.touches && event.touches.length > 1 ?\n 0 :\n event.touches[0].clientX - this.touchStartX\n }\n\n const end = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {\n EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault())\n })\n\n if (this._pointerEvent) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n const direction = KEY_TO_DIRECTION[event.key]\n if (direction) {\n event.preventDefault()\n this._slide(direction)\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode ?\n SelectorEngine.find(SELECTOR_ITEM, element.parentNode) :\n []\n\n return this._items.indexOf(element)\n }\n\n _getItemByOrder(order, activeElement) {\n const isNext = order === ORDER_NEXT\n return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap)\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element))\n\n return EventHandler.trigger(this._element, EVENT_SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement)\n\n for (let i = 0; i < indicators.length; i++) {\n if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {\n indicators[i].classList.add(CLASS_NAME_ACTIVE)\n indicators[i].setAttribute('aria-current', 'true')\n break\n }\n }\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n if (elementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = elementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n }\n\n _slide(directionOrOrder, element) {\n const order = this._directionToOrder(directionOrOrder)\n const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || this._getItemByOrder(order, activeElement)\n\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n const isNext = order === ORDER_NEXT\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n const eventDirectionName = this._orderToDirection(order)\n\n if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {\n this._isSliding = false\n return\n }\n\n if (this._isSliding) {\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n this._activeElement = nextElement\n\n const triggerSlidEvent = () => {\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }\n\n if (this._element.classList.contains(CLASS_NAME_SLIDE)) {\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n setTimeout(triggerSlidEvent, 0)\n }\n\n this._queueCallback(completeCallBack, activeElement, true)\n } else {\n activeElement.classList.remove(CLASS_NAME_ACTIVE)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n this._isSliding = false\n triggerSlidEvent()\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _directionToOrder(direction) {\n if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) {\n return direction\n }\n\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (![ORDER_NEXT, ORDER_PREV].includes(order)) {\n return order\n }\n\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n\n static carouselInterface(element, config) {\n const data = Carousel.getOrCreateInstance(element, config)\n\n let { _config } = data\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Carousel.carouselInterface(this, config)\n })\n }\n\n static dataApiClickHandler(event) {\n const target = getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel.carouselInterface(target, config)\n\n if (slideIndex) {\n Carousel.getInstance(target).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler)\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (let i = 0, len = carousels.length; i < len; i++) {\n Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i]))\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Carousel to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElement,\n getSelectorFromElement,\n getElementFromSelector,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n toggle: true,\n parent: ''\n}\n\nconst DefaultType = {\n toggle: 'boolean',\n parent: '(string|element)'\n}\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.show, .collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._isTransitioning = false\n this._config = this._getConfig(config)\n this._triggerArray = SelectorEngine.find(\n `${SELECTOR_DATA_TOGGLE}[href=\"#${this._element.id}\"],` +\n `${SELECTOR_DATA_TOGGLE}[data-bs-target=\"#${this._element.id}\"]`\n )\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElem => foundElem === this._element)\n\n if (selector !== null && filterElement.length) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent)\n .filter(elem => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-bs-parent') === this._config.parent\n }\n\n return elem.classList.contains(CLASS_NAME_COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n const container = SelectorEngine.findOne(this._selector)\n if (actives) {\n const tempActiveData = actives.find(elem => container !== elem)\n activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null\n\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n if (actives) {\n actives.forEach(elemActive => {\n if (container !== elemActive) {\n Collapse.collapseInterface(elemActive, 'hide')\n }\n\n if (!activesData) {\n Data.set(elemActive, DATA_KEY, null)\n }\n })\n }\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n this._triggerArray.forEach(element => {\n element.classList.remove(CLASS_NAME_COLLAPSED)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n\n this._queueCallback(complete, this._element, true)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const elem = getElementFromSelector(trigger)\n\n if (elem && !elem.classList.contains(CLASS_NAME_SHOW)) {\n trigger.classList.add(CLASS_NAME_COLLAPSED)\n trigger.setAttribute('aria-expanded', false)\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n\n this._queueCallback(complete, this._element, true)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT\n }\n\n _getParent() {\n let { parent } = this._config\n\n parent = getElement(parent)\n\n const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent=\"${parent}\"]`\n\n SelectorEngine.find(selector, parent)\n .forEach(element => {\n const selected = getElementFromSelector(element)\n\n this._addAriaAndCollapsedClass(\n selected,\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (!element || !triggerArray.length) {\n return\n }\n\n const isOpen = element.classList.contains(CLASS_NAME_SHOW)\n\n triggerArray.forEach(elem => {\n if (isOpen) {\n elem.classList.remove(CLASS_NAME_COLLAPSED)\n } else {\n elem.classList.add(CLASS_NAME_COLLAPSED)\n }\n\n elem.setAttribute('aria-expanded', isOpen)\n })\n }\n\n // Static\n\n static collapseInterface(element, config) {\n let data = Collapse.getInstance(element)\n const _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Collapse.collapseInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n const triggerData = Manipulator.getDataAttributes(this)\n const selector = getSelectorFromElement(this)\n const selectorElements = SelectorEngine.find(selector)\n\n selectorElements.forEach(element => {\n const data = Collapse.getInstance(element)\n let config\n if (data) {\n // update parent attribute\n if (data._parent === null && typeof triggerData.parent === 'string') {\n data._config.parent = triggerData.parent\n data._parent = data._getParent()\n }\n\n config = 'toggle'\n } else {\n config = triggerData\n }\n\n Collapse.collapseInterface(element, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Collapse to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Collapse)\n\nexport default Collapse\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n getElement,\n getElementFromSelector,\n isDisabled,\n isElement,\n isVisible,\n isRTL,\n noop,\n getNextActiveElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst SPACE_KEY = 'Space'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY}`)\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_NAVBAR = 'navbar'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]'\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'\n\nconst Default = {\n offset: [0, 2],\n boundary: 'clippingParents',\n reference: 'toggle',\n display: 'dynamic',\n popperConfig: null,\n autoClose: true\n}\n\nconst DefaultType = {\n offset: '(array|string|function)',\n boundary: '(string|element)',\n reference: '(string|element|object)',\n display: 'string',\n popperConfig: '(null|object|function)',\n autoClose: '(boolean|string)'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (isDisabled(this._element)) {\n return\n }\n\n const isActive = this._element.classList.contains(CLASS_NAME_SHOW)\n\n if (isActive) {\n this.hide()\n return\n }\n\n this.show()\n }\n\n show() {\n if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this._element)\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n // Totally disable Popper for Dropdowns in Navbar\n if (this._inNavbar) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'none')\n } else {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference)\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false)\n\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n\n if (isDisplayStatic) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static')\n }\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n !parent.closest(SELECTOR_NAVBAR_NAV)) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.on(elem, 'mouseover', noop))\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.toggle(CLASS_NAME_SHOW)\n this._element.classList.toggle(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n this._completeHide(relatedTarget)\n }\n\n dispose() {\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK, event => {\n event.preventDefault()\n this.toggle()\n })\n }\n\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.off(elem, 'mouseover', noop))\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.remove(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._element.setAttribute('aria-expanded', 'false')\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _getMenuElement() {\n return SelectorEngine.next(this._element, SELECTOR_MENU)[0]\n }\n\n _getPlacement() {\n const parentDropdown = this._element.parentNode\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display\n if (this._config.display === 'static') {\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _selectMenuItem({ key, target }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible)\n\n if (!items.length) {\n return\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus()\n }\n\n // Static\n\n static dropdownInterface(element, config) {\n const data = Dropdown.getOrCreateInstance(element, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Dropdown.dropdownInterface(this, config)\n })\n }\n\n static clearMenus(event) {\n if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {\n return\n }\n\n const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const context = Dropdown.getInstance(toggles[i])\n if (!context || context._config.autoClose === false) {\n continue\n }\n\n if (!context._element.classList.contains(CLASS_NAME_SHOW)) {\n continue\n }\n\n const relatedTarget = {\n relatedTarget: context._element\n }\n\n if (event) {\n const composedPath = event.composedPath()\n const isMenuTarget = composedPath.includes(context._menu)\n if (\n composedPath.includes(context._element) ||\n (context._config.autoClose === 'inside' && !isMenuTarget) ||\n (context._config.autoClose === 'outside' && isMenuTarget)\n ) {\n continue\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue\n }\n\n if (event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n }\n\n context._completeHide(relatedTarget)\n }\n }\n\n static getParentFromElement(element) {\n return getElementFromSelector(element) || element.parentNode\n }\n\n static dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName) ?\n event.key === SPACE_KEY || (event.key !== ESCAPE_KEY &&\n ((event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY) ||\n event.target.closest(SELECTOR_MENU))) :\n !REGEXP_KEYDOWN.test(event.key)) {\n return\n }\n\n const isActive = this.classList.contains(CLASS_NAME_SHOW)\n\n if (!isActive && event.key === ESCAPE_KEY) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (isDisabled(this)) {\n return\n }\n\n const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n\n if (event.key === ESCAPE_KEY) {\n getToggleButton().focus()\n Dropdown.clearMenus()\n return\n }\n\n if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) {\n if (!isActive) {\n getToggleButton().click()\n }\n\n Dropdown.getInstance(getToggleButton())._selectMenuItem(event)\n return\n }\n\n if (!isActive || event.key === SPACE_KEY) {\n Dropdown.clearMenus()\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n Dropdown.dropdownInterface(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Dropdown to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport SelectorEngine from '../dom/selector-engine'\nimport Manipulator from '../dom/manipulator'\nimport { isElement } from './index'\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body\n }\n\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth\n return Math.abs(window.innerWidth - documentWidth)\n }\n\n hide() {\n const width = this.getWidth()\n this._disableOverFlow()\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width)\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width)\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width)\n }\n\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow')\n this._element.style.overflow = 'hidden'\n }\n\n _setElementAttributes(selector, styleProp, callback) {\n const scrollbarWidth = this.getWidth()\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return\n }\n\n this._saveInitialAttribute(element, styleProp)\n const calculatedValue = window.getComputedStyle(element)[styleProp]\n element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n reset() {\n this._resetElementAttributes(this._element, 'overflow')\n this._resetElementAttributes(this._element, 'paddingRight')\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight')\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight')\n }\n\n _saveInitialAttribute(element, styleProp) {\n const actualValue = element.style[styleProp]\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProp, actualValue)\n }\n }\n\n _resetElementAttributes(selector, styleProp) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProp)\n if (typeof value === 'undefined') {\n element.style.removeProperty(styleProp)\n } else {\n Manipulator.removeDataAttribute(element, styleProp)\n element.style[styleProp] = value\n }\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector)\n } else {\n SelectorEngine.find(selector, this._element).forEach(callBack)\n }\n }\n\n isOverflowing() {\n return this.getWidth() > 0\n }\n}\n\nexport default ScrollBarHelper\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { execute, executeAfterTransition, getElement, reflow, typeCheckConfig } from './index'\n\nconst Default = {\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n isAnimated: false,\n rootElement: 'body', // give the choice to place backdrop under different elements\n clickCallback: null\n}\n\nconst DefaultType = {\n isVisible: 'boolean',\n isAnimated: 'boolean',\n rootElement: '(element|string)',\n clickCallback: '(function|null)'\n}\nconst NAME = 'backdrop'\nconst CLASS_NAME_BACKDROP = 'modal-backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nclass Backdrop {\n constructor(config) {\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\n }\n\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n if (this._config.isAnimated) {\n reflow(this._getElement())\n }\n\n this._getElement().classList.add(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n execute(callback)\n })\n }\n\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._getElement().classList.remove(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n this.dispose()\n execute(callback)\n })\n }\n\n // Private\n\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div')\n backdrop.className = CLASS_NAME_BACKDROP\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE)\n }\n\n this._element = backdrop\n }\n\n return this._element\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' ? config : {})\n }\n\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement)\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n this._config.rootElement.appendChild(this._getElement())\n\n EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n dispose() {\n if (!this._isAppended) {\n return\n }\n\n EventHandler.off(this._element, EVENT_MOUSEDOWN)\n\n this._element.remove()\n this._isAppended = false\n }\n\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated)\n }\n}\n\nexport default Backdrop\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport ScrollBarHelper from './util/scrollbar'\nimport BaseComponent from './base-component'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean'\n}\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"modal\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element)\n this._backdrop = this._initializeBackDrop()\n this._isShown = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollBar = new ScrollBarHelper()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n\n if (this._isAnimated()) {\n this._isTransitioning = true\n }\n\n this._scrollBar.hide()\n\n document.body.classList.add(CLASS_NAME_OPEN)\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, event => this.hide(event))\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event && ['A', 'AREA'].includes(event.target.tagName)) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n const isAnimated = this._isAnimated()\n\n if (isAnimated) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.off(document, EVENT_FOCUSIN)\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS)\n\n this._queueCallback(() => this._hideModal(), this._element, isAnimated)\n }\n\n dispose() {\n [window, this._dialog]\n .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))\n\n this._backdrop.dispose()\n super.dispose()\n\n /**\n * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `EVENT_CLICK_DATA_API` event that should remain\n */\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value\n isAnimated: this._isAnimated()\n })\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const isAnimated = this._isAnimated()\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n if (isAnimated) {\n reflow(this._element)\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, isAnimated)\n }\n\n _enforceFocus() {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n this._element !== event.target &&\n !this._element.contains(event.target)) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault()\n this.hide()\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition()\n }\n })\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog())\n } else {\n EventHandler.off(window, EVENT_RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n this._scrollBar.reset()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _showBackdrop(callback) {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, event => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n\n if (event.target !== event.currentTarget) {\n return\n }\n\n if (this._config.backdrop === true) {\n this.hide()\n } else if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n }\n })\n\n this._backdrop.show(callback)\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE)\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const { classList, scrollHeight, style } = this._element\n const isModalOverflowing = scrollHeight > document.documentElement.clientHeight\n\n // return if the following background transition hasn't yet completed\n if ((!isModalOverflowing && style.overflowY === 'hidden') || classList.contains(CLASS_NAME_STATIC)) {\n return\n }\n\n if (!isModalOverflowing) {\n style.overflowY = 'hidden'\n }\n\n classList.add(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n classList.remove(CLASS_NAME_STATIC)\n if (!isModalOverflowing) {\n this._queueCallback(() => {\n style.overflowY = ''\n }, this._dialog)\n }\n }, this._dialog)\n\n this._element.focus()\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const scrollbarWidth = this._scrollBar.getWidth()\n const isBodyOverflowing = scrollbarWidth > 0\n\n if ((!isBodyOverflowing && isModalOverflowing && !isRTL()) || (isBodyOverflowing && !isModalOverflowing && isRTL())) {\n this._element.style.paddingLeft = `${scrollbarWidth}px`\n }\n\n if ((isBodyOverflowing && !isModalOverflowing && !isRTL()) || (!isBodyOverflowing && isModalOverflowing && isRTL())) {\n this._element.style.paddingRight = `${scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n const data = Modal.getOrCreateInstance(target)\n\n data.toggle(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible,\n typeCheckConfig\n} from './util/index'\nimport ScrollBarHelper from './util/scrollbar'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Manipulator from './dom/manipulator'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: 'boolean',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\nconst CLASS_NAME_SHOW = 'show'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"offcanvas\"]'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._addEventListeners()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._element.style.visibility = 'visible'\n\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n this._enforceFocusOnElement(this._element)\n }\n\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const completeCallBack = () => {\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n EventHandler.off(document, EVENT_FOCUSIN)\n this._element.blur()\n this._isShown = false\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._element.style.visibility = 'hidden'\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n super.dispose()\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: this._config.backdrop,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _enforceFocusOnElement(element) {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n element !== event.target &&\n !element.contains(event.target)) {\n element.focus()\n }\n })\n element.focus()\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n this.hide()\n }\n })\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (allReadyOpen && allReadyOpen !== target) {\n Offcanvas.getInstance(allReadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () =>\n SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())\n)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attr, allowedAttributeList) => {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attrName)) {\n if (uriAttrs.has(attrName)) {\n return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attrName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const allowlistKeys = Object.keys(allowList)\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (!allowlistKeys.includes(elName)) {\n el.remove()\n\n continue\n }\n\n const attributeList = [].concat(...el.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || [])\n\n attributeList.forEach(attr => {\n if (!allowedAttribute(attr, allowedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport {\n DefaultAllowlist,\n sanitizeHtml\n} from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.appendChild(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n this.tip = element.children[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle())\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.appendChild(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n let title = this._element.getAttribute('data-bs-original-title')\n\n if (!title) {\n title = typeof this._config.title === 'function' ?\n this._config.title.call(this._element) :\n this._config.title\n }\n\n return title\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || Data.get(event.delegateTarget, dataKey)\n\n if (!context) {\n context = new this.constructor(event.delegateTarget, this._getDelegateConfig())\n Data.set(event.delegateTarget, dataKey, context)\n }\n\n return context\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this._config) {\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport SelectorEngine from './dom/selector-engine'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement: 'right',\n offset: [0, 8],\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(string|element|function)'\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n this.tip = super.getTipElement()\n\n if (!this.getTitle()) {\n SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove()\n }\n\n if (!this._getContent()) {\n SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove()\n }\n\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n\n // we use append for html objects to maintain js events\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this._element)\n }\n\n this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n // Private\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getContent() {\n return this._element.getAttribute('data-bs-content') || this._config.content\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Popover to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getSelectorFromElement,\n getUID,\n isElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n offset: 10,\n method: 'auto',\n target: ''\n}\n\nconst DefaultType = {\n offset: 'number',\n method: 'string',\n target: '(string|element)'\n}\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._scrollElement = this._element.tagName === 'BODY' ? window : this._element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process())\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window ?\n METHOD_OFFSET :\n METHOD_POSITION\n\n const offsetMethod = this._config.method === 'auto' ?\n autoMethod :\n this._config.method\n\n const offsetBase = offsetMethod === METHOD_POSITION ?\n this._getScrollTop() :\n 0\n\n this._offsets = []\n this._targets = []\n this._scrollHeight = this._getScrollHeight()\n\n const targets = SelectorEngine.find(this._selector)\n\n targets.map(element => {\n const targetSelector = getSelectorFromElement(element)\n const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n return [\n Manipulator[offsetMethod](target).top + offsetBase,\n targetSelector\n ]\n }\n }\n\n return null\n })\n .filter(item => item)\n .sort((a, b) => a[0] - b[0])\n .forEach(item => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n EventHandler.off(this._scrollElement, EVENT_KEY)\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (typeof config.target !== 'string' && isElement(config.target)) {\n let { id } = config.target\n if (!id) {\n id = getUID(NAME)\n config.target.id = id\n }\n\n config.target = `#${id}`\n }\n\n typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window ?\n this._scrollElement.pageYOffset :\n this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window ?\n window.innerHeight :\n this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n for (let i = this._offsets.length; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = this._selector.split(',')\n .map(selector => `${selector}[data-bs-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const link = SelectorEngine.findOne(queries.join(','))\n\n if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, link.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n\n link.classList.add(CLASS_NAME_ACTIVE)\n } else {\n // Set triggered link as active\n link.classList.add(CLASS_NAME_ACTIVE)\n\n SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP)\n .forEach(listGroup => {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n\n // Handle special case when .nav-link is inside .nav-item\n SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS)\n .forEach(navItem => {\n SelectorEngine.children(navItem, SELECTOR_NAV_LINKS)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n })\n })\n }\n\n EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, {\n relatedTarget: target\n })\n }\n\n _clear() {\n SelectorEngine.find(this._selector)\n .filter(node => node.classList.contains(CLASS_NAME_ACTIVE))\n .forEach(node => node.classList.remove(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n SelectorEngine.find(SELECTOR_DATA_SPY)\n .forEach(spy => new ScrollSpy(spy))\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .ScrollSpy to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n reflow\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_UL = ':scope > li > .active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tab extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n if ((this._element.parentNode &&\n this._element.parentNode.nodeType === Node.ELEMENT_NODE &&\n this._element.classList.contains(CLASS_NAME_ACTIVE))) {\n return\n }\n\n let previous\n const target = getElementFromSelector(this._element)\n const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP)\n\n if (listElement) {\n const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE\n previous = SelectorEngine.find(itemSelector, listElement)\n previous = previous[previous.length - 1]\n }\n\n const hideEvent = previous ?\n EventHandler.trigger(previous, EVENT_HIDE, {\n relatedTarget: this._element\n }) :\n null\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget: previous\n })\n\n if (showEvent.defaultPrevented || (hideEvent !== null && hideEvent.defaultPrevented)) {\n return\n }\n\n this._activate(this._element, listElement)\n\n const complete = () => {\n EventHandler.trigger(previous, EVENT_HIDDEN, {\n relatedTarget: this._element\n })\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget: previous\n })\n }\n\n if (target) {\n this._activate(target, target.parentNode, complete)\n } else {\n complete()\n }\n }\n\n // Private\n\n _activate(element, container, callback) {\n const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ?\n SelectorEngine.find(SELECTOR_ACTIVE_UL, container) :\n SelectorEngine.children(container, SELECTOR_ACTIVE)\n\n const active = activeElements[0]\n const isTransitioning = callback && (active && active.classList.contains(CLASS_NAME_FADE))\n\n const complete = () => this._transitionComplete(element, active, callback)\n\n if (active && isTransitioning) {\n active.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, element, true)\n } else {\n complete()\n }\n }\n\n _transitionComplete(element, active, callback) {\n if (active) {\n active.classList.remove(CLASS_NAME_ACTIVE)\n\n const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode)\n\n if (dropdownChild) {\n dropdownChild.classList.remove(CLASS_NAME_ACTIVE)\n }\n\n if (active.getAttribute('role') === 'tab') {\n active.setAttribute('aria-selected', false)\n }\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n if (element.getAttribute('role') === 'tab') {\n element.setAttribute('aria-selected', true)\n }\n\n reflow(element)\n\n if (element.classList.contains(CLASS_NAME_FADE)) {\n element.classList.add(CLASS_NAME_SHOW)\n }\n\n let parent = element.parentNode\n if (parent && parent.nodeName === 'LI') {\n parent = parent.parentNode\n }\n\n if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) {\n const dropdownElement = element.closest(SELECTOR_DROPDOWN)\n\n if (dropdownElement) {\n SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement)\n .forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE))\n }\n\n element.setAttribute('aria-expanded', true)\n }\n\n if (callback) {\n callback()\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tab.getOrCreateInstance(this)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const data = Tab.getOrCreateInstance(this)\n data.show()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tab to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'bs.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`\nconst EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_FOCUSOUT = `focusout${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"toast\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._timeout = null\n this._hasMouseInteraction = false\n this._hasKeyboardInteraction = false\n this._setListeners()\n }\n\n // Getters\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n this._element.classList.add(CLASS_NAME_SHOW)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n this._maybeScheduleHide()\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE)\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n hide() {\n if (!this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n return config\n }\n\n _maybeScheduleHide() {\n if (!this._config.autohide) {\n return\n }\n\n if (this._hasMouseInteraction || this._hasKeyboardInteraction) {\n return\n }\n\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n\n _onInteraction(event, isInteracting) {\n switch (event.type) {\n case 'mouseover':\n case 'mouseout':\n this._hasMouseInteraction = isInteracting\n break\n case 'focusin':\n case 'focusout':\n this._hasKeyboardInteraction = isInteracting\n break\n default:\n break\n }\n\n if (isInteracting) {\n this._clearTimeout()\n return\n }\n\n const nextElement = event.relatedTarget\n if (this._element === nextElement || this._element.contains(nextElement)) {\n return\n }\n\n this._maybeScheduleHide()\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false))\n EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false))\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Toast.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Toast to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Toast)\n\nexport default Toast\n"],"names":["SelectorEngine","find","selector","element","document","documentElement","concat","Element","prototype","querySelectorAll","call","findOne","querySelector","children","filter","child","matches","parents","ancestor","parentNode","nodeType","Node","ELEMENT_NODE","push","prev","previous","previousElementSibling","next","nextElementSibling","getUID","prefix","Math","floor","random","getElementById","getSelector","getAttribute","hrefAttr","includes","startsWith","split","trim","getSelectorFromElement","getElementFromSelector","triggerTransitionEnd","dispatchEvent","Event","isElement","obj","jquery","getElement","length","typeCheckConfig","componentName","config","configTypes","Object","keys","forEach","property","expectedTypes","value","valueType","toString","match","toLowerCase","RegExp","test","TypeError","toUpperCase","isVisible","getClientRects","getComputedStyle","getPropertyValue","isDisabled","classList","contains","disabled","hasAttribute","findShadowRoot","attachShadow","getRootNode","root","ShadowRoot","noop","reflow","offsetHeight","getjQuery","jQuery","window","body","DOMContentLoadedCallbacks","isRTL","dir","defineJQueryPlugin","plugin","callback","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","readyState","addEventListener","execute","executeAfterTransition","transitionElement","waitForTransition","emulatedDuration","transitionDuration","transitionDelay","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","getTransitionDurationFromElement","called","handler","target","removeEventListener","setTimeout","getNextActiveElement","list","activeElement","shouldGetNext","isCycleAllowed","index","indexOf","listLength","max","min","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","customEventsRegex","nativeEvents","Set","getUidEvent","uid","getEvent","findHandler","events","delegationSelector","uidEventList","i","len","event","originalHandler","normalizeParams","originalTypeEvent","delegationFn","delegation","typeEvent","getTypeEvent","has","addHandler","oneOff","wrapFn","relatedTarget","delegateTarget","this","handlers","previousFn","replace","domElements","EventHandler","off","type","apply","bootstrapDelegationHandler","bootstrapHandler","removeHandler","Boolean","on","one","inNamespace","isNamespace","elementEvent","namespace","storeElementEvent","handlerKey","removeNamespacedHandlers","slice","keyHandlers","trigger","args","isNative","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","evt","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","createEvent","initEvent","CustomEvent","cancelable","key","defineProperty","get","preventDefault","elementMap","Map","set","instance","instanceMap","size","console","error","Array","from","remove","delete","BaseComponent","constructor","_element","Data","DATA_KEY","dispose","EVENT_KEY","getOwnPropertyNames","propertyName","_queueCallback","isAnimated","getInstance","Error","Alert","close","rootElement","_getRootElement","customEvent","_triggerCloseEvent","_removeElement","closest","_destroyElement","each","data","getOrCreateInstance","alertInstance","handleDismiss","Button","toggle","setAttribute","normalizeData","val","normalizeDataKey","chr","button","Manipulator","setDataAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","dataset","pureKey","charAt","getDataAttribute","offset","rect","getBoundingClientRect","top","scrollTop","left","scrollLeft","position","offsetTop","offsetLeft","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","KEY_TO_DIRECTION","Carousel","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","PointerEvent","_addEventListeners","_slide","nextWhenVisible","hidden","cycle","clearInterval","_updateInterval","setInterval","visibilityState","bind","to","activeIndex","_getItemIndex","order","_handleSwipe","absDeltax","abs","direction","_keydown","_addTouchEventListeners","start","pointerType","touches","clientX","move","end","clearTimeout","itemImg","e","add","tagName","_getItemByOrder","isNext","_triggerSlideEvent","eventDirectionName","targetIndex","fromIndex","_setActiveIndicatorElement","activeIndicator","indicators","parseInt","elementInterval","defaultInterval","directionOrOrder","_directionToOrder","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","_orderToDirection","triggerSlidEvent","completeCallBack","action","ride","carouselInterface","slideIndex","dataApiClickHandler","carousels","parent","Collapse","_isTransitioning","_triggerArray","id","toggleList","elem","filterElement","foundElem","_selector","_parent","_getParent","_addAriaAndCollapsedClass","hide","show","actives","activesData","container","tempActiveData","elemActive","collapseInterface","dimension","_getDimension","style","setTransitioning","scrollSize","triggerArrayLength","isTransitioning","selected","triggerArray","isOpen","triggerData","REGEXP_KEYDOWN","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","boundary","reference","display","popperConfig","autoClose","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","getParentFromElement","Popper","referenceElement","_getPopperConfig","isDisplayStatic","modifiers","modifier","enabled","createPopper","focus","_completeHide","destroy","update","_getPlacement","parentDropdown","isEnd","_getOffset","map","popperData","defaultBsPopperConfig","placement","options","_selectMenuItem","items","dropdownInterface","toggles","context","composedPath","isMenuTarget","clickEvent","isActive","stopPropagation","getToggleButton","clearMenus","click","dataApiKeydownHandler","ScrollBarHelper","getWidth","documentWidth","clientWidth","innerWidth","width","_disableOverFlow","_setElementAttributes","calculatedValue","_saveInitialAttribute","overflow","styleProp","scrollbarWidth","_applyManipulationCallback","reset","_resetElementAttributes","actualValue","removeProperty","callBack","isOverflowing","clickCallback","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","createElement","className","appendChild","Modal","_dialog","_backdrop","_initializeBackDrop","_isShown","_ignoreBackdropClick","_scrollBar","_isAnimated","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","_hideModal","htmlElement","handleUpdate","modalBody","_enforceFocus","_triggerBackdropTransition","_resetAdjustments","currentTarget","scrollHeight","isModalOverflowing","clientHeight","overflowY","isBodyOverflowing","paddingLeft","paddingRight","showEvent","scroll","Offcanvas","visibility","_enforceFocusOnElement","blur","undefined","allReadyOpen","el","uriAttrs","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeName","nodeValue","regExp","attrRegex","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","createdDocument","DOMParser","parseFromString","allowlistKeys","elements","elName","attributeList","allowedAttributes","innerHTML","BSCLS_PREFIX_REGEX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","html","fallbackPlacements","customClass","sanitize","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","a","area","b","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","_initializeOnDelegatedTarget","_isWithActiveTrigger","_enter","_leave","getTipElement","_hideModalHandler","isWithContent","shadowRoot","isInTheDom","ownerDocument","tipId","setContent","attachment","_getAttachment","_addAttachmentClass","prevHoverState","_cleanTipClass","getTitle","setElementContent","content","textContent","updateAttachment","dataKey","_getDelegateConfig","phase","_handlePopperPlacementChange","onFirstUpdate","eventIn","eventOut","_fixTitle","originalTitleType","dataAttributes","dataAttr","tabClass","token","tClass","state","popper","Popover","_getContent","super","method","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targetSelector","targetBCR","height","item","sort","pageYOffset","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","queries","link","join","listGroup","navItem","node","spy","Tab","listElement","itemSelector","hideEvent","complete","active","_transitionComplete","dropdownChild","dropdownElement","dropdown","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","_onInteraction","isInteracting"],"mappings":"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"} \ No newline at end of file diff --git a/assets/js/oe-bcl-default.umd.js b/assets/js/oe-bcl-default.umd.js new file mode 100644 index 00000000..557a61da --- /dev/null +++ b/assets/js/oe-bcl-default.umd.js @@ -0,0 +1,6914 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.bootstrap = factory()); +}(this, (function () { 'use strict'; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): dom/selector-engine.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + const NODE_TEXT = 3; + const SelectorEngine = { + find(selector, element = document.documentElement) { + return [].concat(...Element.prototype.querySelectorAll.call(element, selector)); + }, + + findOne(selector, element = document.documentElement) { + return Element.prototype.querySelector.call(element, selector); + }, + + children(element, selector) { + return [].concat(...element.children).filter(child => child.matches(selector)); + }, + + parents(element, selector) { + const parents = []; + let ancestor = element.parentNode; + + while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) { + if (ancestor.matches(selector)) { + parents.push(ancestor); + } + + ancestor = ancestor.parentNode; + } + + return parents; + }, + + prev(element, selector) { + let previous = element.previousElementSibling; + + while (previous) { + if (previous.matches(selector)) { + return [previous]; + } + + previous = previous.previousElementSibling; + } + + return []; + }, + + next(element, selector) { + let next = element.nextElementSibling; + + while (next) { + if (next.matches(selector)) { + return [next]; + } + + next = next.nextElementSibling; + } + + return []; + } + + }; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): util/index.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + + const MAX_UID = 1000000; + const MILLISECONDS_MULTIPLIER = 1000; + const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp) + + const toType = obj => { + if (obj === null || obj === undefined) { + return `${obj}`; + } + + return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase(); + }; + /** + * -------------------------------------------------------------------------- + * Public Util Api + * -------------------------------------------------------------------------- + */ + + + const getUID = prefix => { + do { + prefix += Math.floor(Math.random() * MAX_UID); + } while (document.getElementById(prefix)); + + return prefix; + }; + + const getSelector = element => { + let selector = element.getAttribute('data-bs-target'); + + if (!selector || selector === '#') { + let hrefAttr = element.getAttribute('href'); // The only valid content that could double as a selector are IDs or classes, + // so everything starting with `#` or `.`. If a "real" URL is used as the selector, + // `document.querySelector` will rightfully complain it is invalid. + // See https://github.com/twbs/bootstrap/issues/32273 + + if (!hrefAttr || !hrefAttr.includes('#') && !hrefAttr.startsWith('.')) { + return null; + } // Just in case some CMS puts out a full URL with the anchor appended + + + if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) { + hrefAttr = `#${hrefAttr.split('#')[1]}`; + } + + selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null; + } + + return selector; + }; + + const getSelectorFromElement = element => { + const selector = getSelector(element); + + if (selector) { + return document.querySelector(selector) ? selector : null; + } + + return null; + }; + + const getElementFromSelector = element => { + const selector = getSelector(element); + return selector ? document.querySelector(selector) : null; + }; + + const getTransitionDurationFromElement = element => { + if (!element) { + return 0; + } // Get transition-duration of the element + + + let { + transitionDuration, + transitionDelay + } = window.getComputedStyle(element); + const floatTransitionDuration = Number.parseFloat(transitionDuration); + const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found + + if (!floatTransitionDuration && !floatTransitionDelay) { + return 0; + } // If multiple durations are defined, take the first + + + transitionDuration = transitionDuration.split(',')[0]; + transitionDelay = transitionDelay.split(',')[0]; + return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; + }; + + const triggerTransitionEnd = element => { + element.dispatchEvent(new Event(TRANSITION_END)); + }; + + const isElement$1 = obj => { + if (!obj || typeof obj !== 'object') { + return false; + } + + if (typeof obj.jquery !== 'undefined') { + obj = obj[0]; + } + + return typeof obj.nodeType !== 'undefined'; + }; + + const getElement = obj => { + if (isElement$1(obj)) { + // it's a jQuery object or a node element + return obj.jquery ? obj[0] : obj; + } + + if (typeof obj === 'string' && obj.length > 0) { + return SelectorEngine.findOne(obj); + } + + return null; + }; + + const typeCheckConfig = (componentName, config, configTypes) => { + Object.keys(configTypes).forEach(property => { + const expectedTypes = configTypes[property]; + const value = config[property]; + const valueType = value && isElement$1(value) ? 'element' : toType(value); + + if (!new RegExp(expectedTypes).test(valueType)) { + throw new TypeError(`${componentName.toUpperCase()}: Option "${property}" provided type "${valueType}" but expected type "${expectedTypes}".`); + } + }); + }; + + const isVisible = element => { + if (!isElement$1(element) || element.getClientRects().length === 0) { + return false; + } + + return getComputedStyle(element).getPropertyValue('visibility') === 'visible'; + }; + + const isDisabled = element => { + if (!element || element.nodeType !== Node.ELEMENT_NODE) { + return true; + } + + if (element.classList.contains('disabled')) { + return true; + } + + if (typeof element.disabled !== 'undefined') { + return element.disabled; + } + + return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'; + }; + + const findShadowRoot = element => { + if (!document.documentElement.attachShadow) { + return null; + } // Can find the shadow root otherwise it'll return the document + + + if (typeof element.getRootNode === 'function') { + const root = element.getRootNode(); + return root instanceof ShadowRoot ? root : null; + } + + if (element instanceof ShadowRoot) { + return element; + } // when we don't find a shadow root + + + if (!element.parentNode) { + return null; + } + + return findShadowRoot(element.parentNode); + }; + + const noop = () => {}; + + const reflow = element => element.offsetHeight; + + const getjQuery = () => { + const { + jQuery + } = window; + + if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) { + return jQuery; + } + + return null; + }; + + const DOMContentLoadedCallbacks = []; + + const onDOMContentLoaded = callback => { + if (document.readyState === 'loading') { + // add listener on the first call when the document is in loading state + if (!DOMContentLoadedCallbacks.length) { + document.addEventListener('DOMContentLoaded', () => { + DOMContentLoadedCallbacks.forEach(callback => callback()); + }); + } + + DOMContentLoadedCallbacks.push(callback); + } else { + callback(); + } + }; + + const isRTL = () => document.documentElement.dir === 'rtl'; + + const defineJQueryPlugin = plugin => { + onDOMContentLoaded(() => { + const $ = getjQuery(); + /* istanbul ignore if */ + + if ($) { + const name = plugin.NAME; + const JQUERY_NO_CONFLICT = $.fn[name]; + $.fn[name] = plugin.jQueryInterface; + $.fn[name].Constructor = plugin; + + $.fn[name].noConflict = () => { + $.fn[name] = JQUERY_NO_CONFLICT; + return plugin.jQueryInterface; + }; + } + }); + }; + + const execute = callback => { + if (typeof callback === 'function') { + callback(); + } + }; + + const executeAfterTransition = (callback, transitionElement, waitForTransition = true) => { + if (!waitForTransition) { + execute(callback); + return; + } + + const durationPadding = 5; + const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding; + let called = false; + + const handler = ({ + target + }) => { + if (target !== transitionElement) { + return; + } + + called = true; + transitionElement.removeEventListener(TRANSITION_END, handler); + execute(callback); + }; + + transitionElement.addEventListener(TRANSITION_END, handler); + setTimeout(() => { + if (!called) { + triggerTransitionEnd(transitionElement); + } + }, emulatedDuration); + }; + /** + * Return the previous/next element of a list. + * + * @param {array} list The list of elements + * @param activeElement The active element + * @param shouldGetNext Choose to get next or previous element + * @param isCycleAllowed + * @return {Element|elem} The proper element + */ + + + const getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => { + let index = list.indexOf(activeElement); // if the element does not exist in the list return an element depending on the direction and if cycle is allowed + + if (index === -1) { + return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]; + } + + const listLength = list.length; + index += shouldGetNext ? 1 : -1; + + if (isCycleAllowed) { + index = (index + listLength) % listLength; + } + + return list[Math.max(0, Math.min(index, listLength - 1))]; + }; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): dom/event-handler.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const namespaceRegex = /[^.]*(?=\..*)\.|.*/; + const stripNameRegex = /\..*/; + const stripUidRegex = /::\d+$/; + const eventRegistry = {}; // Events storage + + let uidEvent = 1; + const customEvents = { + mouseenter: 'mouseover', + mouseleave: 'mouseout' + }; + const customEventsRegex = /^(mouseenter|mouseleave)/i; + const nativeEvents = 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']); + /** + * ------------------------------------------------------------------------ + * Private methods + * ------------------------------------------------------------------------ + */ + + function getUidEvent(element, uid) { + return uid && `${uid}::${uidEvent++}` || element.uidEvent || uidEvent++; + } + + function getEvent(element) { + const uid = getUidEvent(element); + element.uidEvent = uid; + eventRegistry[uid] = eventRegistry[uid] || {}; + return eventRegistry[uid]; + } + + function bootstrapHandler(element, fn) { + return function handler(event) { + event.delegateTarget = element; + + if (handler.oneOff) { + EventHandler.off(element, event.type, fn); + } + + return fn.apply(element, [event]); + }; + } + + function bootstrapDelegationHandler(element, selector, fn) { + return function handler(event) { + const domElements = element.querySelectorAll(selector); + + for (let { + target + } = event; target && target !== this; target = target.parentNode) { + for (let i = domElements.length; i--;) { + if (domElements[i] === target) { + event.delegateTarget = target; + + if (handler.oneOff) { + // eslint-disable-next-line unicorn/consistent-destructuring + EventHandler.off(element, event.type, selector, fn); + } + + return fn.apply(target, [event]); + } + } + } // To please ESLint + + + return null; + }; + } + + function findHandler(events, handler, delegationSelector = null) { + const uidEventList = Object.keys(events); + + for (let i = 0, len = uidEventList.length; i < len; i++) { + const event = events[uidEventList[i]]; + + if (event.originalHandler === handler && event.delegationSelector === delegationSelector) { + return event; + } + } + + return null; + } + + function normalizeParams(originalTypeEvent, handler, delegationFn) { + const delegation = typeof handler === 'string'; + const originalHandler = delegation ? delegationFn : handler; + let typeEvent = getTypeEvent(originalTypeEvent); + const isNative = nativeEvents.has(typeEvent); + + if (!isNative) { + typeEvent = originalTypeEvent; + } + + return [delegation, originalHandler, typeEvent]; + } + + function addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) { + if (typeof originalTypeEvent !== 'string' || !element) { + return; + } + + if (!handler) { + handler = delegationFn; + delegationFn = null; + } // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position + // this prevents the handler from being dispatched the same way as mouseover or mouseout does + + + if (customEventsRegex.test(originalTypeEvent)) { + const wrapFn = fn => { + return function (event) { + if (!event.relatedTarget || event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget)) { + return fn.call(this, event); + } + }; + }; + + if (delegationFn) { + delegationFn = wrapFn(delegationFn); + } else { + handler = wrapFn(handler); + } + } + + const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn); + const events = getEvent(element); + const handlers = events[typeEvent] || (events[typeEvent] = {}); + const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null); + + if (previousFn) { + previousFn.oneOff = previousFn.oneOff && oneOff; + return; + } + + const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, '')); + const fn = delegation ? bootstrapDelegationHandler(element, handler, delegationFn) : bootstrapHandler(element, handler); + fn.delegationSelector = delegation ? handler : null; + fn.originalHandler = originalHandler; + fn.oneOff = oneOff; + fn.uidEvent = uid; + handlers[uid] = fn; + element.addEventListener(typeEvent, fn, delegation); + } + + function removeHandler(element, events, typeEvent, handler, delegationSelector) { + const fn = findHandler(events[typeEvent], handler, delegationSelector); + + if (!fn) { + return; + } + + element.removeEventListener(typeEvent, fn, Boolean(delegationSelector)); + delete events[typeEvent][fn.uidEvent]; + } + + function removeNamespacedHandlers(element, events, typeEvent, namespace) { + const storeElementEvent = events[typeEvent] || {}; + Object.keys(storeElementEvent).forEach(handlerKey => { + if (handlerKey.includes(namespace)) { + const event = storeElementEvent[handlerKey]; + removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector); + } + }); + } + + function getTypeEvent(event) { + // allow to get the native events from namespaced events ('click.bs.button' --> 'click') + event = event.replace(stripNameRegex, ''); + return customEvents[event] || event; + } + + const EventHandler = { + on(element, event, handler, delegationFn) { + addHandler(element, event, handler, delegationFn, false); + }, + + one(element, event, handler, delegationFn) { + addHandler(element, event, handler, delegationFn, true); + }, + + off(element, originalTypeEvent, handler, delegationFn) { + if (typeof originalTypeEvent !== 'string' || !element) { + return; + } + + const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn); + const inNamespace = typeEvent !== originalTypeEvent; + const events = getEvent(element); + const isNamespace = originalTypeEvent.startsWith('.'); + + if (typeof originalHandler !== 'undefined') { + // Simplest case: handler is passed, remove that listener ONLY. + if (!events || !events[typeEvent]) { + return; + } + + removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null); + return; + } + + if (isNamespace) { + Object.keys(events).forEach(elementEvent => { + removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1)); + }); + } + + const storeElementEvent = events[typeEvent] || {}; + Object.keys(storeElementEvent).forEach(keyHandlers => { + const handlerKey = keyHandlers.replace(stripUidRegex, ''); + + if (!inNamespace || originalTypeEvent.includes(handlerKey)) { + const event = storeElementEvent[keyHandlers]; + removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector); + } + }); + }, + + trigger(element, event, args) { + if (typeof event !== 'string' || !element) { + return null; + } + + const $ = getjQuery(); + const typeEvent = getTypeEvent(event); + const inNamespace = event !== typeEvent; + const isNative = nativeEvents.has(typeEvent); + let jQueryEvent; + let bubbles = true; + let nativeDispatch = true; + let defaultPrevented = false; + let evt = null; + + if (inNamespace && $) { + jQueryEvent = $.Event(event, args); + $(element).trigger(jQueryEvent); + bubbles = !jQueryEvent.isPropagationStopped(); + nativeDispatch = !jQueryEvent.isImmediatePropagationStopped(); + defaultPrevented = jQueryEvent.isDefaultPrevented(); + } + + if (isNative) { + evt = document.createEvent('HTMLEvents'); + evt.initEvent(typeEvent, bubbles, true); + } else { + evt = new CustomEvent(event, { + bubbles, + cancelable: true + }); + } // merge custom information in our event + + + if (typeof args !== 'undefined') { + Object.keys(args).forEach(key => { + Object.defineProperty(evt, key, { + get() { + return args[key]; + } + + }); + }); + } + + if (defaultPrevented) { + evt.preventDefault(); + } + + if (nativeDispatch) { + element.dispatchEvent(evt); + } + + if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') { + jQueryEvent.preventDefault(); + } + + return evt; + } + + }; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): dom/data.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + const elementMap = new Map(); + var Data = { + set(element, key, instance) { + if (!elementMap.has(element)) { + elementMap.set(element, new Map()); + } + + const instanceMap = elementMap.get(element); // make it clear we only want one instance per element + // can be removed later when multiple key/instances are fine to be used + + if (!instanceMap.has(key) && instanceMap.size !== 0) { + // eslint-disable-next-line no-console + console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`); + return; + } + + instanceMap.set(key, instance); + }, + + get(element, key) { + if (elementMap.has(element)) { + return elementMap.get(element).get(key) || null; + } + + return null; + }, + + remove(element, key) { + if (!elementMap.has(element)) { + return; + } + + const instanceMap = elementMap.get(element); + instanceMap.delete(key); // free up element references if there are no instances left for an element + + if (instanceMap.size === 0) { + elementMap.delete(element); + } + } + + }; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): base-component.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const VERSION = '5.0.2'; + + class BaseComponent { + constructor(element) { + element = getElement(element); + + if (!element) { + return; + } + + this._element = element; + Data.set(this._element, this.constructor.DATA_KEY, this); + } + + dispose() { + Data.remove(this._element, this.constructor.DATA_KEY); + EventHandler.off(this._element, this.constructor.EVENT_KEY); + Object.getOwnPropertyNames(this).forEach(propertyName => { + this[propertyName] = null; + }); + } + + _queueCallback(callback, element, isAnimated = true) { + executeAfterTransition(callback, element, isAnimated); + } + /** Static */ + + + static getInstance(element) { + return Data.get(element, this.DATA_KEY); + } + + static getOrCreateInstance(element, config = {}) { + return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null); + } + + static get VERSION() { + return VERSION; + } + + 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}`; + } + + } + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): alert.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$c = 'alert'; + const DATA_KEY$b = 'bs.alert'; + const EVENT_KEY$b = `.${DATA_KEY$b}`; + const DATA_API_KEY$8 = '.data-api'; + const SELECTOR_DISMISS = '[data-bs-dismiss="alert"]'; + const EVENT_CLOSE = `close${EVENT_KEY$b}`; + const EVENT_CLOSED = `closed${EVENT_KEY$b}`; + const EVENT_CLICK_DATA_API$7 = `click${EVENT_KEY$b}${DATA_API_KEY$8}`; + const CLASS_NAME_ALERT = 'alert'; + const CLASS_NAME_FADE$6 = 'fade'; + const CLASS_NAME_SHOW$9 = 'show'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Alert extends BaseComponent { + // Getters + static get NAME() { + return NAME$c; + } // Public + + + close(element) { + const rootElement = element ? this._getRootElement(element) : this._element; + + const customEvent = this._triggerCloseEvent(rootElement); + + if (customEvent === null || customEvent.defaultPrevented) { + return; + } + + this._removeElement(rootElement); + } // Private + + + _getRootElement(element) { + return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`); + } + + _triggerCloseEvent(element) { + return EventHandler.trigger(element, EVENT_CLOSE); + } + + _removeElement(element) { + element.classList.remove(CLASS_NAME_SHOW$9); + const isAnimated = element.classList.contains(CLASS_NAME_FADE$6); + + this._queueCallback(() => this._destroyElement(element), element, isAnimated); + } + + _destroyElement(element) { + element.remove(); + EventHandler.trigger(element, EVENT_CLOSED); + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Alert.getOrCreateInstance(this); + + if (config === 'close') { + data[config](this); + } + }); + } + + static handleDismiss(alertInstance) { + return function (event) { + if (event) { + event.preventDefault(); + } + + alertInstance.close(this); + }; + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_CLICK_DATA_API$7, SELECTOR_DISMISS, Alert.handleDismiss(new Alert())); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Alert to jQuery only if jQuery is present + */ + + defineJQueryPlugin(Alert); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): button.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$b = 'button'; + const DATA_KEY$a = 'bs.button'; + const EVENT_KEY$a = `.${DATA_KEY$a}`; + const DATA_API_KEY$7 = '.data-api'; + const CLASS_NAME_ACTIVE$3 = 'active'; + const SELECTOR_DATA_TOGGLE$5 = '[data-bs-toggle="button"]'; + const EVENT_CLICK_DATA_API$6 = `click${EVENT_KEY$a}${DATA_API_KEY$7}`; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Button extends BaseComponent { + // Getters + static get NAME() { + return NAME$b; + } // Public + + + toggle() { + // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method + this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE$3)); + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Button.getOrCreateInstance(this); + + if (config === 'toggle') { + data[config](); + } + }); + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_CLICK_DATA_API$6, SELECTOR_DATA_TOGGLE$5, event => { + event.preventDefault(); + const button = event.target.closest(SELECTOR_DATA_TOGGLE$5); + const data = Button.getOrCreateInstance(button); + data.toggle(); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Button to jQuery only if jQuery is present + */ + + defineJQueryPlugin(Button); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): dom/manipulator.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + function normalizeData(val) { + if (val === 'true') { + return true; + } + + if (val === 'false') { + return false; + } + + if (val === Number(val).toString()) { + return Number(val); + } + + if (val === '' || val === 'null') { + return null; + } + + return val; + } + + function normalizeDataKey(key) { + return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`); + } + + const Manipulator = { + setDataAttribute(element, key, value) { + element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value); + }, + + removeDataAttribute(element, key) { + element.removeAttribute(`data-bs-${normalizeDataKey(key)}`); + }, + + getDataAttributes(element) { + if (!element) { + return {}; + } + + const attributes = {}; + Object.keys(element.dataset).filter(key => key.startsWith('bs')).forEach(key => { + let pureKey = key.replace(/^bs/, ''); + pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length); + attributes[pureKey] = normalizeData(element.dataset[key]); + }); + return attributes; + }, + + getDataAttribute(element, key) { + return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`)); + }, + + offset(element) { + const rect = element.getBoundingClientRect(); + return { + top: rect.top + document.body.scrollTop, + left: rect.left + document.body.scrollLeft + }; + }, + + position(element) { + return { + top: element.offsetTop, + left: element.offsetLeft + }; + } + + }; + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): carousel.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$a = 'carousel'; + const DATA_KEY$9 = 'bs.carousel'; + const EVENT_KEY$9 = `.${DATA_KEY$9}`; + const DATA_API_KEY$6 = '.data-api'; + const ARROW_LEFT_KEY = 'ArrowLeft'; + const ARROW_RIGHT_KEY = 'ArrowRight'; + const TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch + + const SWIPE_THRESHOLD = 40; + const Default$9 = { + interval: 5000, + keyboard: true, + slide: false, + pause: 'hover', + wrap: true, + touch: true + }; + const DefaultType$9 = { + interval: '(number|boolean)', + keyboard: 'boolean', + slide: '(boolean|string)', + pause: '(string|boolean)', + wrap: 'boolean', + touch: 'boolean' + }; + const ORDER_NEXT = 'next'; + const ORDER_PREV = 'prev'; + const DIRECTION_LEFT = 'left'; + const DIRECTION_RIGHT = 'right'; + const KEY_TO_DIRECTION = { + [ARROW_LEFT_KEY]: DIRECTION_RIGHT, + [ARROW_RIGHT_KEY]: DIRECTION_LEFT + }; + const EVENT_SLIDE = `slide${EVENT_KEY$9}`; + const EVENT_SLID = `slid${EVENT_KEY$9}`; + const EVENT_KEYDOWN = `keydown${EVENT_KEY$9}`; + const EVENT_MOUSEENTER = `mouseenter${EVENT_KEY$9}`; + const EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY$9}`; + const EVENT_TOUCHSTART = `touchstart${EVENT_KEY$9}`; + const EVENT_TOUCHMOVE = `touchmove${EVENT_KEY$9}`; + const EVENT_TOUCHEND = `touchend${EVENT_KEY$9}`; + const EVENT_POINTERDOWN = `pointerdown${EVENT_KEY$9}`; + const EVENT_POINTERUP = `pointerup${EVENT_KEY$9}`; + const EVENT_DRAG_START = `dragstart${EVENT_KEY$9}`; + const EVENT_LOAD_DATA_API$2 = `load${EVENT_KEY$9}${DATA_API_KEY$6}`; + const EVENT_CLICK_DATA_API$5 = `click${EVENT_KEY$9}${DATA_API_KEY$6}`; + const CLASS_NAME_CAROUSEL = 'carousel'; + const CLASS_NAME_ACTIVE$2 = 'active'; + const CLASS_NAME_SLIDE = 'slide'; + const CLASS_NAME_END = 'carousel-item-end'; + const CLASS_NAME_START = 'carousel-item-start'; + const CLASS_NAME_NEXT = 'carousel-item-next'; + const CLASS_NAME_PREV = 'carousel-item-prev'; + const CLASS_NAME_POINTER_EVENT = 'pointer-event'; + const SELECTOR_ACTIVE$1 = '.active'; + const SELECTOR_ACTIVE_ITEM = '.active.carousel-item'; + const SELECTOR_ITEM = '.carousel-item'; + const SELECTOR_ITEM_IMG = '.carousel-item img'; + const SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'; + const SELECTOR_INDICATORS = '.carousel-indicators'; + const SELECTOR_INDICATOR = '[data-bs-target]'; + const SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'; + const SELECTOR_DATA_RIDE = '[data-bs-ride="carousel"]'; + const POINTER_TYPE_TOUCH = 'touch'; + const POINTER_TYPE_PEN = 'pen'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Carousel extends BaseComponent { + constructor(element, config) { + super(element); + this._items = null; + this._interval = null; + this._activeElement = null; + this._isPaused = false; + this._isSliding = false; + this.touchTimeout = null; + this.touchStartX = 0; + this.touchDeltaX = 0; + this._config = this._getConfig(config); + this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element); + this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0; + this._pointerEvent = Boolean(window.PointerEvent); + + this._addEventListeners(); + } // Getters + + + static get Default() { + return Default$9; + } + + static get NAME() { + return NAME$a; + } // Public + + + next() { + this._slide(ORDER_NEXT); + } + + nextWhenVisible() { + // Don't call next when the page isn't visible + // or the carousel or its parent isn't visible + if (!document.hidden && isVisible(this._element)) { + this.next(); + } + } + + prev() { + this._slide(ORDER_PREV); + } + + pause(event) { + if (!event) { + this._isPaused = true; + } + + if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) { + triggerTransitionEnd(this._element); + this.cycle(true); + } + + clearInterval(this._interval); + this._interval = null; + } + + cycle(event) { + if (!event) { + this._isPaused = false; + } + + if (this._interval) { + clearInterval(this._interval); + this._interval = null; + } + + if (this._config && this._config.interval && !this._isPaused) { + this._updateInterval(); + + this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval); + } + } + + to(index) { + this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); + + const activeIndex = this._getItemIndex(this._activeElement); + + if (index > this._items.length - 1 || index < 0) { + return; + } + + if (this._isSliding) { + EventHandler.one(this._element, EVENT_SLID, () => this.to(index)); + return; + } + + if (activeIndex === index) { + this.pause(); + this.cycle(); + return; + } + + const order = index > activeIndex ? ORDER_NEXT : ORDER_PREV; + + this._slide(order, this._items[index]); + } // Private + + + _getConfig(config) { + config = { ...Default$9, + ...Manipulator.getDataAttributes(this._element), + ...(typeof config === 'object' ? config : {}) + }; + typeCheckConfig(NAME$a, config, DefaultType$9); + return config; + } + + _handleSwipe() { + const absDeltax = Math.abs(this.touchDeltaX); + + if (absDeltax <= SWIPE_THRESHOLD) { + return; + } + + const direction = absDeltax / this.touchDeltaX; + this.touchDeltaX = 0; + + if (!direction) { + return; + } + + this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT); + } + + _addEventListeners() { + if (this._config.keyboard) { + EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event)); + } + + if (this._config.pause === 'hover') { + EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event)); + EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event)); + } + + if (this._config.touch && this._touchSupported) { + this._addTouchEventListeners(); + } + } + + _addTouchEventListeners() { + const start = event => { + if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) { + this.touchStartX = event.clientX; + } else if (!this._pointerEvent) { + this.touchStartX = event.touches[0].clientX; + } + }; + + const move = event => { + // ensure swiping with one touch and not pinching + this.touchDeltaX = event.touches && event.touches.length > 1 ? 0 : event.touches[0].clientX - this.touchStartX; + }; + + const end = event => { + if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) { + this.touchDeltaX = event.clientX - this.touchStartX; + } + + this._handleSwipe(); + + if (this._config.pause === 'hover') { + // If it's a touch-enabled device, mouseenter/leave are fired as + // part of the mouse compatibility events on first tap - the carousel + // would stop cycling until user tapped out of it; + // here, we listen for touchend, explicitly pause the carousel + // (as if it's the second time we tap on it, mouseenter compat event + // is NOT fired) and after a timeout (to allow for mouse compatibility + // events to fire) we explicitly restart cycling + this.pause(); + + if (this.touchTimeout) { + clearTimeout(this.touchTimeout); + } + + this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval); + } + }; + + SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => { + EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault()); + }); + + if (this._pointerEvent) { + EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event)); + EventHandler.on(this._element, EVENT_POINTERUP, event => end(event)); + + this._element.classList.add(CLASS_NAME_POINTER_EVENT); + } else { + EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event)); + EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event)); + EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event)); + } + } + + _keydown(event) { + if (/input|textarea/i.test(event.target.tagName)) { + return; + } + + const direction = KEY_TO_DIRECTION[event.key]; + + if (direction) { + event.preventDefault(); + + this._slide(direction); + } + } + + _getItemIndex(element) { + this._items = element && element.parentNode ? SelectorEngine.find(SELECTOR_ITEM, element.parentNode) : []; + return this._items.indexOf(element); + } + + _getItemByOrder(order, activeElement) { + const isNext = order === ORDER_NEXT; + return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap); + } + + _triggerSlideEvent(relatedTarget, eventDirectionName) { + const targetIndex = this._getItemIndex(relatedTarget); + + const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)); + + return EventHandler.trigger(this._element, EVENT_SLIDE, { + relatedTarget, + direction: eventDirectionName, + from: fromIndex, + to: targetIndex + }); + } + + _setActiveIndicatorElement(element) { + if (this._indicatorsElement) { + const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE$1, this._indicatorsElement); + activeIndicator.classList.remove(CLASS_NAME_ACTIVE$2); + activeIndicator.removeAttribute('aria-current'); + const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement); + + for (let i = 0; i < indicators.length; i++) { + if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) { + indicators[i].classList.add(CLASS_NAME_ACTIVE$2); + indicators[i].setAttribute('aria-current', 'true'); + break; + } + } + } + } + + _updateInterval() { + const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); + + if (!element) { + return; + } + + const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10); + + if (elementInterval) { + this._config.defaultInterval = this._config.defaultInterval || this._config.interval; + this._config.interval = elementInterval; + } else { + this._config.interval = this._config.defaultInterval || this._config.interval; + } + } + + _slide(directionOrOrder, element) { + const order = this._directionToOrder(directionOrOrder); + + const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); + + const activeElementIndex = this._getItemIndex(activeElement); + + const nextElement = element || this._getItemByOrder(order, activeElement); + + const nextElementIndex = this._getItemIndex(nextElement); + + const isCycling = Boolean(this._interval); + const isNext = order === ORDER_NEXT; + const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END; + const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV; + + const eventDirectionName = this._orderToDirection(order); + + if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE$2)) { + this._isSliding = false; + return; + } + + if (this._isSliding) { + return; + } + + const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName); + + if (slideEvent.defaultPrevented) { + return; + } + + if (!activeElement || !nextElement) { + // Some weirdness is happening, so we bail + return; + } + + this._isSliding = true; + + if (isCycling) { + this.pause(); + } + + this._setActiveIndicatorElement(nextElement); + + this._activeElement = nextElement; + + const triggerSlidEvent = () => { + EventHandler.trigger(this._element, EVENT_SLID, { + relatedTarget: nextElement, + direction: eventDirectionName, + from: activeElementIndex, + to: nextElementIndex + }); + }; + + if (this._element.classList.contains(CLASS_NAME_SLIDE)) { + nextElement.classList.add(orderClassName); + reflow(nextElement); + activeElement.classList.add(directionalClassName); + nextElement.classList.add(directionalClassName); + + const completeCallBack = () => { + nextElement.classList.remove(directionalClassName, orderClassName); + nextElement.classList.add(CLASS_NAME_ACTIVE$2); + activeElement.classList.remove(CLASS_NAME_ACTIVE$2, orderClassName, directionalClassName); + this._isSliding = false; + setTimeout(triggerSlidEvent, 0); + }; + + this._queueCallback(completeCallBack, activeElement, true); + } else { + activeElement.classList.remove(CLASS_NAME_ACTIVE$2); + nextElement.classList.add(CLASS_NAME_ACTIVE$2); + this._isSliding = false; + triggerSlidEvent(); + } + + if (isCycling) { + this.cycle(); + } + } + + _directionToOrder(direction) { + if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) { + return direction; + } + + if (isRTL()) { + return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT; + } + + return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV; + } + + _orderToDirection(order) { + if (![ORDER_NEXT, ORDER_PREV].includes(order)) { + return order; + } + + if (isRTL()) { + return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT; + } + + return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT; + } // Static + + + static carouselInterface(element, config) { + const data = Carousel.getOrCreateInstance(element, config); + let { + _config + } = data; + + if (typeof config === 'object') { + _config = { ..._config, + ...config + }; + } + + const action = typeof config === 'string' ? config : _config.slide; + + if (typeof config === 'number') { + data.to(config); + } else if (typeof action === 'string') { + if (typeof data[action] === 'undefined') { + throw new TypeError(`No method named "${action}"`); + } + + data[action](); + } else if (_config.interval && _config.ride) { + data.pause(); + data.cycle(); + } + } + + static jQueryInterface(config) { + return this.each(function () { + Carousel.carouselInterface(this, config); + }); + } + + static dataApiClickHandler(event) { + const target = getElementFromSelector(this); + + if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) { + return; + } + + const config = { ...Manipulator.getDataAttributes(target), + ...Manipulator.getDataAttributes(this) + }; + const slideIndex = this.getAttribute('data-bs-slide-to'); + + if (slideIndex) { + config.interval = false; + } + + Carousel.carouselInterface(target, config); + + if (slideIndex) { + Carousel.getInstance(target).to(slideIndex); + } + + event.preventDefault(); + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_CLICK_DATA_API$5, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler); + EventHandler.on(window, EVENT_LOAD_DATA_API$2, () => { + const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE); + + for (let i = 0, len = carousels.length; i < len; i++) { + Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i])); + } + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Carousel to jQuery only if jQuery is present + */ + + defineJQueryPlugin(Carousel); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): collapse.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$9 = 'collapse'; + const DATA_KEY$8 = 'bs.collapse'; + const EVENT_KEY$8 = `.${DATA_KEY$8}`; + const DATA_API_KEY$5 = '.data-api'; + const Default$8 = { + toggle: true, + parent: '' + }; + const DefaultType$8 = { + toggle: 'boolean', + parent: '(string|element)' + }; + const EVENT_SHOW$5 = `show${EVENT_KEY$8}`; + const EVENT_SHOWN$5 = `shown${EVENT_KEY$8}`; + const EVENT_HIDE$5 = `hide${EVENT_KEY$8}`; + const EVENT_HIDDEN$5 = `hidden${EVENT_KEY$8}`; + const EVENT_CLICK_DATA_API$4 = `click${EVENT_KEY$8}${DATA_API_KEY$5}`; + const CLASS_NAME_SHOW$8 = 'show'; + const CLASS_NAME_COLLAPSE = 'collapse'; + const CLASS_NAME_COLLAPSING = 'collapsing'; + const CLASS_NAME_COLLAPSED = 'collapsed'; + const WIDTH = 'width'; + const HEIGHT = 'height'; + const SELECTOR_ACTIVES = '.show, .collapsing'; + const SELECTOR_DATA_TOGGLE$4 = '[data-bs-toggle="collapse"]'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Collapse extends BaseComponent { + constructor(element, config) { + super(element); + this._isTransitioning = false; + this._config = this._getConfig(config); + this._triggerArray = SelectorEngine.find(`${SELECTOR_DATA_TOGGLE$4}[href="#${this._element.id}"],` + `${SELECTOR_DATA_TOGGLE$4}[data-bs-target="#${this._element.id}"]`); + const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE$4); + + for (let i = 0, len = toggleList.length; i < len; i++) { + const elem = toggleList[i]; + const selector = getSelectorFromElement(elem); + const filterElement = SelectorEngine.find(selector).filter(foundElem => foundElem === this._element); + + if (selector !== null && filterElement.length) { + this._selector = selector; + + this._triggerArray.push(elem); + } + } + + this._parent = this._config.parent ? this._getParent() : null; + + if (!this._config.parent) { + this._addAriaAndCollapsedClass(this._element, this._triggerArray); + } + + if (this._config.toggle) { + this.toggle(); + } + } // Getters + + + static get Default() { + return Default$8; + } + + static get NAME() { + return NAME$9; + } // Public + + + toggle() { + if (this._element.classList.contains(CLASS_NAME_SHOW$8)) { + this.hide(); + } else { + this.show(); + } + } + + show() { + if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW$8)) { + return; + } + + let actives; + let activesData; + + if (this._parent) { + actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent).filter(elem => { + if (typeof this._config.parent === 'string') { + return elem.getAttribute('data-bs-parent') === this._config.parent; + } + + return elem.classList.contains(CLASS_NAME_COLLAPSE); + }); + + if (actives.length === 0) { + actives = null; + } + } + + const container = SelectorEngine.findOne(this._selector); + + if (actives) { + const tempActiveData = actives.find(elem => container !== elem); + activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null; + + if (activesData && activesData._isTransitioning) { + return; + } + } + + const startEvent = EventHandler.trigger(this._element, EVENT_SHOW$5); + + if (startEvent.defaultPrevented) { + return; + } + + if (actives) { + actives.forEach(elemActive => { + if (container !== elemActive) { + Collapse.collapseInterface(elemActive, 'hide'); + } + + if (!activesData) { + Data.set(elemActive, DATA_KEY$8, null); + } + }); + } + + const dimension = this._getDimension(); + + this._element.classList.remove(CLASS_NAME_COLLAPSE); + + this._element.classList.add(CLASS_NAME_COLLAPSING); + + this._element.style[dimension] = 0; + + if (this._triggerArray.length) { + this._triggerArray.forEach(element => { + element.classList.remove(CLASS_NAME_COLLAPSED); + element.setAttribute('aria-expanded', true); + }); + } + + this.setTransitioning(true); + + const complete = () => { + this._element.classList.remove(CLASS_NAME_COLLAPSING); + + this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$8); + + this._element.style[dimension] = ''; + this.setTransitioning(false); + EventHandler.trigger(this._element, EVENT_SHOWN$5); + }; + + const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1); + const scrollSize = `scroll${capitalizedDimension}`; + + this._queueCallback(complete, this._element, true); + + this._element.style[dimension] = `${this._element[scrollSize]}px`; + } + + hide() { + if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW$8)) { + return; + } + + const startEvent = EventHandler.trigger(this._element, EVENT_HIDE$5); + + if (startEvent.defaultPrevented) { + return; + } + + const dimension = this._getDimension(); + + this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`; + reflow(this._element); + + this._element.classList.add(CLASS_NAME_COLLAPSING); + + this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$8); + + const triggerArrayLength = this._triggerArray.length; + + if (triggerArrayLength > 0) { + for (let i = 0; i < triggerArrayLength; i++) { + const trigger = this._triggerArray[i]; + const elem = getElementFromSelector(trigger); + + if (elem && !elem.classList.contains(CLASS_NAME_SHOW$8)) { + trigger.classList.add(CLASS_NAME_COLLAPSED); + trigger.setAttribute('aria-expanded', false); + } + } + } + + this.setTransitioning(true); + + const complete = () => { + this.setTransitioning(false); + + this._element.classList.remove(CLASS_NAME_COLLAPSING); + + this._element.classList.add(CLASS_NAME_COLLAPSE); + + EventHandler.trigger(this._element, EVENT_HIDDEN$5); + }; + + this._element.style[dimension] = ''; + + this._queueCallback(complete, this._element, true); + } + + setTransitioning(isTransitioning) { + this._isTransitioning = isTransitioning; + } // Private + + + _getConfig(config) { + config = { ...Default$8, + ...config + }; + config.toggle = Boolean(config.toggle); // Coerce string values + + typeCheckConfig(NAME$9, config, DefaultType$8); + return config; + } + + _getDimension() { + return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT; + } + + _getParent() { + let { + parent + } = this._config; + parent = getElement(parent); + const selector = `${SELECTOR_DATA_TOGGLE$4}[data-bs-parent="${parent}"]`; + SelectorEngine.find(selector, parent).forEach(element => { + const selected = getElementFromSelector(element); + + this._addAriaAndCollapsedClass(selected, [element]); + }); + return parent; + } + + _addAriaAndCollapsedClass(element, triggerArray) { + if (!element || !triggerArray.length) { + return; + } + + const isOpen = element.classList.contains(CLASS_NAME_SHOW$8); + triggerArray.forEach(elem => { + if (isOpen) { + elem.classList.remove(CLASS_NAME_COLLAPSED); + } else { + elem.classList.add(CLASS_NAME_COLLAPSED); + } + + elem.setAttribute('aria-expanded', isOpen); + }); + } // Static + + + static collapseInterface(element, config) { + let data = Collapse.getInstance(element); + const _config = { ...Default$8, + ...Manipulator.getDataAttributes(element), + ...(typeof config === 'object' && config ? config : {}) + }; + + if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) { + _config.toggle = false; + } + + if (!data) { + data = new Collapse(element, _config); + } + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + } + } + + static jQueryInterface(config) { + return this.each(function () { + Collapse.collapseInterface(this, config); + }); + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_CLICK_DATA_API$4, SELECTOR_DATA_TOGGLE$4, function (event) { + // preventDefault only for <a> elements (which change the URL) not inside the collapsible element + if (event.target.tagName === 'A' || event.delegateTarget && event.delegateTarget.tagName === 'A') { + event.preventDefault(); + } + + const triggerData = Manipulator.getDataAttributes(this); + const selector = getSelectorFromElement(this); + const selectorElements = SelectorEngine.find(selector); + selectorElements.forEach(element => { + const data = Collapse.getInstance(element); + let config; + + if (data) { + // update parent attribute + if (data._parent === null && typeof triggerData.parent === 'string') { + data._config.parent = triggerData.parent; + data._parent = data._getParent(); + } + + config = 'toggle'; + } else { + config = triggerData; + } + + Collapse.collapseInterface(element, config); + }); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Collapse to jQuery only if jQuery is present + */ + + defineJQueryPlugin(Collapse); + + var top = 'top'; + var bottom = 'bottom'; + var right = 'right'; + var left = 'left'; + var auto = 'auto'; + var basePlacements = [top, bottom, right, left]; + var start = 'start'; + var end = 'end'; + var clippingParents = 'clippingParents'; + var viewport = 'viewport'; + var popper = 'popper'; + var reference = 'reference'; + var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) { + return acc.concat([placement + "-" + start, placement + "-" + end]); + }, []); + var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) { + return acc.concat([placement, placement + "-" + start, placement + "-" + end]); + }, []); // modifiers that need to read the DOM + + var beforeRead = 'beforeRead'; + var read = 'read'; + var afterRead = 'afterRead'; // pure-logic modifiers + + var beforeMain = 'beforeMain'; + var main = 'main'; + var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state) + + var beforeWrite = 'beforeWrite'; + var write = 'write'; + var afterWrite = 'afterWrite'; + var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite]; + + function getNodeName(element) { + return element ? (element.nodeName || '').toLowerCase() : null; + } + + function getWindow(node) { + if (node == null) { + return window; + } + + if (node.toString() !== '[object Window]') { + var ownerDocument = node.ownerDocument; + return ownerDocument ? ownerDocument.defaultView || window : window; + } + + return node; + } + + function isElement(node) { + var OwnElement = getWindow(node).Element; + return node instanceof OwnElement || node instanceof Element; + } + + function isHTMLElement(node) { + var OwnElement = getWindow(node).HTMLElement; + return node instanceof OwnElement || node instanceof HTMLElement; + } + + function isShadowRoot(node) { + // IE 11 has no ShadowRoot + if (typeof ShadowRoot === 'undefined') { + return false; + } + + var OwnElement = getWindow(node).ShadowRoot; + return node instanceof OwnElement || node instanceof ShadowRoot; + } + + // and applies them to the HTMLElements such as popper and arrow + + function applyStyles(_ref) { + var state = _ref.state; + Object.keys(state.elements).forEach(function (name) { + var style = state.styles[name] || {}; + var attributes = state.attributes[name] || {}; + var element = state.elements[name]; // arrow is optional + virtual elements + + if (!isHTMLElement(element) || !getNodeName(element)) { + return; + } // Flow doesn't support to extend this property, but it's the most + // effective way to apply styles to an HTMLElement + // $FlowFixMe[cannot-write] + + + Object.assign(element.style, style); + Object.keys(attributes).forEach(function (name) { + var value = attributes[name]; + + if (value === false) { + element.removeAttribute(name); + } else { + element.setAttribute(name, value === true ? '' : value); + } + }); + }); + } + + function effect$2(_ref2) { + var state = _ref2.state; + var initialStyles = { + popper: { + position: state.options.strategy, + left: '0', + top: '0', + margin: '0' + }, + arrow: { + position: 'absolute' + }, + reference: {} + }; + Object.assign(state.elements.popper.style, initialStyles.popper); + state.styles = initialStyles; + + if (state.elements.arrow) { + Object.assign(state.elements.arrow.style, initialStyles.arrow); + } + + return function () { + Object.keys(state.elements).forEach(function (name) { + var element = state.elements[name]; + var attributes = state.attributes[name] || {}; + var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them + + var style = styleProperties.reduce(function (style, property) { + style[property] = ''; + return style; + }, {}); // arrow is optional + virtual elements + + if (!isHTMLElement(element) || !getNodeName(element)) { + return; + } + + Object.assign(element.style, style); + Object.keys(attributes).forEach(function (attribute) { + element.removeAttribute(attribute); + }); + }); + }; + } // eslint-disable-next-line import/no-unused-modules + + + var applyStyles$1 = { + name: 'applyStyles', + enabled: true, + phase: 'write', + fn: applyStyles, + effect: effect$2, + requires: ['computeStyles'] + }; + + function getBasePlacement(placement) { + return placement.split('-')[0]; + } + + function getBoundingClientRect(element) { + var rect = element.getBoundingClientRect(); + return { + width: rect.width, + height: rect.height, + top: rect.top, + right: rect.right, + bottom: rect.bottom, + left: rect.left, + x: rect.left, + y: rect.top + }; + } + + // means it doesn't take into account transforms. + + function getLayoutRect(element) { + var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed. + // Fixes https://github.com/popperjs/popper-core/issues/1223 + + var width = element.offsetWidth; + var height = element.offsetHeight; + + if (Math.abs(clientRect.width - width) <= 1) { + width = clientRect.width; + } + + if (Math.abs(clientRect.height - height) <= 1) { + height = clientRect.height; + } + + return { + x: element.offsetLeft, + y: element.offsetTop, + width: width, + height: height + }; + } + + function contains(parent, child) { + var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method + + if (parent.contains(child)) { + return true; + } // then fallback to custom implementation with Shadow DOM support + else if (rootNode && isShadowRoot(rootNode)) { + var next = child; + + do { + if (next && parent.isSameNode(next)) { + return true; + } // $FlowFixMe[prop-missing]: need a better way to handle this... + + + next = next.parentNode || next.host; + } while (next); + } // Give up, the result is false + + + return false; + } + + function getComputedStyle$1(element) { + return getWindow(element).getComputedStyle(element); + } + + function isTableElement(element) { + return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0; + } + + function getDocumentElement(element) { + // $FlowFixMe[incompatible-return]: assume body is always available + return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing] + element.document) || window.document).documentElement; + } + + function getParentNode(element) { + if (getNodeName(element) === 'html') { + return element; + } + + return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle + // $FlowFixMe[incompatible-return] + // $FlowFixMe[prop-missing] + element.assignedSlot || // step into the shadow DOM of the parent of a slotted node + element.parentNode || ( // DOM Element detected + isShadowRoot(element) ? element.host : null) || // ShadowRoot detected + // $FlowFixMe[incompatible-call]: HTMLElement is a Node + getDocumentElement(element) // fallback + + ); + } + + function getTrueOffsetParent(element) { + if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837 + getComputedStyle$1(element).position === 'fixed') { + return null; + } + + return element.offsetParent; + } // `.offsetParent` reports `null` for fixed elements, while absolute elements + // return the containing block + + + function getContainingBlock(element) { + var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1; + var isIE = navigator.userAgent.indexOf('Trident') !== -1; + + if (isIE && isHTMLElement(element)) { + // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport + var elementCss = getComputedStyle$1(element); + + if (elementCss.position === 'fixed') { + return null; + } + } + + var currentNode = getParentNode(element); + + while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) { + var css = getComputedStyle$1(currentNode); // This is non-exhaustive but covers the most common CSS properties that + // create a containing block. + // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block + + if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') { + return currentNode; + } else { + currentNode = currentNode.parentNode; + } + } + + return null; + } // Gets the closest ancestor positioned element. Handles some edge cases, + // such as table ancestors and cross browser bugs. + + + function getOffsetParent(element) { + var window = getWindow(element); + var offsetParent = getTrueOffsetParent(element); + + while (offsetParent && isTableElement(offsetParent) && getComputedStyle$1(offsetParent).position === 'static') { + offsetParent = getTrueOffsetParent(offsetParent); + } + + if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle$1(offsetParent).position === 'static')) { + return window; + } + + return offsetParent || getContainingBlock(element) || window; + } + + function getMainAxisFromPlacement(placement) { + return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y'; + } + + var max = Math.max; + var min = Math.min; + var round = Math.round; + + function within(min$1, value, max$1) { + return max(min$1, min(value, max$1)); + } + + function getFreshSideObject() { + return { + top: 0, + right: 0, + bottom: 0, + left: 0 + }; + } + + function mergePaddingObject(paddingObject) { + return Object.assign({}, getFreshSideObject(), paddingObject); + } + + function expandToHashMap(value, keys) { + return keys.reduce(function (hashMap, key) { + hashMap[key] = value; + return hashMap; + }, {}); + } + + var toPaddingObject = function toPaddingObject(padding, state) { + padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, { + placement: state.placement + })) : padding; + return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements)); + }; + + function arrow(_ref) { + var _state$modifiersData$; + + var state = _ref.state, + name = _ref.name, + options = _ref.options; + var arrowElement = state.elements.arrow; + var popperOffsets = state.modifiersData.popperOffsets; + var basePlacement = getBasePlacement(state.placement); + var axis = getMainAxisFromPlacement(basePlacement); + var isVertical = [left, right].indexOf(basePlacement) >= 0; + var len = isVertical ? 'height' : 'width'; + + if (!arrowElement || !popperOffsets) { + return; + } + + var paddingObject = toPaddingObject(options.padding, state); + var arrowRect = getLayoutRect(arrowElement); + var minProp = axis === 'y' ? top : left; + var maxProp = axis === 'y' ? bottom : right; + var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len]; + var startDiff = popperOffsets[axis] - state.rects.reference[axis]; + var arrowOffsetParent = getOffsetParent(arrowElement); + var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0; + var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is + // outside of the popper bounds + + var min = paddingObject[minProp]; + var max = clientSize - arrowRect[len] - paddingObject[maxProp]; + var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference; + var offset = within(min, center, max); // Prevents breaking syntax highlighting... + + var axisProp = axis; + state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$); + } + + function effect$1(_ref2) { + var state = _ref2.state, + options = _ref2.options; + var _options$element = options.element, + arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element; + + if (arrowElement == null) { + return; + } // CSS selector + + + if (typeof arrowElement === 'string') { + arrowElement = state.elements.popper.querySelector(arrowElement); + + if (!arrowElement) { + return; + } + } + + if (process.env.NODE_ENV !== "production") { + if (!isHTMLElement(arrowElement)) { + console.error(['Popper: "arrow" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' ')); + } + } + + if (!contains(state.elements.popper, arrowElement)) { + if (process.env.NODE_ENV !== "production") { + console.error(['Popper: "arrow" modifier\'s `element` must be a child of the popper', 'element.'].join(' ')); + } + + return; + } + + state.elements.arrow = arrowElement; + } // eslint-disable-next-line import/no-unused-modules + + + var arrow$1 = { + name: 'arrow', + enabled: true, + phase: 'main', + fn: arrow, + effect: effect$1, + requires: ['popperOffsets'], + requiresIfExists: ['preventOverflow'] + }; + + var unsetSides = { + top: 'auto', + right: 'auto', + bottom: 'auto', + left: 'auto' + }; // Round the offsets to the nearest suitable subpixel based on the DPR. + // Zooming can change the DPR, but it seems to report a value that will + // cleanly divide the values into the appropriate subpixels. + + function roundOffsetsByDPR(_ref) { + var x = _ref.x, + y = _ref.y; + var win = window; + var dpr = win.devicePixelRatio || 1; + return { + x: round(round(x * dpr) / dpr) || 0, + y: round(round(y * dpr) / dpr) || 0 + }; + } + + function mapToStyles(_ref2) { + var _Object$assign2; + + var popper = _ref2.popper, + popperRect = _ref2.popperRect, + placement = _ref2.placement, + offsets = _ref2.offsets, + position = _ref2.position, + gpuAcceleration = _ref2.gpuAcceleration, + adaptive = _ref2.adaptive, + roundOffsets = _ref2.roundOffsets; + + var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets, + _ref3$x = _ref3.x, + x = _ref3$x === void 0 ? 0 : _ref3$x, + _ref3$y = _ref3.y, + y = _ref3$y === void 0 ? 0 : _ref3$y; + + var hasX = offsets.hasOwnProperty('x'); + var hasY = offsets.hasOwnProperty('y'); + var sideX = left; + var sideY = top; + var win = window; + + if (adaptive) { + var offsetParent = getOffsetParent(popper); + var heightProp = 'clientHeight'; + var widthProp = 'clientWidth'; + + if (offsetParent === getWindow(popper)) { + offsetParent = getDocumentElement(popper); + + if (getComputedStyle$1(offsetParent).position !== 'static') { + heightProp = 'scrollHeight'; + widthProp = 'scrollWidth'; + } + } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it + + + offsetParent = offsetParent; + + if (placement === top) { + sideY = bottom; // $FlowFixMe[prop-missing] + + y -= offsetParent[heightProp] - popperRect.height; + y *= gpuAcceleration ? 1 : -1; + } + + if (placement === left) { + sideX = right; // $FlowFixMe[prop-missing] + + x -= offsetParent[widthProp] - popperRect.width; + x *= gpuAcceleration ? 1 : -1; + } + } + + var commonStyles = Object.assign({ + position: position + }, adaptive && unsetSides); + + if (gpuAcceleration) { + var _Object$assign; + + return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? "translate(" + x + "px, " + y + "px)" : "translate3d(" + x + "px, " + y + "px, 0)", _Object$assign)); + } + + return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + "px" : '', _Object$assign2[sideX] = hasX ? x + "px" : '', _Object$assign2.transform = '', _Object$assign2)); + } + + function computeStyles(_ref4) { + var state = _ref4.state, + options = _ref4.options; + var _options$gpuAccelerat = options.gpuAcceleration, + gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat, + _options$adaptive = options.adaptive, + adaptive = _options$adaptive === void 0 ? true : _options$adaptive, + _options$roundOffsets = options.roundOffsets, + roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets; + + if (process.env.NODE_ENV !== "production") { + var transitionProperty = getComputedStyle$1(state.elements.popper).transitionProperty || ''; + + if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) { + return transitionProperty.indexOf(property) >= 0; + })) { + console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: "transform", "top", "right", "bottom", "left".', '\n\n', 'Disable the "computeStyles" modifier\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\n\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' ')); + } + } + + var commonStyles = { + placement: getBasePlacement(state.placement), + popper: state.elements.popper, + popperRect: state.rects.popper, + gpuAcceleration: gpuAcceleration + }; + + if (state.modifiersData.popperOffsets != null) { + state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, { + offsets: state.modifiersData.popperOffsets, + position: state.options.strategy, + adaptive: adaptive, + roundOffsets: roundOffsets + }))); + } + + if (state.modifiersData.arrow != null) { + state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, { + offsets: state.modifiersData.arrow, + position: 'absolute', + adaptive: false, + roundOffsets: roundOffsets + }))); + } + + state.attributes.popper = Object.assign({}, state.attributes.popper, { + 'data-popper-placement': state.placement + }); + } // eslint-disable-next-line import/no-unused-modules + + + var computeStyles$1 = { + name: 'computeStyles', + enabled: true, + phase: 'beforeWrite', + fn: computeStyles, + data: {} + }; + + var passive = { + passive: true + }; + + function effect(_ref) { + var state = _ref.state, + instance = _ref.instance, + options = _ref.options; + var _options$scroll = options.scroll, + scroll = _options$scroll === void 0 ? true : _options$scroll, + _options$resize = options.resize, + resize = _options$resize === void 0 ? true : _options$resize; + var window = getWindow(state.elements.popper); + var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper); + + if (scroll) { + scrollParents.forEach(function (scrollParent) { + scrollParent.addEventListener('scroll', instance.update, passive); + }); + } + + if (resize) { + window.addEventListener('resize', instance.update, passive); + } + + return function () { + if (scroll) { + scrollParents.forEach(function (scrollParent) { + scrollParent.removeEventListener('scroll', instance.update, passive); + }); + } + + if (resize) { + window.removeEventListener('resize', instance.update, passive); + } + }; + } // eslint-disable-next-line import/no-unused-modules + + + var eventListeners = { + name: 'eventListeners', + enabled: true, + phase: 'write', + fn: function fn() {}, + effect: effect, + data: {} + }; + + var hash$1 = { + left: 'right', + right: 'left', + bottom: 'top', + top: 'bottom' + }; + function getOppositePlacement(placement) { + return placement.replace(/left|right|bottom|top/g, function (matched) { + return hash$1[matched]; + }); + } + + var hash = { + start: 'end', + end: 'start' + }; + function getOppositeVariationPlacement(placement) { + return placement.replace(/start|end/g, function (matched) { + return hash[matched]; + }); + } + + function getWindowScroll(node) { + var win = getWindow(node); + var scrollLeft = win.pageXOffset; + var scrollTop = win.pageYOffset; + return { + scrollLeft: scrollLeft, + scrollTop: scrollTop + }; + } + + function getWindowScrollBarX(element) { + // If <html> has a CSS width greater than the viewport, then this will be + // incorrect for RTL. + // Popper 1 is broken in this case and never had a bug report so let's assume + // it's not an issue. I don't think anyone ever specifies width on <html> + // anyway. + // Browsers where the left scrollbar doesn't cause an issue report `0` for + // this (e.g. Edge 2019, IE11, Safari) + return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft; + } + + function getViewportRect(element) { + var win = getWindow(element); + var html = getDocumentElement(element); + var visualViewport = win.visualViewport; + var width = html.clientWidth; + var height = html.clientHeight; + var x = 0; + var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper + // can be obscured underneath it. + // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even + // if it isn't open, so if this isn't available, the popper will be detected + // to overflow the bottom of the screen too early. + + if (visualViewport) { + width = visualViewport.width; + height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently) + // In Chrome, it returns a value very close to 0 (+/-) but contains rounding + // errors due to floating point numbers, so we need to check precision. + // Safari returns a number <= 0, usually < -1 when pinch-zoomed + // Feature detection fails in mobile emulation mode in Chrome. + // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) < + // 0.001 + // Fallback here: "Not Safari" userAgent + + if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) { + x = visualViewport.offsetLeft; + y = visualViewport.offsetTop; + } + } + + return { + width: width, + height: height, + x: x + getWindowScrollBarX(element), + y: y + }; + } + + // of the `<html>` and `<body>` rect bounds if horizontally scrollable + + function getDocumentRect(element) { + var _element$ownerDocumen; + + var html = getDocumentElement(element); + var winScroll = getWindowScroll(element); + var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body; + var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0); + var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0); + var x = -winScroll.scrollLeft + getWindowScrollBarX(element); + var y = -winScroll.scrollTop; + + if (getComputedStyle$1(body || html).direction === 'rtl') { + x += max(html.clientWidth, body ? body.clientWidth : 0) - width; + } + + return { + width: width, + height: height, + x: x, + y: y + }; + } + + function isScrollParent(element) { + // Firefox wants us to check `-x` and `-y` variations as well + var _getComputedStyle = getComputedStyle$1(element), + overflow = _getComputedStyle.overflow, + overflowX = _getComputedStyle.overflowX, + overflowY = _getComputedStyle.overflowY; + + return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX); + } + + function getScrollParent(node) { + if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) { + // $FlowFixMe[incompatible-return]: assume body is always available + return node.ownerDocument.body; + } + + if (isHTMLElement(node) && isScrollParent(node)) { + return node; + } + + return getScrollParent(getParentNode(node)); + } + + /* + given a DOM element, return the list of all scroll parents, up the list of ancesors + until we get to the top window object. This list is what we attach scroll listeners + to, because if any of these parent elements scroll, we'll need to re-calculate the + reference element's position. + */ + + function listScrollParents(element, list) { + var _element$ownerDocumen; + + if (list === void 0) { + list = []; + } + + var scrollParent = getScrollParent(element); + var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body); + var win = getWindow(scrollParent); + var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent; + var updatedList = list.concat(target); + return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here + updatedList.concat(listScrollParents(getParentNode(target))); + } + + function rectToClientRect(rect) { + return Object.assign({}, rect, { + left: rect.x, + top: rect.y, + right: rect.x + rect.width, + bottom: rect.y + rect.height + }); + } + + function getInnerBoundingClientRect(element) { + var rect = getBoundingClientRect(element); + rect.top = rect.top + element.clientTop; + rect.left = rect.left + element.clientLeft; + rect.bottom = rect.top + element.clientHeight; + rect.right = rect.left + element.clientWidth; + rect.width = element.clientWidth; + rect.height = element.clientHeight; + rect.x = rect.left; + rect.y = rect.top; + return rect; + } + + function getClientRectFromMixedType(element, clippingParent) { + return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element))); + } // A "clipping parent" is an overflowable container with the characteristic of + // clipping (or hiding) overflowing elements with a position different from + // `initial` + + + function getClippingParents(element) { + var clippingParents = listScrollParents(getParentNode(element)); + var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle$1(element).position) >= 0; + var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element; + + if (!isElement(clipperElement)) { + return []; + } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414 + + + return clippingParents.filter(function (clippingParent) { + return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body'; + }); + } // Gets the maximum area that the element is visible in due to any number of + // clipping parents + + + function getClippingRect(element, boundary, rootBoundary) { + var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary); + var clippingParents = [].concat(mainClippingParents, [rootBoundary]); + var firstClippingParent = clippingParents[0]; + var clippingRect = clippingParents.reduce(function (accRect, clippingParent) { + var rect = getClientRectFromMixedType(element, clippingParent); + accRect.top = max(rect.top, accRect.top); + accRect.right = min(rect.right, accRect.right); + accRect.bottom = min(rect.bottom, accRect.bottom); + accRect.left = max(rect.left, accRect.left); + return accRect; + }, getClientRectFromMixedType(element, firstClippingParent)); + clippingRect.width = clippingRect.right - clippingRect.left; + clippingRect.height = clippingRect.bottom - clippingRect.top; + clippingRect.x = clippingRect.left; + clippingRect.y = clippingRect.top; + return clippingRect; + } + + function getVariation(placement) { + return placement.split('-')[1]; + } + + function computeOffsets(_ref) { + var reference = _ref.reference, + element = _ref.element, + placement = _ref.placement; + var basePlacement = placement ? getBasePlacement(placement) : null; + var variation = placement ? getVariation(placement) : null; + var commonX = reference.x + reference.width / 2 - element.width / 2; + var commonY = reference.y + reference.height / 2 - element.height / 2; + var offsets; + + switch (basePlacement) { + case top: + offsets = { + x: commonX, + y: reference.y - element.height + }; + break; + + case bottom: + offsets = { + x: commonX, + y: reference.y + reference.height + }; + break; + + case right: + offsets = { + x: reference.x + reference.width, + y: commonY + }; + break; + + case left: + offsets = { + x: reference.x - element.width, + y: commonY + }; + break; + + default: + offsets = { + x: reference.x, + y: reference.y + }; + } + + var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null; + + if (mainAxis != null) { + var len = mainAxis === 'y' ? 'height' : 'width'; + + switch (variation) { + case start: + offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2); + break; + + case end: + offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2); + break; + } + } + + return offsets; + } + + function detectOverflow(state, options) { + if (options === void 0) { + options = {}; + } + + var _options = options, + _options$placement = _options.placement, + placement = _options$placement === void 0 ? state.placement : _options$placement, + _options$boundary = _options.boundary, + boundary = _options$boundary === void 0 ? clippingParents : _options$boundary, + _options$rootBoundary = _options.rootBoundary, + rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary, + _options$elementConte = _options.elementContext, + elementContext = _options$elementConte === void 0 ? popper : _options$elementConte, + _options$altBoundary = _options.altBoundary, + altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary, + _options$padding = _options.padding, + padding = _options$padding === void 0 ? 0 : _options$padding; + var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements)); + var altContext = elementContext === popper ? reference : popper; + var referenceElement = state.elements.reference; + var popperRect = state.rects.popper; + var element = state.elements[altBoundary ? altContext : elementContext]; + var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary); + var referenceClientRect = getBoundingClientRect(referenceElement); + var popperOffsets = computeOffsets({ + reference: referenceClientRect, + element: popperRect, + strategy: 'absolute', + placement: placement + }); + var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets)); + var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect + // 0 or negative = within the clipping rect + + var overflowOffsets = { + top: clippingClientRect.top - elementClientRect.top + paddingObject.top, + bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom, + left: clippingClientRect.left - elementClientRect.left + paddingObject.left, + right: elementClientRect.right - clippingClientRect.right + paddingObject.right + }; + var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element + + if (elementContext === popper && offsetData) { + var offset = offsetData[placement]; + Object.keys(overflowOffsets).forEach(function (key) { + var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1; + var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x'; + overflowOffsets[key] += offset[axis] * multiply; + }); + } + + return overflowOffsets; + } + + function computeAutoPlacement(state, options) { + if (options === void 0) { + options = {}; + } + + var _options = options, + placement = _options.placement, + boundary = _options.boundary, + rootBoundary = _options.rootBoundary, + padding = _options.padding, + flipVariations = _options.flipVariations, + _options$allowedAutoP = _options.allowedAutoPlacements, + allowedAutoPlacements = _options$allowedAutoP === void 0 ? placements : _options$allowedAutoP; + var variation = getVariation(placement); + var placements$1 = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) { + return getVariation(placement) === variation; + }) : basePlacements; + var allowedPlacements = placements$1.filter(function (placement) { + return allowedAutoPlacements.indexOf(placement) >= 0; + }); + + if (allowedPlacements.length === 0) { + allowedPlacements = placements$1; + + if (process.env.NODE_ENV !== "production") { + console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, "auto" cannot be used to allow "bottom-start".', 'Use "auto-start" instead.'].join(' ')); + } + } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions... + + + var overflows = allowedPlacements.reduce(function (acc, placement) { + acc[placement] = detectOverflow(state, { + placement: placement, + boundary: boundary, + rootBoundary: rootBoundary, + padding: padding + })[getBasePlacement(placement)]; + return acc; + }, {}); + return Object.keys(overflows).sort(function (a, b) { + return overflows[a] - overflows[b]; + }); + } + + function getExpandedFallbackPlacements(placement) { + if (getBasePlacement(placement) === auto) { + return []; + } + + var oppositePlacement = getOppositePlacement(placement); + return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)]; + } + + function flip(_ref) { + var state = _ref.state, + options = _ref.options, + name = _ref.name; + + if (state.modifiersData[name]._skip) { + return; + } + + var _options$mainAxis = options.mainAxis, + checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis, + _options$altAxis = options.altAxis, + checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis, + specifiedFallbackPlacements = options.fallbackPlacements, + padding = options.padding, + boundary = options.boundary, + rootBoundary = options.rootBoundary, + altBoundary = options.altBoundary, + _options$flipVariatio = options.flipVariations, + flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio, + allowedAutoPlacements = options.allowedAutoPlacements; + var preferredPlacement = state.options.placement; + var basePlacement = getBasePlacement(preferredPlacement); + var isBasePlacement = basePlacement === preferredPlacement; + var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement)); + var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) { + return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, { + placement: placement, + boundary: boundary, + rootBoundary: rootBoundary, + padding: padding, + flipVariations: flipVariations, + allowedAutoPlacements: allowedAutoPlacements + }) : placement); + }, []); + var referenceRect = state.rects.reference; + var popperRect = state.rects.popper; + var checksMap = new Map(); + var makeFallbackChecks = true; + var firstFittingPlacement = placements[0]; + + for (var i = 0; i < placements.length; i++) { + var placement = placements[i]; + + var _basePlacement = getBasePlacement(placement); + + var isStartVariation = getVariation(placement) === start; + var isVertical = [top, bottom].indexOf(_basePlacement) >= 0; + var len = isVertical ? 'width' : 'height'; + var overflow = detectOverflow(state, { + placement: placement, + boundary: boundary, + rootBoundary: rootBoundary, + altBoundary: altBoundary, + padding: padding + }); + var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top; + + if (referenceRect[len] > popperRect[len]) { + mainVariationSide = getOppositePlacement(mainVariationSide); + } + + var altVariationSide = getOppositePlacement(mainVariationSide); + var checks = []; + + if (checkMainAxis) { + checks.push(overflow[_basePlacement] <= 0); + } + + if (checkAltAxis) { + checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0); + } + + if (checks.every(function (check) { + return check; + })) { + firstFittingPlacement = placement; + makeFallbackChecks = false; + break; + } + + checksMap.set(placement, checks); + } + + if (makeFallbackChecks) { + // `2` may be desired in some cases – research later + var numberOfChecks = flipVariations ? 3 : 1; + + var _loop = function _loop(_i) { + var fittingPlacement = placements.find(function (placement) { + var checks = checksMap.get(placement); + + if (checks) { + return checks.slice(0, _i).every(function (check) { + return check; + }); + } + }); + + if (fittingPlacement) { + firstFittingPlacement = fittingPlacement; + return "break"; + } + }; + + for (var _i = numberOfChecks; _i > 0; _i--) { + var _ret = _loop(_i); + + if (_ret === "break") break; + } + } + + if (state.placement !== firstFittingPlacement) { + state.modifiersData[name]._skip = true; + state.placement = firstFittingPlacement; + state.reset = true; + } + } // eslint-disable-next-line import/no-unused-modules + + + var flip$1 = { + name: 'flip', + enabled: true, + phase: 'main', + fn: flip, + requiresIfExists: ['offset'], + data: { + _skip: false + } + }; + + function getSideOffsets(overflow, rect, preventedOffsets) { + if (preventedOffsets === void 0) { + preventedOffsets = { + x: 0, + y: 0 + }; + } + + return { + top: overflow.top - rect.height - preventedOffsets.y, + right: overflow.right - rect.width + preventedOffsets.x, + bottom: overflow.bottom - rect.height + preventedOffsets.y, + left: overflow.left - rect.width - preventedOffsets.x + }; + } + + function isAnySideFullyClipped(overflow) { + return [top, right, bottom, left].some(function (side) { + return overflow[side] >= 0; + }); + } + + function hide(_ref) { + var state = _ref.state, + name = _ref.name; + var referenceRect = state.rects.reference; + var popperRect = state.rects.popper; + var preventedOffsets = state.modifiersData.preventOverflow; + var referenceOverflow = detectOverflow(state, { + elementContext: 'reference' + }); + var popperAltOverflow = detectOverflow(state, { + altBoundary: true + }); + var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect); + var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets); + var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets); + var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets); + state.modifiersData[name] = { + referenceClippingOffsets: referenceClippingOffsets, + popperEscapeOffsets: popperEscapeOffsets, + isReferenceHidden: isReferenceHidden, + hasPopperEscaped: hasPopperEscaped + }; + state.attributes.popper = Object.assign({}, state.attributes.popper, { + 'data-popper-reference-hidden': isReferenceHidden, + 'data-popper-escaped': hasPopperEscaped + }); + } // eslint-disable-next-line import/no-unused-modules + + + var hide$1 = { + name: 'hide', + enabled: true, + phase: 'main', + requiresIfExists: ['preventOverflow'], + fn: hide + }; + + function distanceAndSkiddingToXY(placement, rects, offset) { + var basePlacement = getBasePlacement(placement); + var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1; + + var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, { + placement: placement + })) : offset, + skidding = _ref[0], + distance = _ref[1]; + + skidding = skidding || 0; + distance = (distance || 0) * invertDistance; + return [left, right].indexOf(basePlacement) >= 0 ? { + x: distance, + y: skidding + } : { + x: skidding, + y: distance + }; + } + + function offset(_ref2) { + var state = _ref2.state, + options = _ref2.options, + name = _ref2.name; + var _options$offset = options.offset, + offset = _options$offset === void 0 ? [0, 0] : _options$offset; + var data = placements.reduce(function (acc, placement) { + acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset); + return acc; + }, {}); + var _data$state$placement = data[state.placement], + x = _data$state$placement.x, + y = _data$state$placement.y; + + if (state.modifiersData.popperOffsets != null) { + state.modifiersData.popperOffsets.x += x; + state.modifiersData.popperOffsets.y += y; + } + + state.modifiersData[name] = data; + } // eslint-disable-next-line import/no-unused-modules + + + var offset$1 = { + name: 'offset', + enabled: true, + phase: 'main', + requires: ['popperOffsets'], + fn: offset + }; + + function popperOffsets(_ref) { + var state = _ref.state, + name = _ref.name; // Offsets are the actual position the popper needs to have to be + // properly positioned near its reference element + // This is the most basic placement, and will be adjusted by + // the modifiers in the next step + + state.modifiersData[name] = computeOffsets({ + reference: state.rects.reference, + element: state.rects.popper, + strategy: 'absolute', + placement: state.placement + }); + } // eslint-disable-next-line import/no-unused-modules + + + var popperOffsets$1 = { + name: 'popperOffsets', + enabled: true, + phase: 'read', + fn: popperOffsets, + data: {} + }; + + function getAltAxis(axis) { + return axis === 'x' ? 'y' : 'x'; + } + + function preventOverflow(_ref) { + var state = _ref.state, + options = _ref.options, + name = _ref.name; + var _options$mainAxis = options.mainAxis, + checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis, + _options$altAxis = options.altAxis, + checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis, + boundary = options.boundary, + rootBoundary = options.rootBoundary, + altBoundary = options.altBoundary, + padding = options.padding, + _options$tether = options.tether, + tether = _options$tether === void 0 ? true : _options$tether, + _options$tetherOffset = options.tetherOffset, + tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset; + var overflow = detectOverflow(state, { + boundary: boundary, + rootBoundary: rootBoundary, + padding: padding, + altBoundary: altBoundary + }); + var basePlacement = getBasePlacement(state.placement); + var variation = getVariation(state.placement); + var isBasePlacement = !variation; + var mainAxis = getMainAxisFromPlacement(basePlacement); + var altAxis = getAltAxis(mainAxis); + var popperOffsets = state.modifiersData.popperOffsets; + var referenceRect = state.rects.reference; + var popperRect = state.rects.popper; + var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, { + placement: state.placement + })) : tetherOffset; + var data = { + x: 0, + y: 0 + }; + + if (!popperOffsets) { + return; + } + + if (checkMainAxis || checkAltAxis) { + var mainSide = mainAxis === 'y' ? top : left; + var altSide = mainAxis === 'y' ? bottom : right; + var len = mainAxis === 'y' ? 'height' : 'width'; + var offset = popperOffsets[mainAxis]; + var min$1 = popperOffsets[mainAxis] + overflow[mainSide]; + var max$1 = popperOffsets[mainAxis] - overflow[altSide]; + var additive = tether ? -popperRect[len] / 2 : 0; + var minLen = variation === start ? referenceRect[len] : popperRect[len]; + var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go + // outside the reference bounds + + var arrowElement = state.elements.arrow; + var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : { + width: 0, + height: 0 + }; + var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject(); + var arrowPaddingMin = arrowPaddingObject[mainSide]; + var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want + // to include its full size in the calculation. If the reference is small + // and near the edge of a boundary, the popper can overflow even if the + // reference is not overflowing as well (e.g. virtual elements with no + // width or height) + + var arrowLen = within(0, referenceRect[len], arrowRect[len]); + var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue; + var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue; + var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow); + var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0; + var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0; + var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset; + var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue; + + if (checkMainAxis) { + var preventedOffset = within(tether ? min(min$1, tetherMin) : min$1, offset, tether ? max(max$1, tetherMax) : max$1); + popperOffsets[mainAxis] = preventedOffset; + data[mainAxis] = preventedOffset - offset; + } + + if (checkAltAxis) { + var _mainSide = mainAxis === 'x' ? top : left; + + var _altSide = mainAxis === 'x' ? bottom : right; + + var _offset = popperOffsets[altAxis]; + + var _min = _offset + overflow[_mainSide]; + + var _max = _offset - overflow[_altSide]; + + var _preventedOffset = within(tether ? min(_min, tetherMin) : _min, _offset, tether ? max(_max, tetherMax) : _max); + + popperOffsets[altAxis] = _preventedOffset; + data[altAxis] = _preventedOffset - _offset; + } + } + + state.modifiersData[name] = data; + } // eslint-disable-next-line import/no-unused-modules + + + var preventOverflow$1 = { + name: 'preventOverflow', + enabled: true, + phase: 'main', + fn: preventOverflow, + requiresIfExists: ['offset'] + }; + + function getHTMLElementScroll(element) { + return { + scrollLeft: element.scrollLeft, + scrollTop: element.scrollTop + }; + } + + function getNodeScroll(node) { + if (node === getWindow(node) || !isHTMLElement(node)) { + return getWindowScroll(node); + } else { + return getHTMLElementScroll(node); + } + } + + // Composite means it takes into account transforms as well as layout. + + function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) { + if (isFixed === void 0) { + isFixed = false; + } + + var documentElement = getDocumentElement(offsetParent); + var rect = getBoundingClientRect(elementOrVirtualElement); + var isOffsetParentAnElement = isHTMLElement(offsetParent); + var scroll = { + scrollLeft: 0, + scrollTop: 0 + }; + var offsets = { + x: 0, + y: 0 + }; + + if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) { + if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078 + isScrollParent(documentElement)) { + scroll = getNodeScroll(offsetParent); + } + + if (isHTMLElement(offsetParent)) { + offsets = getBoundingClientRect(offsetParent); + offsets.x += offsetParent.clientLeft; + offsets.y += offsetParent.clientTop; + } else if (documentElement) { + offsets.x = getWindowScrollBarX(documentElement); + } + } + + return { + x: rect.left + scroll.scrollLeft - offsets.x, + y: rect.top + scroll.scrollTop - offsets.y, + width: rect.width, + height: rect.height + }; + } + + function order(modifiers) { + var map = new Map(); + var visited = new Set(); + var result = []; + modifiers.forEach(function (modifier) { + map.set(modifier.name, modifier); + }); // On visiting object, check for its dependencies and visit them recursively + + function sort(modifier) { + visited.add(modifier.name); + var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []); + requires.forEach(function (dep) { + if (!visited.has(dep)) { + var depModifier = map.get(dep); + + if (depModifier) { + sort(depModifier); + } + } + }); + result.push(modifier); + } + + modifiers.forEach(function (modifier) { + if (!visited.has(modifier.name)) { + // check for visited object + sort(modifier); + } + }); + return result; + } + + function orderModifiers(modifiers) { + // order based on dependencies + var orderedModifiers = order(modifiers); // order based on phase + + return modifierPhases.reduce(function (acc, phase) { + return acc.concat(orderedModifiers.filter(function (modifier) { + return modifier.phase === phase; + })); + }, []); + } + + function debounce(fn) { + var pending; + return function () { + if (!pending) { + pending = new Promise(function (resolve) { + Promise.resolve().then(function () { + pending = undefined; + resolve(fn()); + }); + }); + } + + return pending; + }; + } + + function format(str) { + for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + args[_key - 1] = arguments[_key]; + } + + return [].concat(args).reduce(function (p, c) { + return p.replace(/%s/, c); + }, str); + } + + var INVALID_MODIFIER_ERROR = 'Popper: modifier "%s" provided an invalid %s property, expected %s but got %s'; + var MISSING_DEPENDENCY_ERROR = 'Popper: modifier "%s" requires "%s", but "%s" modifier is not available'; + var VALID_PROPERTIES = ['name', 'enabled', 'phase', 'fn', 'effect', 'requires', 'options']; + function validateModifiers(modifiers) { + modifiers.forEach(function (modifier) { + Object.keys(modifier).forEach(function (key) { + switch (key) { + case 'name': + if (typeof modifier.name !== 'string') { + console.error(format(INVALID_MODIFIER_ERROR, String(modifier.name), '"name"', '"string"', "\"" + String(modifier.name) + "\"")); + } + + break; + + case 'enabled': + if (typeof modifier.enabled !== 'boolean') { + console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"enabled"', '"boolean"', "\"" + String(modifier.enabled) + "\"")); + } + + case 'phase': + if (modifierPhases.indexOf(modifier.phase) < 0) { + console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"phase"', "either " + modifierPhases.join(', '), "\"" + String(modifier.phase) + "\"")); + } + + break; + + case 'fn': + if (typeof modifier.fn !== 'function') { + console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"fn"', '"function"', "\"" + String(modifier.fn) + "\"")); + } + + break; + + case 'effect': + if (typeof modifier.effect !== 'function') { + console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"effect"', '"function"', "\"" + String(modifier.fn) + "\"")); + } + + break; + + case 'requires': + if (!Array.isArray(modifier.requires)) { + console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"requires"', '"array"', "\"" + String(modifier.requires) + "\"")); + } + + break; + + case 'requiresIfExists': + if (!Array.isArray(modifier.requiresIfExists)) { + console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"requiresIfExists"', '"array"', "\"" + String(modifier.requiresIfExists) + "\"")); + } + + break; + + case 'options': + case 'data': + break; + + default: + console.error("PopperJS: an invalid property has been provided to the \"" + modifier.name + "\" modifier, valid properties are " + VALID_PROPERTIES.map(function (s) { + return "\"" + s + "\""; + }).join(', ') + "; but \"" + key + "\" was provided."); + } + + modifier.requires && modifier.requires.forEach(function (requirement) { + if (modifiers.find(function (mod) { + return mod.name === requirement; + }) == null) { + console.error(format(MISSING_DEPENDENCY_ERROR, String(modifier.name), requirement, requirement)); + } + }); + }); + }); + } + + function uniqueBy(arr, fn) { + var identifiers = new Set(); + return arr.filter(function (item) { + var identifier = fn(item); + + if (!identifiers.has(identifier)) { + identifiers.add(identifier); + return true; + } + }); + } + + function mergeByName(modifiers) { + var merged = modifiers.reduce(function (merged, current) { + var existing = merged[current.name]; + merged[current.name] = existing ? Object.assign({}, existing, current, { + options: Object.assign({}, existing.options, current.options), + data: Object.assign({}, existing.data, current.data) + }) : current; + return merged; + }, {}); // IE11 does not support Object.values + + return Object.keys(merged).map(function (key) { + return merged[key]; + }); + } + + var INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.'; + var INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.'; + var DEFAULT_OPTIONS = { + placement: 'bottom', + modifiers: [], + strategy: 'absolute' + }; + + function areValidElements() { + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + return !args.some(function (element) { + return !(element && typeof element.getBoundingClientRect === 'function'); + }); + } + + function popperGenerator(generatorOptions) { + if (generatorOptions === void 0) { + generatorOptions = {}; + } + + var _generatorOptions = generatorOptions, + _generatorOptions$def = _generatorOptions.defaultModifiers, + defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def, + _generatorOptions$def2 = _generatorOptions.defaultOptions, + defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2; + return function createPopper(reference, popper, options) { + if (options === void 0) { + options = defaultOptions; + } + + var state = { + placement: 'bottom', + orderedModifiers: [], + options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions), + modifiersData: {}, + elements: { + reference: reference, + popper: popper + }, + attributes: {}, + styles: {} + }; + var effectCleanupFns = []; + var isDestroyed = false; + var instance = { + state: state, + setOptions: function setOptions(options) { + cleanupModifierEffects(); + state.options = Object.assign({}, defaultOptions, state.options, options); + state.scrollParents = { + reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [], + popper: listScrollParents(popper) + }; // Orders the modifiers based on their dependencies and `phase` + // properties + + var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers + + state.orderedModifiers = orderedModifiers.filter(function (m) { + return m.enabled; + }); // Validate the provided modifiers so that the consumer will get warned + // if one of the modifiers is invalid for any reason + + if (process.env.NODE_ENV !== "production") { + var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) { + var name = _ref.name; + return name; + }); + validateModifiers(modifiers); + + if (getBasePlacement(state.options.placement) === auto) { + var flipModifier = state.orderedModifiers.find(function (_ref2) { + var name = _ref2.name; + return name === 'flip'; + }); + + if (!flipModifier) { + console.error(['Popper: "auto" placements require the "flip" modifier be', 'present and enabled to work.'].join(' ')); + } + } + + var _getComputedStyle = getComputedStyle$1(popper), + marginTop = _getComputedStyle.marginTop, + marginRight = _getComputedStyle.marginRight, + marginBottom = _getComputedStyle.marginBottom, + marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can + // cause bugs with positioning, so we'll warn the consumer + + + if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) { + return parseFloat(margin); + })) { + console.warn(['Popper: CSS "margin" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' ')); + } + } + + runModifierEffects(); + return instance.update(); + }, + // Sync update – it will always be executed, even if not necessary. This + // is useful for low frequency updates where sync behavior simplifies the + // logic. + // For high frequency updates (e.g. `resize` and `scroll` events), always + // prefer the async Popper#update method + forceUpdate: function forceUpdate() { + if (isDestroyed) { + return; + } + + var _state$elements = state.elements, + reference = _state$elements.reference, + popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements + // anymore + + if (!areValidElements(reference, popper)) { + if (process.env.NODE_ENV !== "production") { + console.error(INVALID_ELEMENT_ERROR); + } + + return; + } // Store the reference and popper rects to be read by modifiers + + + state.rects = { + reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'), + popper: getLayoutRect(popper) + }; // Modifiers have the ability to reset the current update cycle. The + // most common use case for this is the `flip` modifier changing the + // placement, which then needs to re-run all the modifiers, because the + // logic was previously ran for the previous placement and is therefore + // stale/incorrect + + state.reset = false; + state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier + // is filled with the initial data specified by the modifier. This means + // it doesn't persist and is fresh on each update. + // To ensure persistent data, use `${name}#persistent` + + state.orderedModifiers.forEach(function (modifier) { + return state.modifiersData[modifier.name] = Object.assign({}, modifier.data); + }); + var __debug_loops__ = 0; + + for (var index = 0; index < state.orderedModifiers.length; index++) { + if (process.env.NODE_ENV !== "production") { + __debug_loops__ += 1; + + if (__debug_loops__ > 100) { + console.error(INFINITE_LOOP_ERROR); + break; + } + } + + if (state.reset === true) { + state.reset = false; + index = -1; + continue; + } + + var _state$orderedModifie = state.orderedModifiers[index], + fn = _state$orderedModifie.fn, + _state$orderedModifie2 = _state$orderedModifie.options, + _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2, + name = _state$orderedModifie.name; + + if (typeof fn === 'function') { + state = fn({ + state: state, + options: _options, + name: name, + instance: instance + }) || state; + } + } + }, + // Async and optimistically optimized update – it will not be executed if + // not necessary (debounced to run at most once-per-tick) + update: debounce(function () { + return new Promise(function (resolve) { + instance.forceUpdate(); + resolve(state); + }); + }), + destroy: function destroy() { + cleanupModifierEffects(); + isDestroyed = true; + } + }; + + if (!areValidElements(reference, popper)) { + if (process.env.NODE_ENV !== "production") { + console.error(INVALID_ELEMENT_ERROR); + } + + return instance; + } + + instance.setOptions(options).then(function (state) { + if (!isDestroyed && options.onFirstUpdate) { + options.onFirstUpdate(state); + } + }); // Modifiers have the ability to execute arbitrary code before the first + // update cycle runs. They will be executed in the same order as the update + // cycle. This is useful when a modifier adds some persistent data that + // other modifiers need to use, but the modifier is run after the dependent + // one. + + function runModifierEffects() { + state.orderedModifiers.forEach(function (_ref3) { + var name = _ref3.name, + _ref3$options = _ref3.options, + options = _ref3$options === void 0 ? {} : _ref3$options, + effect = _ref3.effect; + + if (typeof effect === 'function') { + var cleanupFn = effect({ + state: state, + name: name, + instance: instance, + options: options + }); + + var noopFn = function noopFn() {}; + + effectCleanupFns.push(cleanupFn || noopFn); + } + }); + } + + function cleanupModifierEffects() { + effectCleanupFns.forEach(function (fn) { + return fn(); + }); + effectCleanupFns = []; + } + + return instance; + }; + } + var createPopper$2 = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules + + var defaultModifiers$1 = [eventListeners, popperOffsets$1, computeStyles$1, applyStyles$1]; + var createPopper$1 = /*#__PURE__*/popperGenerator({ + defaultModifiers: defaultModifiers$1 + }); // eslint-disable-next-line import/no-unused-modules + + var defaultModifiers = [eventListeners, popperOffsets$1, computeStyles$1, applyStyles$1, offset$1, flip$1, preventOverflow$1, arrow$1, hide$1]; + var createPopper = /*#__PURE__*/popperGenerator({ + defaultModifiers: defaultModifiers + }); // eslint-disable-next-line import/no-unused-modules + + var Popper = /*#__PURE__*/Object.freeze({ + __proto__: null, + popperGenerator: popperGenerator, + detectOverflow: detectOverflow, + createPopperBase: createPopper$2, + createPopper: createPopper, + createPopperLite: createPopper$1, + top: top, + bottom: bottom, + right: right, + left: left, + auto: auto, + basePlacements: basePlacements, + start: start, + end: end, + clippingParents: clippingParents, + viewport: viewport, + popper: popper, + reference: reference, + variationPlacements: variationPlacements, + placements: placements, + beforeRead: beforeRead, + read: read, + afterRead: afterRead, + beforeMain: beforeMain, + main: main, + afterMain: afterMain, + beforeWrite: beforeWrite, + write: write, + afterWrite: afterWrite, + modifierPhases: modifierPhases, + applyStyles: applyStyles$1, + arrow: arrow$1, + computeStyles: computeStyles$1, + eventListeners: eventListeners, + flip: flip$1, + hide: hide$1, + offset: offset$1, + popperOffsets: popperOffsets$1, + preventOverflow: preventOverflow$1 + }); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): dropdown.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$8 = 'dropdown'; + const DATA_KEY$7 = 'bs.dropdown'; + const EVENT_KEY$7 = `.${DATA_KEY$7}`; + const DATA_API_KEY$4 = '.data-api'; + const ESCAPE_KEY$2 = 'Escape'; + const SPACE_KEY = 'Space'; + const TAB_KEY = 'Tab'; + const ARROW_UP_KEY = 'ArrowUp'; + const ARROW_DOWN_KEY = 'ArrowDown'; + const RIGHT_MOUSE_BUTTON = 2; // MouseEvent.button value for the secondary button, usually the right button + + const REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY$2}`); + const EVENT_HIDE$4 = `hide${EVENT_KEY$7}`; + const EVENT_HIDDEN$4 = `hidden${EVENT_KEY$7}`; + const EVENT_SHOW$4 = `show${EVENT_KEY$7}`; + const EVENT_SHOWN$4 = `shown${EVENT_KEY$7}`; + const EVENT_CLICK = `click${EVENT_KEY$7}`; + const EVENT_CLICK_DATA_API$3 = `click${EVENT_KEY$7}${DATA_API_KEY$4}`; + const EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY$7}${DATA_API_KEY$4}`; + const EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY$7}${DATA_API_KEY$4}`; + const CLASS_NAME_SHOW$7 = 'show'; + const CLASS_NAME_DROPUP = 'dropup'; + const CLASS_NAME_DROPEND = 'dropend'; + const CLASS_NAME_DROPSTART = 'dropstart'; + const CLASS_NAME_NAVBAR = 'navbar'; + const SELECTOR_DATA_TOGGLE$3 = '[data-bs-toggle="dropdown"]'; + const SELECTOR_MENU = '.dropdown-menu'; + const SELECTOR_NAVBAR_NAV = '.navbar-nav'; + const SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'; + const PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'; + const PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'; + const PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'; + const PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'; + const PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'; + const PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'; + const Default$7 = { + offset: [0, 2], + boundary: 'clippingParents', + reference: 'toggle', + display: 'dynamic', + popperConfig: null, + autoClose: true + }; + const DefaultType$7 = { + offset: '(array|string|function)', + boundary: '(string|element)', + reference: '(string|element|object)', + display: 'string', + popperConfig: '(null|object|function)', + autoClose: '(boolean|string)' + }; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Dropdown extends BaseComponent { + constructor(element, config) { + super(element); + this._popper = null; + this._config = this._getConfig(config); + this._menu = this._getMenuElement(); + this._inNavbar = this._detectNavbar(); + + this._addEventListeners(); + } // Getters + + + static get Default() { + return Default$7; + } + + static get DefaultType() { + return DefaultType$7; + } + + static get NAME() { + return NAME$8; + } // Public + + + toggle() { + if (isDisabled(this._element)) { + return; + } + + const isActive = this._element.classList.contains(CLASS_NAME_SHOW$7); + + if (isActive) { + this.hide(); + return; + } + + this.show(); + } + + show() { + if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW$7)) { + return; + } + + const parent = Dropdown.getParentFromElement(this._element); + const relatedTarget = { + relatedTarget: this._element + }; + const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$4, relatedTarget); + + if (showEvent.defaultPrevented) { + return; + } // Totally disable Popper for Dropdowns in Navbar + + + if (this._inNavbar) { + Manipulator.setDataAttribute(this._menu, 'popper', 'none'); + } else { + if (typeof Popper === 'undefined') { + throw new TypeError('Bootstrap\'s dropdowns require Popper (https://popper.js.org)'); + } + + let referenceElement = this._element; + + if (this._config.reference === 'parent') { + referenceElement = parent; + } else if (isElement$1(this._config.reference)) { + referenceElement = getElement(this._config.reference); + } else if (typeof this._config.reference === 'object') { + referenceElement = this._config.reference; + } + + const popperConfig = this._getPopperConfig(); + + const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false); + this._popper = createPopper(referenceElement, this._menu, popperConfig); + + if (isDisplayStatic) { + Manipulator.setDataAttribute(this._menu, 'popper', 'static'); + } + } // If this is a touch-enabled device we add extra + // empty mouseover listeners to the body's immediate children; + // only needed because of broken event delegation on iOS + // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html + + + if ('ontouchstart' in document.documentElement && !parent.closest(SELECTOR_NAVBAR_NAV)) { + [].concat(...document.body.children).forEach(elem => EventHandler.on(elem, 'mouseover', noop)); + } + + this._element.focus(); + + this._element.setAttribute('aria-expanded', true); + + this._menu.classList.toggle(CLASS_NAME_SHOW$7); + + this._element.classList.toggle(CLASS_NAME_SHOW$7); + + EventHandler.trigger(this._element, EVENT_SHOWN$4, relatedTarget); + } + + hide() { + if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW$7)) { + return; + } + + const relatedTarget = { + relatedTarget: this._element + }; + + this._completeHide(relatedTarget); + } + + dispose() { + if (this._popper) { + this._popper.destroy(); + } + + super.dispose(); + } + + update() { + this._inNavbar = this._detectNavbar(); + + if (this._popper) { + this._popper.update(); + } + } // Private + + + _addEventListeners() { + EventHandler.on(this._element, EVENT_CLICK, event => { + event.preventDefault(); + this.toggle(); + }); + } + + _completeHide(relatedTarget) { + const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$4, relatedTarget); + + if (hideEvent.defaultPrevented) { + return; + } // If this is a touch-enabled device we remove the extra + // empty mouseover listeners we added for iOS support + + + if ('ontouchstart' in document.documentElement) { + [].concat(...document.body.children).forEach(elem => EventHandler.off(elem, 'mouseover', noop)); + } + + if (this._popper) { + this._popper.destroy(); + } + + this._menu.classList.remove(CLASS_NAME_SHOW$7); + + this._element.classList.remove(CLASS_NAME_SHOW$7); + + this._element.setAttribute('aria-expanded', 'false'); + + Manipulator.removeDataAttribute(this._menu, 'popper'); + EventHandler.trigger(this._element, EVENT_HIDDEN$4, relatedTarget); + } + + _getConfig(config) { + config = { ...this.constructor.Default, + ...Manipulator.getDataAttributes(this._element), + ...config + }; + typeCheckConfig(NAME$8, config, this.constructor.DefaultType); + + if (typeof config.reference === 'object' && !isElement$1(config.reference) && typeof config.reference.getBoundingClientRect !== 'function') { + // Popper virtual elements require a getBoundingClientRect method + throw new TypeError(`${NAME$8.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`); + } + + return config; + } + + _getMenuElement() { + return SelectorEngine.next(this._element, SELECTOR_MENU)[0]; + } + + _getPlacement() { + const parentDropdown = this._element.parentNode; + + if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) { + return PLACEMENT_RIGHT; + } + + if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) { + return PLACEMENT_LEFT; + } // We need to trim the value because custom properties can also include spaces + + + const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'; + + if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) { + return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP; + } + + return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM; + } + + _detectNavbar() { + return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null; + } + + _getOffset() { + const { + offset + } = this._config; + + if (typeof offset === 'string') { + return offset.split(',').map(val => Number.parseInt(val, 10)); + } + + if (typeof offset === 'function') { + return popperData => offset(popperData, this._element); + } + + return offset; + } + + _getPopperConfig() { + const defaultBsPopperConfig = { + placement: this._getPlacement(), + modifiers: [{ + name: 'preventOverflow', + options: { + boundary: this._config.boundary + } + }, { + name: 'offset', + options: { + offset: this._getOffset() + } + }] + }; // Disable Popper if we have a static display + + if (this._config.display === 'static') { + defaultBsPopperConfig.modifiers = [{ + name: 'applyStyles', + enabled: false + }]; + } + + return { ...defaultBsPopperConfig, + ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig) + }; + } + + _selectMenuItem({ + key, + target + }) { + const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible); + + if (!items.length) { + return; + } // if target isn't included in items (e.g. when expanding the dropdown) + // allow cycling to get the last item in case key equals ARROW_UP_KEY + + + getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus(); + } // Static + + + static dropdownInterface(element, config) { + const data = Dropdown.getOrCreateInstance(element, config); + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + } + } + + static jQueryInterface(config) { + return this.each(function () { + Dropdown.dropdownInterface(this, config); + }); + } + + static clearMenus(event) { + if (event && (event.button === RIGHT_MOUSE_BUTTON || event.type === 'keyup' && event.key !== TAB_KEY)) { + return; + } + + const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE$3); + + for (let i = 0, len = toggles.length; i < len; i++) { + const context = Dropdown.getInstance(toggles[i]); + + if (!context || context._config.autoClose === false) { + continue; + } + + if (!context._element.classList.contains(CLASS_NAME_SHOW$7)) { + continue; + } + + const relatedTarget = { + relatedTarget: context._element + }; + + if (event) { + const composedPath = event.composedPath(); + const isMenuTarget = composedPath.includes(context._menu); + + if (composedPath.includes(context._element) || context._config.autoClose === 'inside' && !isMenuTarget || context._config.autoClose === 'outside' && isMenuTarget) { + continue; + } // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu + + + if (context._menu.contains(event.target) && (event.type === 'keyup' && event.key === TAB_KEY || /input|select|option|textarea|form/i.test(event.target.tagName))) { + continue; + } + + if (event.type === 'click') { + relatedTarget.clickEvent = event; + } + } + + context._completeHide(relatedTarget); + } + } + + static getParentFromElement(element) { + return getElementFromSelector(element) || element.parentNode; + } + + static dataApiKeydownHandler(event) { + // If not input/textarea: + // - And not a key in REGEXP_KEYDOWN => not a dropdown command + // If input/textarea: + // - If space key => not a dropdown command + // - If key is other than escape + // - If key is not up or down => not a dropdown command + // - If trigger inside the menu => not a dropdown command + if (/input|textarea/i.test(event.target.tagName) ? event.key === SPACE_KEY || event.key !== ESCAPE_KEY$2 && (event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY || event.target.closest(SELECTOR_MENU)) : !REGEXP_KEYDOWN.test(event.key)) { + return; + } + + const isActive = this.classList.contains(CLASS_NAME_SHOW$7); + + if (!isActive && event.key === ESCAPE_KEY$2) { + return; + } + + event.preventDefault(); + event.stopPropagation(); + + if (isDisabled(this)) { + return; + } + + const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0]; + + if (event.key === ESCAPE_KEY$2) { + getToggleButton().focus(); + Dropdown.clearMenus(); + return; + } + + if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) { + if (!isActive) { + getToggleButton().click(); + } + + Dropdown.getInstance(getToggleButton())._selectMenuItem(event); + + return; + } + + if (!isActive || event.key === SPACE_KEY) { + Dropdown.clearMenus(); + } + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE$3, Dropdown.dataApiKeydownHandler); + EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler); + EventHandler.on(document, EVENT_CLICK_DATA_API$3, Dropdown.clearMenus); + EventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus); + EventHandler.on(document, EVENT_CLICK_DATA_API$3, SELECTOR_DATA_TOGGLE$3, function (event) { + event.preventDefault(); + Dropdown.dropdownInterface(this); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Dropdown to jQuery only if jQuery is present + */ + + defineJQueryPlugin(Dropdown); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): util/scrollBar.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + const SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'; + const SELECTOR_STICKY_CONTENT = '.sticky-top'; + + class ScrollBarHelper { + constructor() { + this._element = document.body; + } + + getWidth() { + // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes + const documentWidth = document.documentElement.clientWidth; + return Math.abs(window.innerWidth - documentWidth); + } + + hide() { + const width = this.getWidth(); + + this._disableOverFlow(); // give padding to element to balance the hidden scrollbar width + + + this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width); // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth + + + this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width); + + this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width); + } + + _disableOverFlow() { + this._saveInitialAttribute(this._element, 'overflow'); + + this._element.style.overflow = 'hidden'; + } + + _setElementAttributes(selector, styleProp, callback) { + const scrollbarWidth = this.getWidth(); + + const manipulationCallBack = element => { + if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) { + return; + } + + this._saveInitialAttribute(element, styleProp); + + const calculatedValue = window.getComputedStyle(element)[styleProp]; + element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`; + }; + + this._applyManipulationCallback(selector, manipulationCallBack); + } + + reset() { + this._resetElementAttributes(this._element, 'overflow'); + + this._resetElementAttributes(this._element, 'paddingRight'); + + this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight'); + + this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight'); + } + + _saveInitialAttribute(element, styleProp) { + const actualValue = element.style[styleProp]; + + if (actualValue) { + Manipulator.setDataAttribute(element, styleProp, actualValue); + } + } + + _resetElementAttributes(selector, styleProp) { + const manipulationCallBack = element => { + const value = Manipulator.getDataAttribute(element, styleProp); + + if (typeof value === 'undefined') { + element.style.removeProperty(styleProp); + } else { + Manipulator.removeDataAttribute(element, styleProp); + element.style[styleProp] = value; + } + }; + + this._applyManipulationCallback(selector, manipulationCallBack); + } + + _applyManipulationCallback(selector, callBack) { + if (isElement$1(selector)) { + callBack(selector); + } else { + SelectorEngine.find(selector, this._element).forEach(callBack); + } + } + + isOverflowing() { + return this.getWidth() > 0; + } + + } + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): util/backdrop.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + const Default$6 = { + isVisible: true, + // if false, we use the backdrop helper without adding any element to the dom + isAnimated: false, + rootElement: 'body', + // give the choice to place backdrop under different elements + clickCallback: null + }; + const DefaultType$6 = { + isVisible: 'boolean', + isAnimated: 'boolean', + rootElement: '(element|string)', + clickCallback: '(function|null)' + }; + const NAME$7 = 'backdrop'; + const CLASS_NAME_BACKDROP = 'modal-backdrop'; + const CLASS_NAME_FADE$5 = 'fade'; + const CLASS_NAME_SHOW$6 = 'show'; + const EVENT_MOUSEDOWN = `mousedown.bs.${NAME$7}`; + + class Backdrop { + constructor(config) { + this._config = this._getConfig(config); + this._isAppended = false; + this._element = null; + } + + show(callback) { + if (!this._config.isVisible) { + execute(callback); + return; + } + + this._append(); + + if (this._config.isAnimated) { + reflow(this._getElement()); + } + + this._getElement().classList.add(CLASS_NAME_SHOW$6); + + this._emulateAnimation(() => { + execute(callback); + }); + } + + hide(callback) { + if (!this._config.isVisible) { + execute(callback); + return; + } + + this._getElement().classList.remove(CLASS_NAME_SHOW$6); + + this._emulateAnimation(() => { + this.dispose(); + execute(callback); + }); + } // Private + + + _getElement() { + if (!this._element) { + const backdrop = document.createElement('div'); + backdrop.className = CLASS_NAME_BACKDROP; + + if (this._config.isAnimated) { + backdrop.classList.add(CLASS_NAME_FADE$5); + } + + this._element = backdrop; + } + + return this._element; + } + + _getConfig(config) { + config = { ...Default$6, + ...(typeof config === 'object' ? config : {}) + }; // use getElement() with the default "body" to get a fresh Element on each instantiation + + config.rootElement = getElement(config.rootElement); + typeCheckConfig(NAME$7, config, DefaultType$6); + return config; + } + + _append() { + if (this._isAppended) { + return; + } + + this._config.rootElement.appendChild(this._getElement()); + + EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => { + execute(this._config.clickCallback); + }); + this._isAppended = true; + } + + dispose() { + if (!this._isAppended) { + return; + } + + EventHandler.off(this._element, EVENT_MOUSEDOWN); + + this._element.remove(); + + this._isAppended = false; + } + + _emulateAnimation(callback) { + executeAfterTransition(callback, this._getElement(), this._config.isAnimated); + } + + } + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): modal.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$6 = 'modal'; + const DATA_KEY$6 = 'bs.modal'; + const EVENT_KEY$6 = `.${DATA_KEY$6}`; + const DATA_API_KEY$3 = '.data-api'; + const ESCAPE_KEY$1 = 'Escape'; + const Default$5 = { + backdrop: true, + keyboard: true, + focus: true + }; + const DefaultType$5 = { + backdrop: '(boolean|string)', + keyboard: 'boolean', + focus: 'boolean' + }; + const EVENT_HIDE$3 = `hide${EVENT_KEY$6}`; + const EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY$6}`; + const EVENT_HIDDEN$3 = `hidden${EVENT_KEY$6}`; + const EVENT_SHOW$3 = `show${EVENT_KEY$6}`; + const EVENT_SHOWN$3 = `shown${EVENT_KEY$6}`; + const EVENT_FOCUSIN$2 = `focusin${EVENT_KEY$6}`; + const EVENT_RESIZE = `resize${EVENT_KEY$6}`; + const EVENT_CLICK_DISMISS$2 = `click.dismiss${EVENT_KEY$6}`; + const EVENT_KEYDOWN_DISMISS$1 = `keydown.dismiss${EVENT_KEY$6}`; + const EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY$6}`; + const EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY$6}`; + const EVENT_CLICK_DATA_API$2 = `click${EVENT_KEY$6}${DATA_API_KEY$3}`; + const CLASS_NAME_OPEN = 'modal-open'; + const CLASS_NAME_FADE$4 = 'fade'; + const CLASS_NAME_SHOW$5 = 'show'; + const CLASS_NAME_STATIC = 'modal-static'; + const SELECTOR_DIALOG = '.modal-dialog'; + const SELECTOR_MODAL_BODY = '.modal-body'; + const SELECTOR_DATA_TOGGLE$2 = '[data-bs-toggle="modal"]'; + const SELECTOR_DATA_DISMISS$2 = '[data-bs-dismiss="modal"]'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Modal extends BaseComponent { + constructor(element, config) { + super(element); + this._config = this._getConfig(config); + this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element); + this._backdrop = this._initializeBackDrop(); + this._isShown = false; + this._ignoreBackdropClick = false; + this._isTransitioning = false; + this._scrollBar = new ScrollBarHelper(); + } // Getters + + + static get Default() { + return Default$5; + } + + static get NAME() { + return NAME$6; + } // Public + + + toggle(relatedTarget) { + return this._isShown ? this.hide() : this.show(relatedTarget); + } + + show(relatedTarget) { + if (this._isShown || this._isTransitioning) { + return; + } + + const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$3, { + relatedTarget + }); + + if (showEvent.defaultPrevented) { + return; + } + + this._isShown = true; + + if (this._isAnimated()) { + this._isTransitioning = true; + } + + this._scrollBar.hide(); + + document.body.classList.add(CLASS_NAME_OPEN); + + this._adjustDialog(); + + this._setEscapeEvent(); + + this._setResizeEvent(); + + EventHandler.on(this._element, EVENT_CLICK_DISMISS$2, SELECTOR_DATA_DISMISS$2, event => this.hide(event)); + EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => { + EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => { + if (event.target === this._element) { + this._ignoreBackdropClick = true; + } + }); + }); + + this._showBackdrop(() => this._showElement(relatedTarget)); + } + + hide(event) { + if (event && ['A', 'AREA'].includes(event.target.tagName)) { + event.preventDefault(); + } + + if (!this._isShown || this._isTransitioning) { + return; + } + + const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$3); + + if (hideEvent.defaultPrevented) { + return; + } + + this._isShown = false; + + const isAnimated = this._isAnimated(); + + if (isAnimated) { + this._isTransitioning = true; + } + + this._setEscapeEvent(); + + this._setResizeEvent(); + + EventHandler.off(document, EVENT_FOCUSIN$2); + + this._element.classList.remove(CLASS_NAME_SHOW$5); + + EventHandler.off(this._element, EVENT_CLICK_DISMISS$2); + EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS); + + this._queueCallback(() => this._hideModal(), this._element, isAnimated); + } + + dispose() { + [window, this._dialog].forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY$6)); + + this._backdrop.dispose(); + + super.dispose(); + /** + * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API` + * Do not move `document` in `htmlElements` array + * It will remove `EVENT_CLICK_DATA_API` event that should remain + */ + + EventHandler.off(document, EVENT_FOCUSIN$2); + } + + handleUpdate() { + this._adjustDialog(); + } // Private + + + _initializeBackDrop() { + return new Backdrop({ + isVisible: Boolean(this._config.backdrop), + // 'static' option will be translated to true, and booleans will keep their value + isAnimated: this._isAnimated() + }); + } + + _getConfig(config) { + config = { ...Default$5, + ...Manipulator.getDataAttributes(this._element), + ...(typeof config === 'object' ? config : {}) + }; + typeCheckConfig(NAME$6, config, DefaultType$5); + return config; + } + + _showElement(relatedTarget) { + const isAnimated = this._isAnimated(); + + const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog); + + if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) { + // Don't move modal's DOM position + document.body.appendChild(this._element); + } + + this._element.style.display = 'block'; + + this._element.removeAttribute('aria-hidden'); + + this._element.setAttribute('aria-modal', true); + + this._element.setAttribute('role', 'dialog'); + + this._element.scrollTop = 0; + + if (modalBody) { + modalBody.scrollTop = 0; + } + + if (isAnimated) { + reflow(this._element); + } + + this._element.classList.add(CLASS_NAME_SHOW$5); + + if (this._config.focus) { + this._enforceFocus(); + } + + const transitionComplete = () => { + if (this._config.focus) { + this._element.focus(); + } + + this._isTransitioning = false; + EventHandler.trigger(this._element, EVENT_SHOWN$3, { + relatedTarget + }); + }; + + this._queueCallback(transitionComplete, this._dialog, isAnimated); + } + + _enforceFocus() { + EventHandler.off(document, EVENT_FOCUSIN$2); // guard against infinite focus loop + + EventHandler.on(document, EVENT_FOCUSIN$2, event => { + if (document !== event.target && this._element !== event.target && !this._element.contains(event.target)) { + this._element.focus(); + } + }); + } + + _setEscapeEvent() { + if (this._isShown) { + EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS$1, event => { + if (this._config.keyboard && event.key === ESCAPE_KEY$1) { + event.preventDefault(); + this.hide(); + } else if (!this._config.keyboard && event.key === ESCAPE_KEY$1) { + this._triggerBackdropTransition(); + } + }); + } else { + EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS$1); + } + } + + _setResizeEvent() { + if (this._isShown) { + EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog()); + } else { + EventHandler.off(window, EVENT_RESIZE); + } + } + + _hideModal() { + this._element.style.display = 'none'; + + this._element.setAttribute('aria-hidden', true); + + this._element.removeAttribute('aria-modal'); + + this._element.removeAttribute('role'); + + this._isTransitioning = false; + + this._backdrop.hide(() => { + document.body.classList.remove(CLASS_NAME_OPEN); + + this._resetAdjustments(); + + this._scrollBar.reset(); + + EventHandler.trigger(this._element, EVENT_HIDDEN$3); + }); + } + + _showBackdrop(callback) { + EventHandler.on(this._element, EVENT_CLICK_DISMISS$2, event => { + if (this._ignoreBackdropClick) { + this._ignoreBackdropClick = false; + return; + } + + if (event.target !== event.currentTarget) { + return; + } + + if (this._config.backdrop === true) { + this.hide(); + } else if (this._config.backdrop === 'static') { + this._triggerBackdropTransition(); + } + }); + + this._backdrop.show(callback); + } + + _isAnimated() { + return this._element.classList.contains(CLASS_NAME_FADE$4); + } + + _triggerBackdropTransition() { + const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED); + + if (hideEvent.defaultPrevented) { + return; + } + + const { + classList, + scrollHeight, + style + } = this._element; + const isModalOverflowing = scrollHeight > document.documentElement.clientHeight; // return if the following background transition hasn't yet completed + + if (!isModalOverflowing && style.overflowY === 'hidden' || classList.contains(CLASS_NAME_STATIC)) { + return; + } + + if (!isModalOverflowing) { + style.overflowY = 'hidden'; + } + + classList.add(CLASS_NAME_STATIC); + + this._queueCallback(() => { + classList.remove(CLASS_NAME_STATIC); + + if (!isModalOverflowing) { + this._queueCallback(() => { + style.overflowY = ''; + }, this._dialog); + } + }, this._dialog); + + this._element.focus(); + } // ---------------------------------------------------------------------- + // the following methods are used to handle overflowing modals + // ---------------------------------------------------------------------- + + + _adjustDialog() { + const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight; + + const scrollbarWidth = this._scrollBar.getWidth(); + + const isBodyOverflowing = scrollbarWidth > 0; + + if (!isBodyOverflowing && isModalOverflowing && !isRTL() || isBodyOverflowing && !isModalOverflowing && isRTL()) { + this._element.style.paddingLeft = `${scrollbarWidth}px`; + } + + if (isBodyOverflowing && !isModalOverflowing && !isRTL() || !isBodyOverflowing && isModalOverflowing && isRTL()) { + this._element.style.paddingRight = `${scrollbarWidth}px`; + } + } + + _resetAdjustments() { + this._element.style.paddingLeft = ''; + this._element.style.paddingRight = ''; + } // Static + + + static jQueryInterface(config, relatedTarget) { + return this.each(function () { + const data = Modal.getOrCreateInstance(this, config); + + if (typeof config !== 'string') { + return; + } + + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](relatedTarget); + }); + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_CLICK_DATA_API$2, SELECTOR_DATA_TOGGLE$2, function (event) { + const target = getElementFromSelector(this); + + if (['A', 'AREA'].includes(this.tagName)) { + event.preventDefault(); + } + + EventHandler.one(target, EVENT_SHOW$3, showEvent => { + if (showEvent.defaultPrevented) { + // only register focus restorer if modal will actually get shown + return; + } + + EventHandler.one(target, EVENT_HIDDEN$3, () => { + if (isVisible(this)) { + this.focus(); + } + }); + }); + const data = Modal.getOrCreateInstance(target); + data.toggle(this); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Modal to jQuery only if jQuery is present + */ + + defineJQueryPlugin(Modal); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): offcanvas.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$5 = 'offcanvas'; + const DATA_KEY$5 = 'bs.offcanvas'; + const EVENT_KEY$5 = `.${DATA_KEY$5}`; + const DATA_API_KEY$2 = '.data-api'; + const EVENT_LOAD_DATA_API$1 = `load${EVENT_KEY$5}${DATA_API_KEY$2}`; + const ESCAPE_KEY = 'Escape'; + const Default$4 = { + backdrop: true, + keyboard: true, + scroll: false + }; + const DefaultType$4 = { + backdrop: 'boolean', + keyboard: 'boolean', + scroll: 'boolean' + }; + const CLASS_NAME_SHOW$4 = 'show'; + const OPEN_SELECTOR = '.offcanvas.show'; + const EVENT_SHOW$2 = `show${EVENT_KEY$5}`; + const EVENT_SHOWN$2 = `shown${EVENT_KEY$5}`; + const EVENT_HIDE$2 = `hide${EVENT_KEY$5}`; + const EVENT_HIDDEN$2 = `hidden${EVENT_KEY$5}`; + const EVENT_FOCUSIN$1 = `focusin${EVENT_KEY$5}`; + const EVENT_CLICK_DATA_API$1 = `click${EVENT_KEY$5}${DATA_API_KEY$2}`; + const EVENT_CLICK_DISMISS$1 = `click.dismiss${EVENT_KEY$5}`; + const EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY$5}`; + const SELECTOR_DATA_DISMISS$1 = '[data-bs-dismiss="offcanvas"]'; + const SELECTOR_DATA_TOGGLE$1 = '[data-bs-toggle="offcanvas"]'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Offcanvas extends BaseComponent { + constructor(element, config) { + super(element); + this._config = this._getConfig(config); + this._isShown = false; + this._backdrop = this._initializeBackDrop(); + + this._addEventListeners(); + } // Getters + + + static get NAME() { + return NAME$5; + } + + static get Default() { + return Default$4; + } // Public + + + toggle(relatedTarget) { + return this._isShown ? this.hide() : this.show(relatedTarget); + } + + show(relatedTarget) { + if (this._isShown) { + return; + } + + const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$2, { + relatedTarget + }); + + if (showEvent.defaultPrevented) { + return; + } + + this._isShown = true; + this._element.style.visibility = 'visible'; + + this._backdrop.show(); + + if (!this._config.scroll) { + new ScrollBarHelper().hide(); + + this._enforceFocusOnElement(this._element); + } + + this._element.removeAttribute('aria-hidden'); + + this._element.setAttribute('aria-modal', true); + + this._element.setAttribute('role', 'dialog'); + + this._element.classList.add(CLASS_NAME_SHOW$4); + + const completeCallBack = () => { + EventHandler.trigger(this._element, EVENT_SHOWN$2, { + relatedTarget + }); + }; + + this._queueCallback(completeCallBack, this._element, true); + } + + hide() { + if (!this._isShown) { + return; + } + + const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$2); + + if (hideEvent.defaultPrevented) { + return; + } + + EventHandler.off(document, EVENT_FOCUSIN$1); + + this._element.blur(); + + this._isShown = false; + + this._element.classList.remove(CLASS_NAME_SHOW$4); + + this._backdrop.hide(); + + const completeCallback = () => { + this._element.setAttribute('aria-hidden', true); + + this._element.removeAttribute('aria-modal'); + + this._element.removeAttribute('role'); + + this._element.style.visibility = 'hidden'; + + if (!this._config.scroll) { + new ScrollBarHelper().reset(); + } + + EventHandler.trigger(this._element, EVENT_HIDDEN$2); + }; + + this._queueCallback(completeCallback, this._element, true); + } + + dispose() { + this._backdrop.dispose(); + + super.dispose(); + EventHandler.off(document, EVENT_FOCUSIN$1); + } // Private + + + _getConfig(config) { + config = { ...Default$4, + ...Manipulator.getDataAttributes(this._element), + ...(typeof config === 'object' ? config : {}) + }; + typeCheckConfig(NAME$5, config, DefaultType$4); + return config; + } + + _initializeBackDrop() { + return new Backdrop({ + isVisible: this._config.backdrop, + isAnimated: true, + rootElement: this._element.parentNode, + clickCallback: () => this.hide() + }); + } + + _enforceFocusOnElement(element) { + EventHandler.off(document, EVENT_FOCUSIN$1); // guard against infinite focus loop + + EventHandler.on(document, EVENT_FOCUSIN$1, event => { + if (document !== event.target && element !== event.target && !element.contains(event.target)) { + element.focus(); + } + }); + element.focus(); + } + + _addEventListeners() { + EventHandler.on(this._element, EVENT_CLICK_DISMISS$1, SELECTOR_DATA_DISMISS$1, () => this.hide()); + EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => { + if (this._config.keyboard && event.key === ESCAPE_KEY) { + this.hide(); + } + }); + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Offcanvas.getOrCreateInstance(this, config); + + if (typeof config !== 'string') { + return; + } + + if (data[config] === undefined || config.startsWith('_') || config === 'constructor') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](this); + }); + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_CLICK_DATA_API$1, SELECTOR_DATA_TOGGLE$1, function (event) { + const target = getElementFromSelector(this); + + if (['A', 'AREA'].includes(this.tagName)) { + event.preventDefault(); + } + + if (isDisabled(this)) { + return; + } + + EventHandler.one(target, EVENT_HIDDEN$2, () => { + // focus on trigger when it is closed + if (isVisible(this)) { + this.focus(); + } + }); // avoid conflict when clicking a toggler of an offcanvas, while another is open + + const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR); + + if (allReadyOpen && allReadyOpen !== target) { + Offcanvas.getInstance(allReadyOpen).hide(); + } + + const data = Offcanvas.getOrCreateInstance(target); + data.toggle(this); + }); + EventHandler.on(window, EVENT_LOAD_DATA_API$1, () => SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + */ + + defineJQueryPlugin(Offcanvas); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): util/sanitizer.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + const uriAttrs = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']); + const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i; + /** + * A pattern that recognizes a commonly useful subset of URLs that are safe. + * + * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts + */ + + const SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i; + /** + * A pattern that matches safe data URLs. Only matches image, video and audio types. + * + * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts + */ + + const DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i; + + const allowedAttribute = (attr, allowedAttributeList) => { + const attrName = attr.nodeName.toLowerCase(); + + if (allowedAttributeList.includes(attrName)) { + if (uriAttrs.has(attrName)) { + return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue)); + } + + return true; + } + + const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp); // Check if a regular expression validates the attribute. + + for (let i = 0, len = regExp.length; i < len; i++) { + if (regExp[i].test(attrName)) { + return true; + } + } + + return false; + }; + + const DefaultAllowlist = { + // Global attributes allowed on any supplied element below. + '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN], + 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: [] + }; + function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) { + if (!unsafeHtml.length) { + return unsafeHtml; + } + + if (sanitizeFn && typeof sanitizeFn === 'function') { + return sanitizeFn(unsafeHtml); + } + + const domParser = new window.DOMParser(); + const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html'); + const allowlistKeys = Object.keys(allowList); + const elements = [].concat(...createdDocument.body.querySelectorAll('*')); + + for (let i = 0, len = elements.length; i < len; i++) { + const el = elements[i]; + const elName = el.nodeName.toLowerCase(); + + if (!allowlistKeys.includes(elName)) { + el.remove(); + continue; + } + + const attributeList = [].concat(...el.attributes); + const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || []); + attributeList.forEach(attr => { + if (!allowedAttribute(attr, allowedAttributes)) { + el.removeAttribute(attr.nodeName); + } + }); + } + + return createdDocument.body.innerHTML; + } + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): tooltip.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$4 = 'tooltip'; + const DATA_KEY$4 = 'bs.tooltip'; + const EVENT_KEY$4 = `.${DATA_KEY$4}`; + const CLASS_PREFIX$1 = 'bs-tooltip'; + const BSCLS_PREFIX_REGEX$1 = new RegExp(`(^|\\s)${CLASS_PREFIX$1}\\S+`, 'g'); + const DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn']); + const DefaultType$3 = { + 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)' + }; + const AttachmentMap = { + AUTO: 'auto', + TOP: 'top', + RIGHT: isRTL() ? 'left' : 'right', + BOTTOM: 'bottom', + LEFT: isRTL() ? 'right' : 'left' + }; + const Default$3 = { + animation: true, + template: '<div class="tooltip" role="tooltip">' + '<div class="tooltip-arrow"></div>' + '<div class="tooltip-inner"></div>' + '</div>', + trigger: 'hover focus', + title: '', + delay: 0, + html: false, + selector: false, + placement: 'top', + offset: [0, 0], + container: false, + fallbackPlacements: ['top', 'right', 'bottom', 'left'], + boundary: 'clippingParents', + customClass: '', + sanitize: true, + sanitizeFn: null, + allowList: DefaultAllowlist, + popperConfig: null + }; + const Event$2 = { + HIDE: `hide${EVENT_KEY$4}`, + HIDDEN: `hidden${EVENT_KEY$4}`, + SHOW: `show${EVENT_KEY$4}`, + SHOWN: `shown${EVENT_KEY$4}`, + INSERTED: `inserted${EVENT_KEY$4}`, + CLICK: `click${EVENT_KEY$4}`, + FOCUSIN: `focusin${EVENT_KEY$4}`, + FOCUSOUT: `focusout${EVENT_KEY$4}`, + MOUSEENTER: `mouseenter${EVENT_KEY$4}`, + MOUSELEAVE: `mouseleave${EVENT_KEY$4}` + }; + const CLASS_NAME_FADE$3 = 'fade'; + const CLASS_NAME_MODAL = 'modal'; + const CLASS_NAME_SHOW$3 = 'show'; + const HOVER_STATE_SHOW = 'show'; + const HOVER_STATE_OUT = 'out'; + const SELECTOR_TOOLTIP_INNER = '.tooltip-inner'; + const TRIGGER_HOVER = 'hover'; + const TRIGGER_FOCUS = 'focus'; + const TRIGGER_CLICK = 'click'; + const TRIGGER_MANUAL = 'manual'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Tooltip extends BaseComponent { + constructor(element, config) { + if (typeof Popper === 'undefined') { + throw new TypeError('Bootstrap\'s tooltips require Popper (https://popper.js.org)'); + } + + super(element); // private + + this._isEnabled = true; + this._timeout = 0; + this._hoverState = ''; + this._activeTrigger = {}; + this._popper = null; // Protected + + this._config = this._getConfig(config); + this.tip = null; + + this._setListeners(); + } // Getters + + + static get Default() { + return Default$3; + } + + static get NAME() { + return NAME$4; + } + + static get Event() { + return Event$2; + } + + static get DefaultType() { + return DefaultType$3; + } // Public + + + enable() { + this._isEnabled = true; + } + + disable() { + this._isEnabled = false; + } + + toggleEnabled() { + this._isEnabled = !this._isEnabled; + } + + toggle(event) { + if (!this._isEnabled) { + return; + } + + if (event) { + const context = this._initializeOnDelegatedTarget(event); + + context._activeTrigger.click = !context._activeTrigger.click; + + if (context._isWithActiveTrigger()) { + context._enter(null, context); + } else { + context._leave(null, context); + } + } else { + if (this.getTipElement().classList.contains(CLASS_NAME_SHOW$3)) { + this._leave(null, this); + + return; + } + + this._enter(null, this); + } + } + + dispose() { + clearTimeout(this._timeout); + EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler); + + if (this.tip) { + this.tip.remove(); + } + + if (this._popper) { + this._popper.destroy(); + } + + super.dispose(); + } + + show() { + if (this._element.style.display === 'none') { + throw new Error('Please use show on visible elements'); + } + + if (!(this.isWithContent() && this._isEnabled)) { + return; + } + + const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW); + const shadowRoot = findShadowRoot(this._element); + const isInTheDom = shadowRoot === null ? this._element.ownerDocument.documentElement.contains(this._element) : shadowRoot.contains(this._element); + + if (showEvent.defaultPrevented || !isInTheDom) { + return; + } + + const tip = this.getTipElement(); + const tipId = getUID(this.constructor.NAME); + tip.setAttribute('id', tipId); + + this._element.setAttribute('aria-describedby', tipId); + + this.setContent(); + + if (this._config.animation) { + tip.classList.add(CLASS_NAME_FADE$3); + } + + const placement = typeof this._config.placement === 'function' ? this._config.placement.call(this, tip, this._element) : this._config.placement; + + const attachment = this._getAttachment(placement); + + this._addAttachmentClass(attachment); + + const { + container + } = this._config; + Data.set(tip, this.constructor.DATA_KEY, this); + + if (!this._element.ownerDocument.documentElement.contains(this.tip)) { + container.appendChild(tip); + EventHandler.trigger(this._element, this.constructor.Event.INSERTED); + } + + if (this._popper) { + this._popper.update(); + } else { + this._popper = createPopper(this._element, tip, this._getPopperConfig(attachment)); + } + + tip.classList.add(CLASS_NAME_SHOW$3); + const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass; + + if (customClass) { + tip.classList.add(...customClass.split(' ')); + } // If this is a touch-enabled device we add extra + // empty mouseover listeners to the body's immediate children; + // only needed because of broken event delegation on iOS + // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html + + + if ('ontouchstart' in document.documentElement) { + [].concat(...document.body.children).forEach(element => { + EventHandler.on(element, 'mouseover', noop); + }); + } + + const complete = () => { + const prevHoverState = this._hoverState; + this._hoverState = null; + EventHandler.trigger(this._element, this.constructor.Event.SHOWN); + + if (prevHoverState === HOVER_STATE_OUT) { + this._leave(null, this); + } + }; + + const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE$3); + + this._queueCallback(complete, this.tip, isAnimated); + } + + hide() { + if (!this._popper) { + return; + } + + const tip = this.getTipElement(); + + const complete = () => { + if (this._isWithActiveTrigger()) { + return; + } + + if (this._hoverState !== HOVER_STATE_SHOW) { + tip.remove(); + } + + this._cleanTipClass(); + + this._element.removeAttribute('aria-describedby'); + + EventHandler.trigger(this._element, this.constructor.Event.HIDDEN); + + if (this._popper) { + this._popper.destroy(); + + this._popper = null; + } + }; + + const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE); + + if (hideEvent.defaultPrevented) { + return; + } + + tip.classList.remove(CLASS_NAME_SHOW$3); // If this is a touch-enabled device we remove the extra + // empty mouseover listeners we added for iOS support + + if ('ontouchstart' in document.documentElement) { + [].concat(...document.body.children).forEach(element => EventHandler.off(element, 'mouseover', noop)); + } + + this._activeTrigger[TRIGGER_CLICK] = false; + this._activeTrigger[TRIGGER_FOCUS] = false; + this._activeTrigger[TRIGGER_HOVER] = false; + const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE$3); + + this._queueCallback(complete, this.tip, isAnimated); + + this._hoverState = ''; + } + + update() { + if (this._popper !== null) { + this._popper.update(); + } + } // Protected + + + isWithContent() { + return Boolean(this.getTitle()); + } + + getTipElement() { + if (this.tip) { + return this.tip; + } + + const element = document.createElement('div'); + element.innerHTML = this._config.template; + this.tip = element.children[0]; + return this.tip; + } + + setContent() { + const tip = this.getTipElement(); + this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle()); + tip.classList.remove(CLASS_NAME_FADE$3, CLASS_NAME_SHOW$3); + } + + setElementContent(element, content) { + if (element === null) { + return; + } + + if (isElement$1(content)) { + content = getElement(content); // content is a DOM node or a jQuery + + if (this._config.html) { + if (content.parentNode !== element) { + element.innerHTML = ''; + element.appendChild(content); + } + } else { + element.textContent = content.textContent; + } + + return; + } + + if (this._config.html) { + if (this._config.sanitize) { + content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn); + } + + element.innerHTML = content; + } else { + element.textContent = content; + } + } + + getTitle() { + let title = this._element.getAttribute('data-bs-original-title'); + + if (!title) { + title = typeof this._config.title === 'function' ? this._config.title.call(this._element) : this._config.title; + } + + return title; + } + + updateAttachment(attachment) { + if (attachment === 'right') { + return 'end'; + } + + if (attachment === 'left') { + return 'start'; + } + + return attachment; + } // Private + + + _initializeOnDelegatedTarget(event, context) { + const dataKey = this.constructor.DATA_KEY; + context = context || Data.get(event.delegateTarget, dataKey); + + if (!context) { + context = new this.constructor(event.delegateTarget, this._getDelegateConfig()); + Data.set(event.delegateTarget, dataKey, context); + } + + return context; + } + + _getOffset() { + const { + offset + } = this._config; + + if (typeof offset === 'string') { + return offset.split(',').map(val => Number.parseInt(val, 10)); + } + + if (typeof offset === 'function') { + return popperData => offset(popperData, this._element); + } + + return offset; + } + + _getPopperConfig(attachment) { + const defaultBsPopperConfig = { + placement: attachment, + 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: true, + phase: 'afterWrite', + fn: data => this._handlePopperPlacementChange(data) + }], + onFirstUpdate: data => { + if (data.options.placement !== data.placement) { + this._handlePopperPlacementChange(data); + } + } + }; + return { ...defaultBsPopperConfig, + ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig) + }; + } + + _addAttachmentClass(attachment) { + this.getTipElement().classList.add(`${CLASS_PREFIX$1}-${this.updateAttachment(attachment)}`); + } + + _getAttachment(placement) { + return AttachmentMap[placement.toUpperCase()]; + } + + _setListeners() { + const triggers = this._config.trigger.split(' '); + + triggers.forEach(trigger => { + if (trigger === 'click') { + EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event)); + } else if (trigger !== TRIGGER_MANUAL) { + const eventIn = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSEENTER : this.constructor.Event.FOCUSIN; + const eventOut = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSELEAVE : this.constructor.Event.FOCUSOUT; + EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event)); + EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event)); + } + }); + + this._hideModalHandler = () => { + if (this._element) { + this.hide(); + } + }; + + EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler); + + if (this._config.selector) { + this._config = { ...this._config, + trigger: 'manual', + selector: '' + }; + } else { + this._fixTitle(); + } + } + + _fixTitle() { + const title = this._element.getAttribute('title'); + + const originalTitleType = typeof this._element.getAttribute('data-bs-original-title'); + + if (title || originalTitleType !== 'string') { + this._element.setAttribute('data-bs-original-title', title || ''); + + if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) { + this._element.setAttribute('aria-label', title); + } + + this._element.setAttribute('title', ''); + } + } + + _enter(event, context) { + context = this._initializeOnDelegatedTarget(event, context); + + if (event) { + context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true; + } + + if (context.getTipElement().classList.contains(CLASS_NAME_SHOW$3) || context._hoverState === HOVER_STATE_SHOW) { + context._hoverState = HOVER_STATE_SHOW; + return; + } + + clearTimeout(context._timeout); + context._hoverState = HOVER_STATE_SHOW; + + if (!context._config.delay || !context._config.delay.show) { + context.show(); + return; + } + + context._timeout = setTimeout(() => { + if (context._hoverState === HOVER_STATE_SHOW) { + context.show(); + } + }, context._config.delay.show); + } + + _leave(event, context) { + context = this._initializeOnDelegatedTarget(event, context); + + if (event) { + context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] = context._element.contains(event.relatedTarget); + } + + if (context._isWithActiveTrigger()) { + return; + } + + clearTimeout(context._timeout); + context._hoverState = HOVER_STATE_OUT; + + if (!context._config.delay || !context._config.delay.hide) { + context.hide(); + return; + } + + context._timeout = setTimeout(() => { + if (context._hoverState === HOVER_STATE_OUT) { + context.hide(); + } + }, context._config.delay.hide); + } + + _isWithActiveTrigger() { + for (const trigger in this._activeTrigger) { + if (this._activeTrigger[trigger]) { + return true; + } + } + + return false; + } + + _getConfig(config) { + const dataAttributes = Manipulator.getDataAttributes(this._element); + Object.keys(dataAttributes).forEach(dataAttr => { + if (DISALLOWED_ATTRIBUTES.has(dataAttr)) { + delete dataAttributes[dataAttr]; + } + }); + config = { ...this.constructor.Default, + ...dataAttributes, + ...(typeof config === 'object' && config ? config : {}) + }; + config.container = config.container === false ? document.body : getElement(config.container); + + if (typeof config.delay === 'number') { + config.delay = { + show: config.delay, + hide: config.delay + }; + } + + if (typeof config.title === 'number') { + config.title = config.title.toString(); + } + + if (typeof config.content === 'number') { + config.content = config.content.toString(); + } + + typeCheckConfig(NAME$4, config, this.constructor.DefaultType); + + if (config.sanitize) { + config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn); + } + + return config; + } + + _getDelegateConfig() { + const config = {}; + + if (this._config) { + for (const key in this._config) { + if (this.constructor.Default[key] !== this._config[key]) { + config[key] = this._config[key]; + } + } + } + + return config; + } + + _cleanTipClass() { + const tip = this.getTipElement(); + const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX$1); + + if (tabClass !== null && tabClass.length > 0) { + tabClass.map(token => token.trim()).forEach(tClass => tip.classList.remove(tClass)); + } + } + + _handlePopperPlacementChange(popperData) { + const { + state + } = popperData; + + if (!state) { + return; + } + + this.tip = state.elements.popper; + + this._cleanTipClass(); + + this._addAttachmentClass(this._getAttachment(state.placement)); + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Tooltip.getOrCreateInstance(this, config); + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + } + }); + } + + } + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Tooltip to jQuery only if jQuery is present + */ + + + defineJQueryPlugin(Tooltip); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): popover.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$3 = 'popover'; + const DATA_KEY$3 = 'bs.popover'; + const EVENT_KEY$3 = `.${DATA_KEY$3}`; + const CLASS_PREFIX = 'bs-popover'; + const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`, 'g'); + const Default$2 = { ...Tooltip.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>' + }; + const DefaultType$2 = { ...Tooltip.DefaultType, + content: '(string|element|function)' + }; + const Event$1 = { + HIDE: `hide${EVENT_KEY$3}`, + HIDDEN: `hidden${EVENT_KEY$3}`, + SHOW: `show${EVENT_KEY$3}`, + SHOWN: `shown${EVENT_KEY$3}`, + INSERTED: `inserted${EVENT_KEY$3}`, + CLICK: `click${EVENT_KEY$3}`, + FOCUSIN: `focusin${EVENT_KEY$3}`, + FOCUSOUT: `focusout${EVENT_KEY$3}`, + MOUSEENTER: `mouseenter${EVENT_KEY$3}`, + MOUSELEAVE: `mouseleave${EVENT_KEY$3}` + }; + const CLASS_NAME_FADE$2 = 'fade'; + const CLASS_NAME_SHOW$2 = 'show'; + const SELECTOR_TITLE = '.popover-header'; + const SELECTOR_CONTENT = '.popover-body'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Popover extends Tooltip { + // Getters + static get Default() { + return Default$2; + } + + static get NAME() { + return NAME$3; + } + + static get Event() { + return Event$1; + } + + static get DefaultType() { + return DefaultType$2; + } // Overrides + + + isWithContent() { + return this.getTitle() || this._getContent(); + } + + getTipElement() { + if (this.tip) { + return this.tip; + } + + this.tip = super.getTipElement(); + + if (!this.getTitle()) { + SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove(); + } + + if (!this._getContent()) { + SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove(); + } + + return this.tip; + } + + setContent() { + const tip = this.getTipElement(); // we use append for html objects to maintain js events + + this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle()); + + let content = this._getContent(); + + if (typeof content === 'function') { + content = content.call(this._element); + } + + this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content); + tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2); + } // Private + + + _addAttachmentClass(attachment) { + this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`); + } + + _getContent() { + return this._element.getAttribute('data-bs-content') || this._config.content; + } + + _cleanTipClass() { + const tip = this.getTipElement(); + const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX); + + if (tabClass !== null && tabClass.length > 0) { + tabClass.map(token => token.trim()).forEach(tClass => tip.classList.remove(tClass)); + } + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Popover.getOrCreateInstance(this, config); + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + } + }); + } + + } + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Popover to jQuery only if jQuery is present + */ + + + defineJQueryPlugin(Popover); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): scrollspy.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$2 = 'scrollspy'; + const DATA_KEY$2 = 'bs.scrollspy'; + const EVENT_KEY$2 = `.${DATA_KEY$2}`; + const DATA_API_KEY$1 = '.data-api'; + const Default$1 = { + offset: 10, + method: 'auto', + target: '' + }; + const DefaultType$1 = { + offset: 'number', + method: 'string', + target: '(string|element)' + }; + const EVENT_ACTIVATE = `activate${EVENT_KEY$2}`; + const EVENT_SCROLL = `scroll${EVENT_KEY$2}`; + const EVENT_LOAD_DATA_API = `load${EVENT_KEY$2}${DATA_API_KEY$1}`; + const CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'; + const CLASS_NAME_ACTIVE$1 = 'active'; + const SELECTOR_DATA_SPY = '[data-bs-spy="scroll"]'; + const SELECTOR_NAV_LIST_GROUP$1 = '.nav, .list-group'; + const SELECTOR_NAV_LINKS = '.nav-link'; + const SELECTOR_NAV_ITEMS = '.nav-item'; + const SELECTOR_LIST_ITEMS = '.list-group-item'; + const SELECTOR_DROPDOWN$1 = '.dropdown'; + const SELECTOR_DROPDOWN_TOGGLE$1 = '.dropdown-toggle'; + const METHOD_OFFSET = 'offset'; + const METHOD_POSITION = 'position'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class ScrollSpy extends BaseComponent { + constructor(element, config) { + super(element); + this._scrollElement = this._element.tagName === 'BODY' ? window : this._element; + this._config = this._getConfig(config); + this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`; + this._offsets = []; + this._targets = []; + this._activeTarget = null; + this._scrollHeight = 0; + EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process()); + this.refresh(); + + this._process(); + } // Getters + + + static get Default() { + return Default$1; + } + + static get NAME() { + return NAME$2; + } // Public + + + refresh() { + const autoMethod = this._scrollElement === this._scrollElement.window ? METHOD_OFFSET : METHOD_POSITION; + const offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method; + const offsetBase = offsetMethod === METHOD_POSITION ? this._getScrollTop() : 0; + this._offsets = []; + this._targets = []; + this._scrollHeight = this._getScrollHeight(); + const targets = SelectorEngine.find(this._selector); + targets.map(element => { + const targetSelector = getSelectorFromElement(element); + const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null; + + if (target) { + const targetBCR = target.getBoundingClientRect(); + + if (targetBCR.width || targetBCR.height) { + return [Manipulator[offsetMethod](target).top + offsetBase, targetSelector]; + } + } + + return null; + }).filter(item => item).sort((a, b) => a[0] - b[0]).forEach(item => { + this._offsets.push(item[0]); + + this._targets.push(item[1]); + }); + } + + dispose() { + EventHandler.off(this._scrollElement, EVENT_KEY$2); + super.dispose(); + } // Private + + + _getConfig(config) { + config = { ...Default$1, + ...Manipulator.getDataAttributes(this._element), + ...(typeof config === 'object' && config ? config : {}) + }; + + if (typeof config.target !== 'string' && isElement$1(config.target)) { + let { + id + } = config.target; + + if (!id) { + id = getUID(NAME$2); + config.target.id = id; + } + + config.target = `#${id}`; + } + + typeCheckConfig(NAME$2, config, DefaultType$1); + return config; + } + + _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 scrollTop = this._getScrollTop() + this._config.offset; + + const scrollHeight = this._getScrollHeight(); + + const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight(); + + if (this._scrollHeight !== scrollHeight) { + this.refresh(); + } + + if (scrollTop >= maxScroll) { + const target = this._targets[this._targets.length - 1]; + + if (this._activeTarget !== target) { + this._activate(target); + } + + return; + } + + if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) { + this._activeTarget = null; + + this._clear(); + + return; + } + + for (let i = this._offsets.length; i--;) { + const isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]); + + if (isActiveTarget) { + this._activate(this._targets[i]); + } + } + } + + _activate(target) { + this._activeTarget = target; + + this._clear(); + + const queries = this._selector.split(',').map(selector => `${selector}[data-bs-target="${target}"],${selector}[href="${target}"]`); + + const link = SelectorEngine.findOne(queries.join(',')); + + if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) { + SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE$1, link.closest(SELECTOR_DROPDOWN$1)).classList.add(CLASS_NAME_ACTIVE$1); + link.classList.add(CLASS_NAME_ACTIVE$1); + } else { + // Set triggered link as active + link.classList.add(CLASS_NAME_ACTIVE$1); + SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP$1).forEach(listGroup => { + // Set triggered links parents as active + // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor + SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`).forEach(item => item.classList.add(CLASS_NAME_ACTIVE$1)); // Handle special case when .nav-link is inside .nav-item + + SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS).forEach(navItem => { + SelectorEngine.children(navItem, SELECTOR_NAV_LINKS).forEach(item => item.classList.add(CLASS_NAME_ACTIVE$1)); + }); + }); + } + + EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, { + relatedTarget: target + }); + } + + _clear() { + SelectorEngine.find(this._selector).filter(node => node.classList.contains(CLASS_NAME_ACTIVE$1)).forEach(node => node.classList.remove(CLASS_NAME_ACTIVE$1)); + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = ScrollSpy.getOrCreateInstance(this, config); + + if (typeof config !== 'string') { + return; + } + + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + }); + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(window, EVENT_LOAD_DATA_API, () => { + SelectorEngine.find(SELECTOR_DATA_SPY).forEach(spy => new ScrollSpy(spy)); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .ScrollSpy to jQuery only if jQuery is present + */ + + defineJQueryPlugin(ScrollSpy); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): tab.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME$1 = 'tab'; + const DATA_KEY$1 = 'bs.tab'; + const EVENT_KEY$1 = `.${DATA_KEY$1}`; + const DATA_API_KEY = '.data-api'; + const EVENT_HIDE$1 = `hide${EVENT_KEY$1}`; + const EVENT_HIDDEN$1 = `hidden${EVENT_KEY$1}`; + const EVENT_SHOW$1 = `show${EVENT_KEY$1}`; + const EVENT_SHOWN$1 = `shown${EVENT_KEY$1}`; + const EVENT_CLICK_DATA_API = `click${EVENT_KEY$1}${DATA_API_KEY}`; + const CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'; + const CLASS_NAME_ACTIVE = 'active'; + const CLASS_NAME_FADE$1 = 'fade'; + const CLASS_NAME_SHOW$1 = 'show'; + const SELECTOR_DROPDOWN = '.dropdown'; + const SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'; + const SELECTOR_ACTIVE = '.active'; + const SELECTOR_ACTIVE_UL = ':scope > li > .active'; + const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]'; + const SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'; + const SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Tab extends BaseComponent { + // Getters + static get NAME() { + return NAME$1; + } // Public + + + show() { + if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && this._element.classList.contains(CLASS_NAME_ACTIVE)) { + return; + } + + let previous; + const target = getElementFromSelector(this._element); + + const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP); + + if (listElement) { + const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE; + previous = SelectorEngine.find(itemSelector, listElement); + previous = previous[previous.length - 1]; + } + + const hideEvent = previous ? EventHandler.trigger(previous, EVENT_HIDE$1, { + relatedTarget: this._element + }) : null; + const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$1, { + relatedTarget: previous + }); + + if (showEvent.defaultPrevented || hideEvent !== null && hideEvent.defaultPrevented) { + return; + } + + this._activate(this._element, listElement); + + const complete = () => { + EventHandler.trigger(previous, EVENT_HIDDEN$1, { + relatedTarget: this._element + }); + EventHandler.trigger(this._element, EVENT_SHOWN$1, { + relatedTarget: previous + }); + }; + + if (target) { + this._activate(target, target.parentNode, complete); + } else { + complete(); + } + } // Private + + + _activate(element, container, callback) { + const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? SelectorEngine.find(SELECTOR_ACTIVE_UL, container) : SelectorEngine.children(container, SELECTOR_ACTIVE); + const active = activeElements[0]; + const isTransitioning = callback && active && active.classList.contains(CLASS_NAME_FADE$1); + + const complete = () => this._transitionComplete(element, active, callback); + + if (active && isTransitioning) { + active.classList.remove(CLASS_NAME_SHOW$1); + + this._queueCallback(complete, element, true); + } else { + complete(); + } + } + + _transitionComplete(element, active, callback) { + if (active) { + active.classList.remove(CLASS_NAME_ACTIVE); + const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode); + + if (dropdownChild) { + dropdownChild.classList.remove(CLASS_NAME_ACTIVE); + } + + if (active.getAttribute('role') === 'tab') { + active.setAttribute('aria-selected', false); + } + } + + element.classList.add(CLASS_NAME_ACTIVE); + + if (element.getAttribute('role') === 'tab') { + element.setAttribute('aria-selected', true); + } + + reflow(element); + + if (element.classList.contains(CLASS_NAME_FADE$1)) { + element.classList.add(CLASS_NAME_SHOW$1); + } + + let parent = element.parentNode; + + if (parent && parent.nodeName === 'LI') { + parent = parent.parentNode; + } + + if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) { + const dropdownElement = element.closest(SELECTOR_DROPDOWN); + + if (dropdownElement) { + SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement).forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE)); + } + + element.setAttribute('aria-expanded', true); + } + + if (callback) { + callback(); + } + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Tab.getOrCreateInstance(this); + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](); + } + }); + } + + } + /** + * ------------------------------------------------------------------------ + * Data Api implementation + * ------------------------------------------------------------------------ + */ + + + EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) { + if (['A', 'AREA'].includes(this.tagName)) { + event.preventDefault(); + } + + if (isDisabled(this)) { + return; + } + + const data = Tab.getOrCreateInstance(this); + data.show(); + }); + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Tab to jQuery only if jQuery is present + */ + + defineJQueryPlugin(Tab); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.2): toast.js + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + /** + * ------------------------------------------------------------------------ + * Constants + * ------------------------------------------------------------------------ + */ + + const NAME = 'toast'; + const DATA_KEY = 'bs.toast'; + const EVENT_KEY = `.${DATA_KEY}`; + const EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`; + const EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`; + const EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`; + const EVENT_FOCUSIN = `focusin${EVENT_KEY}`; + const EVENT_FOCUSOUT = `focusout${EVENT_KEY}`; + const EVENT_HIDE = `hide${EVENT_KEY}`; + const EVENT_HIDDEN = `hidden${EVENT_KEY}`; + const EVENT_SHOW = `show${EVENT_KEY}`; + const EVENT_SHOWN = `shown${EVENT_KEY}`; + const CLASS_NAME_FADE = 'fade'; + const CLASS_NAME_HIDE = 'hide'; + const CLASS_NAME_SHOW = 'show'; + const CLASS_NAME_SHOWING = 'showing'; + const DefaultType = { + animation: 'boolean', + autohide: 'boolean', + delay: 'number' + }; + const Default = { + animation: true, + autohide: true, + delay: 5000 + }; + const SELECTOR_DATA_DISMISS = '[data-bs-dismiss="toast"]'; + /** + * ------------------------------------------------------------------------ + * Class Definition + * ------------------------------------------------------------------------ + */ + + class Toast extends BaseComponent { + constructor(element, config) { + super(element); + this._config = this._getConfig(config); + this._timeout = null; + this._hasMouseInteraction = false; + this._hasKeyboardInteraction = false; + + this._setListeners(); + } // Getters + + + static get DefaultType() { + return DefaultType; + } + + static get Default() { + return Default; + } + + static get NAME() { + return NAME; + } // Public + + + show() { + const showEvent = EventHandler.trigger(this._element, EVENT_SHOW); + + if (showEvent.defaultPrevented) { + return; + } + + this._clearTimeout(); + + if (this._config.animation) { + this._element.classList.add(CLASS_NAME_FADE); + } + + const complete = () => { + this._element.classList.remove(CLASS_NAME_SHOWING); + + this._element.classList.add(CLASS_NAME_SHOW); + + EventHandler.trigger(this._element, EVENT_SHOWN); + + this._maybeScheduleHide(); + }; + + this._element.classList.remove(CLASS_NAME_HIDE); + + reflow(this._element); + + this._element.classList.add(CLASS_NAME_SHOWING); + + this._queueCallback(complete, this._element, this._config.animation); + } + + hide() { + if (!this._element.classList.contains(CLASS_NAME_SHOW)) { + return; + } + + const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE); + + if (hideEvent.defaultPrevented) { + return; + } + + const complete = () => { + this._element.classList.add(CLASS_NAME_HIDE); + + EventHandler.trigger(this._element, EVENT_HIDDEN); + }; + + this._element.classList.remove(CLASS_NAME_SHOW); + + this._queueCallback(complete, this._element, this._config.animation); + } + + dispose() { + this._clearTimeout(); + + if (this._element.classList.contains(CLASS_NAME_SHOW)) { + this._element.classList.remove(CLASS_NAME_SHOW); + } + + super.dispose(); + } // Private + + + _getConfig(config) { + config = { ...Default, + ...Manipulator.getDataAttributes(this._element), + ...(typeof config === 'object' && config ? config : {}) + }; + typeCheckConfig(NAME, config, this.constructor.DefaultType); + return config; + } + + _maybeScheduleHide() { + if (!this._config.autohide) { + return; + } + + if (this._hasMouseInteraction || this._hasKeyboardInteraction) { + return; + } + + this._timeout = setTimeout(() => { + this.hide(); + }, this._config.delay); + } + + _onInteraction(event, isInteracting) { + switch (event.type) { + case 'mouseover': + case 'mouseout': + this._hasMouseInteraction = isInteracting; + break; + + case 'focusin': + case 'focusout': + this._hasKeyboardInteraction = isInteracting; + break; + } + + if (isInteracting) { + this._clearTimeout(); + + return; + } + + const nextElement = event.relatedTarget; + + if (this._element === nextElement || this._element.contains(nextElement)) { + return; + } + + this._maybeScheduleHide(); + } + + _setListeners() { + EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide()); + EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true)); + EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false)); + EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true)); + EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false)); + } + + _clearTimeout() { + clearTimeout(this._timeout); + this._timeout = null; + } // Static + + + static jQueryInterface(config) { + return this.each(function () { + const data = Toast.getOrCreateInstance(this, config); + + if (typeof config === 'string') { + if (typeof data[config] === 'undefined') { + throw new TypeError(`No method named "${config}"`); + } + + data[config](this); + } + }); + } + + } + /** + * ------------------------------------------------------------------------ + * jQuery + * ------------------------------------------------------------------------ + * add .Toast to jQuery only if jQuery is present + */ + + + defineJQueryPlugin(Toast); + + /** + * -------------------------------------------------------------------------- + * Bootstrap (v5.0.1): index.umd.js + * Licensed under MIT (https:/github.com/twbs/bootstrap/blob/main/LICENSE) + * -------------------------------------------------------------------------- + */ + var index_umd = { + Alert, + Button, + Carousel, + Collapse, + Dropdown, + Modal, + Offcanvas, + Popover, + ScrollSpy, + Tab, + Toast, + Tooltip + }; + + return index_umd; + +}))); +//# sourceMappingURL=oe-bcl-default.umd.js.map diff --git a/assets/js/oe-bcl-default.umd.js.map b/assets/js/oe-bcl-default.umd.js.map new file mode 100644 index 00000000..ed492ca1 --- /dev/null +++ b/assets/js/oe-bcl-default.umd.js.map @@ -0,0 +1 @@ +{"version":3,"file":"oe-bcl-default.umd.js","sources":["../../../../bootstrap/js/src/dom/selector-engine.js","../../../../bootstrap/js/src/util/index.js","../../../../bootstrap/js/src/dom/event-handler.js","../../../../bootstrap/js/src/dom/data.js","../../../../bootstrap/js/src/base-component.js","../../../../bootstrap/js/src/alert.js","../../../../bootstrap/js/src/button.js","../../../../bootstrap/js/src/dom/manipulator.js","../../../../bootstrap/js/src/carousel.js","../../../../bootstrap/js/src/collapse.js","../../../../node_modules/@popperjs/core/lib/enums.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../../../../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../../../../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../../../../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/contains.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../../../../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../../../../node_modules/@popperjs/core/lib/utils/math.js","../../../../node_modules/@popperjs/core/lib/utils/within.js","../../../../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../../../../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../../../../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../../../../node_modules/@popperjs/core/lib/modifiers/arrow.js","../../../../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../../../../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../../../../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../../../../node_modules/@popperjs/core/lib/utils/getVariation.js","../../../../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../../../../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../../../../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../../../../node_modules/@popperjs/core/lib/modifiers/flip.js","../../../../node_modules/@popperjs/core/lib/modifiers/hide.js","../../../../node_modules/@popperjs/core/lib/modifiers/offset.js","../../../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../../../../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../../../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../../../../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../../../../node_modules/@popperjs/core/lib/utils/debounce.js","../../../../node_modules/@popperjs/core/lib/utils/format.js","../../../../node_modules/@popperjs/core/lib/utils/validateModifiers.js","../../../../node_modules/@popperjs/core/lib/utils/uniqueBy.js","../../../../node_modules/@popperjs/core/lib/utils/mergeByName.js","../../../../node_modules/@popperjs/core/lib/createPopper.js","../../../../node_modules/@popperjs/core/lib/popper-lite.js","../../../../node_modules/@popperjs/core/lib/popper.js","../../../../bootstrap/js/src/dropdown.js","../../../../bootstrap/js/src/util/scrollbar.js","../../../../bootstrap/js/src/util/backdrop.js","../../../../bootstrap/js/src/modal.js","../../../../bootstrap/js/src/offcanvas.js","../../../../bootstrap/js/src/util/sanitizer.js","../../../../bootstrap/js/src/tooltip.js","../../../../bootstrap/js/src/popover.js","../../../../bootstrap/js/src/scrollspy.js","../../../../bootstrap/js/src/tab.js","../../../../bootstrap/js/src/toast.js","../index.umd.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NODE_TEXT = 3\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children)\n .filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n\n let ancestor = element.parentNode\n\n while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {\n if (ancestor.matches(selector)) {\n parents.push(ancestor)\n }\n\n ancestor = ancestor.parentNode\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n }\n}\n\nexport default SelectorEngine\n","import SelectorEngine from '../dom/selector-engine'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = obj => {\n if (obj === null || obj === undefined) {\n return `${obj}`\n }\n\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return SelectorEngine.findOne(obj)\n }\n\n return null\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n return getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\nconst reflow = element => element.offsetHeight\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n DOMContentLoadedCallbacks.forEach(callback => callback())\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element depending on the direction and if cycle is allowed\n if (index === -1) {\n return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]\n }\n\n const listLength = list.length\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n getNextActiveElement,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute,\n executeAfterTransition\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\nconst customEventsRegex = /^(mouseenter|mouseleave)/i\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * ------------------------------------------------------------------------\n * Private methods\n * ------------------------------------------------------------------------\n */\n\nfunction getUidEvent(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getEvent(element) {\n const uid = getUidEvent(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n event.delegateTarget = element\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (let i = domElements.length; i--;) {\n if (domElements[i] === target) {\n event.delegateTarget = target\n\n if (handler.oneOff) {\n // eslint-disable-next-line unicorn/consistent-destructuring\n EventHandler.off(element, event.type, selector, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n\n // To please ESLint\n return null\n }\n}\n\nfunction findHandler(events, handler, delegationSelector = null) {\n const uidEventList = Object.keys(events)\n\n for (let i = 0, len = uidEventList.length; i < len; i++) {\n const event = events[uidEventList[i]]\n\n if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {\n return event\n }\n }\n\n return null\n}\n\nfunction normalizeParams(originalTypeEvent, handler, delegationFn) {\n const delegation = typeof handler === 'string'\n const originalHandler = delegation ? delegationFn : handler\n\n let typeEvent = getTypeEvent(originalTypeEvent)\n const isNative = nativeEvents.has(typeEvent)\n\n if (!isNative) {\n typeEvent = originalTypeEvent\n }\n\n return [delegation, originalHandler, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n if (!handler) {\n handler = delegationFn\n delegationFn = null\n }\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (customEventsRegex.test(originalTypeEvent)) {\n const wrapFn = fn => {\n return function (event) {\n if (!event.relatedTarget || (event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget))) {\n return fn.call(this, event)\n }\n }\n }\n\n if (delegationFn) {\n delegationFn = wrapFn(delegationFn)\n } else {\n handler = wrapFn(handler)\n }\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const events = getEvent(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null)\n\n if (previousFn) {\n previousFn.oneOff = previousFn.oneOff && oneOff\n\n return\n }\n\n const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = delegation ?\n bootstrapDelegationHandler(element, handler, delegationFn) :\n bootstrapHandler(element, handler)\n\n fn.delegationSelector = delegation ? handler : null\n fn.originalHandler = originalHandler\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, delegation)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n Object.keys(storeElementEvent).forEach(handlerKey => {\n if (handlerKey.includes(namespace)) {\n const event = storeElementEvent[handlerKey]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n}\n\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '')\n return customEvents[event] || event\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, false)\n },\n\n one(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFn) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getEvent(element)\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof originalHandler !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!events || !events[typeEvent]) {\n return\n }\n\n removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null)\n return\n }\n\n if (isNamespace) {\n Object.keys(events).forEach(elementEvent => {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n })\n }\n\n const storeElementEvent = events[typeEvent] || {}\n Object.keys(storeElementEvent).forEach(keyHandlers => {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n const event = storeElementEvent[keyHandlers]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = getTypeEvent(event)\n const inNamespace = event !== typeEvent\n const isNative = nativeEvents.has(typeEvent)\n\n let jQueryEvent\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n let evt = null\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n if (isNative) {\n evt = document.createEvent('HTMLEvents')\n evt.initEvent(typeEvent, bubbles, true)\n } else {\n evt = new CustomEvent(event, {\n bubbles,\n cancelable: true\n })\n }\n\n // merge custom information in our event\n if (typeof args !== 'undefined') {\n Object.keys(args).forEach(key => {\n Object.defineProperty(evt, key, {\n get() {\n return args[key]\n }\n })\n })\n }\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst elementMap = new Map()\n\nexport default {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map())\n }\n\n const instanceMap = elementMap.get(element)\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`)\n return\n }\n\n instanceMap.set(key, instance)\n },\n\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null\n }\n\n return null\n },\n\n remove(element, key) {\n if (!elementMap.has(element)) {\n return\n }\n\n const instanceMap = elementMap.get(element)\n\n instanceMap.delete(key)\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element)\n }\n }\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\nimport {\n executeAfterTransition,\n getElement\n} from './util/index'\nimport EventHandler from './dom/event-handler'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst VERSION = '5.0.2'\n\nclass BaseComponent {\n constructor(element) {\n element = getElement(element)\n\n if (!element) {\n return\n }\n\n this._element = element\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n Object.getOwnPropertyNames(this).forEach(propertyName => {\n this[propertyName] = null\n })\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated)\n }\n\n /** Static */\n\n static getInstance(element) {\n return Data.get(element, this.DATA_KEY)\n }\n\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DISMISS = '[data-bs-dismiss=\"alert\"]'\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_ALERT = 'alert'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n close(element) {\n const rootElement = element ? this._getRootElement(element) : this._element\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent === null || customEvent.defaultPrevented) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n // Private\n\n _getRootElement(element) {\n return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`)\n }\n\n _triggerCloseEvent(element) {\n return EventHandler.trigger(element, EVENT_CLOSE)\n }\n\n _removeElement(element) {\n element.classList.remove(CLASS_NAME_SHOW)\n\n const isAnimated = element.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(() => this._destroyElement(element), element, isAnimated)\n }\n\n _destroyElement(element) {\n element.remove()\n\n EventHandler.trigger(element, EVENT_CLOSED)\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this)\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert.handleDismiss(new Alert()))\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Alert to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this)\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n const data = Button.getOrCreateInstance(button)\n\n data.toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Button to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(val) {\n if (val === 'true') {\n return true\n }\n\n if (val === 'false') {\n return false\n }\n\n if (val === Number(val).toString()) {\n return Number(val)\n }\n\n if (val === '' || val === 'null') {\n return null\n }\n\n return val\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n\n Object.keys(element.dataset)\n .filter(key => key.startsWith('bs'))\n .forEach(key => {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n })\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n },\n\n offset(element) {\n const rect = element.getBoundingClientRect()\n\n return {\n top: rect.top + document.body.scrollTop,\n left: rect.left + document.body.scrollLeft\n }\n },\n\n position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n }\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n getNextActiveElement,\n reflow,\n triggerTransitionEnd,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n slide: false,\n pause: 'hover',\n wrap: true,\n touch: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)',\n keyboard: 'boolean',\n slide: '(boolean|string)',\n pause: '(string|boolean)',\n wrap: 'boolean',\n touch: 'boolean'\n}\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY]: DIRECTION_LEFT\n}\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_INDICATOR = '[data-bs-target]'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n next() {\n this._slide(ORDER_NEXT)\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n this._slide(ORDER_PREV)\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) {\n triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config && this._config.interval && !this._isPaused) {\n this._updateInterval()\n\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const order = index > activeIndex ?\n ORDER_NEXT :\n ORDER_PREV\n\n this._slide(order, this._items[index])\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n this.touchDeltaX = 0\n\n if (!direction) {\n return\n }\n\n this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT)\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event))\n EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event))\n }\n\n if (this._config.touch && this._touchSupported) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n const start = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchStartX = event.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.touches[0].clientX\n }\n }\n\n const move = event => {\n // ensure swiping with one touch and not pinching\n this.touchDeltaX = event.touches && event.touches.length > 1 ?\n 0 :\n event.touches[0].clientX - this.touchStartX\n }\n\n const end = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {\n EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault())\n })\n\n if (this._pointerEvent) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n const direction = KEY_TO_DIRECTION[event.key]\n if (direction) {\n event.preventDefault()\n this._slide(direction)\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode ?\n SelectorEngine.find(SELECTOR_ITEM, element.parentNode) :\n []\n\n return this._items.indexOf(element)\n }\n\n _getItemByOrder(order, activeElement) {\n const isNext = order === ORDER_NEXT\n return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap)\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element))\n\n return EventHandler.trigger(this._element, EVENT_SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement)\n\n for (let i = 0; i < indicators.length; i++) {\n if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {\n indicators[i].classList.add(CLASS_NAME_ACTIVE)\n indicators[i].setAttribute('aria-current', 'true')\n break\n }\n }\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n if (elementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = elementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n }\n\n _slide(directionOrOrder, element) {\n const order = this._directionToOrder(directionOrOrder)\n const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || this._getItemByOrder(order, activeElement)\n\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n const isNext = order === ORDER_NEXT\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n const eventDirectionName = this._orderToDirection(order)\n\n if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {\n this._isSliding = false\n return\n }\n\n if (this._isSliding) {\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n this._activeElement = nextElement\n\n const triggerSlidEvent = () => {\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }\n\n if (this._element.classList.contains(CLASS_NAME_SLIDE)) {\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n setTimeout(triggerSlidEvent, 0)\n }\n\n this._queueCallback(completeCallBack, activeElement, true)\n } else {\n activeElement.classList.remove(CLASS_NAME_ACTIVE)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n this._isSliding = false\n triggerSlidEvent()\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _directionToOrder(direction) {\n if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) {\n return direction\n }\n\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (![ORDER_NEXT, ORDER_PREV].includes(order)) {\n return order\n }\n\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n\n static carouselInterface(element, config) {\n const data = Carousel.getOrCreateInstance(element, config)\n\n let { _config } = data\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Carousel.carouselInterface(this, config)\n })\n }\n\n static dataApiClickHandler(event) {\n const target = getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel.carouselInterface(target, config)\n\n if (slideIndex) {\n Carousel.getInstance(target).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler)\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (let i = 0, len = carousels.length; i < len; i++) {\n Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i]))\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Carousel to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElement,\n getSelectorFromElement,\n getElementFromSelector,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n toggle: true,\n parent: ''\n}\n\nconst DefaultType = {\n toggle: 'boolean',\n parent: '(string|element)'\n}\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.show, .collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._isTransitioning = false\n this._config = this._getConfig(config)\n this._triggerArray = SelectorEngine.find(\n `${SELECTOR_DATA_TOGGLE}[href=\"#${this._element.id}\"],` +\n `${SELECTOR_DATA_TOGGLE}[data-bs-target=\"#${this._element.id}\"]`\n )\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElem => foundElem === this._element)\n\n if (selector !== null && filterElement.length) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent)\n .filter(elem => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-bs-parent') === this._config.parent\n }\n\n return elem.classList.contains(CLASS_NAME_COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n const container = SelectorEngine.findOne(this._selector)\n if (actives) {\n const tempActiveData = actives.find(elem => container !== elem)\n activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null\n\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n if (actives) {\n actives.forEach(elemActive => {\n if (container !== elemActive) {\n Collapse.collapseInterface(elemActive, 'hide')\n }\n\n if (!activesData) {\n Data.set(elemActive, DATA_KEY, null)\n }\n })\n }\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n this._triggerArray.forEach(element => {\n element.classList.remove(CLASS_NAME_COLLAPSED)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n\n this._queueCallback(complete, this._element, true)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const elem = getElementFromSelector(trigger)\n\n if (elem && !elem.classList.contains(CLASS_NAME_SHOW)) {\n trigger.classList.add(CLASS_NAME_COLLAPSED)\n trigger.setAttribute('aria-expanded', false)\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n\n this._queueCallback(complete, this._element, true)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT\n }\n\n _getParent() {\n let { parent } = this._config\n\n parent = getElement(parent)\n\n const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent=\"${parent}\"]`\n\n SelectorEngine.find(selector, parent)\n .forEach(element => {\n const selected = getElementFromSelector(element)\n\n this._addAriaAndCollapsedClass(\n selected,\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (!element || !triggerArray.length) {\n return\n }\n\n const isOpen = element.classList.contains(CLASS_NAME_SHOW)\n\n triggerArray.forEach(elem => {\n if (isOpen) {\n elem.classList.remove(CLASS_NAME_COLLAPSED)\n } else {\n elem.classList.add(CLASS_NAME_COLLAPSED)\n }\n\n elem.setAttribute('aria-expanded', isOpen)\n })\n }\n\n // Static\n\n static collapseInterface(element, config) {\n let data = Collapse.getInstance(element)\n const _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Collapse.collapseInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n const triggerData = Manipulator.getDataAttributes(this)\n const selector = getSelectorFromElement(this)\n const selectorElements = SelectorEngine.find(selector)\n\n selectorElements.forEach(element => {\n const data = Collapse.getInstance(element)\n let config\n if (data) {\n // update parent attribute\n if (data._parent === null && typeof triggerData.parent === 'string') {\n data._config.parent = triggerData.parent\n data._parent = data._getParent()\n }\n\n config = 'toggle'\n } else {\n config = triggerData\n }\n\n Collapse.collapseInterface(element, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Collapse to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Collapse)\n\nexport default Collapse\n","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export default function getBoundingClientRect(element) {\n var rect = element.getBoundingClientRect();\n return {\n width: rect.width,\n height: rect.height,\n top: rect.top,\n right: rect.right,\n bottom: rect.bottom,\n left: rect.left,\n x: rect.left,\n y: rect.top\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;\n var isIE = navigator.userAgent.indexOf('Trident') !== -1;\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport default function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport within from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n if (!isHTMLElement(arrowElement)) {\n console.error(['Popper: \"arrow\" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' '));\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: \"arrow\" modifier\\'s `element` must be a child of the popper', 'element.'].join(' '));\n }\n\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","import { top, left, right, bottom } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref) {\n var x = _ref.x,\n y = _ref.y;\n var win = window;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(round(x * dpr) / dpr) || 0,\n y: round(round(y * dpr) / dpr) || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets;\n\n var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets,\n _ref3$x = _ref3.x,\n x = _ref3$x === void 0 ? 0 : _ref3$x,\n _ref3$y = _ref3.y,\n y = _ref3$y === void 0 ? 0 : _ref3$y;\n\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top) {\n sideY = bottom; // $FlowFixMe[prop-missing]\n\n y -= offsetParent[heightProp] - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left) {\n sideX = right; // $FlowFixMe[prop-missing]\n\n x -= offsetParent[widthProp] - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref4) {\n var state = _ref4.state,\n options = _ref4.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n\n if (process.env.NODE_ENV !== \"production\") {\n var transitionProperty = getComputedStyle(state.elements.popper).transitionProperty || '';\n\n if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {\n return transitionProperty.indexOf(property) >= 0;\n })) {\n console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: \"transform\", \"top\", \"right\", \"bottom\", \"left\".', '\\n\\n', 'Disable the \"computeStyles\" modifier\\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\\n\\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));\n }\n }\n\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If <html> has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on <html>\n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nexport default function getViewportRect(element) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper\n // can be obscured underneath it.\n // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even\n // if it isn't open, so if this isn't available, the popper will be detected\n // to overflow the bottom of the screen too early.\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently)\n // In Chrome, it returns a value very close to 0 (+/-) but contains rounding\n // errors due to floating point numbers, so we need to check precision.\n // Safari returns a number <= 0, usually < -1 when pinch-zoomed\n // Feature detection fails in mobile emulation mode in Chrome.\n // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) <\n // 0.001\n // Fallback here: \"Not Safari\" userAgent\n\n if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element) {\n var rect = getBoundingClientRect(element);\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var referenceElement = state.elements.reference;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);\n var referenceClientRect = getBoundingClientRect(referenceElement);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, \"auto\" cannot be used to allow \"bottom-start\".', 'Use \"auto-start\" instead.'].join(' '));\n }\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\";\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport within from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { max as mathMax, min as mathMin } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis || checkAltAxis) {\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = popperOffsets[mainAxis] + overflow[mainSide];\n var max = popperOffsets[mainAxis] - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0;\n var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue;\n\n if (checkMainAxis) {\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var _preventedOffset = within(tether ? mathMin(_min, tetherMin) : _min, _offset, tether ? mathMax(_max, tetherMax) : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\"; // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement);\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","export default function format(str) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return [].concat(args).reduce(function (p, c) {\n return p.replace(/%s/, c);\n }, str);\n}","import format from \"./format.js\";\nimport { modifierPhases } from \"../enums.js\";\nvar INVALID_MODIFIER_ERROR = 'Popper: modifier \"%s\" provided an invalid %s property, expected %s but got %s';\nvar MISSING_DEPENDENCY_ERROR = 'Popper: modifier \"%s\" requires \"%s\", but \"%s\" modifier is not available';\nvar VALID_PROPERTIES = ['name', 'enabled', 'phase', 'fn', 'effect', 'requires', 'options'];\nexport default function validateModifiers(modifiers) {\n modifiers.forEach(function (modifier) {\n Object.keys(modifier).forEach(function (key) {\n switch (key) {\n case 'name':\n if (typeof modifier.name !== 'string') {\n console.error(format(INVALID_MODIFIER_ERROR, String(modifier.name), '\"name\"', '\"string\"', \"\\\"\" + String(modifier.name) + \"\\\"\"));\n }\n\n break;\n\n case 'enabled':\n if (typeof modifier.enabled !== 'boolean') {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"enabled\"', '\"boolean\"', \"\\\"\" + String(modifier.enabled) + \"\\\"\"));\n }\n\n case 'phase':\n if (modifierPhases.indexOf(modifier.phase) < 0) {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"phase\"', \"either \" + modifierPhases.join(', '), \"\\\"\" + String(modifier.phase) + \"\\\"\"));\n }\n\n break;\n\n case 'fn':\n if (typeof modifier.fn !== 'function') {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"fn\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n }\n\n break;\n\n case 'effect':\n if (typeof modifier.effect !== 'function') {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"effect\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n }\n\n break;\n\n case 'requires':\n if (!Array.isArray(modifier.requires)) {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requires\"', '\"array\"', \"\\\"\" + String(modifier.requires) + \"\\\"\"));\n }\n\n break;\n\n case 'requiresIfExists':\n if (!Array.isArray(modifier.requiresIfExists)) {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requiresIfExists\"', '\"array\"', \"\\\"\" + String(modifier.requiresIfExists) + \"\\\"\"));\n }\n\n break;\n\n case 'options':\n case 'data':\n break;\n\n default:\n console.error(\"PopperJS: an invalid property has been provided to the \\\"\" + modifier.name + \"\\\" modifier, valid properties are \" + VALID_PROPERTIES.map(function (s) {\n return \"\\\"\" + s + \"\\\"\";\n }).join(', ') + \"; but \\\"\" + key + \"\\\" was provided.\");\n }\n\n modifier.requires && modifier.requires.forEach(function (requirement) {\n if (modifiers.find(function (mod) {\n return mod.name === requirement;\n }) == null) {\n console.error(format(MISSING_DEPENDENCY_ERROR, String(modifier.name), requirement, requirement));\n }\n });\n });\n });\n}","export default function uniqueBy(arr, fn) {\n var identifiers = new Set();\n return arr.filter(function (item) {\n var identifier = fn(item);\n\n if (!identifiers.has(identifier)) {\n identifiers.add(identifier);\n return true;\n }\n });\n}","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport getComputedStyle from \"./dom-utils/getComputedStyle.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport validateModifiers from \"./utils/validateModifiers.js\";\nimport uniqueBy from \"./utils/uniqueBy.js\";\nimport getBasePlacement from \"./utils/getBasePlacement.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nimport { auto } from \"./enums.js\";\nvar INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';\nvar INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(options) {\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n }); // Validate the provided modifiers so that the consumer will get warned\n // if one of the modifiers is invalid for any reason\n\n if (process.env.NODE_ENV !== \"production\") {\n var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {\n var name = _ref.name;\n return name;\n });\n validateModifiers(modifiers);\n\n if (getBasePlacement(state.options.placement) === auto) {\n var flipModifier = state.orderedModifiers.find(function (_ref2) {\n var name = _ref2.name;\n return name === 'flip';\n });\n\n if (!flipModifier) {\n console.error(['Popper: \"auto\" placements require the \"flip\" modifier be', 'present and enabled to work.'].join(' '));\n }\n }\n\n var _getComputedStyle = getComputedStyle(popper),\n marginTop = _getComputedStyle.marginTop,\n marginRight = _getComputedStyle.marginRight,\n marginBottom = _getComputedStyle.marginBottom,\n marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can\n // cause bugs with positioning, so we'll warn the consumer\n\n\n if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {\n return parseFloat(margin);\n })) {\n console.warn(['Popper: CSS \"margin\" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));\n }\n }\n\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n var __debug_loops__ = 0;\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (process.env.NODE_ENV !== \"production\") {\n __debug_loops__ += 1;\n\n if (__debug_loops__ > 100) {\n console.error(INFINITE_LOOP_ERROR);\n break;\n }\n }\n\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref3) {\n var name = _ref3.name,\n _ref3$options = _ref3.options,\n options = _ref3$options === void 0 ? {} : _ref3$options,\n effect = _ref3.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n getElement,\n getElementFromSelector,\n isDisabled,\n isElement,\n isVisible,\n isRTL,\n noop,\n getNextActiveElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst SPACE_KEY = 'Space'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY}`)\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_NAVBAR = 'navbar'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]'\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'\n\nconst Default = {\n offset: [0, 2],\n boundary: 'clippingParents',\n reference: 'toggle',\n display: 'dynamic',\n popperConfig: null,\n autoClose: true\n}\n\nconst DefaultType = {\n offset: '(array|string|function)',\n boundary: '(string|element)',\n reference: '(string|element|object)',\n display: 'string',\n popperConfig: '(null|object|function)',\n autoClose: '(boolean|string)'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (isDisabled(this._element)) {\n return\n }\n\n const isActive = this._element.classList.contains(CLASS_NAME_SHOW)\n\n if (isActive) {\n this.hide()\n return\n }\n\n this.show()\n }\n\n show() {\n if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this._element)\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n // Totally disable Popper for Dropdowns in Navbar\n if (this._inNavbar) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'none')\n } else {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference)\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false)\n\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n\n if (isDisplayStatic) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static')\n }\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n !parent.closest(SELECTOR_NAVBAR_NAV)) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.on(elem, 'mouseover', noop))\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.toggle(CLASS_NAME_SHOW)\n this._element.classList.toggle(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n this._completeHide(relatedTarget)\n }\n\n dispose() {\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK, event => {\n event.preventDefault()\n this.toggle()\n })\n }\n\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.off(elem, 'mouseover', noop))\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.remove(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._element.setAttribute('aria-expanded', 'false')\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _getMenuElement() {\n return SelectorEngine.next(this._element, SELECTOR_MENU)[0]\n }\n\n _getPlacement() {\n const parentDropdown = this._element.parentNode\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display\n if (this._config.display === 'static') {\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _selectMenuItem({ key, target }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible)\n\n if (!items.length) {\n return\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus()\n }\n\n // Static\n\n static dropdownInterface(element, config) {\n const data = Dropdown.getOrCreateInstance(element, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Dropdown.dropdownInterface(this, config)\n })\n }\n\n static clearMenus(event) {\n if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {\n return\n }\n\n const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const context = Dropdown.getInstance(toggles[i])\n if (!context || context._config.autoClose === false) {\n continue\n }\n\n if (!context._element.classList.contains(CLASS_NAME_SHOW)) {\n continue\n }\n\n const relatedTarget = {\n relatedTarget: context._element\n }\n\n if (event) {\n const composedPath = event.composedPath()\n const isMenuTarget = composedPath.includes(context._menu)\n if (\n composedPath.includes(context._element) ||\n (context._config.autoClose === 'inside' && !isMenuTarget) ||\n (context._config.autoClose === 'outside' && isMenuTarget)\n ) {\n continue\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue\n }\n\n if (event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n }\n\n context._completeHide(relatedTarget)\n }\n }\n\n static getParentFromElement(element) {\n return getElementFromSelector(element) || element.parentNode\n }\n\n static dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName) ?\n event.key === SPACE_KEY || (event.key !== ESCAPE_KEY &&\n ((event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY) ||\n event.target.closest(SELECTOR_MENU))) :\n !REGEXP_KEYDOWN.test(event.key)) {\n return\n }\n\n const isActive = this.classList.contains(CLASS_NAME_SHOW)\n\n if (!isActive && event.key === ESCAPE_KEY) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (isDisabled(this)) {\n return\n }\n\n const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n\n if (event.key === ESCAPE_KEY) {\n getToggleButton().focus()\n Dropdown.clearMenus()\n return\n }\n\n if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) {\n if (!isActive) {\n getToggleButton().click()\n }\n\n Dropdown.getInstance(getToggleButton())._selectMenuItem(event)\n return\n }\n\n if (!isActive || event.key === SPACE_KEY) {\n Dropdown.clearMenus()\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n Dropdown.dropdownInterface(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Dropdown to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport SelectorEngine from '../dom/selector-engine'\nimport Manipulator from '../dom/manipulator'\nimport { isElement } from './index'\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body\n }\n\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth\n return Math.abs(window.innerWidth - documentWidth)\n }\n\n hide() {\n const width = this.getWidth()\n this._disableOverFlow()\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width)\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width)\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width)\n }\n\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow')\n this._element.style.overflow = 'hidden'\n }\n\n _setElementAttributes(selector, styleProp, callback) {\n const scrollbarWidth = this.getWidth()\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return\n }\n\n this._saveInitialAttribute(element, styleProp)\n const calculatedValue = window.getComputedStyle(element)[styleProp]\n element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n reset() {\n this._resetElementAttributes(this._element, 'overflow')\n this._resetElementAttributes(this._element, 'paddingRight')\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight')\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight')\n }\n\n _saveInitialAttribute(element, styleProp) {\n const actualValue = element.style[styleProp]\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProp, actualValue)\n }\n }\n\n _resetElementAttributes(selector, styleProp) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProp)\n if (typeof value === 'undefined') {\n element.style.removeProperty(styleProp)\n } else {\n Manipulator.removeDataAttribute(element, styleProp)\n element.style[styleProp] = value\n }\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector)\n } else {\n SelectorEngine.find(selector, this._element).forEach(callBack)\n }\n }\n\n isOverflowing() {\n return this.getWidth() > 0\n }\n}\n\nexport default ScrollBarHelper\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { execute, executeAfterTransition, getElement, reflow, typeCheckConfig } from './index'\n\nconst Default = {\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n isAnimated: false,\n rootElement: 'body', // give the choice to place backdrop under different elements\n clickCallback: null\n}\n\nconst DefaultType = {\n isVisible: 'boolean',\n isAnimated: 'boolean',\n rootElement: '(element|string)',\n clickCallback: '(function|null)'\n}\nconst NAME = 'backdrop'\nconst CLASS_NAME_BACKDROP = 'modal-backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nclass Backdrop {\n constructor(config) {\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\n }\n\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n if (this._config.isAnimated) {\n reflow(this._getElement())\n }\n\n this._getElement().classList.add(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n execute(callback)\n })\n }\n\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._getElement().classList.remove(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n this.dispose()\n execute(callback)\n })\n }\n\n // Private\n\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div')\n backdrop.className = CLASS_NAME_BACKDROP\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE)\n }\n\n this._element = backdrop\n }\n\n return this._element\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' ? config : {})\n }\n\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement)\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n this._config.rootElement.appendChild(this._getElement())\n\n EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n dispose() {\n if (!this._isAppended) {\n return\n }\n\n EventHandler.off(this._element, EVENT_MOUSEDOWN)\n\n this._element.remove()\n this._isAppended = false\n }\n\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated)\n }\n}\n\nexport default Backdrop\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport ScrollBarHelper from './util/scrollbar'\nimport BaseComponent from './base-component'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean'\n}\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"modal\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element)\n this._backdrop = this._initializeBackDrop()\n this._isShown = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollBar = new ScrollBarHelper()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n\n if (this._isAnimated()) {\n this._isTransitioning = true\n }\n\n this._scrollBar.hide()\n\n document.body.classList.add(CLASS_NAME_OPEN)\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, event => this.hide(event))\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event && ['A', 'AREA'].includes(event.target.tagName)) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n const isAnimated = this._isAnimated()\n\n if (isAnimated) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.off(document, EVENT_FOCUSIN)\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS)\n\n this._queueCallback(() => this._hideModal(), this._element, isAnimated)\n }\n\n dispose() {\n [window, this._dialog]\n .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))\n\n this._backdrop.dispose()\n super.dispose()\n\n /**\n * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `EVENT_CLICK_DATA_API` event that should remain\n */\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value\n isAnimated: this._isAnimated()\n })\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const isAnimated = this._isAnimated()\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n if (isAnimated) {\n reflow(this._element)\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, isAnimated)\n }\n\n _enforceFocus() {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n this._element !== event.target &&\n !this._element.contains(event.target)) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault()\n this.hide()\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition()\n }\n })\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog())\n } else {\n EventHandler.off(window, EVENT_RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n this._scrollBar.reset()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _showBackdrop(callback) {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, event => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n\n if (event.target !== event.currentTarget) {\n return\n }\n\n if (this._config.backdrop === true) {\n this.hide()\n } else if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n }\n })\n\n this._backdrop.show(callback)\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE)\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const { classList, scrollHeight, style } = this._element\n const isModalOverflowing = scrollHeight > document.documentElement.clientHeight\n\n // return if the following background transition hasn't yet completed\n if ((!isModalOverflowing && style.overflowY === 'hidden') || classList.contains(CLASS_NAME_STATIC)) {\n return\n }\n\n if (!isModalOverflowing) {\n style.overflowY = 'hidden'\n }\n\n classList.add(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n classList.remove(CLASS_NAME_STATIC)\n if (!isModalOverflowing) {\n this._queueCallback(() => {\n style.overflowY = ''\n }, this._dialog)\n }\n }, this._dialog)\n\n this._element.focus()\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const scrollbarWidth = this._scrollBar.getWidth()\n const isBodyOverflowing = scrollbarWidth > 0\n\n if ((!isBodyOverflowing && isModalOverflowing && !isRTL()) || (isBodyOverflowing && !isModalOverflowing && isRTL())) {\n this._element.style.paddingLeft = `${scrollbarWidth}px`\n }\n\n if ((isBodyOverflowing && !isModalOverflowing && !isRTL()) || (!isBodyOverflowing && isModalOverflowing && isRTL())) {\n this._element.style.paddingRight = `${scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n const data = Modal.getOrCreateInstance(target)\n\n data.toggle(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible,\n typeCheckConfig\n} from './util/index'\nimport ScrollBarHelper from './util/scrollbar'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Manipulator from './dom/manipulator'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: 'boolean',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\nconst CLASS_NAME_SHOW = 'show'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"offcanvas\"]'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._addEventListeners()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._element.style.visibility = 'visible'\n\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n this._enforceFocusOnElement(this._element)\n }\n\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const completeCallBack = () => {\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n EventHandler.off(document, EVENT_FOCUSIN)\n this._element.blur()\n this._isShown = false\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._element.style.visibility = 'hidden'\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n super.dispose()\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: this._config.backdrop,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _enforceFocusOnElement(element) {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n element !== event.target &&\n !element.contains(event.target)) {\n element.focus()\n }\n })\n element.focus()\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n this.hide()\n }\n })\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (allReadyOpen && allReadyOpen !== target) {\n Offcanvas.getInstance(allReadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () =>\n SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())\n)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attr, allowedAttributeList) => {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attrName)) {\n if (uriAttrs.has(attrName)) {\n return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attrName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const allowlistKeys = Object.keys(allowList)\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (!allowlistKeys.includes(elName)) {\n el.remove()\n\n continue\n }\n\n const attributeList = [].concat(...el.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || [])\n\n attributeList.forEach(attr => {\n if (!allowedAttribute(attr, allowedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport {\n DefaultAllowlist,\n sanitizeHtml\n} from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.appendChild(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n this.tip = element.children[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle())\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.appendChild(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n let title = this._element.getAttribute('data-bs-original-title')\n\n if (!title) {\n title = typeof this._config.title === 'function' ?\n this._config.title.call(this._element) :\n this._config.title\n }\n\n return title\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || Data.get(event.delegateTarget, dataKey)\n\n if (!context) {\n context = new this.constructor(event.delegateTarget, this._getDelegateConfig())\n Data.set(event.delegateTarget, dataKey, context)\n }\n\n return context\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this._config) {\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport SelectorEngine from './dom/selector-engine'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement: 'right',\n offset: [0, 8],\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(string|element|function)'\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n this.tip = super.getTipElement()\n\n if (!this.getTitle()) {\n SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove()\n }\n\n if (!this._getContent()) {\n SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove()\n }\n\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n\n // we use append for html objects to maintain js events\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this._element)\n }\n\n this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n // Private\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getContent() {\n return this._element.getAttribute('data-bs-content') || this._config.content\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Popover to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getSelectorFromElement,\n getUID,\n isElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n offset: 10,\n method: 'auto',\n target: ''\n}\n\nconst DefaultType = {\n offset: 'number',\n method: 'string',\n target: '(string|element)'\n}\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._scrollElement = this._element.tagName === 'BODY' ? window : this._element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process())\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window ?\n METHOD_OFFSET :\n METHOD_POSITION\n\n const offsetMethod = this._config.method === 'auto' ?\n autoMethod :\n this._config.method\n\n const offsetBase = offsetMethod === METHOD_POSITION ?\n this._getScrollTop() :\n 0\n\n this._offsets = []\n this._targets = []\n this._scrollHeight = this._getScrollHeight()\n\n const targets = SelectorEngine.find(this._selector)\n\n targets.map(element => {\n const targetSelector = getSelectorFromElement(element)\n const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n return [\n Manipulator[offsetMethod](target).top + offsetBase,\n targetSelector\n ]\n }\n }\n\n return null\n })\n .filter(item => item)\n .sort((a, b) => a[0] - b[0])\n .forEach(item => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n EventHandler.off(this._scrollElement, EVENT_KEY)\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (typeof config.target !== 'string' && isElement(config.target)) {\n let { id } = config.target\n if (!id) {\n id = getUID(NAME)\n config.target.id = id\n }\n\n config.target = `#${id}`\n }\n\n typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window ?\n this._scrollElement.pageYOffset :\n this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window ?\n window.innerHeight :\n this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n for (let i = this._offsets.length; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = this._selector.split(',')\n .map(selector => `${selector}[data-bs-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const link = SelectorEngine.findOne(queries.join(','))\n\n if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, link.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n\n link.classList.add(CLASS_NAME_ACTIVE)\n } else {\n // Set triggered link as active\n link.classList.add(CLASS_NAME_ACTIVE)\n\n SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP)\n .forEach(listGroup => {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n\n // Handle special case when .nav-link is inside .nav-item\n SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS)\n .forEach(navItem => {\n SelectorEngine.children(navItem, SELECTOR_NAV_LINKS)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n })\n })\n }\n\n EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, {\n relatedTarget: target\n })\n }\n\n _clear() {\n SelectorEngine.find(this._selector)\n .filter(node => node.classList.contains(CLASS_NAME_ACTIVE))\n .forEach(node => node.classList.remove(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n SelectorEngine.find(SELECTOR_DATA_SPY)\n .forEach(spy => new ScrollSpy(spy))\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .ScrollSpy to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n reflow\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_UL = ':scope > li > .active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tab extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n if ((this._element.parentNode &&\n this._element.parentNode.nodeType === Node.ELEMENT_NODE &&\n this._element.classList.contains(CLASS_NAME_ACTIVE))) {\n return\n }\n\n let previous\n const target = getElementFromSelector(this._element)\n const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP)\n\n if (listElement) {\n const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE\n previous = SelectorEngine.find(itemSelector, listElement)\n previous = previous[previous.length - 1]\n }\n\n const hideEvent = previous ?\n EventHandler.trigger(previous, EVENT_HIDE, {\n relatedTarget: this._element\n }) :\n null\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget: previous\n })\n\n if (showEvent.defaultPrevented || (hideEvent !== null && hideEvent.defaultPrevented)) {\n return\n }\n\n this._activate(this._element, listElement)\n\n const complete = () => {\n EventHandler.trigger(previous, EVENT_HIDDEN, {\n relatedTarget: this._element\n })\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget: previous\n })\n }\n\n if (target) {\n this._activate(target, target.parentNode, complete)\n } else {\n complete()\n }\n }\n\n // Private\n\n _activate(element, container, callback) {\n const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ?\n SelectorEngine.find(SELECTOR_ACTIVE_UL, container) :\n SelectorEngine.children(container, SELECTOR_ACTIVE)\n\n const active = activeElements[0]\n const isTransitioning = callback && (active && active.classList.contains(CLASS_NAME_FADE))\n\n const complete = () => this._transitionComplete(element, active, callback)\n\n if (active && isTransitioning) {\n active.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, element, true)\n } else {\n complete()\n }\n }\n\n _transitionComplete(element, active, callback) {\n if (active) {\n active.classList.remove(CLASS_NAME_ACTIVE)\n\n const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode)\n\n if (dropdownChild) {\n dropdownChild.classList.remove(CLASS_NAME_ACTIVE)\n }\n\n if (active.getAttribute('role') === 'tab') {\n active.setAttribute('aria-selected', false)\n }\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n if (element.getAttribute('role') === 'tab') {\n element.setAttribute('aria-selected', true)\n }\n\n reflow(element)\n\n if (element.classList.contains(CLASS_NAME_FADE)) {\n element.classList.add(CLASS_NAME_SHOW)\n }\n\n let parent = element.parentNode\n if (parent && parent.nodeName === 'LI') {\n parent = parent.parentNode\n }\n\n if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) {\n const dropdownElement = element.closest(SELECTOR_DROPDOWN)\n\n if (dropdownElement) {\n SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement)\n .forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE))\n }\n\n element.setAttribute('aria-expanded', true)\n }\n\n if (callback) {\n callback()\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tab.getOrCreateInstance(this)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const data = Tab.getOrCreateInstance(this)\n data.show()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tab to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'bs.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`\nconst EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_FOCUSOUT = `focusout${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"toast\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._timeout = null\n this._hasMouseInteraction = false\n this._hasKeyboardInteraction = false\n this._setListeners()\n }\n\n // Getters\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n this._element.classList.add(CLASS_NAME_SHOW)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n this._maybeScheduleHide()\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE)\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n hide() {\n if (!this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n return config\n }\n\n _maybeScheduleHide() {\n if (!this._config.autohide) {\n return\n }\n\n if (this._hasMouseInteraction || this._hasKeyboardInteraction) {\n return\n }\n\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n\n _onInteraction(event, isInteracting) {\n switch (event.type) {\n case 'mouseover':\n case 'mouseout':\n this._hasMouseInteraction = isInteracting\n break\n case 'focusin':\n case 'focusout':\n this._hasKeyboardInteraction = isInteracting\n break\n default:\n break\n }\n\n if (isInteracting) {\n this._clearTimeout()\n return\n }\n\n const nextElement = event.relatedTarget\n if (this._element === nextElement || this._element.contains(nextElement)) {\n return\n }\n\n this._maybeScheduleHide()\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false))\n EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false))\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Toast.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Toast to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Toast)\n\nexport default Toast\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): index.umd.js\n * Licensed under MIT (https:/github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Alert from \"@openeuropa/bcl-bootstrap/js/src/alert\";\nimport Button from \"@openeuropa/bcl-bootstrap/js/src/button\";\nimport Carousel from \"@openeuropa/bcl-bootstrap/js/src/carousel\";\nimport Collapse from \"@openeuropa/bcl-bootstrap/js/src/collapse\";\nimport Dropdown from \"@openeuropa/bcl-bootstrap/js/src/dropdown\";\nimport Modal from \"@openeuropa/bcl-bootstrap/js/src/modal\";\nimport Offcanvas from \"@openeuropa/bcl-bootstrap/js/src/offcanvas\";\nimport Popover from \"@openeuropa/bcl-bootstrap/js/src/popover\";\nimport ScrollSpy from \"@openeuropa/bcl-bootstrap/js/src/scrollspy\";\nimport Tab from \"@openeuropa/bcl-bootstrap/js/src/tab\";\nimport Toast from \"@openeuropa/bcl-bootstrap/js/src/toast\";\nimport Tooltip from \"@openeuropa/bcl-bootstrap/js/src/tooltip\";\n\nexport default {\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n};\n"],"names":["NODE_TEXT","SelectorEngine","find","selector","element","document","documentElement","concat","Element","prototype","querySelectorAll","call","findOne","querySelector","children","filter","child","matches","parents","ancestor","parentNode","nodeType","Node","ELEMENT_NODE","push","prev","previous","previousElementSibling","next","nextElementSibling","MAX_UID","MILLISECONDS_MULTIPLIER","TRANSITION_END","toType","obj","undefined","toString","match","toLowerCase","getUID","prefix","Math","floor","random","getElementById","getSelector","getAttribute","hrefAttr","includes","startsWith","split","trim","getSelectorFromElement","getElementFromSelector","getTransitionDurationFromElement","transitionDuration","transitionDelay","window","getComputedStyle","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","triggerTransitionEnd","dispatchEvent","Event","isElement","jquery","getElement","length","typeCheckConfig","componentName","config","configTypes","Object","keys","forEach","property","expectedTypes","value","valueType","RegExp","test","TypeError","toUpperCase","isVisible","getClientRects","getPropertyValue","isDisabled","classList","contains","disabled","hasAttribute","findShadowRoot","attachShadow","getRootNode","root","ShadowRoot","noop","reflow","offsetHeight","getjQuery","jQuery","body","DOMContentLoadedCallbacks","onDOMContentLoaded","callback","readyState","addEventListener","isRTL","dir","defineJQueryPlugin","plugin","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","execute","executeAfterTransition","transitionElement","waitForTransition","durationPadding","emulatedDuration","called","handler","target","removeEventListener","setTimeout","getNextActiveElement","list","activeElement","shouldGetNext","isCycleAllowed","index","indexOf","listLength","max","min","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","customEventsRegex","nativeEvents","Set","getUidEvent","uid","getEvent","bootstrapHandler","event","delegateTarget","oneOff","EventHandler","off","type","apply","bootstrapDelegationHandler","domElements","i","findHandler","events","delegationSelector","uidEventList","len","originalHandler","normalizeParams","originalTypeEvent","delegationFn","delegation","typeEvent","getTypeEvent","isNative","has","addHandler","wrapFn","relatedTarget","handlers","previousFn","replace","removeHandler","Boolean","removeNamespacedHandlers","namespace","storeElementEvent","handlerKey","on","one","inNamespace","isNamespace","elementEvent","slice","keyHandlers","trigger","args","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","evt","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","createEvent","initEvent","CustomEvent","cancelable","key","defineProperty","get","preventDefault","elementMap","Map","set","instance","instanceMap","size","console","error","Array","from","remove","delete","VERSION","BaseComponent","constructor","_element","Data","DATA_KEY","dispose","EVENT_KEY","getOwnPropertyNames","propertyName","_queueCallback","isAnimated","getInstance","getOrCreateInstance","Error","DATA_API_KEY","SELECTOR_DISMISS","EVENT_CLOSE","EVENT_CLOSED","EVENT_CLICK_DATA_API","CLASS_NAME_ALERT","CLASS_NAME_FADE","CLASS_NAME_SHOW","Alert","close","rootElement","_getRootElement","customEvent","_triggerCloseEvent","_removeElement","closest","_destroyElement","each","data","handleDismiss","alertInstance","CLASS_NAME_ACTIVE","SELECTOR_DATA_TOGGLE","Button","toggle","setAttribute","button","normalizeData","val","normalizeDataKey","chr","Manipulator","setDataAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","dataset","pureKey","charAt","getDataAttribute","offset","rect","getBoundingClientRect","top","scrollTop","left","scrollLeft","position","offsetTop","offsetLeft","ARROW_LEFT_KEY","ARROW_RIGHT_KEY","TOUCHEVENT_COMPAT_WAIT","SWIPE_THRESHOLD","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","KEY_TO_DIRECTION","EVENT_SLIDE","EVENT_SLID","EVENT_KEYDOWN","EVENT_MOUSEENTER","EVENT_MOUSELEAVE","EVENT_TOUCHSTART","EVENT_TOUCHMOVE","EVENT_TOUCHEND","EVENT_POINTERDOWN","EVENT_POINTERUP","EVENT_DRAG_START","EVENT_LOAD_DATA_API","CLASS_NAME_CAROUSEL","CLASS_NAME_SLIDE","CLASS_NAME_END","CLASS_NAME_START","CLASS_NAME_NEXT","CLASS_NAME_PREV","CLASS_NAME_POINTER_EVENT","SELECTOR_ACTIVE","SELECTOR_ACTIVE_ITEM","SELECTOR_ITEM","SELECTOR_ITEM_IMG","SELECTOR_NEXT_PREV","SELECTOR_INDICATORS","SELECTOR_INDICATOR","SELECTOR_DATA_SLIDE","SELECTOR_DATA_RIDE","POINTER_TYPE_TOUCH","POINTER_TYPE_PEN","Carousel","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","PointerEvent","_addEventListeners","_slide","nextWhenVisible","hidden","cycle","clearInterval","_updateInterval","setInterval","visibilityState","bind","to","activeIndex","_getItemIndex","order","_handleSwipe","absDeltax","abs","direction","_keydown","_addTouchEventListeners","start","pointerType","clientX","touches","move","end","clearTimeout","itemImg","e","add","tagName","_getItemByOrder","isNext","_triggerSlideEvent","eventDirectionName","targetIndex","fromIndex","_setActiveIndicatorElement","activeIndicator","indicators","parseInt","elementInterval","defaultInterval","directionOrOrder","_directionToOrder","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","_orderToDirection","slideEvent","triggerSlidEvent","completeCallBack","carouselInterface","action","ride","dataApiClickHandler","slideIndex","carousels","parent","EVENT_SHOW","EVENT_SHOWN","EVENT_HIDE","EVENT_HIDDEN","CLASS_NAME_COLLAPSE","CLASS_NAME_COLLAPSING","CLASS_NAME_COLLAPSED","WIDTH","HEIGHT","SELECTOR_ACTIVES","Collapse","_isTransitioning","_triggerArray","id","toggleList","elem","filterElement","foundElem","_selector","_parent","_getParent","_addAriaAndCollapsedClass","hide","show","actives","activesData","container","tempActiveData","startEvent","elemActive","collapseInterface","dimension","_getDimension","style","setTransitioning","complete","capitalizedDimension","scrollSize","triggerArrayLength","isTransitioning","selected","triggerArray","isOpen","triggerData","selectorElements","bottom","right","auto","basePlacements","clippingParents","viewport","popper","reference","variationPlacements","reduce","acc","placement","placements","beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite","modifierPhases","getNodeName","nodeName","getWindow","node","ownerDocument","defaultView","OwnElement","isHTMLElement","HTMLElement","isShadowRoot","applyStyles","_ref","state","elements","styles","assign","effect","_ref2","initialStyles","options","strategy","margin","arrow","styleProperties","hasOwnProperty","attribute","enabled","phase","requires","getBasePlacement","width","height","x","y","getLayoutRect","clientRect","offsetWidth","rootNode","isSameNode","host","isTableElement","getDocumentElement","getParentNode","assignedSlot","getTrueOffsetParent","offsetParent","getContainingBlock","isFirefox","userAgent","isIE","elementCss","currentNode","css","transform","perspective","contain","willChange","getOffsetParent","getMainAxisFromPlacement","round","within","mathMax","mathMin","getFreshSideObject","mergePaddingObject","paddingObject","expandToHashMap","hashMap","toPaddingObject","padding","rects","_state$modifiersData$","arrowElement","popperOffsets","modifiersData","basePlacement","axis","isVertical","arrowRect","minProp","maxProp","endDiff","startDiff","arrowOffsetParent","clientSize","clientHeight","clientWidth","centerToReference","center","axisProp","centerOffset","_options$element","process","env","NODE_ENV","join","requiresIfExists","unsetSides","roundOffsetsByDPR","win","dpr","devicePixelRatio","mapToStyles","_Object$assign2","popperRect","offsets","gpuAcceleration","adaptive","roundOffsets","_ref3","_ref3$x","_ref3$y","hasX","hasY","sideX","sideY","heightProp","widthProp","commonStyles","_Object$assign","computeStyles","_ref4","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","transitionProperty","some","warn","passive","_options$scroll","scroll","_options$resize","resize","scrollParents","scrollParent","update","hash","getOppositePlacement","matched","getOppositeVariationPlacement","getWindowScroll","pageXOffset","pageYOffset","getWindowScrollBarX","getViewportRect","html","visualViewport","getDocumentRect","_element$ownerDocumen","winScroll","scrollWidth","scrollHeight","isScrollParent","_getComputedStyle","overflow","overflowX","overflowY","getScrollParent","listScrollParents","isBody","updatedList","rectToClientRect","getInnerBoundingClientRect","clientTop","clientLeft","getClientRectFromMixedType","clippingParent","getClippingParents","canEscapeClipping","clipperElement","getClippingRect","boundary","rootBoundary","mainClippingParents","firstClippingParent","clippingRect","accRect","getVariation","computeOffsets","variation","commonX","commonY","mainAxis","detectOverflow","_options","_options$placement","_options$boundary","_options$rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","referenceElement","clippingClientRect","contextElement","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","multiply","computeAutoPlacement","flipVariations","_options$allowedAutoP","allowedAutoPlacements","allPlacements","allowedPlacements","overflows","sort","a","b","getExpandedFallbackPlacements","oppositePlacement","flip","_skip","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","preferredPlacement","isBasePlacement","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","mainVariationSide","altVariationSide","checks","every","check","numberOfChecks","_loop","_i","fittingPlacement","_ret","reset","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","distanceAndSkiddingToXY","invertDistance","skidding","distance","_options$offset","_data$state$placement","getAltAxis","_options$tether","tether","_options$tetherOffset","tetherOffset","tetherOffsetValue","mainSide","altSide","additive","minLen","maxLen","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","clientOffset","offsetModifierValue","tetherMin","tetherMax","preventedOffset","_mainSide","_altSide","_offset","_min","_max","_preventedOffset","getHTMLElementScroll","getNodeScroll","getCompositeRect","elementOrVirtualElement","isFixed","isOffsetParentAnElement","modifiers","map","visited","result","modifier","dep","depModifier","orderModifiers","orderedModifiers","debounce","pending","Promise","resolve","then","format","str","_len","arguments","_key","p","c","INVALID_MODIFIER_ERROR","MISSING_DEPENDENCY_ERROR","VALID_PROPERTIES","validateModifiers","String","isArray","s","requirement","mod","uniqueBy","arr","identifiers","item","identifier","mergeByName","merged","current","existing","INVALID_ELEMENT_ERROR","INFINITE_LOOP_ERROR","DEFAULT_OPTIONS","areValidElements","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","createPopper","effectCleanupFns","isDestroyed","setOptions","cleanupModifierEffects","m","flipModifier","marginTop","marginRight","marginBottom","marginLeft","runModifierEffects","forceUpdate","_state$elements","__debug_loops__","_state$orderedModifie","_state$orderedModifie2","destroy","onFirstUpdate","_ref3$options","cleanupFn","noopFn","eventListeners","ESCAPE_KEY","SPACE_KEY","TAB_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","RIGHT_MOUSE_BUTTON","REGEXP_KEYDOWN","EVENT_CLICK","EVENT_KEYDOWN_DATA_API","EVENT_KEYUP_DATA_API","CLASS_NAME_DROPUP","CLASS_NAME_DROPEND","CLASS_NAME_DROPSTART","CLASS_NAME_NAVBAR","SELECTOR_MENU","SELECTOR_NAVBAR_NAV","SELECTOR_VISIBLE_ITEMS","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","display","popperConfig","autoClose","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","isActive","getParentFromElement","showEvent","Popper","_getPopperConfig","isDisplayStatic","focus","_completeHide","hideEvent","_getPlacement","parentDropdown","isEnd","_getOffset","popperData","defaultBsPopperConfig","_selectMenuItem","items","dropdownInterface","clearMenus","toggles","context","composedPath","isMenuTarget","clickEvent","dataApiKeydownHandler","stopPropagation","getToggleButton","click","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","ScrollBarHelper","getWidth","documentWidth","innerWidth","_disableOverFlow","_setElementAttributes","calculatedValue","_saveInitialAttribute","styleProp","scrollbarWidth","manipulationCallBack","_applyManipulationCallback","_resetElementAttributes","actualValue","removeProperty","callBack","isOverflowing","clickCallback","CLASS_NAME_BACKDROP","EVENT_MOUSEDOWN","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","createElement","className","appendChild","EVENT_HIDE_PREVENTED","EVENT_FOCUSIN","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_KEYDOWN_DISMISS","EVENT_MOUSEUP_DISMISS","EVENT_MOUSEDOWN_DISMISS","CLASS_NAME_OPEN","CLASS_NAME_STATIC","SELECTOR_DIALOG","SELECTOR_MODAL_BODY","SELECTOR_DATA_DISMISS","Modal","_dialog","_backdrop","_initializeBackDrop","_isShown","_ignoreBackdropClick","_scrollBar","_isAnimated","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","_hideModal","htmlElement","handleUpdate","modalBody","_enforceFocus","transitionComplete","_triggerBackdropTransition","_resetAdjustments","currentTarget","isModalOverflowing","isBodyOverflowing","paddingLeft","paddingRight","OPEN_SELECTOR","Offcanvas","visibility","_enforceFocusOnElement","blur","completeCallback","allReadyOpen","el","uriAttrs","ARIA_ATTRIBUTE_PATTERN","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeValue","regExp","attrRegex","DefaultAllowlist","area","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","pre","small","span","sub","sup","strong","u","ul","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","domParser","DOMParser","createdDocument","parseFromString","allowlistKeys","elName","attributeList","allowedAttributes","innerHTML","CLASS_PREFIX","BSCLS_PREFIX_REGEX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","customClass","sanitize","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","CLASS_NAME_MODAL","HOVER_STATE_SHOW","HOVER_STATE_OUT","SELECTOR_TOOLTIP_INNER","TRIGGER_HOVER","TRIGGER_FOCUS","TRIGGER_CLICK","TRIGGER_MANUAL","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","_initializeOnDelegatedTarget","_isWithActiveTrigger","_enter","_leave","getTipElement","_hideModalHandler","isWithContent","shadowRoot","isInTheDom","tipId","setContent","attachment","_getAttachment","_addAttachmentClass","prevHoverState","_cleanTipClass","getTitle","setElementContent","content","textContent","updateAttachment","dataKey","_getDelegateConfig","_handlePopperPlacementChange","triggers","eventIn","eventOut","_fixTitle","originalTitleType","dataAttributes","dataAttr","tabClass","token","tClass","SELECTOR_TITLE","SELECTOR_CONTENT","Popover","_getContent","method","EVENT_ACTIVATE","EVENT_SCROLL","CLASS_NAME_DROPDOWN_ITEM","SELECTOR_DATA_SPY","SELECTOR_NAV_LIST_GROUP","SELECTOR_NAV_LINKS","SELECTOR_NAV_ITEMS","SELECTOR_LIST_ITEMS","SELECTOR_DROPDOWN","SELECTOR_DROPDOWN_TOGGLE","METHOD_OFFSET","METHOD_POSITION","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targets","targetSelector","targetBCR","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","isActiveTarget","queries","link","listGroup","navItem","spy","CLASS_NAME_DROPDOWN_MENU","SELECTOR_ACTIVE_UL","SELECTOR_DROPDOWN_ACTIVE_CHILD","Tab","listElement","itemSelector","activeElements","active","_transitionComplete","dropdownChild","dropdownElement","dropdown","EVENT_MOUSEOVER","EVENT_MOUSEOUT","EVENT_FOCUSOUT","CLASS_NAME_HIDE","CLASS_NAME_SHOWING","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","_onInteraction","isInteracting"],"mappings":"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"} \ No newline at end of file diff --git a/assets/js/oe-bcl-default.umd.min.js b/assets/js/oe-bcl-default.umd.min.js new file mode 100644 index 00000000..96290a96 --- /dev/null +++ b/assets/js/oe-bcl-default.umd.min.js @@ -0,0 +1,2 @@ +!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).bootstrap=t()}(this,(function(){"use strict";const e={find:(e,t=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(t,e)),findOne:(e,t=document.documentElement)=>Element.prototype.querySelector.call(t,e),children:(e,t)=>[].concat(...e.children).filter((e=>e.matches(t))),parents(e,t){const i=[];let n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&3!==n.nodeType;)n.matches(t)&&i.push(n),n=n.parentNode;return i},prev(e,t){let i=e.previousElementSibling;for(;i;){if(i.matches(t))return[i];i=i.previousElementSibling}return[]},next(e,t){let i=e.nextElementSibling;for(;i;){if(i.matches(t))return[i];i=i.nextElementSibling}return[]}},t="transitionend",i=e=>{do{e+=Math.floor(1e6*Math.random())}while(document.getElementById(e));return e},n=e=>{let t=e.getAttribute("data-bs-target");if(!t||"#"===t){let i=e.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i=`#${i.split("#")[1]}`),t=i&&"#"!==i?i.trim():null}return t},s=e=>{const t=n(e);return t&&document.querySelector(t)?t:null},o=e=>{const t=n(e);return t?document.querySelector(t):null},r=e=>{e.dispatchEvent(new Event(t))},a=e=>!(!e||"object"!=typeof e)&&(void 0!==e.jquery&&(e=e[0]),void 0!==e.nodeType),l=t=>a(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?e.findOne(t):null,c=(e,t,i)=>{Object.keys(i).forEach((n=>{const s=i[n],o=t[n],r=o&&a(o)?"element":null==(l=o)?`${l}`:{}.toString.call(l).match(/\s([a-z]+)/i)[1].toLowerCase();var l;if(!new RegExp(s).test(r))throw new TypeError(`${e.toUpperCase()}: Option "${n}" provided type "${r}" but expected type "${s}".`)}))},h=e=>!(!a(e)||0===e.getClientRects().length)&&"visible"===getComputedStyle(e).getPropertyValue("visibility"),d=e=>!e||e.nodeType!==Node.ELEMENT_NODE||!!e.classList.contains("disabled")||(void 0!==e.disabled?e.disabled:e.hasAttribute("disabled")&&"false"!==e.getAttribute("disabled")),u=e=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof e.getRootNode){const t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?u(e.parentNode):null},f=()=>{},p=e=>e.offsetHeight,m=()=>{const{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],_=()=>"rtl"===document.documentElement.dir,b=e=>{var t;t=()=>{const t=m();if(t){const i=e.NAME,n=t.fn[i];t.fn[i]=e.jQueryInterface,t.fn[i].Constructor=e,t.fn[i].noConflict=()=>(t.fn[i]=n,e.jQueryInterface)}},"loading"===document.readyState?(g.length||document.addEventListener("DOMContentLoaded",(()=>{g.forEach((e=>e()))})),g.push(t)):t()},v=e=>{"function"==typeof e&&e()},y=(e,i,n=!0)=>{if(!n)return void v(e);const s=(e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:i}=window.getComputedStyle(e);const n=Number.parseFloat(t),s=Number.parseFloat(i);return n||s?(t=t.split(",")[0],i=i.split(",")[0],1e3*(Number.parseFloat(t)+Number.parseFloat(i))):0})(i)+5;let o=!1;const a=({target:n})=>{n===i&&(o=!0,i.removeEventListener(t,a),v(e))};i.addEventListener(t,a),setTimeout((()=>{o||r(i)}),s)},w=(e,t,i,n)=>{let s=e.indexOf(t);if(-1===s)return e[!i&&n?e.length-1:0];const o=e.length;return s+=i?1:-1,n&&(s=(s+o)%o),e[Math.max(0,Math.min(s,o-1))]},E=/[^.]*(?=\..*)\.|.*/,A=/\..*/,T=/::\d+$/,O={};let C=1;const k={mouseenter:"mouseover",mouseleave:"mouseout"},L=/^(mouseenter|mouseleave)/i,x=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 D(e,t){return t&&`${t}::${C++}`||e.uidEvent||C++}function S(e){const t=D(e);return e.uidEvent=t,O[t]=O[t]||{},O[t]}function N(e,t,i=null){const n=Object.keys(e);for(let s=0,o=n.length;s<o;s++){const o=e[n[s]];if(o.originalHandler===t&&o.delegationSelector===i)return o}return null}function I(e,t,i){const n="string"==typeof t,s=n?i:t;let o=M(e);return x.has(o)||(o=e),[n,s,o]}function j(e,t,i,n,s){if("string"!=typeof t||!e)return;if(i||(i=n,n=null),L.test(t)){const e=e=>function(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};n?n=e(n):i=e(i)}const[o,r,a]=I(t,i,n),l=S(e),c=l[a]||(l[a]={}),h=N(c,r,o?i:null);if(h)return void(h.oneOff=h.oneOff&&s);const d=D(r,t.replace(E,"")),u=o?function(e,t,i){return function n(s){const o=e.querySelectorAll(t);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&&H.off(e,s.type,t,i),i.apply(r,[s]);return null}}(e,i,n):function(e,t){return function i(n){return n.delegateTarget=e,i.oneOff&&H.off(e,n.type,t),t.apply(e,[n])}}(e,i);u.delegationSelector=o?i:null,u.originalHandler=r,u.oneOff=s,u.uidEvent=d,c[d]=u,e.addEventListener(a,u,o)}function P(e,t,i,n,s){const o=N(t[i],n,s);o&&(e.removeEventListener(i,o,Boolean(s)),delete t[i][o.uidEvent])}function M(e){return e=e.replace(A,""),k[e]||e}const H={on(e,t,i,n){j(e,t,i,n,!1)},one(e,t,i,n){j(e,t,i,n,!0)},off(e,t,i,n){if("string"!=typeof t||!e)return;const[s,o,r]=I(t,i,n),a=r!==t,l=S(e),c=t.startsWith(".");if(void 0!==o){if(!l||!l[r])return;return void P(e,l,r,o,s?i:null)}c&&Object.keys(l).forEach((i=>{!function(e,t,i,n){const s=t[i]||{};Object.keys(s).forEach((o=>{if(o.includes(n)){const n=s[o];P(e,t,i,n.originalHandler,n.delegationSelector)}}))}(e,l,i,t.slice(1))}));const h=l[r]||{};Object.keys(h).forEach((i=>{const n=i.replace(T,"");if(!a||t.includes(n)){const t=h[i];P(e,l,r,t.originalHandler,t.delegationSelector)}}))},trigger(e,t,i){if("string"!=typeof t||!e)return null;const n=m(),s=M(t),o=t!==s,r=x.has(s);let a,l=!0,c=!0,h=!1,d=null;return o&&n&&(a=n.Event(t,i),n(e).trigger(a),l=!a.isPropagationStopped(),c=!a.isImmediatePropagationStopped(),h=a.isDefaultPrevented()),r?(d=document.createEvent("HTMLEvents"),d.initEvent(s,l,!0)):d=new CustomEvent(t,{bubbles:l,cancelable:!0}),void 0!==i&&Object.keys(i).forEach((e=>{Object.defineProperty(d,e,{get:()=>i[e]})})),h&&d.preventDefault(),c&&e.dispatchEvent(d),d.defaultPrevented&&void 0!==a&&a.preventDefault(),d}},R=new Map;var B={set(e,t,i){R.has(e)||R.set(e,new Map);const n=R.get(e);n.has(t)||0===n.size?n.set(t,i):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(n.keys())[0]}.`)},get:(e,t)=>R.has(e)&&R.get(e).get(t)||null,remove(e,t){if(!R.has(e))return;const i=R.get(e);i.delete(t),0===i.size&&R.delete(e)}};class ${constructor(e){(e=l(e))&&(this._element=e,B.set(this._element,this.constructor.DATA_KEY,this))}dispose(){B.remove(this._element,this.constructor.DATA_KEY),H.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach((e=>{this[e]=null}))}_queueCallback(e,t,i=!0){y(e,t,i)}static getInstance(e){return B.get(e,this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,"object"==typeof t?t:null)}static get VERSION(){return"5.0.2"}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}`}}class q extends ${static get NAME(){return"alert"}close(e){const t=e?this._getRootElement(e):this._element,i=this._triggerCloseEvent(t);null===i||i.defaultPrevented||this._removeElement(t)}_getRootElement(e){return o(e)||e.closest(".alert")}_triggerCloseEvent(e){return H.trigger(e,"close.bs.alert")}_removeElement(e){e.classList.remove("show");const t=e.classList.contains("fade");this._queueCallback((()=>this._destroyElement(e)),e,t)}_destroyElement(e){e.remove(),H.trigger(e,"closed.bs.alert")}static jQueryInterface(e){return this.each((function(){const t=q.getOrCreateInstance(this);"close"===e&&t[e](this)}))}static handleDismiss(e){return function(t){t&&t.preventDefault(),e.close(this)}}}H.on(document,"click.bs.alert.data-api",'[data-bs-dismiss="alert"]',q.handleDismiss(new q)),b(q);const W='[data-bs-toggle="button"]';class V extends ${static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(e){return this.each((function(){const t=V.getOrCreateInstance(this);"toggle"===e&&t[e]()}))}}function z(e){return"true"===e||"false"!==e&&(e===Number(e).toString()?Number(e):""===e||"null"===e?null:e)}function F(e){return e.replace(/[A-Z]/g,(e=>`-${e.toLowerCase()}`))}H.on(document,"click.bs.button.data-api",W,(e=>{e.preventDefault();const t=e.target.closest(W);V.getOrCreateInstance(t).toggle()})),b(V);const U={setDataAttribute(e,t,i){e.setAttribute(`data-bs-${F(t)}`,i)},removeDataAttribute(e,t){e.removeAttribute(`data-bs-${F(t)}`)},getDataAttributes(e){if(!e)return{};const t={};return Object.keys(e.dataset).filter((e=>e.startsWith("bs"))).forEach((i=>{let n=i.replace(/^bs/,"");n=n.charAt(0).toLowerCase()+n.slice(1,n.length),t[n]=z(e.dataset[i])})),t},getDataAttribute:(e,t)=>z(e.getAttribute(`data-bs-${F(t)}`)),offset(e){const t=e.getBoundingClientRect();return{top:t.top+document.body.scrollTop,left:t.left+document.body.scrollLeft}},position:e=>({top:e.offsetTop,left:e.offsetLeft})},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",J="left",Z="right",ee={ArrowLeft:Z,ArrowRight:J},te="slid.bs.carousel",ie="active",ne=".active.carousel-item",se="touch";class oe extends ${constructor(t,i){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(i),this._indicatorsElement=e.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&&h(this._element)&&this.next()}prev(){this._slide(G)}pause(t){t||(this._isPaused=!0),e.findOne(".carousel-item-next, .carousel-item-prev",this._element)&&(r(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(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=e.findOne(ne,this._element);const i=this._getItemIndex(this._activeElement);if(t>this._items.length-1||t<0)return;if(this._isSliding)return void H.one(this._element,te,(()=>this.to(t)));if(i===t)return this.pause(),void this.cycle();const n=t>i?Q:G;this._slide(n,this._items[t])}_getConfig(e){return e={...X,...U.getDataAttributes(this._element),..."object"==typeof e?e:{}},c(K,e,Y),e}_handleSwipe(){const e=Math.abs(this.touchDeltaX);if(e<=40)return;const t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?Z:J)}_addEventListeners(){this._config.keyboard&&H.on(this._element,"keydown.bs.carousel",(e=>this._keydown(e))),"hover"===this._config.pause&&(H.on(this._element,"mouseenter.bs.carousel",(e=>this.pause(e))),H.on(this._element,"mouseleave.bs.carousel",(e=>this.cycle(e)))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){const t=e=>{!this._pointerEvent||"pen"!==e.pointerType&&e.pointerType!==se?this._pointerEvent||(this.touchStartX=e.touches[0].clientX):this.touchStartX=e.clientX},i=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=e=>{!this._pointerEvent||"pen"!==e.pointerType&&e.pointerType!==se||(this.touchDeltaX=e.clientX-this.touchStartX),this._handleSwipe(),"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout((e=>this.cycle(e)),500+this._config.interval))};e.find(".carousel-item img",this._element).forEach((e=>{H.on(e,"dragstart.bs.carousel",(e=>e.preventDefault()))})),this._pointerEvent?(H.on(this._element,"pointerdown.bs.carousel",(e=>t(e))),H.on(this._element,"pointerup.bs.carousel",(e=>n(e))),this._element.classList.add("pointer-event")):(H.on(this._element,"touchstart.bs.carousel",(e=>t(e))),H.on(this._element,"touchmove.bs.carousel",(e=>i(e))),H.on(this._element,"touchend.bs.carousel",(e=>n(e))))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;const t=ee[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(t){return this._items=t&&t.parentNode?e.find(".carousel-item",t.parentNode):[],this._items.indexOf(t)}_getItemByOrder(e,t){const i=e===Q;return w(this._items,t,i,this._config.wrap)}_triggerSlideEvent(t,i){const n=this._getItemIndex(t),s=this._getItemIndex(e.findOne(ne,this._element));return H.trigger(this._element,"slide.bs.carousel",{relatedTarget:t,direction:i,from:s,to:n})}_setActiveIndicatorElement(t){if(this._indicatorsElement){const i=e.findOne(".active",this._indicatorsElement);i.classList.remove(ie),i.removeAttribute("aria-current");const n=e.find("[data-bs-target]",this._indicatorsElement);for(let e=0;e<n.length;e++)if(Number.parseInt(n[e].getAttribute("data-bs-slide-to"),10)===this._getItemIndex(t)){n[e].classList.add(ie),n[e].setAttribute("aria-current","true");break}}}_updateInterval(){const t=this._activeElement||e.findOne(ne,this._element);if(!t)return;const i=Number.parseInt(t.getAttribute("data-bs-interval"),10);i?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,this._config.interval=i):this._config.interval=this._config.defaultInterval||this._config.interval}_slide(t,i){const n=this._directionToOrder(t),s=e.findOne(ne,this._element),o=this._getItemIndex(s),r=i||this._getItemByOrder(n,s),a=this._getItemIndex(r),l=Boolean(this._interval),c=n===Q,h=c?"carousel-item-start":"carousel-item-end",d=c?"carousel-item-next":"carousel-item-prev",u=this._orderToDirection(n);if(r&&r.classList.contains(ie))return void(this._isSliding=!1);if(this._isSliding)return;if(this._triggerSlideEvent(r,u).defaultPrevented)return;if(!s||!r)return;this._isSliding=!0,l&&this.pause(),this._setActiveIndicatorElement(r),this._activeElement=r;const f=()=>{H.trigger(this._element,te,{relatedTarget:r,direction:u,from:o,to:a})};if(this._element.classList.contains("slide")){r.classList.add(d),p(r),s.classList.add(h),r.classList.add(h);const e=()=>{r.classList.remove(h,d),r.classList.add(ie),s.classList.remove(ie,d,h),this._isSliding=!1,setTimeout(f,0)};this._queueCallback(e,s,!0)}else s.classList.remove(ie),r.classList.add(ie),this._isSliding=!1,f();l&&this.cycle()}_directionToOrder(e){return[Z,J].includes(e)?_()?e===J?G:Q:e===J?Q:G:e}_orderToDirection(e){return[Q,G].includes(e)?_()?e===G?J:Z:e===G?Z:J:e}static carouselInterface(e,t){const i=oe.getOrCreateInstance(e,t);let{_config:n}=i;"object"==typeof t&&(n={...n,...t});const s="string"==typeof t?t:n.slide;if("number"==typeof t)i.to(t);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(e){return this.each((function(){oe.carouselInterface(this,e)}))}static dataApiClickHandler(e){const t=o(this);if(!t||!t.classList.contains("carousel"))return;const i={...U.getDataAttributes(t),...U.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(i.interval=!1),oe.carouselInterface(t,i),n&&oe.getInstance(t).to(n),e.preventDefault()}}H.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",oe.dataApiClickHandler),H.on(window,"load.bs.carousel.data-api",(()=>{const t=e.find('[data-bs-ride="carousel"]');for(let e=0,i=t.length;e<i;e++)oe.carouselInterface(t[e],oe.getInstance(t[e]))})),b(oe);const re="collapse",ae={toggle:!0,parent:""},le={toggle:"boolean",parent:"(string|element)"},ce="show",he="collapse",de="collapsing",ue="collapsed",fe="width",pe='[data-bs-toggle="collapse"]';class me extends ${constructor(t,i){super(t),this._isTransitioning=!1,this._config=this._getConfig(i),this._triggerArray=e.find(`${pe}[href="#${this._element.id}"],${pe}[data-bs-target="#${this._element.id}"]`);const n=e.find(pe);for(let t=0,i=n.length;t<i;t++){const i=n[t],o=s(i),r=e.find(o).filter((e=>e===this._element));null!==o&&r.length&&(this._selector=o,this._triggerArray.push(i))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}static get Default(){return ae}static get NAME(){return re}toggle(){this._element.classList.contains(ce)?this.hide():this.show()}show(){if(this._isTransitioning||this._element.classList.contains(ce))return;let t,i;this._parent&&(t=e.find(".show, .collapsing",this._parent).filter((e=>"string"==typeof this._config.parent?e.getAttribute("data-bs-parent")===this._config.parent:e.classList.contains(he))),0===t.length&&(t=null));const n=e.findOne(this._selector);if(t){const e=t.find((e=>n!==e));if(i=e?me.getInstance(e):null,i&&i._isTransitioning)return}if(H.trigger(this._element,"show.bs.collapse").defaultPrevented)return;t&&t.forEach((e=>{n!==e&&me.collapseInterface(e,"hide"),i||B.set(e,"bs.collapse",null)}));const s=this._getDimension();this._element.classList.remove(he),this._element.classList.add(de),this._element.style[s]=0,this._triggerArray.length&&this._triggerArray.forEach((e=>{e.classList.remove(ue),e.setAttribute("aria-expanded",!0)})),this.setTransitioning(!0);const o=`scroll${s[0].toUpperCase()+s.slice(1)}`;this._queueCallback((()=>{this._element.classList.remove(de),this._element.classList.add(he,ce),this._element.style[s]="",this.setTransitioning(!1),H.trigger(this._element,"shown.bs.collapse")}),this._element,!0),this._element.style[s]=`${this._element[o]}px`}hide(){if(this._isTransitioning||!this._element.classList.contains(ce))return;if(H.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,p(this._element),this._element.classList.add(de),this._element.classList.remove(he,ce);const t=this._triggerArray.length;if(t>0)for(let e=0;e<t;e++){const t=this._triggerArray[e],i=o(t);i&&!i.classList.contains(ce)&&(t.classList.add(ue),t.setAttribute("aria-expanded",!1))}this.setTransitioning(!0),this._element.style[e]="",this._queueCallback((()=>{this.setTransitioning(!1),this._element.classList.remove(de),this._element.classList.add(he),H.trigger(this._element,"hidden.bs.collapse")}),this._element,!0)}setTransitioning(e){this._isTransitioning=e}_getConfig(e){return(e={...ae,...e}).toggle=Boolean(e.toggle),c(re,e,le),e}_getDimension(){return this._element.classList.contains(fe)?fe:"height"}_getParent(){let{parent:t}=this._config;t=l(t);const i=`${pe}[data-bs-parent="${t}"]`;return e.find(i,t).forEach((e=>{const t=o(e);this._addAriaAndCollapsedClass(t,[e])})),t}_addAriaAndCollapsedClass(e,t){if(!e||!t.length)return;const i=e.classList.contains(ce);t.forEach((e=>{i?e.classList.remove(ue):e.classList.add(ue),e.setAttribute("aria-expanded",i)}))}static collapseInterface(e,t){let i=me.getInstance(e);const n={...ae,...U.getDataAttributes(e),..."object"==typeof t&&t?t:{}};if(!i&&n.toggle&&"string"==typeof t&&/show|hide/.test(t)&&(n.toggle=!1),i||(i=new me(e,n)),"string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t]()}}static jQueryInterface(e){return this.each((function(){me.collapseInterface(this,e)}))}}H.on(document,"click.bs.collapse.data-api",pe,(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();const i=U.getDataAttributes(this),n=s(this);e.find(n).forEach((e=>{const t=me.getInstance(e);let n;t?(null===t._parent&&"string"==typeof i.parent&&(t._config.parent=i.parent,t._parent=t._getParent()),n="toggle"):n=i,me.collapseInterface(e,n)}))})),b(me);var ge="top",_e="bottom",be="right",ve="left",ye="auto",we=[ge,_e,be,ve],Ee="start",Ae="end",Te="clippingParents",Oe="viewport",Ce="popper",ke="reference",Le=we.reduce((function(e,t){return e.concat([t+"-"+Ee,t+"-"+Ae])}),[]),xe=[].concat(we,[ye]).reduce((function(e,t){return e.concat([t,t+"-"+Ee,t+"-"+Ae])}),[]),De="beforeRead",Se="read",Ne="afterRead",Ie="beforeMain",je="main",Pe="afterMain",Me="beforeWrite",He="write",Re="afterWrite",Be=[De,Se,Ne,Ie,je,Pe,Me,He,Re];function $e(e){return e?(e.nodeName||"").toLowerCase():null}function qe(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function We(e){return e instanceof qe(e).Element||e instanceof Element}function Ve(e){return e instanceof qe(e).HTMLElement||e instanceof HTMLElement}function ze(e){return"undefined"!=typeof ShadowRoot&&(e instanceof qe(e).ShadowRoot||e instanceof ShadowRoot)}var Fe={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var i=t.styles[e]||{},n=t.attributes[e]||{},s=t.elements[e];Ve(s)&&$e(s)&&(Object.assign(s.style,i),Object.keys(n).forEach((function(e){var t=n[e];!1===t?s.removeAttribute(e):s.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,i={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,i.popper),t.styles=i,t.elements.arrow&&Object.assign(t.elements.arrow.style,i.arrow),function(){Object.keys(t.elements).forEach((function(e){var n=t.elements[e],s=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:i[e]).reduce((function(e,t){return e[t]="",e}),{});Ve(n)&&$e(n)&&(Object.assign(n.style,o),Object.keys(s).forEach((function(e){n.removeAttribute(e)})))}))}},requires:["computeStyles"]};function Ue(e){return e.split("-")[0]}function Ke(e){var t=e.getBoundingClientRect();return{width:t.width,height:t.height,top:t.top,right:t.right,bottom:t.bottom,left:t.left,x:t.left,y:t.top}}function Xe(e){var t=Ke(e),i=e.offsetWidth,n=e.offsetHeight;return Math.abs(t.width-i)<=1&&(i=t.width),Math.abs(t.height-n)<=1&&(n=t.height),{x:e.offsetLeft,y:e.offsetTop,width:i,height:n}}function Ye(e,t){var i=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(i&&ze(i)){var n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function Qe(e){return qe(e).getComputedStyle(e)}function Ge(e){return["table","td","th"].indexOf($e(e))>=0}function Je(e){return((We(e)?e.ownerDocument:e.document)||window.document).documentElement}function Ze(e){return"html"===$e(e)?e:e.assignedSlot||e.parentNode||(ze(e)?e.host:null)||Je(e)}function et(e){return Ve(e)&&"fixed"!==Qe(e).position?e.offsetParent:null}function tt(e){for(var t=qe(e),i=et(e);i&&Ge(i)&&"static"===Qe(i).position;)i=et(i);return i&&("html"===$e(i)||"body"===$e(i)&&"static"===Qe(i).position)?t:i||function(e){var t=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&Ve(e)&&"fixed"===Qe(e).position)return null;for(var i=Ze(e);Ve(i)&&["html","body"].indexOf($e(i))<0;){var n=Qe(i);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||t&&"filter"===n.willChange||t&&n.filter&&"none"!==n.filter)return i;i=i.parentNode}return null}(e)||t}function it(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}var nt=Math.max,st=Math.min,ot=Math.round;function rt(e,t,i){return nt(e,st(t,i))}function at(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function lt(e,t){return t.reduce((function(t,i){return t[i]=e,t}),{})}var ct={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,i=e.state,n=e.name,s=e.options,o=i.elements.arrow,r=i.modifiersData.popperOffsets,a=Ue(i.placement),l=it(a),c=[ve,be].indexOf(a)>=0?"height":"width";if(o&&r){var h=function(e,t){return at("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:lt(e,we))}(s.padding,i),d=Xe(o),u="y"===l?ge:ve,f="y"===l?_e:be,p=i.rects.reference[c]+i.rects.reference[l]-r[l]-i.rects.popper[c],m=r[l]-i.rects.reference[l],g=tt(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=rt(v,w,y),A=l;i.modifiersData[n]=((t={})[A]=E,t.centerOffset=E-w,t)}},effect:function(e){var t=e.state,i=e.options.element,n=void 0===i?"[data-popper-arrow]":i;null!=n&&("string"!=typeof n||(n=t.elements.popper.querySelector(n)))&&("production"!==process.env.NODE_ENV&&(Ve(n)||console.error(['Popper: "arrow" element must be an HTMLElement (not an SVGElement).',"To use an SVG arrow, wrap it in an HTMLElement that will be used as","the arrow."].join(" "))),Ye(t.elements.popper,n)?t.elements.arrow=n:"production"!==process.env.NODE_ENV&&console.error(['Popper: "arrow" modifier\'s `element` must be a child of the popper',"element."].join(" ")))},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]},ht={top:"auto",right:"auto",bottom:"auto",left:"auto"};function dt(e){var t,i=e.popper,n=e.popperRect,s=e.placement,o=e.offsets,r=e.position,a=e.gpuAcceleration,l=e.adaptive,c=e.roundOffsets,h=!0===c?function(e){var t=e.x,i=e.y,n=window.devicePixelRatio||1;return{x:ot(ot(t*n)/n)||0,y:ot(ot(i*n)/n)||0}}(o):"function"==typeof c?c(o):o,d=h.x,u=void 0===d?0:d,f=h.y,p=void 0===f?0:f,m=o.hasOwnProperty("x"),g=o.hasOwnProperty("y"),_=ve,b=ge,v=window;if(l){var y=tt(i),w="clientHeight",E="clientWidth";y===qe(i)&&"static"!==Qe(y=Je(i)).position&&(w="scrollHeight",E="scrollWidth"),y=y,s===ge&&(b=_e,p-=y[w]-n.height,p*=a?1:-1),s===ve&&(_=be,u-=y[E]-n.width,u*=a?1:-1)}var A,T=Object.assign({position:r},l&&ht);return a?Object.assign({},T,((A={})[b]=g?"0":"",A[_]=m?"0":"",A.transform=(v.devicePixelRatio||1)<2?"translate("+u+"px, "+p+"px)":"translate3d("+u+"px, "+p+"px, 0)",A)):Object.assign({},T,((t={})[b]=g?p+"px":"",t[_]=m?u+"px":"",t.transform="",t))}var ut={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,i=e.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;if("production"!==process.env.NODE_ENV){var c=Qe(t.elements.popper).transitionProperty||"";r&&["transform","top","right","bottom","left"].some((function(e){return c.indexOf(e)>=0}))&&console.warn(["Popper: Detected CSS transitions on at least one of the following",'CSS properties: "transform", "top", "right", "bottom", "left".',"\n\n",'Disable the "computeStyles" modifier\'s `adaptive` option to allow',"for smooth transitions, or remove these properties from the CSS","transition declaration on the popper element if only transitioning","opacity or background-color for example.","\n\n","We recommend using the popper element as a wrapper around an inner","element that can have any CSS property transitioned for animations."].join(" "))}var h={placement:Ue(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:s};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,dt(Object.assign({},h,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:r,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,dt(Object.assign({},h,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}},ft={passive:!0},pt={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,i=e.instance,n=e.options,s=n.scroll,o=void 0===s||s,r=n.resize,a=void 0===r||r,l=qe(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&c.forEach((function(e){e.addEventListener("scroll",i.update,ft)})),a&&l.addEventListener("resize",i.update,ft),function(){o&&c.forEach((function(e){e.removeEventListener("scroll",i.update,ft)})),a&&l.removeEventListener("resize",i.update,ft)}},data:{}},mt={left:"right",right:"left",bottom:"top",top:"bottom"};function gt(e){return e.replace(/left|right|bottom|top/g,(function(e){return mt[e]}))}var _t={start:"end",end:"start"};function bt(e){return e.replace(/start|end/g,(function(e){return _t[e]}))}function vt(e){var t=qe(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function yt(e){return Ke(Je(e)).left+vt(e).scrollLeft}function wt(e){var t=Qe(e),i=t.overflow,n=t.overflowX,s=t.overflowY;return/auto|scroll|overlay|hidden/.test(i+s+n)}function Et(e){return["html","body","#document"].indexOf($e(e))>=0?e.ownerDocument.body:Ve(e)&&wt(e)?e:Et(Ze(e))}function At(e,t){var i;void 0===t&&(t=[]);var n=Et(e),s=n===(null==(i=e.ownerDocument)?void 0:i.body),o=qe(n),r=s?[o].concat(o.visualViewport||[],wt(n)?n:[]):n,a=t.concat(r);return s?a:a.concat(At(Ze(r)))}function Tt(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function Ot(e,t){return t===Oe?Tt(function(e){var t=qe(e),i=Je(e),n=t.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+yt(e),y:a}}(e)):Ve(t)?function(e){var t=Ke(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}(t):Tt(function(e){var t,i=Je(e),n=vt(e),s=null==(t=e.ownerDocument)?void 0:t.body,o=nt(i.scrollWidth,i.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),r=nt(i.scrollHeight,i.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),a=-n.scrollLeft+yt(e),l=-n.scrollTop;return"rtl"===Qe(s||i).direction&&(a+=nt(i.clientWidth,s?s.clientWidth:0)-o),{width:o,height:r,x:a,y:l}}(Je(e)))}function Ct(e){return e.split("-")[1]}function kt(e){var t,i=e.reference,n=e.element,s=e.placement,o=s?Ue(s):null,r=s?Ct(s):null,a=i.x+i.width/2-n.width/2,l=i.y+i.height/2-n.height/2;switch(o){case ge:t={x:a,y:i.y-n.height};break;case _e:t={x:a,y:i.y+i.height};break;case be:t={x:i.x+i.width,y:l};break;case ve:t={x:i.x-n.width,y:l};break;default:t={x:i.x,y:i.y}}var c=o?it(o):null;if(null!=c){var h="y"===c?"height":"width";switch(r){case Ee:t[c]=t[c]-(i[h]/2-n[h]/2);break;case Ae:t[c]=t[c]+(i[h]/2-n[h]/2)}}return t}function Lt(e,t){void 0===t&&(t={});var i=t,n=i.placement,s=void 0===n?e.placement:n,o=i.boundary,r=void 0===o?Te:o,a=i.rootBoundary,l=void 0===a?Oe:a,c=i.elementContext,h=void 0===c?Ce:c,d=i.altBoundary,u=void 0!==d&&d,f=i.padding,p=void 0===f?0:f,m=at("number"!=typeof p?p:lt(p,we)),g=h===Ce?ke:Ce,_=e.elements.reference,b=e.rects.popper,v=e.elements[u?g:h],y=function(e,t,i){var n="clippingParents"===t?function(e){var t=At(Ze(e)),i=["absolute","fixed"].indexOf(Qe(e).position)>=0&&Ve(e)?tt(e):e;return We(i)?t.filter((function(e){return We(e)&&Ye(e,i)&&"body"!==$e(e)})):[]}(e):[].concat(t),s=[].concat(n,[i]),o=s[0],r=s.reduce((function(t,i){var n=Ot(e,i);return t.top=nt(n.top,t.top),t.right=st(n.right,t.right),t.bottom=st(n.bottom,t.bottom),t.left=nt(n.left,t.left),t}),Ot(e,o));return r.width=r.right-r.left,r.height=r.bottom-r.top,r.x=r.left,r.y=r.top,r}(We(v)?v:v.contextElement||Je(e.elements.popper),r,l),w=Ke(_),E=kt({reference:w,element:b,strategy:"absolute",placement:s}),A=Tt(Object.assign({},b,E)),T=h===Ce?A:w,O={top:y.top-T.top+m.top,bottom:T.bottom-y.bottom+m.bottom,left:y.left-T.left+m.left,right:T.right-y.right+m.right},C=e.modifiersData.offset;if(h===Ce&&C){var k=C[s];Object.keys(O).forEach((function(e){var t=[be,_e].indexOf(e)>=0?1:-1,i=[ge,_e].indexOf(e)>=0?"y":"x";O[e]+=k[i]*t}))}return O}function xt(e,t){void 0===t&&(t={});var i=t,n=i.placement,s=i.boundary,o=i.rootBoundary,r=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,c=void 0===l?xe:l,h=Ct(n),d=h?a?Le:Le.filter((function(e){return Ct(e)===h})):we,u=d.filter((function(e){return c.indexOf(e)>=0}));0===u.length&&(u=d,"production"!==process.env.NODE_ENV&&console.error(["Popper: The `allowedAutoPlacements` option did not allow any","placements. Ensure the `placement` option matches the variation","of the allowed placements.",'For example, "auto" cannot be used to allow "bottom-start".','Use "auto-start" instead.'].join(" ")));var f=u.reduce((function(t,i){return t[i]=Lt(e,{placement:i,boundary:s,rootBoundary:o,padding:r})[Ue(i)],t}),{});return Object.keys(f).sort((function(e,t){return f[e]-f[t]}))}var Dt={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,i=e.options,n=e.name;if(!t.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=t.options.placement,_=Ue(g),b=l||(_!==g&&p?function(e){if(Ue(e)===ye)return[];var t=gt(e);return[bt(e),t,bt(t)]}(g):[gt(g)]),v=[g].concat(b).reduce((function(e,i){return e.concat(Ue(i)===ye?xt(t,{placement:i,boundary:h,rootBoundary:d,padding:c,flipVariations:p,allowedAutoPlacements:m}):i)}),[]),y=t.rects.reference,w=t.rects.popper,E=new Map,A=!0,T=v[0],O=0;O<v.length;O++){var C=v[O],k=Ue(C),L=Ct(C)===Ee,x=[ge,_e].indexOf(k)>=0,D=x?"width":"height",S=Lt(t,{placement:C,boundary:h,rootBoundary:d,altBoundary:u,padding:c}),N=x?L?be:ve:L?_e:ge;y[D]>w[D]&&(N=gt(N));var I=gt(N),j=[];if(o&&j.push(S[k]<=0),a&&j.push(S[N]<=0,S[I]<=0),j.every((function(e){return e}))){T=C,A=!1;break}E.set(C,j)}if(A)for(var P=function(e){var t=v.find((function(t){var i=E.get(t);if(i)return i.slice(0,e).every((function(e){return e}))}));if(t)return T=t,"break"},M=p?3:1;M>0&&"break"!==P(M);M--);t.placement!==T&&(t.modifiersData[n]._skip=!0,t.placement=T,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function St(e,t,i){return void 0===i&&(i={x:0,y:0}),{top:e.top-t.height-i.y,right:e.right-t.width+i.x,bottom:e.bottom-t.height+i.y,left:e.left-t.width-i.x}}function Nt(e){return[ge,be,_e,ve].some((function(t){return e[t]>=0}))}var It={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,i=e.name,n=t.rects.reference,s=t.rects.popper,o=t.modifiersData.preventOverflow,r=Lt(t,{elementContext:"reference"}),a=Lt(t,{altBoundary:!0}),l=St(r,n),c=St(a,s,o),h=Nt(l),d=Nt(c);t.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:h,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":h,"data-popper-escaped":d})}},jt={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,i=e.options,n=e.name,s=i.offset,o=void 0===s?[0,0]:s,r=xe.reduce((function(e,i){return e[i]=function(e,t,i){var n=Ue(e),s=[ve,ge].indexOf(n)>=0?-1:1,o="function"==typeof i?i(Object.assign({},t,{placement:e})):i,r=o[0],a=o[1];return r=r||0,a=(a||0)*s,[ve,be].indexOf(n)>=0?{x:a,y:r}:{x:r,y:a}}(i,t.rects,o),e}),{}),a=r[t.placement],l=a.x,c=a.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=c),t.modifiersData[n]=r}},Pt={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,i=e.name;t.modifiersData[i]=kt({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}},Mt={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,i=e.options,n=e.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=Lt(t,{boundary:l,rootBoundary:c,padding:d,altBoundary:h}),_=Ue(t.placement),b=Ct(t.placement),v=!b,y=it(_),w="x"===y?"y":"x",E=t.modifiersData.popperOffsets,A=t.rects.reference,T=t.rects.popper,O="function"==typeof m?m(Object.assign({},t.rects,{placement:t.placement})):m,C={x:0,y:0};if(E){if(o||a){var k="y"===y?ge:ve,L="y"===y?_e:be,x="y"===y?"height":"width",D=E[y],S=E[y]+g[k],N=E[y]-g[L],I=f?-T[x]/2:0,j=b===Ee?A[x]:T[x],P=b===Ee?-T[x]:-A[x],M=t.elements.arrow,H=f&&M?Xe(M):{width:0,height:0},R=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},B=R[k],$=R[L],q=rt(0,A[x],H[x]),W=v?A[x]/2-I-q-B-O:j-q-B-O,V=v?-A[x]/2+I+q+$+O:P+q+$+O,z=t.elements.arrow&&tt(t.elements.arrow),F=z?"y"===y?z.clientTop||0:z.clientLeft||0:0,U=t.modifiersData.offset?t.modifiersData.offset[t.placement][y]:0,K=E[y]+W-U-F,X=E[y]+V-U;if(o){var Y=rt(f?st(S,K):S,D,f?nt(N,X):N);E[y]=Y,C[y]=Y-D}if(a){var Q="x"===y?ge:ve,G="x"===y?_e:be,J=E[w],Z=J+g[Q],ee=J-g[G],te=rt(f?st(Z,K):Z,J,f?nt(ee,X):ee);E[w]=te,C[w]=te-J}}t.modifiersData[n]=C}},requiresIfExists:["offset"]};function Ht(e,t,i){void 0===i&&(i=!1);var n,s,o=Je(t),r=Ke(e),a=Ve(t),l={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(a||!a&&!i)&&(("body"!==$e(t)||wt(o))&&(l=(n=t)!==qe(n)&&Ve(n)?{scrollLeft:(s=n).scrollLeft,scrollTop:s.scrollTop}:vt(n)),Ve(t)?((c=Ke(t)).x+=t.clientLeft,c.y+=t.clientTop):o&&(c.x=yt(o))),{x:r.left+l.scrollLeft-c.x,y:r.top+l.scrollTop-c.y,width:r.width,height:r.height}}function Rt(e){var t=new Map,i=new Set,n=[];function s(e){i.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!i.has(e)){var n=t.get(e);n&&s(n)}})),n.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){i.has(e.name)||s(e)})),n}function Bt(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),n=1;n<t;n++)i[n-1]=arguments[n];return[].concat(i).reduce((function(e,t){return e.replace(/%s/,t)}),e)}var $t='Popper: modifier "%s" provided an invalid %s property, expected %s but got %s',qt=["name","enabled","phase","fn","effect","requires","options"],Wt="Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.",Vt={placement:"bottom",modifiers:[],strategy:"absolute"};function zt(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return!t.some((function(e){return!(e&&"function"==typeof e.getBoundingClientRect)}))}function Ft(e){void 0===e&&(e={});var t=e,i=t.defaultModifiers,n=void 0===i?[]:i,s=t.defaultOptions,o=void 0===s?Vt:s;return function(e,t,i){void 0===i&&(i=o);var s,r,a={placement:"bottom",orderedModifiers:[],options:Object.assign({},Vt,o),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},l=[],c=!1,h={state:a,setOptions:function(i){d(),a.options=Object.assign({},o,a.options,i),a.scrollParents={reference:We(e)?At(e):e.contextElement?At(e.contextElement):[],popper:At(t)};var s,r,c,u,f,p=function(e){var t=Rt(e);return Be.reduce((function(e,i){return e.concat(t.filter((function(e){return e.phase===i})))}),[])}((u=[].concat(n,a.options.modifiers),f=u.reduce((function(e,t){var i=e[t.name];return e[t.name]=i?Object.assign({},i,t,{options:Object.assign({},i.options,t.options),data:Object.assign({},i.data,t.data)}):t,e}),{}),Object.keys(f).map((function(e){return f[e]}))));if(a.orderedModifiers=p.filter((function(e){return e.enabled})),"production"!==process.env.NODE_ENV){(function(e){e.forEach((function(t){Object.keys(t).forEach((function(i){switch(i){case"name":"string"!=typeof t.name&&console.error(Bt($t,String(t.name),'"name"','"string"','"'+String(t.name)+'"'));break;case"enabled":"boolean"!=typeof t.enabled&&console.error(Bt($t,t.name,'"enabled"','"boolean"','"'+String(t.enabled)+'"'));case"phase":Be.indexOf(t.phase)<0&&console.error(Bt($t,t.name,'"phase"',"either "+Be.join(", "),'"'+String(t.phase)+'"'));break;case"fn":"function"!=typeof t.fn&&console.error(Bt($t,t.name,'"fn"','"function"','"'+String(t.fn)+'"'));break;case"effect":"function"!=typeof t.effect&&console.error(Bt($t,t.name,'"effect"','"function"','"'+String(t.fn)+'"'));break;case"requires":Array.isArray(t.requires)||console.error(Bt($t,t.name,'"requires"','"array"','"'+String(t.requires)+'"'));break;case"requiresIfExists":Array.isArray(t.requiresIfExists)||console.error(Bt($t,t.name,'"requiresIfExists"','"array"','"'+String(t.requiresIfExists)+'"'));break;case"options":case"data":break;default:console.error('PopperJS: an invalid property has been provided to the "'+t.name+'" modifier, valid properties are '+qt.map((function(e){return'"'+e+'"'})).join(", ")+'; but "'+i+'" was provided.')}t.requires&&t.requires.forEach((function(i){null==e.find((function(e){return e.name===i}))&&console.error(Bt('Popper: modifier "%s" requires "%s", but "%s" modifier is not available',String(t.name),i,i))}))}))}))})((s=[].concat(p,a.options.modifiers),r=function(e){return e.name},c=new Set,s.filter((function(e){var t=r(e);if(!c.has(t))return c.add(t),!0})))),Ue(a.options.placement)===ye&&(a.orderedModifiers.find((function(e){return"flip"===e.name}))||console.error(['Popper: "auto" placements require the "flip" modifier be',"present and enabled to work."].join(" ")));var m=Qe(t);[m.marginTop,m.marginRight,m.marginBottom,m.marginLeft].some((function(e){return parseFloat(e)}))&&console.warn(['Popper: CSS "margin" styles cannot be used to apply padding',"between the popper and its reference element or boundary.","To replicate margin, use the `offset` modifier, as well as","the `padding` option in the `preventOverflow` and `flip`","modifiers."].join(" "))}return a.orderedModifiers.forEach((function(e){var t=e.name,i=e.options,n=void 0===i?{}:i,s=e.effect;if("function"==typeof s){var o=s({state:a,name:t,instance:h,options:n});l.push(o||function(){})}})),h.update()},forceUpdate:function(){if(!c){var e=a.elements,t=e.reference,i=e.popper;if(zt(t,i)){a.rects={reference:Ht(t,tt(i),"fixed"===a.options.strategy),popper:Xe(i)},a.reset=!1,a.placement=a.options.placement,a.orderedModifiers.forEach((function(e){return a.modifiersData[e.name]=Object.assign({},e.data)}));for(var n=0,s=0;s<a.orderedModifiers.length;s++){if("production"!==process.env.NODE_ENV&&(n+=1)>100){console.error("Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.");break}if(!0!==a.reset){var o=a.orderedModifiers[s],r=o.fn,l=o.options,d=void 0===l?{}:l,u=o.name;"function"==typeof r&&(a=r({state:a,options:d,name:u,instance:h})||a)}else a.reset=!1,s=-1}}else"production"!==process.env.NODE_ENV&&console.error(Wt)}},update:(s=function(){return new Promise((function(e){h.forceUpdate(),e(a)}))},function(){return r||(r=new Promise((function(e){Promise.resolve().then((function(){r=void 0,e(s())}))}))),r}),destroy:function(){d(),c=!0}};if(!zt(e,t))return"production"!==process.env.NODE_ENV&&console.error(Wt),h;function d(){l.forEach((function(e){return e()})),l=[]}return h.setOptions(i).then((function(e){!c&&i.onFirstUpdate&&i.onFirstUpdate(e)})),h}}var Ut=Ft(),Kt=Ft({defaultModifiers:[pt,Pt,ut,Fe]}),Xt=Ft({defaultModifiers:[pt,Pt,ut,Fe,jt,Dt,Mt,ct,It]}),Yt=Object.freeze({__proto__:null,popperGenerator:Ft,detectOverflow:Lt,createPopperBase:Ut,createPopper:Xt,createPopperLite:Kt,top:ge,bottom:_e,right:be,left:ve,auto:ye,basePlacements:we,start:Ee,end:Ae,clippingParents:Te,viewport:Oe,popper:Ce,reference:ke,variationPlacements:Le,placements:xe,beforeRead:De,read:Se,afterRead:Ne,beforeMain:Ie,main:je,afterMain:Pe,beforeWrite:Me,write:He,afterWrite:Re,modifierPhases:Be,applyStyles:Fe,arrow:ct,computeStyles:ut,eventListeners:pt,flip:Dt,hide:It,offset:jt,popperOffsets:Pt,preventOverflow:Mt});const Qt="dropdown",Gt="Escape",Jt="Space",Zt="ArrowUp",ei="ArrowDown",ti=new RegExp("ArrowUp|ArrowDown|Escape"),ii="click.bs.dropdown.data-api",ni="keydown.bs.dropdown.data-api",si="show",oi='[data-bs-toggle="dropdown"]',ri=".dropdown-menu",ai=_()?"top-end":"top-start",li=_()?"top-start":"top-end",ci=_()?"bottom-end":"bottom-start",hi=_()?"bottom-start":"bottom-end",di=_()?"left-start":"right-start",ui=_()?"right-start":"left-start",fi={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},pi={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class mi extends ${constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}static get Default(){return fi}static get DefaultType(){return pi}static get NAME(){return Qt}toggle(){d(this._element)||(this._element.classList.contains(si)?this.hide():this.show())}show(){if(d(this._element)||this._menu.classList.contains(si))return;const e=mi.getParentFromElement(this._element),t={relatedTarget:this._element};if(!H.trigger(this._element,"show.bs.dropdown",t).defaultPrevented){if(this._inNavbar)U.setDataAttribute(this._menu,"popper","none");else{if(void 0===Yt)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;"parent"===this._config.reference?t=e:a(this._config.reference)?t=l(this._config.reference):"object"==typeof this._config.reference&&(t=this._config.reference);const i=this._getPopperConfig(),n=i.modifiers.find((e=>"applyStyles"===e.name&&!1===e.enabled));this._popper=Xt(t,this._menu,i),n&&U.setDataAttribute(this._menu,"popper","static")}"ontouchstart"in document.documentElement&&!e.closest(".navbar-nav")&&[].concat(...document.body.children).forEach((e=>H.on(e,"mouseover",f))),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.toggle(si),this._element.classList.toggle(si),H.trigger(this._element,"shown.bs.dropdown",t)}}hide(){if(d(this._element)||!this._menu.classList.contains(si))return;const e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_addEventListeners(){H.on(this._element,"click.bs.dropdown",(e=>{e.preventDefault(),this.toggle()}))}_completeHide(e){H.trigger(this._element,"hide.bs.dropdown",e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((e=>H.off(e,"mouseover",f))),this._popper&&this._popper.destroy(),this._menu.classList.remove(si),this._element.classList.remove(si),this._element.setAttribute("aria-expanded","false"),U.removeDataAttribute(this._menu,"popper"),H.trigger(this._element,"hidden.bs.dropdown",e))}_getConfig(e){if(e={...this.constructor.Default,...U.getDataAttributes(this._element),...e},c(Qt,e,this.constructor.DefaultType),"object"==typeof e.reference&&!a(e.reference)&&"function"!=typeof e.reference.getBoundingClientRect)throw new TypeError(`${Qt.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_getMenuElement(){return e.next(this._element,ri)[0]}_getPlacement(){const e=this._element.parentNode;if(e.classList.contains("dropend"))return di;if(e.classList.contains("dropstart"))return ui;const t="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return e.classList.contains("dropup")?t?li:ai:t?hi:ci}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:e}=this._config;return"string"==typeof e?e.split(",").map((e=>Number.parseInt(e,10))):"function"==typeof e?t=>e(t,this._element):e}_getPopperConfig(){const e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return"static"===this._config.display&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,..."function"==typeof this._config.popperConfig?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:t,target:i}){const n=e.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(h);n.length&&w(n,i,t===ei,!n.includes(i)).focus()}static dropdownInterface(e,t){const i=mi.getOrCreateInstance(e,t);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t]()}}static jQueryInterface(e){return this.each((function(){mi.dropdownInterface(this,e)}))}static clearMenus(t){if(t&&(2===t.button||"keyup"===t.type&&"Tab"!==t.key))return;const i=e.find(oi);for(let e=0,n=i.length;e<n;e++){const n=mi.getInstance(i[e]);if(!n||!1===n._config.autoClose)continue;if(!n._element.classList.contains(si))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(e){return o(e)||e.parentNode}static dataApiKeydownHandler(t){if(/input|textarea/i.test(t.target.tagName)?t.key===Jt||t.key!==Gt&&(t.key!==ei&&t.key!==Zt||t.target.closest(ri)):!ti.test(t.key))return;const i=this.classList.contains(si);if(!i&&t.key===Gt)return;if(t.preventDefault(),t.stopPropagation(),d(this))return;const n=()=>this.matches(oi)?this:e.prev(this,oi)[0];return t.key===Gt?(n().focus(),void mi.clearMenus()):t.key===Zt||t.key===ei?(i||n().click(),void mi.getInstance(n())._selectMenuItem(t)):void(i&&t.key!==Jt||mi.clearMenus())}}H.on(document,ni,oi,mi.dataApiKeydownHandler),H.on(document,ni,ri,mi.dataApiKeydownHandler),H.on(document,ii,mi.clearMenus),H.on(document,"keyup.bs.dropdown.data-api",mi.clearMenus),H.on(document,ii,oi,(function(e){e.preventDefault(),mi.dropdownInterface(this)})),b(mi);const gi=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",_i=".sticky-top";class bi{constructor(){this._element=document.body}getWidth(){const e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){const e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",(t=>t+e)),this._setElementAttributes(gi,"paddingRight",(t=>t+e)),this._setElementAttributes(_i,"marginRight",(t=>t-e))}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,i){const n=this.getWidth();this._applyManipulationCallback(e,(e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+n)return;this._saveInitialAttribute(e,t);const s=window.getComputedStyle(e)[t];e.style[t]=`${i(Number.parseFloat(s))}px`}))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(gi,"paddingRight"),this._resetElementAttributes(_i,"marginRight")}_saveInitialAttribute(e,t){const i=e.style[t];i&&U.setDataAttribute(e,t,i)}_resetElementAttributes(e,t){this._applyManipulationCallback(e,(e=>{const i=U.getDataAttribute(e,t);void 0===i?e.style.removeProperty(t):(U.removeDataAttribute(e,t),e.style[t]=i)}))}_applyManipulationCallback(t,i){a(t)?i(t):e.find(t,this._element).forEach(i)}isOverflowing(){return this.getWidth()>0}}const vi={isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},yi={isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},wi="show",Ei="mousedown.bs.backdrop";class Ai{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){this._config.isVisible?(this._append(),this._config.isAnimated&&p(this._getElement()),this._getElement().classList.add(wi),this._emulateAnimation((()=>{v(e)}))):v(e)}hide(e){this._config.isVisible?(this._getElement().classList.remove(wi),this._emulateAnimation((()=>{this.dispose(),v(e)}))):v(e)}_getElement(){if(!this._element){const e=document.createElement("div");e.className="modal-backdrop",this._config.isAnimated&&e.classList.add("fade"),this._element=e}return this._element}_getConfig(e){return(e={...vi,..."object"==typeof e?e:{}}).rootElement=l(e.rootElement),c("backdrop",e,yi),e}_append(){this._isAppended||(this._config.rootElement.appendChild(this._getElement()),H.on(this._getElement(),Ei,(()=>{v(this._config.clickCallback)})),this._isAppended=!0)}dispose(){this._isAppended&&(H.off(this._element,Ei),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){y(e,this._getElement(),this._config.isAnimated)}}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="focusin.bs.modal",Si="resize.bs.modal",Ni="click.dismiss.bs.modal",Ii="keydown.dismiss.bs.modal",ji="mousedown.dismiss.bs.modal",Pi="modal-open",Mi="show",Hi="modal-static";class Ri extends ${constructor(t,i){super(t),this._config=this._getConfig(i),this._dialog=e.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new bi}static get Default(){return Ci}static get NAME(){return Ti}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||H.trigger(this._element,xi,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(Pi),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),H.on(this._element,Ni,'[data-bs-dismiss="modal"]',(e=>this.hide(e))),H.on(this._dialog,ji,(()=>{H.one(this._element,"mouseup.dismiss.bs.modal",(e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)}))})),this._showBackdrop((()=>this._showElement(e))))}hide(e){if(e&&["A","AREA"].includes(e.target.tagName)&&e.preventDefault(),!this._isShown||this._isTransitioning)return;if(H.trigger(this._element,"hide.bs.modal").defaultPrevented)return;this._isShown=!1;const t=this._isAnimated();t&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),H.off(document,Di),this._element.classList.remove(Mi),H.off(this._element,Ni),H.off(this._dialog,ji),this._queueCallback((()=>this._hideModal()),this._element,t)}dispose(){[window,this._dialog].forEach((e=>H.off(e,".bs.modal"))),this._backdrop.dispose(),super.dispose(),H.off(document,Di)}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new Ai({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_getConfig(e){return e={...Ci,...U.getDataAttributes(this._element),..."object"==typeof e?e:{}},c(Ti,e,ki),e}_showElement(t){const i=this._isAnimated(),n=e.findOne(".modal-body",this._dialog);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(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,n&&(n.scrollTop=0),i&&p(this._element),this._element.classList.add(Mi),this._config.focus&&this._enforceFocus(),this._queueCallback((()=>{this._config.focus&&this._element.focus(),this._isTransitioning=!1,H.trigger(this._element,"shown.bs.modal",{relatedTarget:t})}),this._dialog,i)}_enforceFocus(){H.off(document,Di),H.on(document,Di,(e=>{document===e.target||this._element===e.target||this._element.contains(e.target)||this._element.focus()}))}_setEscapeEvent(){this._isShown?H.on(this._element,Ii,(e=>{this._config.keyboard&&e.key===Oi?(e.preventDefault(),this.hide()):this._config.keyboard||e.key!==Oi||this._triggerBackdropTransition()})):H.off(this._element,Ii)}_setResizeEvent(){this._isShown?H.on(window,Si,(()=>this._adjustDialog())):H.off(window,Si)}_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(),H.trigger(this._element,Li)}))}_showBackdrop(e){H.on(this._element,Ni,(e=>{this._ignoreBackdropClick?this._ignoreBackdropClick=!1:e.target===e.currentTarget&&(!0===this._config.backdrop?this.hide():"static"===this._config.backdrop&&this._triggerBackdropTransition())})),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(H.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const{classList:e,scrollHeight:t,style:i}=this._element,n=t>document.documentElement.clientHeight;!n&&"hidden"===i.overflowY||e.contains(Hi)||(n||(i.overflowY="hidden"),e.add(Hi),this._queueCallback((()=>{e.remove(Hi),n||this._queueCallback((()=>{i.overflowY=""}),this._dialog)}),this._dialog),this._element.focus())}_adjustDialog(){const e=this._element.scrollHeight>document.documentElement.clientHeight,t=this._scrollBar.getWidth(),i=t>0;(!i&&e&&!_()||i&&!e&&_())&&(this._element.style.paddingLeft=`${t}px`),(i&&!e&&!_()||!i&&e&&_())&&(this._element.style.paddingRight=`${t}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each((function(){const i=Ri.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===i[e])throw new TypeError(`No method named "${e}"`);i[e](t)}}))}}H.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(e){const t=o(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),H.one(t,xi,(e=>{e.defaultPrevented||H.one(t,Li,(()=>{h(this)&&this.focus()}))})),Ri.getOrCreateInstance(t).toggle(this)})),b(Ri);const Bi="offcanvas",$i={backdrop:!0,keyboard:!0,scroll:!1},qi={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},Wi="show",Vi=".offcanvas.show",zi="hidden.bs.offcanvas",Fi="focusin.bs.offcanvas";class Ui extends ${constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._addEventListeners()}static get NAME(){return Bi}static get Default(){return $i}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||H.trigger(this._element,"show.bs.offcanvas",{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||((new bi).hide(),this._enforceFocusOnElement(this._element)),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Wi),this._queueCallback((()=>{H.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:e})}),this._element,!0))}hide(){this._isShown&&(H.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||(H.off(document,Fi),this._element.blur(),this._isShown=!1,this._element.classList.remove(Wi),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 bi).reset(),H.trigger(this._element,zi)}),this._element,!0)))}dispose(){this._backdrop.dispose(),super.dispose(),H.off(document,Fi)}_getConfig(e){return e={...$i,...U.getDataAttributes(this._element),..."object"==typeof e?e:{}},c(Bi,e,qi),e}_initializeBackDrop(){return new Ai({isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_enforceFocusOnElement(e){H.off(document,Fi),H.on(document,Fi,(t=>{document===t.target||e===t.target||e.contains(t.target)||e.focus()})),e.focus()}_addEventListeners(){H.on(this._element,"click.dismiss.bs.offcanvas",'[data-bs-dismiss="offcanvas"]',(()=>this.hide())),H.on(this._element,"keydown.dismiss.bs.offcanvas",(e=>{this._config.keyboard&&"Escape"===e.key&&this.hide()}))}static jQueryInterface(e){return this.each((function(){const t=Ui.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e](this)}}))}}H.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(t){const i=o(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),d(this))return;H.one(i,zi,(()=>{h(this)&&this.focus()}));const n=e.findOne(Vi);n&&n!==i&&Ui.getInstance(n).hide(),Ui.getOrCreateInstance(i).toggle(this)})),H.on(window,"load.bs.offcanvas.data-api",(()=>e.find(Vi).forEach((e=>Ui.getOrCreateInstance(e).show())))),b(Ui);const Ki=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Xi=/^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i,Yi=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,Qi=(e,t)=>{const i=e.nodeName.toLowerCase();if(t.includes(i))return!Ki.has(i)||Boolean(Xi.test(e.nodeValue)||Yi.test(e.nodeValue));const n=t.filter((e=>e instanceof RegExp));for(let e=0,t=n.length;e<t;e++)if(n[e].test(i))return!0;return!1};function Gi(e,t,i){if(!e.length)return e;if(i&&"function"==typeof i)return i(e);const n=(new window.DOMParser).parseFromString(e,"text/html"),s=Object.keys(t),o=[].concat(...n.body.querySelectorAll("*"));for(let e=0,i=o.length;e<i;e++){const i=o[e],n=i.nodeName.toLowerCase();if(!s.includes(n)){i.remove();continue}const r=[].concat(...i.attributes),a=[].concat(t["*"]||[],t[n]||[]);r.forEach((e=>{Qi(e,a)||i.removeAttribute(e.nodeName)}))}return n.body.innerHTML}const Ji="tooltip",Zi=new RegExp("(^|\\s)bs-tooltip\\S+","g"),en=new Set(["sanitize","allowList","sanitizeFn"]),tn={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)"},nn={AUTO:"auto",TOP:"top",RIGHT:_()?"left":"right",BOTTOM:"bottom",LEFT:_()?"right":"left"},sn={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},on={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"},rn="fade",an="show",ln="show",cn="out",hn="hover",dn="focus";class un extends ${constructor(e,t){if(void 0===Yt)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return sn}static get NAME(){return Ji}static get Event(){return on}static get DefaultType(){return tn}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){const t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(an))return void this._leave(null,this);this._enter(null,this)}}dispose(){clearTimeout(this._timeout),H.off(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this.tip&&this.tip.remove(),this._popper&&this._popper.destroy(),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 e=H.trigger(this._element,this.constructor.Event.SHOW),t=u(this._element),n=null===t?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(e.defaultPrevented||!n)return;const s=this.getTipElement(),o=i(this.constructor.NAME);s.setAttribute("id",o),this._element.setAttribute("aria-describedby",o),this.setContent(),this._config.animation&&s.classList.add(rn);const r="function"==typeof this._config.placement?this._config.placement.call(this,s,this._element):this._config.placement,a=this._getAttachment(r);this._addAttachmentClass(a);const{container:l}=this._config;B.set(s,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.appendChild(s),H.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=Xt(this._element,s,this._getPopperConfig(a)),s.classList.add(an);const c="function"==typeof this._config.customClass?this._config.customClass():this._config.customClass;c&&s.classList.add(...c.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((e=>{H.on(e,"mouseover",f)}));const h=this.tip.classList.contains(rn);this._queueCallback((()=>{const e=this._hoverState;this._hoverState=null,H.trigger(this._element,this.constructor.Event.SHOWN),e===cn&&this._leave(null,this)}),this.tip,h)}hide(){if(!this._popper)return;const e=this.getTipElement();if(H.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(an),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((e=>H.off(e,"mouseover",f))),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1;const t=this.tip.classList.contains(rn);this._queueCallback((()=>{this._isWithActiveTrigger()||(this._hoverState!==ln&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),H.trigger(this._element,this.constructor.Event.HIDDEN),this._popper&&(this._popper.destroy(),this._popper=null))}),this.tip,t),this._hoverState=""}update(){null!==this._popper&&this._popper.update()}isWithContent(){return Boolean(this.getTitle())}getTipElement(){if(this.tip)return this.tip;const e=document.createElement("div");return e.innerHTML=this._config.template,this.tip=e.children[0],this.tip}setContent(){const t=this.getTipElement();this.setElementContent(e.findOne(".tooltip-inner",t),this.getTitle()),t.classList.remove(rn,an)}setElementContent(e,t){if(null!==e)return a(t)?(t=l(t),void(this._config.html?t.parentNode!==e&&(e.innerHTML="",e.appendChild(t)):e.textContent=t.textContent)):void(this._config.html?(this._config.sanitize&&(t=Gi(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t)}getTitle(){let e=this._element.getAttribute("data-bs-original-title");return e||(e="function"==typeof this._config.title?this._config.title.call(this._element):this._config.title),e}updateAttachment(e){return"right"===e?"end":"left"===e?"start":e}_initializeOnDelegatedTarget(e,t){const i=this.constructor.DATA_KEY;return(t=t||B.get(e.delegateTarget,i))||(t=new this.constructor(e.delegateTarget,this._getDelegateConfig()),B.set(e.delegateTarget,i,t)),t}_getOffset(){const{offset:e}=this._config;return"string"==typeof e?e.split(",").map((e=>Number.parseInt(e,10))):"function"==typeof e?t=>e(t,this._element):e}_getPopperConfig(e){const t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,..."function"==typeof this._config.popperConfig?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`bs-tooltip-${this.updateAttachment(e)}`)}_getAttachment(e){return nn[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach((e=>{if("click"===e)H.on(this._element,this.constructor.Event.CLICK,this._config.selector,(e=>this.toggle(e)));else if("manual"!==e){const t=e===hn?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,i=e===hn?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;H.on(this._element,t,this._config.selector,(e=>this._enter(e))),H.on(this._element,i,this._config.selector,(e=>this._leave(e)))}})),this._hideModalHandler=()=>{this._element&&this.hide()},H.on(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){const e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||"string"!==t)&&(this._element.setAttribute("data-bs-original-title",e||""),!e||this._element.getAttribute("aria-label")||this._element.textContent||this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger["focusin"===e.type?dn:hn]=!0),t.getTipElement().classList.contains(an)||t._hoverState===ln?t._hoverState=ln:(clearTimeout(t._timeout),t._hoverState=ln,t._config.delay&&t._config.delay.show?t._timeout=setTimeout((()=>{t._hoverState===ln&&t.show()}),t._config.delay.show):t.show())}_leave(e,t){t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger["focusout"===e.type?dn:hn]=t._element.contains(e.relatedTarget)),t._isWithActiveTrigger()||(clearTimeout(t._timeout),t._hoverState=cn,t._config.delay&&t._config.delay.hide?t._timeout=setTimeout((()=>{t._hoverState===cn&&t.hide()}),t._config.delay.hide):t.hide())}_isWithActiveTrigger(){for(const e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){const t=U.getDataAttributes(this._element);return Object.keys(t).forEach((e=>{en.has(e)&&delete t[e]})),(e={...this.constructor.Default,...t,..."object"==typeof e&&e?e:{}}).container=!1===e.container?document.body:l(e.container),"number"==typeof e.delay&&(e.delay={show:e.delay,hide:e.delay}),"number"==typeof e.title&&(e.title=e.title.toString()),"number"==typeof e.content&&(e.content=e.content.toString()),c(Ji,e,this.constructor.DefaultType),e.sanitize&&(e.template=Gi(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){const e={};if(this._config)for(const t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){const e=this.getTipElement(),t=e.getAttribute("class").match(Zi);null!==t&&t.length>0&&t.map((e=>e.trim())).forEach((t=>e.classList.remove(t)))}_handlePopperPlacementChange(e){const{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}static jQueryInterface(e){return this.each((function(){const t=un.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}}))}}b(un);const fn=new RegExp("(^|\\s)bs-popover\\S+","g"),pn={...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>'},mn={...un.DefaultType,content:"(string|element|function)"},gn={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"},_n=".popover-header",bn=".popover-body";class vn extends un{static get Default(){return pn}static get NAME(){return"popover"}static get Event(){return gn}static get DefaultType(){return mn}isWithContent(){return this.getTitle()||this._getContent()}getTipElement(){return this.tip||(this.tip=super.getTipElement(),this.getTitle()||e.findOne(_n,this.tip).remove(),this._getContent()||e.findOne(bn,this.tip).remove()),this.tip}setContent(){const t=this.getTipElement();this.setElementContent(e.findOne(_n,t),this.getTitle());let i=this._getContent();"function"==typeof i&&(i=i.call(this._element)),this.setElementContent(e.findOne(bn,t),i),t.classList.remove("fade","show")}_addAttachmentClass(e){this.getTipElement().classList.add(`bs-popover-${this.updateAttachment(e)}`)}_getContent(){return this._element.getAttribute("data-bs-content")||this._config.content}_cleanTipClass(){const e=this.getTipElement(),t=e.getAttribute("class").match(fn);null!==t&&t.length>0&&t.map((e=>e.trim())).forEach((t=>e.classList.remove(t)))}static jQueryInterface(e){return this.each((function(){const t=vn.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}}))}}b(vn);const yn="scrollspy",wn={offset:10,method:"auto",target:""},En={offset:"number",method:"string",target:"(string|element)"},An="active",Tn="position";class On extends ${constructor(e,t){super(e),this._scrollElement="BODY"===this._element.tagName?window:this._element,this._config=this._getConfig(t),this._selector=`${this._config.target} .nav-link, ${this._config.target} .list-group-item, ${this._config.target} .dropdown-item`,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,H.on(this._scrollElement,"scroll.bs.scrollspy",(()=>this._process())),this.refresh(),this._process()}static get Default(){return wn}static get NAME(){return yn}refresh(){const t=this._scrollElement===this._scrollElement.window?"offset":Tn,i="auto"===this._config.method?t:this._config.method,n=i===Tn?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),e.find(this._selector).map((t=>{const o=s(t),r=o?e.findOne(o):null;if(r){const e=r.getBoundingClientRect();if(e.width||e.height)return[U[i](r).top+n,o]}return null})).filter((e=>e)).sort(((e,t)=>e[0]-t[0])).forEach((e=>{this._offsets.push(e[0]),this._targets.push(e[1])}))}dispose(){H.off(this._scrollElement,".bs.scrollspy"),super.dispose()}_getConfig(e){if("string"!=typeof(e={...wn,...U.getDataAttributes(this._element),..."object"==typeof e&&e?e:{}}).target&&a(e.target)){let{id:t}=e.target;t||(t=i(yn),e.target.id=t),e.target=`#${t}`}return c(yn,e,En),e}_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 e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),i=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=i){const e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e)}else{if(this._activeTarget&&e<this._offsets[0]&&this._offsets[0]>0)return this._activeTarget=null,void this._clear();for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(void 0===this._offsets[t+1]||e<this._offsets[t+1])&&this._activate(this._targets[t])}}_activate(t){this._activeTarget=t,this._clear();const i=this._selector.split(",").map((e=>`${e}[data-bs-target="${t}"],${e}[href="${t}"]`)),n=e.findOne(i.join(","));n.classList.contains("dropdown-item")?(e.findOne(".dropdown-toggle",n.closest(".dropdown")).classList.add(An),n.classList.add(An)):(n.classList.add(An),e.parents(n,".nav, .list-group").forEach((t=>{e.prev(t,".nav-link, .list-group-item").forEach((e=>e.classList.add(An))),e.prev(t,".nav-item").forEach((t=>{e.children(t,".nav-link").forEach((e=>e.classList.add(An)))}))}))),H.trigger(this._scrollElement,"activate.bs.scrollspy",{relatedTarget:t})}_clear(){e.find(this._selector).filter((e=>e.classList.contains(An))).forEach((e=>e.classList.remove(An)))}static jQueryInterface(e){return this.each((function(){const t=On.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}}))}}H.on(window,"load.bs.scrollspy.data-api",(()=>{e.find('[data-bs-spy="scroll"]').forEach((e=>new On(e)))})),b(On);const Cn="active",kn="fade",Ln="show",xn=".active",Dn=":scope > li > .active";class Sn extends ${static get NAME(){return"tab"}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(Cn))return;let t;const i=o(this._element),n=this._element.closest(".nav, .list-group");if(n){const i="UL"===n.nodeName||"OL"===n.nodeName?Dn:xn;t=e.find(i,n),t=t[t.length-1]}const s=t?H.trigger(t,"hide.bs.tab",{relatedTarget:this._element}):null;if(H.trigger(this._element,"show.bs.tab",{relatedTarget:t}).defaultPrevented||null!==s&&s.defaultPrevented)return;this._activate(this._element,n);const r=()=>{H.trigger(t,"hidden.bs.tab",{relatedTarget:this._element}),H.trigger(this._element,"shown.bs.tab",{relatedTarget:t})};i?this._activate(i,i.parentNode,r):r()}_activate(t,i,n){const s=(!i||"UL"!==i.nodeName&&"OL"!==i.nodeName?e.children(i,xn):e.find(Dn,i))[0],o=n&&s&&s.classList.contains(kn),r=()=>this._transitionComplete(t,s,n);s&&o?(s.classList.remove(Ln),this._queueCallback(r,t,!0)):r()}_transitionComplete(t,i,n){if(i){i.classList.remove(Cn);const t=e.findOne(":scope > .dropdown-menu .active",i.parentNode);t&&t.classList.remove(Cn),"tab"===i.getAttribute("role")&&i.setAttribute("aria-selected",!1)}t.classList.add(Cn),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),p(t),t.classList.contains(kn)&&t.classList.add(Ln);let s=t.parentNode;if(s&&"LI"===s.nodeName&&(s=s.parentNode),s&&s.classList.contains("dropdown-menu")){const i=t.closest(".dropdown");i&&e.find(".dropdown-toggle",i).forEach((e=>e.classList.add(Cn))),t.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each((function(){const t=Sn.getOrCreateInstance(this);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}}))}}H.on(document,"click.bs.tab.data-api",'[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',(function(e){["A","AREA"].includes(this.tagName)&&e.preventDefault(),d(this)||Sn.getOrCreateInstance(this).show()})),b(Sn);const Nn="toast",In="hide",jn="show",Pn="showing",Mn={animation:"boolean",autohide:"boolean",delay:"number"},Hn={animation:!0,autohide:!0,delay:5e3};class Rn extends ${constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return Mn}static get Default(){return Hn}static get NAME(){return Nn}show(){H.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove(In),p(this._element),this._element.classList.add(Pn),this._queueCallback((()=>{this._element.classList.remove(Pn),this._element.classList.add(jn),H.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()}),this._element,this._config.animation))}hide(){this._element.classList.contains(jn)&&(H.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.remove(jn),this._queueCallback((()=>{this._element.classList.add(In),H.trigger(this._element,"hidden.bs.toast")}),this._element,this._config.animation)))}dispose(){this._clearTimeout(),this._element.classList.contains(jn)&&this._element.classList.remove(jn),super.dispose()}_getConfig(e){return e={...Hn,...U.getDataAttributes(this._element),..."object"==typeof e&&e?e:{}},c(Nn,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout((()=>{this.hide()}),this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t}if(t)return void this._clearTimeout();const i=e.relatedTarget;this._element===i||this._element.contains(i)||this._maybeScheduleHide()}_setListeners(){H.on(this._element,"click.dismiss.bs.toast",'[data-bs-dismiss="toast"]',(()=>this.hide())),H.on(this._element,"mouseover.bs.toast",(e=>this._onInteraction(e,!0))),H.on(this._element,"mouseout.bs.toast",(e=>this._onInteraction(e,!1))),H.on(this._element,"focusin.bs.toast",(e=>this._onInteraction(e,!0))),H.on(this._element,"focusout.bs.toast",(e=>this._onInteraction(e,!1)))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each((function(){const t=Rn.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e](this)}}))}}return b(Rn),{Alert:q,Button:V,Carousel:oe,Collapse:me,Dropdown:mi,Modal:Ri,Offcanvas:Ui,Popover:vn,ScrollSpy:On,Tab:Sn,Toast:Rn,Tooltip:un}})); +//# sourceMappingURL=oe-bcl-default.umd.min.js.map diff --git a/assets/js/oe-bcl-default.umd.min.js.map b/assets/js/oe-bcl-default.umd.min.js.map new file mode 100644 index 00000000..8b194d57 --- /dev/null +++ b/assets/js/oe-bcl-default.umd.min.js.map @@ -0,0 +1 @@ +{"version":3,"file":"oe-bcl-default.umd.min.js","sources":["../../../../bootstrap/js/src/dom/selector-engine.js","../../../../bootstrap/js/src/util/index.js","../../../../bootstrap/js/src/dom/event-handler.js","../../../../bootstrap/js/src/dom/data.js","../../../../bootstrap/js/src/base-component.js","../../../../bootstrap/js/src/alert.js","../../../../bootstrap/js/src/button.js","../../../../bootstrap/js/src/dom/manipulator.js","../../../../bootstrap/js/src/carousel.js","../../../../bootstrap/js/src/collapse.js","../../../../node_modules/@popperjs/core/lib/enums.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../../../../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../../../../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../../../../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/contains.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../../../../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../../../../node_modules/@popperjs/core/lib/utils/math.js","../../../../node_modules/@popperjs/core/lib/utils/within.js","../../../../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../../../../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../../../../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../../../../node_modules/@popperjs/core/lib/modifiers/arrow.js","../../../../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../../../../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../../../../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../../../../node_modules/@popperjs/core/lib/utils/getVariation.js","../../../../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../../../../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../../../../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../../../../node_modules/@popperjs/core/lib/modifiers/flip.js","../../../../node_modules/@popperjs/core/lib/modifiers/hide.js","../../../../node_modules/@popperjs/core/lib/modifiers/offset.js","../../../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../../../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../../../../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../../../../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../../../../node_modules/@popperjs/core/lib/utils/format.js","../../../../node_modules/@popperjs/core/lib/utils/validateModifiers.js","../../../../node_modules/@popperjs/core/lib/createPopper.js","../../../../node_modules/@popperjs/core/lib/utils/debounce.js","../../../../node_modules/@popperjs/core/lib/utils/uniqueBy.js","../../../../node_modules/@popperjs/core/lib/utils/mergeByName.js","../../../../node_modules/@popperjs/core/lib/popper-lite.js","../../../../node_modules/@popperjs/core/lib/popper.js","../../../../bootstrap/js/src/dropdown.js","../../../../bootstrap/js/src/util/scrollbar.js","../../../../bootstrap/js/src/util/backdrop.js","../../../../bootstrap/js/src/modal.js","../../../../bootstrap/js/src/offcanvas.js","../../../../bootstrap/js/src/util/sanitizer.js","../../../../bootstrap/js/src/tooltip.js","../../../../bootstrap/js/src/popover.js","../../../../bootstrap/js/src/scrollspy.js","../../../../bootstrap/js/src/tab.js","../../../../bootstrap/js/src/toast.js","../index.umd.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NODE_TEXT = 3\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children)\n .filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n\n let ancestor = element.parentNode\n\n while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {\n if (ancestor.matches(selector)) {\n parents.push(ancestor)\n }\n\n ancestor = ancestor.parentNode\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n }\n}\n\nexport default SelectorEngine\n","import SelectorEngine from '../dom/selector-engine'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = obj => {\n if (obj === null || obj === undefined) {\n return `${obj}`\n }\n\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return SelectorEngine.findOne(obj)\n }\n\n return null\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n return getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\nconst reflow = element => element.offsetHeight\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n DOMContentLoadedCallbacks.forEach(callback => callback())\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element depending on the direction and if cycle is allowed\n if (index === -1) {\n return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]\n }\n\n const listLength = list.length\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n getNextActiveElement,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute,\n executeAfterTransition\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\nconst customEventsRegex = /^(mouseenter|mouseleave)/i\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * ------------------------------------------------------------------------\n * Private methods\n * ------------------------------------------------------------------------\n */\n\nfunction getUidEvent(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getEvent(element) {\n const uid = getUidEvent(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n event.delegateTarget = element\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (let i = domElements.length; i--;) {\n if (domElements[i] === target) {\n event.delegateTarget = target\n\n if (handler.oneOff) {\n // eslint-disable-next-line unicorn/consistent-destructuring\n EventHandler.off(element, event.type, selector, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n\n // To please ESLint\n return null\n }\n}\n\nfunction findHandler(events, handler, delegationSelector = null) {\n const uidEventList = Object.keys(events)\n\n for (let i = 0, len = uidEventList.length; i < len; i++) {\n const event = events[uidEventList[i]]\n\n if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {\n return event\n }\n }\n\n return null\n}\n\nfunction normalizeParams(originalTypeEvent, handler, delegationFn) {\n const delegation = typeof handler === 'string'\n const originalHandler = delegation ? delegationFn : handler\n\n let typeEvent = getTypeEvent(originalTypeEvent)\n const isNative = nativeEvents.has(typeEvent)\n\n if (!isNative) {\n typeEvent = originalTypeEvent\n }\n\n return [delegation, originalHandler, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n if (!handler) {\n handler = delegationFn\n delegationFn = null\n }\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (customEventsRegex.test(originalTypeEvent)) {\n const wrapFn = fn => {\n return function (event) {\n if (!event.relatedTarget || (event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget))) {\n return fn.call(this, event)\n }\n }\n }\n\n if (delegationFn) {\n delegationFn = wrapFn(delegationFn)\n } else {\n handler = wrapFn(handler)\n }\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const events = getEvent(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null)\n\n if (previousFn) {\n previousFn.oneOff = previousFn.oneOff && oneOff\n\n return\n }\n\n const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = delegation ?\n bootstrapDelegationHandler(element, handler, delegationFn) :\n bootstrapHandler(element, handler)\n\n fn.delegationSelector = delegation ? handler : null\n fn.originalHandler = originalHandler\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, delegation)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n Object.keys(storeElementEvent).forEach(handlerKey => {\n if (handlerKey.includes(namespace)) {\n const event = storeElementEvent[handlerKey]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n}\n\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '')\n return customEvents[event] || event\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, false)\n },\n\n one(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFn) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getEvent(element)\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof originalHandler !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!events || !events[typeEvent]) {\n return\n }\n\n removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null)\n return\n }\n\n if (isNamespace) {\n Object.keys(events).forEach(elementEvent => {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n })\n }\n\n const storeElementEvent = events[typeEvent] || {}\n Object.keys(storeElementEvent).forEach(keyHandlers => {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n const event = storeElementEvent[keyHandlers]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = getTypeEvent(event)\n const inNamespace = event !== typeEvent\n const isNative = nativeEvents.has(typeEvent)\n\n let jQueryEvent\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n let evt = null\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n if (isNative) {\n evt = document.createEvent('HTMLEvents')\n evt.initEvent(typeEvent, bubbles, true)\n } else {\n evt = new CustomEvent(event, {\n bubbles,\n cancelable: true\n })\n }\n\n // merge custom information in our event\n if (typeof args !== 'undefined') {\n Object.keys(args).forEach(key => {\n Object.defineProperty(evt, key, {\n get() {\n return args[key]\n }\n })\n })\n }\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst elementMap = new Map()\n\nexport default {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map())\n }\n\n const instanceMap = elementMap.get(element)\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`)\n return\n }\n\n instanceMap.set(key, instance)\n },\n\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null\n }\n\n return null\n },\n\n remove(element, key) {\n if (!elementMap.has(element)) {\n return\n }\n\n const instanceMap = elementMap.get(element)\n\n instanceMap.delete(key)\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element)\n }\n }\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\nimport {\n executeAfterTransition,\n getElement\n} from './util/index'\nimport EventHandler from './dom/event-handler'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst VERSION = '5.0.2'\n\nclass BaseComponent {\n constructor(element) {\n element = getElement(element)\n\n if (!element) {\n return\n }\n\n this._element = element\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n Object.getOwnPropertyNames(this).forEach(propertyName => {\n this[propertyName] = null\n })\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated)\n }\n\n /** Static */\n\n static getInstance(element) {\n return Data.get(element, this.DATA_KEY)\n }\n\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DISMISS = '[data-bs-dismiss=\"alert\"]'\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_ALERT = 'alert'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n close(element) {\n const rootElement = element ? this._getRootElement(element) : this._element\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent === null || customEvent.defaultPrevented) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n // Private\n\n _getRootElement(element) {\n return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`)\n }\n\n _triggerCloseEvent(element) {\n return EventHandler.trigger(element, EVENT_CLOSE)\n }\n\n _removeElement(element) {\n element.classList.remove(CLASS_NAME_SHOW)\n\n const isAnimated = element.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(() => this._destroyElement(element), element, isAnimated)\n }\n\n _destroyElement(element) {\n element.remove()\n\n EventHandler.trigger(element, EVENT_CLOSED)\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this)\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert.handleDismiss(new Alert()))\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Alert to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this)\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n const data = Button.getOrCreateInstance(button)\n\n data.toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Button to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(val) {\n if (val === 'true') {\n return true\n }\n\n if (val === 'false') {\n return false\n }\n\n if (val === Number(val).toString()) {\n return Number(val)\n }\n\n if (val === '' || val === 'null') {\n return null\n }\n\n return val\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n\n Object.keys(element.dataset)\n .filter(key => key.startsWith('bs'))\n .forEach(key => {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n })\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n },\n\n offset(element) {\n const rect = element.getBoundingClientRect()\n\n return {\n top: rect.top + document.body.scrollTop,\n left: rect.left + document.body.scrollLeft\n }\n },\n\n position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n }\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n getNextActiveElement,\n reflow,\n triggerTransitionEnd,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n slide: false,\n pause: 'hover',\n wrap: true,\n touch: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)',\n keyboard: 'boolean',\n slide: '(boolean|string)',\n pause: '(string|boolean)',\n wrap: 'boolean',\n touch: 'boolean'\n}\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY]: DIRECTION_LEFT\n}\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_INDICATOR = '[data-bs-target]'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n next() {\n this._slide(ORDER_NEXT)\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n this._slide(ORDER_PREV)\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) {\n triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config && this._config.interval && !this._isPaused) {\n this._updateInterval()\n\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const order = index > activeIndex ?\n ORDER_NEXT :\n ORDER_PREV\n\n this._slide(order, this._items[index])\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n this.touchDeltaX = 0\n\n if (!direction) {\n return\n }\n\n this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT)\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event))\n EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event))\n }\n\n if (this._config.touch && this._touchSupported) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n const start = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchStartX = event.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.touches[0].clientX\n }\n }\n\n const move = event => {\n // ensure swiping with one touch and not pinching\n this.touchDeltaX = event.touches && event.touches.length > 1 ?\n 0 :\n event.touches[0].clientX - this.touchStartX\n }\n\n const end = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {\n EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault())\n })\n\n if (this._pointerEvent) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n const direction = KEY_TO_DIRECTION[event.key]\n if (direction) {\n event.preventDefault()\n this._slide(direction)\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode ?\n SelectorEngine.find(SELECTOR_ITEM, element.parentNode) :\n []\n\n return this._items.indexOf(element)\n }\n\n _getItemByOrder(order, activeElement) {\n const isNext = order === ORDER_NEXT\n return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap)\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element))\n\n return EventHandler.trigger(this._element, EVENT_SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement)\n\n for (let i = 0; i < indicators.length; i++) {\n if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {\n indicators[i].classList.add(CLASS_NAME_ACTIVE)\n indicators[i].setAttribute('aria-current', 'true')\n break\n }\n }\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n if (elementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = elementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n }\n\n _slide(directionOrOrder, element) {\n const order = this._directionToOrder(directionOrOrder)\n const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || this._getItemByOrder(order, activeElement)\n\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n const isNext = order === ORDER_NEXT\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n const eventDirectionName = this._orderToDirection(order)\n\n if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {\n this._isSliding = false\n return\n }\n\n if (this._isSliding) {\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n this._activeElement = nextElement\n\n const triggerSlidEvent = () => {\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }\n\n if (this._element.classList.contains(CLASS_NAME_SLIDE)) {\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n setTimeout(triggerSlidEvent, 0)\n }\n\n this._queueCallback(completeCallBack, activeElement, true)\n } else {\n activeElement.classList.remove(CLASS_NAME_ACTIVE)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n this._isSliding = false\n triggerSlidEvent()\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _directionToOrder(direction) {\n if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) {\n return direction\n }\n\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (![ORDER_NEXT, ORDER_PREV].includes(order)) {\n return order\n }\n\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n\n static carouselInterface(element, config) {\n const data = Carousel.getOrCreateInstance(element, config)\n\n let { _config } = data\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Carousel.carouselInterface(this, config)\n })\n }\n\n static dataApiClickHandler(event) {\n const target = getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel.carouselInterface(target, config)\n\n if (slideIndex) {\n Carousel.getInstance(target).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler)\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (let i = 0, len = carousels.length; i < len; i++) {\n Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i]))\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Carousel to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElement,\n getSelectorFromElement,\n getElementFromSelector,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n toggle: true,\n parent: ''\n}\n\nconst DefaultType = {\n toggle: 'boolean',\n parent: '(string|element)'\n}\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.show, .collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._isTransitioning = false\n this._config = this._getConfig(config)\n this._triggerArray = SelectorEngine.find(\n `${SELECTOR_DATA_TOGGLE}[href=\"#${this._element.id}\"],` +\n `${SELECTOR_DATA_TOGGLE}[data-bs-target=\"#${this._element.id}\"]`\n )\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElem => foundElem === this._element)\n\n if (selector !== null && filterElement.length) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent)\n .filter(elem => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-bs-parent') === this._config.parent\n }\n\n return elem.classList.contains(CLASS_NAME_COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n const container = SelectorEngine.findOne(this._selector)\n if (actives) {\n const tempActiveData = actives.find(elem => container !== elem)\n activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null\n\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n if (actives) {\n actives.forEach(elemActive => {\n if (container !== elemActive) {\n Collapse.collapseInterface(elemActive, 'hide')\n }\n\n if (!activesData) {\n Data.set(elemActive, DATA_KEY, null)\n }\n })\n }\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n this._triggerArray.forEach(element => {\n element.classList.remove(CLASS_NAME_COLLAPSED)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n\n this._queueCallback(complete, this._element, true)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const elem = getElementFromSelector(trigger)\n\n if (elem && !elem.classList.contains(CLASS_NAME_SHOW)) {\n trigger.classList.add(CLASS_NAME_COLLAPSED)\n trigger.setAttribute('aria-expanded', false)\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n\n this._queueCallback(complete, this._element, true)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT\n }\n\n _getParent() {\n let { parent } = this._config\n\n parent = getElement(parent)\n\n const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent=\"${parent}\"]`\n\n SelectorEngine.find(selector, parent)\n .forEach(element => {\n const selected = getElementFromSelector(element)\n\n this._addAriaAndCollapsedClass(\n selected,\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (!element || !triggerArray.length) {\n return\n }\n\n const isOpen = element.classList.contains(CLASS_NAME_SHOW)\n\n triggerArray.forEach(elem => {\n if (isOpen) {\n elem.classList.remove(CLASS_NAME_COLLAPSED)\n } else {\n elem.classList.add(CLASS_NAME_COLLAPSED)\n }\n\n elem.setAttribute('aria-expanded', isOpen)\n })\n }\n\n // Static\n\n static collapseInterface(element, config) {\n let data = Collapse.getInstance(element)\n const _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Collapse.collapseInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n const triggerData = Manipulator.getDataAttributes(this)\n const selector = getSelectorFromElement(this)\n const selectorElements = SelectorEngine.find(selector)\n\n selectorElements.forEach(element => {\n const data = Collapse.getInstance(element)\n let config\n if (data) {\n // update parent attribute\n if (data._parent === null && typeof triggerData.parent === 'string') {\n data._config.parent = triggerData.parent\n data._parent = data._getParent()\n }\n\n config = 'toggle'\n } else {\n config = triggerData\n }\n\n Collapse.collapseInterface(element, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Collapse to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Collapse)\n\nexport default Collapse\n","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export default function getBoundingClientRect(element) {\n var rect = element.getBoundingClientRect();\n return {\n width: rect.width,\n height: rect.height,\n top: rect.top,\n right: rect.right,\n bottom: rect.bottom,\n left: rect.left,\n x: rect.left,\n y: rect.top\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;\n var isIE = navigator.userAgent.indexOf('Trident') !== -1;\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport default function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport within from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n if (!isHTMLElement(arrowElement)) {\n console.error(['Popper: \"arrow\" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' '));\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: \"arrow\" modifier\\'s `element` must be a child of the popper', 'element.'].join(' '));\n }\n\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","import { top, left, right, bottom } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref) {\n var x = _ref.x,\n y = _ref.y;\n var win = window;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(round(x * dpr) / dpr) || 0,\n y: round(round(y * dpr) / dpr) || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets;\n\n var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets,\n _ref3$x = _ref3.x,\n x = _ref3$x === void 0 ? 0 : _ref3$x,\n _ref3$y = _ref3.y,\n y = _ref3$y === void 0 ? 0 : _ref3$y;\n\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top) {\n sideY = bottom; // $FlowFixMe[prop-missing]\n\n y -= offsetParent[heightProp] - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left) {\n sideX = right; // $FlowFixMe[prop-missing]\n\n x -= offsetParent[widthProp] - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref4) {\n var state = _ref4.state,\n options = _ref4.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n\n if (process.env.NODE_ENV !== \"production\") {\n var transitionProperty = getComputedStyle(state.elements.popper).transitionProperty || '';\n\n if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {\n return transitionProperty.indexOf(property) >= 0;\n })) {\n console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: \"transform\", \"top\", \"right\", \"bottom\", \"left\".', '\\n\\n', 'Disable the \"computeStyles\" modifier\\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\\n\\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));\n }\n }\n\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If <html> has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on <html>\n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element) {\n var rect = getBoundingClientRect(element);\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nexport default function getViewportRect(element) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper\n // can be obscured underneath it.\n // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even\n // if it isn't open, so if this isn't available, the popper will be detected\n // to overflow the bottom of the screen too early.\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently)\n // In Chrome, it returns a value very close to 0 (+/-) but contains rounding\n // errors due to floating point numbers, so we need to check precision.\n // Safari returns a number <= 0, usually < -1 when pinch-zoomed\n // Feature detection fails in mobile emulation mode in Chrome.\n // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) <\n // 0.001\n // Fallback here: \"Not Safari\" userAgent\n\n if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var referenceElement = state.elements.reference;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);\n var referenceClientRect = getBoundingClientRect(referenceElement);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, \"auto\" cannot be used to allow \"bottom-start\".', 'Use \"auto-start\" instead.'].join(' '));\n }\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\";\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport within from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { max as mathMax, min as mathMin } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis || checkAltAxis) {\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = popperOffsets[mainAxis] + overflow[mainSide];\n var max = popperOffsets[mainAxis] - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0;\n var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue;\n\n if (checkMainAxis) {\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var _preventedOffset = within(tether ? mathMin(_min, tetherMin) : _min, _offset, tether ? mathMax(_max, tetherMax) : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\"; // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement);\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","export default function format(str) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return [].concat(args).reduce(function (p, c) {\n return p.replace(/%s/, c);\n }, str);\n}","import format from \"./format.js\";\nimport { modifierPhases } from \"../enums.js\";\nvar INVALID_MODIFIER_ERROR = 'Popper: modifier \"%s\" provided an invalid %s property, expected %s but got %s';\nvar MISSING_DEPENDENCY_ERROR = 'Popper: modifier \"%s\" requires \"%s\", but \"%s\" modifier is not available';\nvar VALID_PROPERTIES = ['name', 'enabled', 'phase', 'fn', 'effect', 'requires', 'options'];\nexport default function validateModifiers(modifiers) {\n modifiers.forEach(function (modifier) {\n Object.keys(modifier).forEach(function (key) {\n switch (key) {\n case 'name':\n if (typeof modifier.name !== 'string') {\n console.error(format(INVALID_MODIFIER_ERROR, String(modifier.name), '\"name\"', '\"string\"', \"\\\"\" + String(modifier.name) + \"\\\"\"));\n }\n\n break;\n\n case 'enabled':\n if (typeof modifier.enabled !== 'boolean') {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"enabled\"', '\"boolean\"', \"\\\"\" + String(modifier.enabled) + \"\\\"\"));\n }\n\n case 'phase':\n if (modifierPhases.indexOf(modifier.phase) < 0) {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"phase\"', \"either \" + modifierPhases.join(', '), \"\\\"\" + String(modifier.phase) + \"\\\"\"));\n }\n\n break;\n\n case 'fn':\n if (typeof modifier.fn !== 'function') {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"fn\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n }\n\n break;\n\n case 'effect':\n if (typeof modifier.effect !== 'function') {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"effect\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n }\n\n break;\n\n case 'requires':\n if (!Array.isArray(modifier.requires)) {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requires\"', '\"array\"', \"\\\"\" + String(modifier.requires) + \"\\\"\"));\n }\n\n break;\n\n case 'requiresIfExists':\n if (!Array.isArray(modifier.requiresIfExists)) {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requiresIfExists\"', '\"array\"', \"\\\"\" + String(modifier.requiresIfExists) + \"\\\"\"));\n }\n\n break;\n\n case 'options':\n case 'data':\n break;\n\n default:\n console.error(\"PopperJS: an invalid property has been provided to the \\\"\" + modifier.name + \"\\\" modifier, valid properties are \" + VALID_PROPERTIES.map(function (s) {\n return \"\\\"\" + s + \"\\\"\";\n }).join(', ') + \"; but \\\"\" + key + \"\\\" was provided.\");\n }\n\n modifier.requires && modifier.requires.forEach(function (requirement) {\n if (modifiers.find(function (mod) {\n return mod.name === requirement;\n }) == null) {\n console.error(format(MISSING_DEPENDENCY_ERROR, String(modifier.name), requirement, requirement));\n }\n });\n });\n });\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport getComputedStyle from \"./dom-utils/getComputedStyle.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport validateModifiers from \"./utils/validateModifiers.js\";\nimport uniqueBy from \"./utils/uniqueBy.js\";\nimport getBasePlacement from \"./utils/getBasePlacement.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nimport { auto } from \"./enums.js\";\nvar INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';\nvar INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(options) {\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n }); // Validate the provided modifiers so that the consumer will get warned\n // if one of the modifiers is invalid for any reason\n\n if (process.env.NODE_ENV !== \"production\") {\n var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {\n var name = _ref.name;\n return name;\n });\n validateModifiers(modifiers);\n\n if (getBasePlacement(state.options.placement) === auto) {\n var flipModifier = state.orderedModifiers.find(function (_ref2) {\n var name = _ref2.name;\n return name === 'flip';\n });\n\n if (!flipModifier) {\n console.error(['Popper: \"auto\" placements require the \"flip\" modifier be', 'present and enabled to work.'].join(' '));\n }\n }\n\n var _getComputedStyle = getComputedStyle(popper),\n marginTop = _getComputedStyle.marginTop,\n marginRight = _getComputedStyle.marginRight,\n marginBottom = _getComputedStyle.marginBottom,\n marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can\n // cause bugs with positioning, so we'll warn the consumer\n\n\n if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {\n return parseFloat(margin);\n })) {\n console.warn(['Popper: CSS \"margin\" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));\n }\n }\n\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n var __debug_loops__ = 0;\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (process.env.NODE_ENV !== \"production\") {\n __debug_loops__ += 1;\n\n if (__debug_loops__ > 100) {\n console.error(INFINITE_LOOP_ERROR);\n break;\n }\n }\n\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref3) {\n var name = _ref3.name,\n _ref3$options = _ref3.options,\n options = _ref3$options === void 0 ? {} : _ref3$options,\n effect = _ref3.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","export default function uniqueBy(arr, fn) {\n var identifiers = new Set();\n return arr.filter(function (item) {\n var identifier = fn(item);\n\n if (!identifiers.has(identifier)) {\n identifiers.add(identifier);\n return true;\n }\n });\n}","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n getElement,\n getElementFromSelector,\n isDisabled,\n isElement,\n isVisible,\n isRTL,\n noop,\n getNextActiveElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst SPACE_KEY = 'Space'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY}`)\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_NAVBAR = 'navbar'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]'\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'\n\nconst Default = {\n offset: [0, 2],\n boundary: 'clippingParents',\n reference: 'toggle',\n display: 'dynamic',\n popperConfig: null,\n autoClose: true\n}\n\nconst DefaultType = {\n offset: '(array|string|function)',\n boundary: '(string|element)',\n reference: '(string|element|object)',\n display: 'string',\n popperConfig: '(null|object|function)',\n autoClose: '(boolean|string)'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (isDisabled(this._element)) {\n return\n }\n\n const isActive = this._element.classList.contains(CLASS_NAME_SHOW)\n\n if (isActive) {\n this.hide()\n return\n }\n\n this.show()\n }\n\n show() {\n if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this._element)\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n // Totally disable Popper for Dropdowns in Navbar\n if (this._inNavbar) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'none')\n } else {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference)\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false)\n\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n\n if (isDisplayStatic) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static')\n }\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n !parent.closest(SELECTOR_NAVBAR_NAV)) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.on(elem, 'mouseover', noop))\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.toggle(CLASS_NAME_SHOW)\n this._element.classList.toggle(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n this._completeHide(relatedTarget)\n }\n\n dispose() {\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK, event => {\n event.preventDefault()\n this.toggle()\n })\n }\n\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.off(elem, 'mouseover', noop))\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.remove(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._element.setAttribute('aria-expanded', 'false')\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _getMenuElement() {\n return SelectorEngine.next(this._element, SELECTOR_MENU)[0]\n }\n\n _getPlacement() {\n const parentDropdown = this._element.parentNode\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display\n if (this._config.display === 'static') {\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _selectMenuItem({ key, target }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible)\n\n if (!items.length) {\n return\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus()\n }\n\n // Static\n\n static dropdownInterface(element, config) {\n const data = Dropdown.getOrCreateInstance(element, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Dropdown.dropdownInterface(this, config)\n })\n }\n\n static clearMenus(event) {\n if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {\n return\n }\n\n const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const context = Dropdown.getInstance(toggles[i])\n if (!context || context._config.autoClose === false) {\n continue\n }\n\n if (!context._element.classList.contains(CLASS_NAME_SHOW)) {\n continue\n }\n\n const relatedTarget = {\n relatedTarget: context._element\n }\n\n if (event) {\n const composedPath = event.composedPath()\n const isMenuTarget = composedPath.includes(context._menu)\n if (\n composedPath.includes(context._element) ||\n (context._config.autoClose === 'inside' && !isMenuTarget) ||\n (context._config.autoClose === 'outside' && isMenuTarget)\n ) {\n continue\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue\n }\n\n if (event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n }\n\n context._completeHide(relatedTarget)\n }\n }\n\n static getParentFromElement(element) {\n return getElementFromSelector(element) || element.parentNode\n }\n\n static dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName) ?\n event.key === SPACE_KEY || (event.key !== ESCAPE_KEY &&\n ((event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY) ||\n event.target.closest(SELECTOR_MENU))) :\n !REGEXP_KEYDOWN.test(event.key)) {\n return\n }\n\n const isActive = this.classList.contains(CLASS_NAME_SHOW)\n\n if (!isActive && event.key === ESCAPE_KEY) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (isDisabled(this)) {\n return\n }\n\n const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n\n if (event.key === ESCAPE_KEY) {\n getToggleButton().focus()\n Dropdown.clearMenus()\n return\n }\n\n if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) {\n if (!isActive) {\n getToggleButton().click()\n }\n\n Dropdown.getInstance(getToggleButton())._selectMenuItem(event)\n return\n }\n\n if (!isActive || event.key === SPACE_KEY) {\n Dropdown.clearMenus()\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n Dropdown.dropdownInterface(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Dropdown to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport SelectorEngine from '../dom/selector-engine'\nimport Manipulator from '../dom/manipulator'\nimport { isElement } from './index'\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body\n }\n\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth\n return Math.abs(window.innerWidth - documentWidth)\n }\n\n hide() {\n const width = this.getWidth()\n this._disableOverFlow()\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width)\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width)\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width)\n }\n\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow')\n this._element.style.overflow = 'hidden'\n }\n\n _setElementAttributes(selector, styleProp, callback) {\n const scrollbarWidth = this.getWidth()\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return\n }\n\n this._saveInitialAttribute(element, styleProp)\n const calculatedValue = window.getComputedStyle(element)[styleProp]\n element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n reset() {\n this._resetElementAttributes(this._element, 'overflow')\n this._resetElementAttributes(this._element, 'paddingRight')\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight')\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight')\n }\n\n _saveInitialAttribute(element, styleProp) {\n const actualValue = element.style[styleProp]\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProp, actualValue)\n }\n }\n\n _resetElementAttributes(selector, styleProp) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProp)\n if (typeof value === 'undefined') {\n element.style.removeProperty(styleProp)\n } else {\n Manipulator.removeDataAttribute(element, styleProp)\n element.style[styleProp] = value\n }\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector)\n } else {\n SelectorEngine.find(selector, this._element).forEach(callBack)\n }\n }\n\n isOverflowing() {\n return this.getWidth() > 0\n }\n}\n\nexport default ScrollBarHelper\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { execute, executeAfterTransition, getElement, reflow, typeCheckConfig } from './index'\n\nconst Default = {\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n isAnimated: false,\n rootElement: 'body', // give the choice to place backdrop under different elements\n clickCallback: null\n}\n\nconst DefaultType = {\n isVisible: 'boolean',\n isAnimated: 'boolean',\n rootElement: '(element|string)',\n clickCallback: '(function|null)'\n}\nconst NAME = 'backdrop'\nconst CLASS_NAME_BACKDROP = 'modal-backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nclass Backdrop {\n constructor(config) {\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\n }\n\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n if (this._config.isAnimated) {\n reflow(this._getElement())\n }\n\n this._getElement().classList.add(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n execute(callback)\n })\n }\n\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._getElement().classList.remove(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n this.dispose()\n execute(callback)\n })\n }\n\n // Private\n\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div')\n backdrop.className = CLASS_NAME_BACKDROP\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE)\n }\n\n this._element = backdrop\n }\n\n return this._element\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' ? config : {})\n }\n\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement)\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n this._config.rootElement.appendChild(this._getElement())\n\n EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n dispose() {\n if (!this._isAppended) {\n return\n }\n\n EventHandler.off(this._element, EVENT_MOUSEDOWN)\n\n this._element.remove()\n this._isAppended = false\n }\n\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated)\n }\n}\n\nexport default Backdrop\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport ScrollBarHelper from './util/scrollbar'\nimport BaseComponent from './base-component'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean'\n}\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"modal\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element)\n this._backdrop = this._initializeBackDrop()\n this._isShown = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollBar = new ScrollBarHelper()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n\n if (this._isAnimated()) {\n this._isTransitioning = true\n }\n\n this._scrollBar.hide()\n\n document.body.classList.add(CLASS_NAME_OPEN)\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, event => this.hide(event))\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event && ['A', 'AREA'].includes(event.target.tagName)) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n const isAnimated = this._isAnimated()\n\n if (isAnimated) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.off(document, EVENT_FOCUSIN)\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS)\n\n this._queueCallback(() => this._hideModal(), this._element, isAnimated)\n }\n\n dispose() {\n [window, this._dialog]\n .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))\n\n this._backdrop.dispose()\n super.dispose()\n\n /**\n * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `EVENT_CLICK_DATA_API` event that should remain\n */\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value\n isAnimated: this._isAnimated()\n })\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const isAnimated = this._isAnimated()\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n if (isAnimated) {\n reflow(this._element)\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, isAnimated)\n }\n\n _enforceFocus() {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n this._element !== event.target &&\n !this._element.contains(event.target)) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault()\n this.hide()\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition()\n }\n })\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog())\n } else {\n EventHandler.off(window, EVENT_RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n this._scrollBar.reset()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _showBackdrop(callback) {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, event => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n\n if (event.target !== event.currentTarget) {\n return\n }\n\n if (this._config.backdrop === true) {\n this.hide()\n } else if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n }\n })\n\n this._backdrop.show(callback)\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE)\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const { classList, scrollHeight, style } = this._element\n const isModalOverflowing = scrollHeight > document.documentElement.clientHeight\n\n // return if the following background transition hasn't yet completed\n if ((!isModalOverflowing && style.overflowY === 'hidden') || classList.contains(CLASS_NAME_STATIC)) {\n return\n }\n\n if (!isModalOverflowing) {\n style.overflowY = 'hidden'\n }\n\n classList.add(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n classList.remove(CLASS_NAME_STATIC)\n if (!isModalOverflowing) {\n this._queueCallback(() => {\n style.overflowY = ''\n }, this._dialog)\n }\n }, this._dialog)\n\n this._element.focus()\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const scrollbarWidth = this._scrollBar.getWidth()\n const isBodyOverflowing = scrollbarWidth > 0\n\n if ((!isBodyOverflowing && isModalOverflowing && !isRTL()) || (isBodyOverflowing && !isModalOverflowing && isRTL())) {\n this._element.style.paddingLeft = `${scrollbarWidth}px`\n }\n\n if ((isBodyOverflowing && !isModalOverflowing && !isRTL()) || (!isBodyOverflowing && isModalOverflowing && isRTL())) {\n this._element.style.paddingRight = `${scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n const data = Modal.getOrCreateInstance(target)\n\n data.toggle(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible,\n typeCheckConfig\n} from './util/index'\nimport ScrollBarHelper from './util/scrollbar'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Manipulator from './dom/manipulator'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: 'boolean',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\nconst CLASS_NAME_SHOW = 'show'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"offcanvas\"]'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._addEventListeners()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._element.style.visibility = 'visible'\n\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n this._enforceFocusOnElement(this._element)\n }\n\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const completeCallBack = () => {\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n EventHandler.off(document, EVENT_FOCUSIN)\n this._element.blur()\n this._isShown = false\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._element.style.visibility = 'hidden'\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n super.dispose()\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: this._config.backdrop,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _enforceFocusOnElement(element) {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n element !== event.target &&\n !element.contains(event.target)) {\n element.focus()\n }\n })\n element.focus()\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n this.hide()\n }\n })\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (allReadyOpen && allReadyOpen !== target) {\n Offcanvas.getInstance(allReadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () =>\n SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())\n)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attr, allowedAttributeList) => {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attrName)) {\n if (uriAttrs.has(attrName)) {\n return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attrName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const allowlistKeys = Object.keys(allowList)\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (!allowlistKeys.includes(elName)) {\n el.remove()\n\n continue\n }\n\n const attributeList = [].concat(...el.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || [])\n\n attributeList.forEach(attr => {\n if (!allowedAttribute(attr, allowedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport {\n DefaultAllowlist,\n sanitizeHtml\n} from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.appendChild(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n this.tip = element.children[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle())\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.appendChild(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n let title = this._element.getAttribute('data-bs-original-title')\n\n if (!title) {\n title = typeof this._config.title === 'function' ?\n this._config.title.call(this._element) :\n this._config.title\n }\n\n return title\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || Data.get(event.delegateTarget, dataKey)\n\n if (!context) {\n context = new this.constructor(event.delegateTarget, this._getDelegateConfig())\n Data.set(event.delegateTarget, dataKey, context)\n }\n\n return context\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this._config) {\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport SelectorEngine from './dom/selector-engine'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement: 'right',\n offset: [0, 8],\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(string|element|function)'\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n this.tip = super.getTipElement()\n\n if (!this.getTitle()) {\n SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove()\n }\n\n if (!this._getContent()) {\n SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove()\n }\n\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n\n // we use append for html objects to maintain js events\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this._element)\n }\n\n this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n // Private\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getContent() {\n return this._element.getAttribute('data-bs-content') || this._config.content\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Popover to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getSelectorFromElement,\n getUID,\n isElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n offset: 10,\n method: 'auto',\n target: ''\n}\n\nconst DefaultType = {\n offset: 'number',\n method: 'string',\n target: '(string|element)'\n}\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._scrollElement = this._element.tagName === 'BODY' ? window : this._element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process())\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window ?\n METHOD_OFFSET :\n METHOD_POSITION\n\n const offsetMethod = this._config.method === 'auto' ?\n autoMethod :\n this._config.method\n\n const offsetBase = offsetMethod === METHOD_POSITION ?\n this._getScrollTop() :\n 0\n\n this._offsets = []\n this._targets = []\n this._scrollHeight = this._getScrollHeight()\n\n const targets = SelectorEngine.find(this._selector)\n\n targets.map(element => {\n const targetSelector = getSelectorFromElement(element)\n const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n return [\n Manipulator[offsetMethod](target).top + offsetBase,\n targetSelector\n ]\n }\n }\n\n return null\n })\n .filter(item => item)\n .sort((a, b) => a[0] - b[0])\n .forEach(item => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n EventHandler.off(this._scrollElement, EVENT_KEY)\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (typeof config.target !== 'string' && isElement(config.target)) {\n let { id } = config.target\n if (!id) {\n id = getUID(NAME)\n config.target.id = id\n }\n\n config.target = `#${id}`\n }\n\n typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window ?\n this._scrollElement.pageYOffset :\n this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window ?\n window.innerHeight :\n this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n for (let i = this._offsets.length; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = this._selector.split(',')\n .map(selector => `${selector}[data-bs-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const link = SelectorEngine.findOne(queries.join(','))\n\n if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, link.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n\n link.classList.add(CLASS_NAME_ACTIVE)\n } else {\n // Set triggered link as active\n link.classList.add(CLASS_NAME_ACTIVE)\n\n SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP)\n .forEach(listGroup => {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n\n // Handle special case when .nav-link is inside .nav-item\n SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS)\n .forEach(navItem => {\n SelectorEngine.children(navItem, SELECTOR_NAV_LINKS)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n })\n })\n }\n\n EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, {\n relatedTarget: target\n })\n }\n\n _clear() {\n SelectorEngine.find(this._selector)\n .filter(node => node.classList.contains(CLASS_NAME_ACTIVE))\n .forEach(node => node.classList.remove(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n SelectorEngine.find(SELECTOR_DATA_SPY)\n .forEach(spy => new ScrollSpy(spy))\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .ScrollSpy to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n reflow\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_UL = ':scope > li > .active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tab extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n if ((this._element.parentNode &&\n this._element.parentNode.nodeType === Node.ELEMENT_NODE &&\n this._element.classList.contains(CLASS_NAME_ACTIVE))) {\n return\n }\n\n let previous\n const target = getElementFromSelector(this._element)\n const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP)\n\n if (listElement) {\n const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE\n previous = SelectorEngine.find(itemSelector, listElement)\n previous = previous[previous.length - 1]\n }\n\n const hideEvent = previous ?\n EventHandler.trigger(previous, EVENT_HIDE, {\n relatedTarget: this._element\n }) :\n null\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget: previous\n })\n\n if (showEvent.defaultPrevented || (hideEvent !== null && hideEvent.defaultPrevented)) {\n return\n }\n\n this._activate(this._element, listElement)\n\n const complete = () => {\n EventHandler.trigger(previous, EVENT_HIDDEN, {\n relatedTarget: this._element\n })\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget: previous\n })\n }\n\n if (target) {\n this._activate(target, target.parentNode, complete)\n } else {\n complete()\n }\n }\n\n // Private\n\n _activate(element, container, callback) {\n const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ?\n SelectorEngine.find(SELECTOR_ACTIVE_UL, container) :\n SelectorEngine.children(container, SELECTOR_ACTIVE)\n\n const active = activeElements[0]\n const isTransitioning = callback && (active && active.classList.contains(CLASS_NAME_FADE))\n\n const complete = () => this._transitionComplete(element, active, callback)\n\n if (active && isTransitioning) {\n active.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, element, true)\n } else {\n complete()\n }\n }\n\n _transitionComplete(element, active, callback) {\n if (active) {\n active.classList.remove(CLASS_NAME_ACTIVE)\n\n const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode)\n\n if (dropdownChild) {\n dropdownChild.classList.remove(CLASS_NAME_ACTIVE)\n }\n\n if (active.getAttribute('role') === 'tab') {\n active.setAttribute('aria-selected', false)\n }\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n if (element.getAttribute('role') === 'tab') {\n element.setAttribute('aria-selected', true)\n }\n\n reflow(element)\n\n if (element.classList.contains(CLASS_NAME_FADE)) {\n element.classList.add(CLASS_NAME_SHOW)\n }\n\n let parent = element.parentNode\n if (parent && parent.nodeName === 'LI') {\n parent = parent.parentNode\n }\n\n if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) {\n const dropdownElement = element.closest(SELECTOR_DROPDOWN)\n\n if (dropdownElement) {\n SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement)\n .forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE))\n }\n\n element.setAttribute('aria-expanded', true)\n }\n\n if (callback) {\n callback()\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tab.getOrCreateInstance(this)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const data = Tab.getOrCreateInstance(this)\n data.show()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tab to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'bs.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`\nconst EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_FOCUSOUT = `focusout${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"toast\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._timeout = null\n this._hasMouseInteraction = false\n this._hasKeyboardInteraction = false\n this._setListeners()\n }\n\n // Getters\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n this._element.classList.add(CLASS_NAME_SHOW)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n this._maybeScheduleHide()\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE)\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n hide() {\n if (!this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n return config\n }\n\n _maybeScheduleHide() {\n if (!this._config.autohide) {\n return\n }\n\n if (this._hasMouseInteraction || this._hasKeyboardInteraction) {\n return\n }\n\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n\n _onInteraction(event, isInteracting) {\n switch (event.type) {\n case 'mouseover':\n case 'mouseout':\n this._hasMouseInteraction = isInteracting\n break\n case 'focusin':\n case 'focusout':\n this._hasKeyboardInteraction = isInteracting\n break\n default:\n break\n }\n\n if (isInteracting) {\n this._clearTimeout()\n return\n }\n\n const nextElement = event.relatedTarget\n if (this._element === nextElement || this._element.contains(nextElement)) {\n return\n }\n\n this._maybeScheduleHide()\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false))\n EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false))\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Toast.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Toast to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Toast)\n\nexport default Toast\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): index.umd.js\n * Licensed under MIT (https:/github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Alert from \"@openeuropa/bcl-bootstrap/js/src/alert\";\nimport Button from \"@openeuropa/bcl-bootstrap/js/src/button\";\nimport Carousel from \"@openeuropa/bcl-bootstrap/js/src/carousel\";\nimport Collapse from \"@openeuropa/bcl-bootstrap/js/src/collapse\";\nimport Dropdown from \"@openeuropa/bcl-bootstrap/js/src/dropdown\";\nimport Modal from \"@openeuropa/bcl-bootstrap/js/src/modal\";\nimport Offcanvas from \"@openeuropa/bcl-bootstrap/js/src/offcanvas\";\nimport Popover from \"@openeuropa/bcl-bootstrap/js/src/popover\";\nimport ScrollSpy from \"@openeuropa/bcl-bootstrap/js/src/scrollspy\";\nimport Tab from \"@openeuropa/bcl-bootstrap/js/src/tab\";\nimport Toast from \"@openeuropa/bcl-bootstrap/js/src/toast\";\nimport Tooltip from \"@openeuropa/bcl-bootstrap/js/src/tooltip\";\n\nexport default {\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n};\n"],"names":["SelectorEngine","find","selector","element","document","documentElement","concat","Element","prototype","querySelectorAll","call","findOne","querySelector","children","filter","child","matches","parents","ancestor","parentNode","nodeType","Node","ELEMENT_NODE","push","prev","previous","previousElementSibling","next","nextElementSibling","TRANSITION_END","getUID","prefix","Math","floor","random","getElementById","getSelector","getAttribute","hrefAttr","includes","startsWith","split","trim","getSelectorFromElement","getElementFromSelector","triggerTransitionEnd","dispatchEvent","Event","isElement","obj","jquery","getElement","length","typeCheckConfig","componentName","config","configTypes","Object","keys","forEach","property","expectedTypes","value","valueType","toString","match","toLowerCase","RegExp","test","TypeError","toUpperCase","isVisible","getClientRects","getComputedStyle","getPropertyValue","isDisabled","classList","contains","disabled","hasAttribute","findShadowRoot","attachShadow","getRootNode","root","ShadowRoot","noop","reflow","offsetHeight","getjQuery","jQuery","window","body","DOMContentLoadedCallbacks","isRTL","dir","defineJQueryPlugin","plugin","callback","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","readyState","addEventListener","execute","executeAfterTransition","transitionElement","waitForTransition","emulatedDuration","transitionDuration","transitionDelay","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","getTransitionDurationFromElement","called","handler","target","removeEventListener","setTimeout","getNextActiveElement","list","activeElement","shouldGetNext","isCycleAllowed","index","indexOf","listLength","max","min","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","customEventsRegex","nativeEvents","Set","getUidEvent","uid","getEvent","findHandler","events","delegationSelector","uidEventList","i","len","event","originalHandler","normalizeParams","originalTypeEvent","delegationFn","delegation","typeEvent","getTypeEvent","has","addHandler","oneOff","wrapFn","relatedTarget","delegateTarget","this","handlers","previousFn","replace","domElements","EventHandler","off","type","apply","bootstrapDelegationHandler","bootstrapHandler","removeHandler","Boolean","on","one","inNamespace","isNamespace","elementEvent","namespace","storeElementEvent","handlerKey","removeNamespacedHandlers","slice","keyHandlers","trigger","args","isNative","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","evt","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","createEvent","initEvent","CustomEvent","cancelable","key","defineProperty","get","preventDefault","elementMap","Map","set","instance","instanceMap","size","console","error","Array","from","remove","delete","BaseComponent","constructor","_element","Data","DATA_KEY","dispose","EVENT_KEY","getOwnPropertyNames","propertyName","_queueCallback","isAnimated","getInstance","Error","Alert","close","rootElement","_getRootElement","customEvent","_triggerCloseEvent","_removeElement","closest","_destroyElement","each","data","getOrCreateInstance","alertInstance","handleDismiss","SELECTOR_DATA_TOGGLE","Button","toggle","setAttribute","normalizeData","val","normalizeDataKey","chr","button","Manipulator","setDataAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","dataset","pureKey","charAt","getDataAttribute","offset","rect","getBoundingClientRect","top","scrollTop","left","scrollLeft","position","offsetTop","offsetLeft","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","KEY_TO_DIRECTION","EVENT_SLID","CLASS_NAME_ACTIVE","SELECTOR_ACTIVE_ITEM","POINTER_TYPE_TOUCH","Carousel","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","PointerEvent","_addEventListeners","_slide","nextWhenVisible","hidden","cycle","clearInterval","_updateInterval","setInterval","visibilityState","bind","to","activeIndex","_getItemIndex","order","_handleSwipe","absDeltax","abs","direction","_keydown","_addTouchEventListeners","start","pointerType","touches","clientX","move","end","clearTimeout","itemImg","e","add","tagName","_getItemByOrder","isNext","_triggerSlideEvent","eventDirectionName","targetIndex","fromIndex","_setActiveIndicatorElement","activeIndicator","indicators","parseInt","elementInterval","defaultInterval","directionOrOrder","_directionToOrder","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","_orderToDirection","triggerSlidEvent","completeCallBack","action","ride","carouselInterface","slideIndex","dataApiClickHandler","carousels","parent","CLASS_NAME_SHOW","CLASS_NAME_COLLAPSE","CLASS_NAME_COLLAPSING","CLASS_NAME_COLLAPSED","WIDTH","Collapse","_isTransitioning","_triggerArray","id","toggleList","elem","filterElement","foundElem","_selector","_parent","_getParent","_addAriaAndCollapsedClass","hide","show","actives","activesData","container","tempActiveData","elemActive","collapseInterface","dimension","_getDimension","style","setTransitioning","scrollSize","triggerArrayLength","isTransitioning","selected","triggerArray","isOpen","triggerData","bottom","right","auto","basePlacements","clippingParents","viewport","popper","reference","variationPlacements","reduce","acc","placement","placements","beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite","modifierPhases","getNodeName","nodeName","getWindow","node","ownerDocument","defaultView","isHTMLElement","HTMLElement","isShadowRoot","enabled","phase","_ref","state","elements","styles","assign","effect","_ref2","initialStyles","options","strategy","margin","arrow","hasOwnProperty","attribute","requires","getBasePlacement","width","height","x","y","getLayoutRect","clientRect","offsetWidth","rootNode","isSameNode","host","isTableElement","getDocumentElement","getParentNode","assignedSlot","getTrueOffsetParent","offsetParent","getOffsetParent","isFirefox","userAgent","currentNode","css","transform","perspective","contain","willChange","getContainingBlock","getMainAxisFromPlacement","round","within","mathMax","mathMin","mergePaddingObject","paddingObject","expandToHashMap","hashMap","_state$modifiersData$","arrowElement","popperOffsets","modifiersData","basePlacement","axis","padding","rects","toPaddingObject","arrowRect","minProp","maxProp","endDiff","startDiff","arrowOffsetParent","clientSize","clientHeight","clientWidth","centerToReference","center","axisProp","centerOffset","_options$element","process","env","NODE_ENV","join","requiresIfExists","unsetSides","mapToStyles","_Object$assign2","popperRect","offsets","gpuAcceleration","adaptive","roundOffsets","_ref3","dpr","devicePixelRatio","roundOffsetsByDPR","_ref3$x","_ref3$y","hasX","hasY","sideX","sideY","win","heightProp","widthProp","_Object$assign","commonStyles","_ref4","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","transitionProperty","some","warn","passive","_options$scroll","scroll","_options$resize","resize","scrollParents","scrollParent","update","hash","getOppositePlacement","matched","getOppositeVariationPlacement","getWindowScroll","pageXOffset","pageYOffset","getWindowScrollBarX","isScrollParent","_getComputedStyle","overflow","overflowX","overflowY","getScrollParent","listScrollParents","_element$ownerDocumen","isBody","visualViewport","updatedList","rectToClientRect","getClientRectFromMixedType","clippingParent","html","getViewportRect","clientTop","clientLeft","getInnerBoundingClientRect","winScroll","scrollWidth","scrollHeight","getDocumentRect","getVariation","computeOffsets","variation","commonX","commonY","mainAxis","detectOverflow","_options","_options$placement","_options$boundary","boundary","_options$rootBoundary","rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","referenceElement","clippingClientRect","mainClippingParents","clipperElement","getClippingParents","firstClippingParent","clippingRect","accRect","getClippingRect","contextElement","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","multiply","computeAutoPlacement","flipVariations","_options$allowedAutoP","allowedAutoPlacements","allPlacements","allowedPlacements","overflows","sort","a","b","_skip","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","preferredPlacement","oppositePlacement","getExpandedFallbackPlacements","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","isVertical","mainVariationSide","altVariationSide","checks","every","check","_loop","_i","fittingPlacement","reset","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","_options$offset","invertDistance","skidding","distance","distanceAndSkiddingToXY","_data$state$placement","_options$tether","tether","_options$tetherOffset","tetherOffset","isBasePlacement","tetherOffsetValue","mainSide","altSide","additive","minLen","maxLen","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","clientOffset","offsetModifierValue","tetherMin","tetherMax","preventedOffset","_mainSide","_altSide","_offset","_min","_max","_preventedOffset","getCompositeRect","elementOrVirtualElement","isFixed","isOffsetParentAnElement","modifiers","map","visited","result","modifier","dep","depModifier","format","str","_len","arguments","_key","p","c","INVALID_MODIFIER_ERROR","VALID_PROPERTIES","INVALID_ELEMENT_ERROR","DEFAULT_OPTIONS","areValidElements","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","pending","orderedModifiers","effectCleanupFns","isDestroyed","setOptions","cleanupModifierEffects","arr","identifiers","merged","orderModifiers","current","existing","m","String","isArray","s","requirement","mod","validateModifiers","item","identifier","marginTop","marginRight","marginBottom","marginLeft","_ref3$options","cleanupFn","forceUpdate","_state$elements","__debug_loops__","_state$orderedModifie","_state$orderedModifie2","Promise","resolve","then","undefined","destroy","onFirstUpdate","createPopper","eventListeners","computeStyles","applyStyles","flip","ESCAPE_KEY","SPACE_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","REGEXP_KEYDOWN","EVENT_CLICK_DATA_API","EVENT_KEYDOWN_DATA_API","SELECTOR_MENU","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","display","popperConfig","autoClose","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","getParentFromElement","Popper","_getPopperConfig","isDisplayStatic","focus","_completeHide","_getPlacement","parentDropdown","isEnd","_getOffset","popperData","defaultBsPopperConfig","_selectMenuItem","items","dropdownInterface","toggles","context","composedPath","isMenuTarget","clickEvent","isActive","stopPropagation","getToggleButton","clearMenus","click","dataApiKeydownHandler","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","ScrollBarHelper","getWidth","documentWidth","innerWidth","_disableOverFlow","_setElementAttributes","calculatedValue","_saveInitialAttribute","styleProp","scrollbarWidth","_applyManipulationCallback","_resetElementAttributes","actualValue","removeProperty","callBack","isOverflowing","clickCallback","EVENT_MOUSEDOWN","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","createElement","className","appendChild","EVENT_HIDDEN","EVENT_SHOW","EVENT_FOCUSIN","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_KEYDOWN_DISMISS","EVENT_MOUSEDOWN_DISMISS","CLASS_NAME_OPEN","CLASS_NAME_STATIC","Modal","_dialog","_backdrop","_initializeBackDrop","_isShown","_ignoreBackdropClick","_scrollBar","_isAnimated","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","_hideModal","htmlElement","handleUpdate","modalBody","_enforceFocus","_triggerBackdropTransition","_resetAdjustments","currentTarget","isModalOverflowing","isBodyOverflowing","paddingLeft","paddingRight","showEvent","OPEN_SELECTOR","Offcanvas","visibility","_enforceFocusOnElement","blur","allReadyOpen","el","uriAttrs","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeValue","regExp","attrRegex","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","createdDocument","DOMParser","parseFromString","allowlistKeys","elName","attributeList","allowedAttributes","innerHTML","BSCLS_PREFIX_REGEX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","customClass","sanitize","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","area","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","pre","small","span","sub","sup","strong","u","ul","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","CLASS_NAME_FADE","HOVER_STATE_SHOW","HOVER_STATE_OUT","TRIGGER_HOVER","TRIGGER_FOCUS","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","_initializeOnDelegatedTarget","_isWithActiveTrigger","_enter","_leave","getTipElement","_hideModalHandler","isWithContent","shadowRoot","isInTheDom","tipId","setContent","attachment","_getAttachment","_addAttachmentClass","prevHoverState","_cleanTipClass","getTitle","setElementContent","content","textContent","updateAttachment","dataKey","_getDelegateConfig","_handlePopperPlacementChange","eventIn","eventOut","_fixTitle","originalTitleType","dataAttributes","dataAttr","tabClass","token","tClass","SELECTOR_TITLE","SELECTOR_CONTENT","Popover","_getContent","super","method","METHOD_POSITION","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targetSelector","targetBCR","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","queries","link","listGroup","navItem","spy","SELECTOR_ACTIVE","SELECTOR_ACTIVE_UL","Tab","listElement","itemSelector","hideEvent","complete","active","_transitionComplete","dropdownChild","dropdownElement","dropdown","CLASS_NAME_HIDE","CLASS_NAME_SHOWING","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","_onInteraction","isInteracting"],"mappings":"0OAaA,MAEMA,EAAiB,CACrBC,KAAI,CAACC,EAAUC,EAAUC,SAASC,kBACzB,GAAGC,UAAUC,QAAQC,UAAUC,iBAAiBC,KAAKP,EAASD,IAGvES,QAAO,CAACT,EAAUC,EAAUC,SAASC,kBAC5BE,QAAQC,UAAUI,cAAcF,KAAKP,EAASD,GAGvDW,SAAQ,CAACV,EAASD,IACT,GAAGI,UAAUH,EAAQU,UACzBC,QAAOC,GAASA,EAAMC,QAAQd,KAGnCe,QAAQd,EAASD,SACTe,EAAU,OAEZC,EAAWf,EAAQgB,gBAEhBD,GAAYA,EAASE,WAAaC,KAAKC,cArBhC,IAqBgDJ,EAASE,UACjEF,EAASF,QAAQd,IACnBe,EAAQM,KAAKL,GAGfA,EAAWA,EAASC,kBAGfF,GAGTO,KAAKrB,EAASD,OACRuB,EAAWtB,EAAQuB,4BAEhBD,GAAU,IACXA,EAAST,QAAQd,SACZ,CAACuB,GAGVA,EAAWA,EAASC,6BAGf,IAGTC,KAAKxB,EAASD,OACRyB,EAAOxB,EAAQyB,wBAEZD,GAAM,IACPA,EAAKX,QAAQd,SACR,CAACyB,GAGVA,EAAOA,EAAKC,yBAGP,KC3DLC,EAAiB,gBAiBjBC,EAASC,OAEXA,GAAUC,KAAKC,MArBH,IAqBSD,KAAKE,gBACnB9B,SAAS+B,eAAeJ,WAE1BA,GAGHK,EAAcjC,QACdD,EAAWC,EAAQkC,aAAa,sBAE/BnC,GAAyB,MAAbA,EAAkB,KAC7BoC,EAAWnC,EAAQkC,aAAa,YAM/BC,IAAcA,EAASC,SAAS,OAASD,EAASE,WAAW,YACzD,KAILF,EAASC,SAAS,OAASD,EAASE,WAAW,OACjDF,EAAY,IAAGA,EAASG,MAAM,KAAK,MAGrCvC,EAAWoC,GAAyB,MAAbA,EAAmBA,EAASI,OAAS,YAGvDxC,GAGHyC,EAAyBxC,UACvBD,EAAWkC,EAAYjC,UAEzBD,GACKE,SAASQ,cAAcV,GAAYA,EAGrC,MAGH0C,EAAyBzC,UACvBD,EAAWkC,EAAYjC,UAEtBD,EAAWE,SAASQ,cAAcV,GAAY,MA0BjD2C,EAAuB1C,IAC3BA,EAAQ2C,cAAc,IAAIC,MAAMlB,KAG5BmB,EAAYC,MACXA,GAAsB,iBAARA,UAIO,IAAfA,EAAIC,SACbD,EAAMA,EAAI,SAGmB,IAAjBA,EAAI7B,UAGd+B,EAAaF,GACbD,EAAUC,GACLA,EAAIC,OAASD,EAAI,GAAKA,EAGZ,iBAARA,GAAoBA,EAAIG,OAAS,EACnCpD,EAAeW,QAAQsC,GAGzB,KAGHI,EAAkB,CAACC,EAAeC,EAAQC,KAC9CC,OAAOC,KAAKF,GAAaG,SAAQC,UACzBC,EAAgBL,EAAYI,GAC5BE,EAAQP,EAAOK,GACfG,EAAYD,GAASd,EAAUc,GAAS,UArH5Cb,OADSA,EAsHsDa,GApHzD,GAAEb,IAGL,GAAGe,SAAStD,KAAKuC,GAAKgB,MAAM,eAAe,GAAGC,cALxCjB,IAAAA,MAwHN,IAAIkB,OAAON,GAAeO,KAAKL,SAC5B,IAAIM,UACP,GAAEf,EAAcgB,0BAA0BV,qBAA4BG,yBAAiCF,WAM1GU,EAAYpE,MACX6C,EAAU7C,IAAgD,IAApCA,EAAQqE,iBAAiBpB,SAIgB,YAA7DqB,iBAAiBtE,GAASuE,iBAAiB,cAG9CC,EAAaxE,IACZA,GAAWA,EAAQiB,WAAaC,KAAKC,gBAItCnB,EAAQyE,UAAUC,SAAS,mBAIC,IAArB1E,EAAQ2E,SACV3E,EAAQ2E,SAGV3E,EAAQ4E,aAAa,aAAoD,UAArC5E,EAAQkC,aAAa,aAG5D2C,EAAiB7E,QAChBC,SAASC,gBAAgB4E,oBACrB,QAI0B,mBAAxB9E,EAAQ+E,YAA4B,OACvCC,EAAOhF,EAAQ+E,qBACdC,aAAgBC,WAAaD,EAAO,YAGzChF,aAAmBiF,WACdjF,EAIJA,EAAQgB,WAIN6D,EAAe7E,EAAQgB,YAHrB,MAMLkE,EAAO,OAEPC,EAASnF,GAAWA,EAAQoF,aAE5BC,EAAY,WACVC,OAAEA,GAAWC,cAEfD,IAAWrF,SAASuF,KAAKZ,aAAa,qBACjCU,EAGF,MAGHG,EAA4B,GAiB5BC,EAAQ,IAAuC,QAAjCzF,SAASC,gBAAgByF,IAEvCC,EAAqBC,IAjBAC,IAAAA,EAAAA,EAkBN,WACXC,EAAIV,OAENU,EAAG,OACCC,EAAOH,EAAOI,KACdC,EAAqBH,EAAEI,GAAGH,GAChCD,EAAEI,GAAGH,GAAQH,EAAOO,gBACpBL,EAAEI,GAAGH,GAAMK,YAAcR,EACzBE,EAAEI,GAAGH,GAAMM,WAAa,KACtBP,EAAEI,GAAGH,GAAQE,EACNL,EAAOO,mBA3BQ,YAAxBnG,SAASsG,YAENd,EAA0BxC,QAC7BhD,SAASuG,iBAAiB,oBAAoB,KAC5Cf,EAA0BjC,SAAQsC,GAAYA,SAIlDL,EAA0BrE,KAAK0E,IAE/BA,KAuBEW,EAAUX,IACU,mBAAbA,GACTA,KAIEY,EAAyB,CAACZ,EAAUa,EAAmBC,GAAoB,SAC1EA,cACHH,EAAQX,SAKJe,EA/KiC7G,CAAAA,QAClCA,SACI,MAIL8G,mBAAEA,EAAFC,gBAAsBA,GAAoBxB,OAAOjB,iBAAiBtE,SAEhEgH,EAA0BC,OAAOC,WAAWJ,GAC5CK,EAAuBF,OAAOC,WAAWH,UAG1CC,GAA4BG,GAKjCL,EAAqBA,EAAmBxE,MAAM,KAAK,GACnDyE,EAAkBA,EAAgBzE,MAAM,KAAK,GArFf,KAuFtB2E,OAAOC,WAAWJ,GAAsBG,OAAOC,WAAWH,KAPzD,GAkKgBK,CAAiCT,GADlC,MAGpBU,GAAS,QAEPC,EAAU,EAAGC,OAAAA,MACbA,IAAWZ,IAIfU,GAAS,EACTV,EAAkBa,oBAAoB9F,EAAgB4F,GACtDb,EAAQX,KAGVa,EAAkBH,iBAAiB9E,EAAgB4F,GACnDG,YAAW,KACJJ,GACH3E,EAAqBiE,KAEtBE,IAYCa,EAAuB,CAACC,EAAMC,EAAeC,EAAeC,SAC5DC,EAAQJ,EAAKK,QAAQJ,OAGV,IAAXG,SACKJ,GAAME,GAAiBC,EAAiBH,EAAK1E,OAAS,EAAI,SAG7DgF,EAAaN,EAAK1E,cAExB8E,GAASF,EAAgB,GAAK,EAE1BC,IACFC,GAASA,EAAQE,GAAcA,GAG1BN,EAAK9F,KAAKqG,IAAI,EAAGrG,KAAKsG,IAAIJ,EAAOE,EAAa,MC5RjDG,EAAiB,qBACjBC,EAAiB,OACjBC,EAAgB,SAChBC,EAAgB,GACtB,IAAIC,EAAW,EACf,MAAMC,EAAe,CACnBC,WAAY,YACZC,WAAY,YAERC,EAAoB,4BACpBC,EAAe,IAAIC,IAAI,CAC3B,QACA,WACA,UACA,YACA,cACA,aACA,iBACA,YACA,WACA,YACA,cACA,YACA,UACA,WACA,QACA,oBACA,aACA,YACA,WACA,cACA,cACA,cACA,YACA,eACA,gBACA,eACA,gBACA,aACA,QACA,OACA,SACA,QACA,SACA,SACA,UACA,WACA,OACA,SACA,eACA,SACA,OACA,mBACA,mBACA,QACA,QACA,WASF,SAASC,EAAY/I,EAASgJ,UACpBA,GAAQ,GAAEA,MAAQR,OAAiBxI,EAAQwI,UAAYA,IAGjE,SAASS,EAASjJ,SACVgJ,EAAMD,EAAY/I,UAExBA,EAAQwI,SAAWQ,EACnBT,EAAcS,GAAOT,EAAcS,IAAQ,GAEpCT,EAAcS,GAuCvB,SAASE,EAAYC,EAAQ7B,EAAS8B,EAAqB,YACnDC,EAAe/F,OAAOC,KAAK4F,OAE5B,IAAIG,EAAI,EAAGC,EAAMF,EAAapG,OAAQqG,EAAIC,EAAKD,IAAK,OACjDE,EAAQL,EAAOE,EAAaC,OAE9BE,EAAMC,kBAAoBnC,GAAWkC,EAAMJ,qBAAuBA,SAC7DI,SAIJ,KAGT,SAASE,EAAgBC,EAAmBrC,EAASsC,SAC7CC,EAAgC,iBAAZvC,EACpBmC,EAAkBI,EAAaD,EAAetC,MAEhDwC,EAAYC,EAAaJ,UACZd,EAAamB,IAAIF,KAGhCA,EAAYH,GAGP,CAACE,EAAYJ,EAAiBK,GAGvC,SAASG,EAAWjK,EAAS2J,EAAmBrC,EAASsC,EAAcM,MACpC,iBAAtBP,IAAmC3J,YAIzCsH,IACHA,EAAUsC,EACVA,EAAe,MAKbhB,EAAkB3E,KAAK0F,GAAoB,OACvCQ,EAAShE,GACN,SAAUqD,OACVA,EAAMY,eAAkBZ,EAAMY,gBAAkBZ,EAAMa,iBAAmBb,EAAMa,eAAe3F,SAAS8E,EAAMY,sBACzGjE,EAAG5F,KAAK+J,KAAMd,IAKvBI,EACFA,EAAeO,EAAOP,GAEtBtC,EAAU6C,EAAO7C,SAIduC,EAAYJ,EAAiBK,GAAaJ,EAAgBC,EAAmBrC,EAASsC,GACvFT,EAASF,EAASjJ,GAClBuK,EAAWpB,EAAOW,KAAeX,EAAOW,GAAa,IACrDU,EAAatB,EAAYqB,EAAUd,EAAiBI,EAAavC,EAAU,SAE7EkD,cACFA,EAAWN,OAASM,EAAWN,QAAUA,SAKrClB,EAAMD,EAAYU,EAAiBE,EAAkBc,QAAQrC,EAAgB,KAC7EjC,EAAK0D,EA5Fb,SAAoC7J,EAASD,EAAUoG,UAC9C,SAASmB,EAAQkC,SAChBkB,EAAc1K,EAAQM,iBAAiBP,OAExC,IAAIwH,OAAEA,GAAWiC,EAAOjC,GAAUA,IAAW+C,KAAM/C,EAASA,EAAOvG,eACjE,IAAIsI,EAAIoB,EAAYzH,OAAQqG,QAC3BoB,EAAYpB,KAAO/B,SACrBiC,EAAMa,eAAiB9C,EAEnBD,EAAQ4C,QAEVS,EAAaC,IAAI5K,EAASwJ,EAAMqB,KAAM9K,EAAUoG,GAG3CA,EAAG2E,MAAMvD,EAAQ,CAACiC,WAMxB,MAyEPuB,CAA2B/K,EAASsH,EAASsC,GAzGjD,SAA0B5J,EAASmG,UAC1B,SAASmB,EAAQkC,UACtBA,EAAMa,eAAiBrK,EAEnBsH,EAAQ4C,QACVS,EAAaC,IAAI5K,EAASwJ,EAAMqB,KAAM1E,GAGjCA,EAAG2E,MAAM9K,EAAS,CAACwJ,KAkG1BwB,CAAiBhL,EAASsH,GAE5BnB,EAAGiD,mBAAqBS,EAAavC,EAAU,KAC/CnB,EAAGsD,gBAAkBA,EACrBtD,EAAG+D,OAASA,EACZ/D,EAAGqC,SAAWQ,EACduB,EAASvB,GAAO7C,EAEhBnG,EAAQwG,iBAAiBsD,EAAW3D,EAAI0D,GAG1C,SAASoB,EAAcjL,EAASmJ,EAAQW,EAAWxC,EAAS8B,SACpDjD,EAAK+C,EAAYC,EAAOW,GAAYxC,EAAS8B,GAE9CjD,IAILnG,EAAQwH,oBAAoBsC,EAAW3D,EAAI+E,QAAQ9B,WAC5CD,EAAOW,GAAW3D,EAAGqC,WAe9B,SAASuB,EAAaP,UAEpBA,EAAQA,EAAMiB,QAAQpC,EAAgB,IAC/BI,EAAae,IAAUA,EAGhC,MAAMmB,EAAe,CACnBQ,GAAGnL,EAASwJ,EAAOlC,EAASsC,GAC1BK,EAAWjK,EAASwJ,EAAOlC,EAASsC,GAAc,IAGpDwB,IAAIpL,EAASwJ,EAAOlC,EAASsC,GAC3BK,EAAWjK,EAASwJ,EAAOlC,EAASsC,GAAc,IAGpDgB,IAAI5K,EAAS2J,EAAmBrC,EAASsC,MACN,iBAAtBD,IAAmC3J,eAIvC6J,EAAYJ,EAAiBK,GAAaJ,EAAgBC,EAAmBrC,EAASsC,GACvFyB,EAAcvB,IAAcH,EAC5BR,EAASF,EAASjJ,GAClBsL,EAAc3B,EAAkBtH,WAAW,aAElB,IAApBoH,EAAiC,KAErCN,IAAWA,EAAOW,sBAIvBmB,EAAcjL,EAASmJ,EAAQW,EAAWL,EAAiBI,EAAavC,EAAU,MAIhFgE,GACFhI,OAAOC,KAAK4F,GAAQ3F,SAAQ+H,KAhDlC,SAAkCvL,EAASmJ,EAAQW,EAAW0B,SACtDC,EAAoBtC,EAAOW,IAAc,GAE/CxG,OAAOC,KAAKkI,GAAmBjI,SAAQkI,OACjCA,EAAWtJ,SAASoJ,GAAY,OAC5BhC,EAAQiC,EAAkBC,GAEhCT,EAAcjL,EAASmJ,EAAQW,EAAWN,EAAMC,gBAAiBD,EAAMJ,wBA0CrEuC,CAAyB3L,EAASmJ,EAAQoC,EAAc5B,EAAkBiC,MAAM,aAI9EH,EAAoBtC,EAAOW,IAAc,GAC/CxG,OAAOC,KAAKkI,GAAmBjI,SAAQqI,UAC/BH,EAAaG,EAAYpB,QAAQnC,EAAe,QAEjD+C,GAAe1B,EAAkBvH,SAASsJ,GAAa,OACpDlC,EAAQiC,EAAkBI,GAEhCZ,EAAcjL,EAASmJ,EAAQW,EAAWN,EAAMC,gBAAiBD,EAAMJ,yBAK7E0C,QAAQ9L,EAASwJ,EAAOuC,MACD,iBAAVvC,IAAuBxJ,SACzB,WAGH+F,EAAIV,IACJyE,EAAYC,EAAaP,GACzB6B,EAAc7B,IAAUM,EACxBkC,EAAWnD,EAAamB,IAAIF,OAE9BmC,EACAC,GAAU,EACVC,GAAiB,EACjBC,GAAmB,EACnBC,EAAM,YAENhB,GAAetF,IACjBkG,EAAclG,EAAEnD,MAAM4G,EAAOuC,GAE7BhG,EAAE/F,GAAS8L,QAAQG,GACnBC,GAAWD,EAAYK,uBACvBH,GAAkBF,EAAYM,gCAC9BH,EAAmBH,EAAYO,sBAG7BR,GACFK,EAAMpM,SAASwM,YAAY,cAC3BJ,EAAIK,UAAU5C,EAAWoC,GAAS,IAElCG,EAAM,IAAIM,YAAYnD,EAAO,CAC3B0C,QAAAA,EACAU,YAAY,SAKI,IAATb,GACTzI,OAAOC,KAAKwI,GAAMvI,SAAQqJ,IACxBvJ,OAAOwJ,eAAeT,EAAKQ,EAAK,CAC9BE,IAAG,IACMhB,EAAKc,QAMhBT,GACFC,EAAIW,iBAGFb,GACFnM,EAAQ2C,cAAc0J,GAGpBA,EAAID,uBAA2C,IAAhBH,GACjCA,EAAYe,iBAGPX,IC3ULY,EAAa,IAAIC,UAER,CACbC,IAAInN,EAAS6M,EAAKO,GACXH,EAAWjD,IAAIhK,IAClBiN,EAAWE,IAAInN,EAAS,IAAIkN,WAGxBG,EAAcJ,EAAWF,IAAI/M,GAI9BqN,EAAYrD,IAAI6C,IAA6B,IAArBQ,EAAYC,KAMzCD,EAAYF,IAAIN,EAAKO,GAJnBG,QAAQC,MAAO,+EAA8EC,MAAMC,KAAKL,EAAY9J,QAAQ,QAOhIwJ,IAAG,CAAC/M,EAAS6M,IACPI,EAAWjD,IAAIhK,IACViN,EAAWF,IAAI/M,GAAS+M,IAAIF,IAG9B,KAGTc,OAAO3N,EAAS6M,OACTI,EAAWjD,IAAIhK,gBAIdqN,EAAcJ,EAAWF,IAAI/M,GAEnCqN,EAAYO,OAAOf,GAGM,IAArBQ,EAAYC,MACdL,EAAWW,OAAO5N,KC/BxB,MAAM6N,EACJC,YAAY9N,IACVA,EAAUgD,EAAWhD,WAMhB+N,SAAW/N,EAChBgO,EAAKb,IAAI7C,KAAKyD,SAAUzD,KAAKwD,YAAYG,SAAU3D,OAGrD4D,UACEF,EAAKL,OAAOrD,KAAKyD,SAAUzD,KAAKwD,YAAYG,UAC5CtD,EAAaC,IAAIN,KAAKyD,SAAUzD,KAAKwD,YAAYK,WAEjD7K,OAAO8K,oBAAoB9D,MAAM9G,SAAQ6K,SAClCA,GAAgB,QAIzBC,eAAexI,EAAU9F,EAASuO,GAAa,GAC7C7H,EAAuBZ,EAAU9F,EAASuO,sBAKzBvO,UACVgO,EAAKjB,IAAI/M,EAASsK,KAAK2D,qCAGLjO,EAASoD,EAAS,WACpCkH,KAAKkE,YAAYxO,IAAY,IAAIsK,KAAKtK,EAA2B,iBAAXoD,EAAsBA,EAAS,iCAlChF,gCA0CN,IAAIqL,MAAM,mGAIR,MAAKnE,KAAKrE,oCAIV,IAAGqE,KAAK2D,YC7BpB,MAAMS,UAAcb,0BArBP,QA8BXc,MAAM3O,SACE4O,EAAc5O,EAAUsK,KAAKuE,gBAAgB7O,GAAWsK,KAAKyD,SAC7De,EAAcxE,KAAKyE,mBAAmBH,GAExB,OAAhBE,GAAwBA,EAAY1C,uBAInC4C,eAAeJ,GAKtBC,gBAAgB7O,UACPyC,EAAuBzC,IAAYA,EAAQiP,QAAS,UAG7DF,mBAAmB/O,UACV2K,EAAamB,QAAQ9L,EAzCX,kBA4CnBgP,eAAehP,GACbA,EAAQyE,UAAUkJ,OAvCE,cAyCdY,EAAavO,EAAQyE,UAAUC,SA1CjB,aA2Cf4J,gBAAe,IAAMhE,KAAK4E,gBAAgBlP,IAAUA,EAASuO,GAGpEW,gBAAgBlP,GACdA,EAAQ2N,SAERhD,EAAamB,QAAQ9L,EArDH,0CA0DGoD,UACdkH,KAAK6E,MAAK,iBACTC,EAAOV,EAAMW,oBAAoB/E,MAExB,UAAXlH,GACFgM,EAAKhM,GAAQkH,8BAKEgF,UACZ,SAAU9F,GACXA,GACFA,EAAMwD,iBAGRsC,EAAcX,MAAMrE,QAW1BK,EAAaQ,GAAGlL,SApFc,0BAJL,4BAwFyCyO,EAAMa,cAAc,IAAIb,IAS1F9I,EAAmB8I,GCzGnB,MAOMc,EAAuB,4BAU7B,MAAMC,UAAe5B,0BAjBR,SA0BX6B,cAEO3B,SAAS4B,aAAa,eAAgBrF,KAAKyD,SAAStJ,UAAUiL,OAvB7C,kCA4BDtM,UACdkH,KAAK6E,MAAK,iBACTC,EAAOK,EAAOJ,oBAAoB/E,MAEzB,WAAXlH,GACFgM,EAAKhM,SChDb,SAASwM,EAAcC,SACT,SAARA,GAIQ,UAARA,IAIAA,IAAQ5I,OAAO4I,GAAKhM,WACfoD,OAAO4I,GAGJ,KAARA,GAAsB,SAARA,EACT,KAGFA,GAGT,SAASC,EAAiBjD,UACjBA,EAAIpC,QAAQ,UAAUsF,GAAQ,IAAGA,EAAIhM,kBDuC9C4G,EAAaQ,GAAGlL,SAzCc,2BAyCkBuP,GAAsBhG,IACpEA,EAAMwD,uBAEAgD,EAASxG,EAAMjC,OAAO0H,QAAQO,GACvBC,EAAOJ,oBAAoBW,GAEnCN,YAUP9J,EAAmB6J,GCpDnB,MAAMQ,EAAc,CAClBC,iBAAiBlQ,EAAS6M,EAAKlJ,GAC7B3D,EAAQ2P,aAAc,WAAUG,EAAiBjD,KAAQlJ,IAG3DwM,oBAAoBnQ,EAAS6M,GAC3B7M,EAAQoQ,gBAAiB,WAAUN,EAAiBjD,OAGtDwD,kBAAkBrQ,OACXA,QACI,SAGHsQ,EAAa,UAEnBhN,OAAOC,KAAKvD,EAAQuQ,SACjB5P,QAAOkM,GAAOA,EAAIxK,WAAW,QAC7BmB,SAAQqJ,QACH2D,EAAU3D,EAAIpC,QAAQ,MAAO,IACjC+F,EAAUA,EAAQC,OAAO,GAAG1M,cAAgByM,EAAQ5E,MAAM,EAAG4E,EAAQvN,QACrEqN,EAAWE,GAAWZ,EAAc5P,EAAQuQ,QAAQ1D,OAGjDyD,GAGTI,iBAAgB,CAAC1Q,EAAS6M,IACjB+C,EAAc5P,EAAQkC,aAAc,WAAU4N,EAAiBjD,OAGxE8D,OAAO3Q,SACC4Q,EAAO5Q,EAAQ6Q,8BAEd,CACLC,IAAKF,EAAKE,IAAM7Q,SAASuF,KAAKuL,UAC9BC,KAAMJ,EAAKI,KAAO/Q,SAASuF,KAAKyL,aAIpCC,SAASlR,IACA,CACL8Q,IAAK9Q,EAAQmR,UACbH,KAAMhR,EAAQoR,cC9CdnL,EAAO,WAUPoL,EAAU,CACdC,SAAU,IACVC,UAAU,EACVC,OAAO,EACPC,MAAO,QACPC,MAAM,EACNC,OAAO,GAGHC,EAAc,CAClBN,SAAU,mBACVC,SAAU,UACVC,MAAO,mBACPC,MAAO,mBACPC,KAAM,UACNC,MAAO,WAGHE,EAAa,OACbC,EAAa,OACbC,EAAiB,OACjBC,EAAkB,QAElBC,GAAmB,WACLD,aACCD,GAIfG,GAAc,mBAcdC,GAAoB,SASpBC,GAAuB,wBASvBC,GAAqB,QAQ3B,MAAMC,WAAiBzE,EACrBC,YAAY9N,EAASoD,SACbpD,QAEDuS,OAAS,UACTC,UAAY,UACZC,eAAiB,UACjBC,WAAY,OACZC,YAAa,OACbC,aAAe,UACfC,YAAc,OACdC,YAAc,OAEdC,QAAUzI,KAAK0I,WAAW5P,QAC1B6P,mBAAqBpT,EAAeW,QA3BjB,uBA2B8C8J,KAAKyD,eACtEmF,gBAAkB,iBAAkBjT,SAASC,iBAAmBiT,UAAUC,eAAiB,OAC3FC,cAAgBnI,QAAQ3F,OAAO+N,mBAE/BC,iDAMElC,2BAIApL,EAKTzE,YACOgS,OAAO3B,GAGd4B,mBAGOxT,SAASyT,QAAUtP,EAAUkG,KAAKyD,gBAChCvM,OAITH,YACOmS,OAAO1B,GAGdL,MAAMjI,GACCA,SACEkJ,WAAY,GAGf7S,EAAeW,QApEI,2CAoEwB8J,KAAKyD,YAClDrL,EAAqB4H,KAAKyD,eACrB4F,OAAM,IAGbC,cAActJ,KAAKkI,gBACdA,UAAY,KAGnBmB,MAAMnK,GACCA,SACEkJ,WAAY,GAGfpI,KAAKkI,YACPoB,cAActJ,KAAKkI,gBACdA,UAAY,MAGflI,KAAKyI,SAAWzI,KAAKyI,QAAQzB,WAAahH,KAAKoI,iBAC5CmB,uBAEArB,UAAYsB,aACd7T,SAAS8T,gBAAkBzJ,KAAKmJ,gBAAkBnJ,KAAK9I,MAAMwS,KAAK1J,MACnEA,KAAKyI,QAAQzB,WAKnB2C,GAAGlM,QACI0K,eAAiB5S,EAAeW,QAAQ4R,GAAsB9H,KAAKyD,gBAClEmG,EAAc5J,KAAK6J,cAAc7J,KAAKmI,mBAExC1K,EAAQuC,KAAKiI,OAAOtP,OAAS,GAAK8E,EAAQ,YAI1CuC,KAAKqI,uBACPhI,EAAaS,IAAId,KAAKyD,SAAUmE,IAAY,IAAM5H,KAAK2J,GAAGlM,QAIxDmM,IAAgBnM,cACb0J,kBACAkC,cAIDS,EAAQrM,EAAQmM,EACpBrC,EACAC,OAEG0B,OAAOY,EAAO9J,KAAKiI,OAAOxK,IAKjCiL,WAAW5P,UACTA,EAAS,IACJiO,KACApB,EAAYI,kBAAkB/F,KAAKyD,aAChB,iBAAX3K,EAAsBA,EAAS,IAE5CF,EAAgB+C,EAAM7C,EAAQwO,GACvBxO,EAGTiR,qBACQC,EAAYzS,KAAK0S,IAAIjK,KAAKwI,gBAE5BwB,GAnMgB,gBAuMdE,EAAYF,EAAYhK,KAAKwI,iBAE9BA,YAAc,EAEd0B,QAIAhB,OAAOgB,EAAY,EAAIxC,EAAkBD,GAGhDwB,qBACMjJ,KAAKyI,QAAQxB,UACf5G,EAAaQ,GAAGb,KAAKyD,SApLJ,uBAoL6BvE,GAASc,KAAKmK,SAASjL,KAG5C,UAAvBc,KAAKyI,QAAQtB,QACf9G,EAAaQ,GAAGb,KAAKyD,SAvLD,0BAuL6BvE,GAASc,KAAKmH,MAAMjI,KACrEmB,EAAaQ,GAAGb,KAAKyD,SAvLD,0BAuL6BvE,GAASc,KAAKqJ,MAAMnK,MAGnEc,KAAKyI,QAAQpB,OAASrH,KAAK4I,sBACxBwB,0BAITA,gCACQC,EAAQnL,KACRc,KAAK+I,eAnKU,QAmKQ7J,EAAMoL,aAAoCpL,EAAMoL,cAAgBvC,GAE/E/H,KAAK+I,qBACVR,YAAcrJ,EAAMqL,QAAQ,GAAGC,cAF/BjC,YAAcrJ,EAAMsL,SAMvBC,EAAOvL,SAENsJ,YAActJ,EAAMqL,SAAWrL,EAAMqL,QAAQ5R,OAAS,EACzD,EACAuG,EAAMqL,QAAQ,GAAGC,QAAUxK,KAAKuI,aAG9BmC,EAAMxL,KACNc,KAAK+I,eAlLU,QAkLQ7J,EAAMoL,aAAoCpL,EAAMoL,cAAgBvC,UACpFS,YAActJ,EAAMsL,QAAUxK,KAAKuI,kBAGrCwB,eACsB,UAAvB/J,KAAKyI,QAAQtB,aASVA,QACDnH,KAAKsI,cACPqC,aAAa3K,KAAKsI,mBAGfA,aAAenL,YAAW+B,GAASc,KAAKqJ,MAAMnK,IAtQ5B,IAsQ6Dc,KAAKyI,QAAQzB,YAIrGzR,EAAeC,KAjNO,qBAiNiBwK,KAAKyD,UAAUvK,SAAQ0R,IAC5DvK,EAAaQ,GAAG+J,EAlOI,yBAkOuBC,GAAKA,EAAEnI,sBAGhD1C,KAAK+I,eACP1I,EAAaQ,GAAGb,KAAKyD,SAxOA,2BAwO6BvE,GAASmL,EAAMnL,KACjEmB,EAAaQ,GAAGb,KAAKyD,SAxOF,yBAwO6BvE,GAASwL,EAAIxL,UAExDuE,SAAStJ,UAAU2Q,IA9NG,mBAgO3BzK,EAAaQ,GAAGb,KAAKyD,SAhPD,0BAgP6BvE,GAASmL,EAAMnL,KAChEmB,EAAaQ,GAAGb,KAAKyD,SAhPF,yBAgP6BvE,GAASuL,EAAKvL,KAC9DmB,EAAaQ,GAAGb,KAAKyD,SAhPH,wBAgP6BvE,GAASwL,EAAIxL,MAIhEiL,SAASjL,MACH,kBAAkBvF,KAAKuF,EAAMjC,OAAO8N,sBAIlCb,EAAYvC,GAAiBzI,EAAMqD,KACrC2H,IACFhL,EAAMwD,sBACDwG,OAAOgB,IAIhBL,cAAcnU,eACPuS,OAASvS,GAAWA,EAAQgB,WAC/BnB,EAAeC,KAhPC,iBAgPmBE,EAAQgB,YAC3C,GAEKsJ,KAAKiI,OAAOvK,QAAQhI,GAG7BsV,gBAAgBlB,EAAOxM,SACf2N,EAASnB,IAAUvC,SAClBnK,EAAqB4C,KAAKiI,OAAQ3K,EAAe2N,EAAQjL,KAAKyI,QAAQrB,MAG/E8D,mBAAmBpL,EAAeqL,SAC1BC,EAAcpL,KAAK6J,cAAc/J,GACjCuL,EAAYrL,KAAK6J,cAActU,EAAeW,QAAQ4R,GAAsB9H,KAAKyD,kBAEhFpD,EAAamB,QAAQxB,KAAKyD,SAxRhB,oBAwRuC,CACtD3D,cAAAA,EACAoK,UAAWiB,EACX/H,KAAMiI,EACN1B,GAAIyB,IAIRE,2BAA2B5V,MACrBsK,KAAK2I,mBAAoB,OACrB4C,EAAkBhW,EAAeW,QA3QrB,UA2Q8C8J,KAAK2I,oBAErE4C,EAAgBpR,UAAUkJ,OAAOwE,IACjC0D,EAAgBzF,gBAAgB,sBAE1B0F,EAAajW,EAAeC,KA1Qb,mBA0QsCwK,KAAK2I,wBAE3D,IAAI3J,EAAI,EAAGA,EAAIwM,EAAW7S,OAAQqG,OACjCrC,OAAO8O,SAASD,EAAWxM,GAAGpH,aAAa,oBAAqB,MAAQoI,KAAK6J,cAAcnU,GAAU,CACvG8V,EAAWxM,GAAG7E,UAAU2Q,IAAIjD,IAC5B2D,EAAWxM,GAAGqG,aAAa,eAAgB,gBAOnDkE,wBACQ7T,EAAUsK,KAAKmI,gBAAkB5S,EAAeW,QAAQ4R,GAAsB9H,KAAKyD,cAEpF/N,eAICgW,EAAkB/O,OAAO8O,SAAS/V,EAAQkC,aAAa,oBAAqB,IAE9E8T,QACGjD,QAAQkD,gBAAkB3L,KAAKyI,QAAQkD,iBAAmB3L,KAAKyI,QAAQzB,cACvEyB,QAAQzB,SAAW0E,QAEnBjD,QAAQzB,SAAWhH,KAAKyI,QAAQkD,iBAAmB3L,KAAKyI,QAAQzB,SAIzEkC,OAAO0C,EAAkBlW,SACjBoU,EAAQ9J,KAAK6L,kBAAkBD,GAC/BtO,EAAgB/H,EAAeW,QAAQ4R,GAAsB9H,KAAKyD,UAClEqI,EAAqB9L,KAAK6J,cAAcvM,GACxCyO,EAAcrW,GAAWsK,KAAKgL,gBAAgBlB,EAAOxM,GAErD0O,EAAmBhM,KAAK6J,cAAckC,GACtCE,EAAYrL,QAAQZ,KAAKkI,WAEzB+C,EAASnB,IAAUvC,EACnB2E,EAAuBjB,EA5TR,sBADF,oBA8TbkB,EAAiBlB,EA5TH,qBACA,qBA4TdE,EAAqBnL,KAAKoM,kBAAkBtC,MAE9CiC,GAAeA,EAAY5R,UAAUC,SAASyN,qBAC3CQ,YAAa,MAIhBrI,KAAKqI,qBAIUrI,KAAKkL,mBAAmBa,EAAaZ,GACzCrJ,4BAIVxE,IAAkByO,cAKlB1D,YAAa,EAEd4D,QACG9E,aAGFmE,2BAA2BS,QAC3B5D,eAAiB4D,QAEhBM,EAAmB,KACvBhM,EAAamB,QAAQxB,KAAKyD,SAAUmE,GAAY,CAC9C9H,cAAeiM,EACf7B,UAAWiB,EACX/H,KAAM0I,EACNnC,GAAIqC,QAIJhM,KAAKyD,SAAStJ,UAAUC,SAvWP,SAuWmC,CACtD2R,EAAY5R,UAAU2Q,IAAIqB,GAE1BtR,EAAOkR,GAEPzO,EAAcnD,UAAU2Q,IAAIoB,GAC5BH,EAAY5R,UAAU2Q,IAAIoB,SAEpBI,EAAmB,KACvBP,EAAY5R,UAAUkJ,OAAO6I,EAAsBC,GACnDJ,EAAY5R,UAAU2Q,IAAIjD,IAE1BvK,EAAcnD,UAAUkJ,OAAOwE,GAAmBsE,EAAgBD,QAE7D7D,YAAa,EAElBlL,WAAWkP,EAAkB,SAG1BrI,eAAesI,EAAkBhP,GAAe,QAErDA,EAAcnD,UAAUkJ,OAAOwE,IAC/BkE,EAAY5R,UAAU2Q,IAAIjD,SAErBQ,YAAa,EAClBgE,IAGEJ,QACG5C,QAITwC,kBAAkB3B,SACX,CAACxC,EAAiBD,GAAgB3P,SAASoS,GAI5C9O,IACK8O,IAAczC,EAAiBD,EAAaD,EAG9C2C,IAAczC,EAAiBF,EAAaC,EAP1C0C,EAUXkC,kBAAkBtC,SACX,CAACvC,EAAYC,GAAY1P,SAASgS,GAInC1O,IACK0O,IAAUtC,EAAaC,EAAiBC,EAG1CoC,IAAUtC,EAAaE,EAAkBD,EAPvCqC,2BAYcpU,EAASoD,SAC1BgM,EAAOkD,GAASjD,oBAAoBrP,EAASoD,OAE/C2P,QAAEA,GAAY3D,EACI,iBAAXhM,IACT2P,EAAU,IACLA,KACA3P,UAIDyT,EAA2B,iBAAXzT,EAAsBA,EAAS2P,EAAQvB,SAEvC,iBAAXpO,EACTgM,EAAK6E,GAAG7Q,QACH,GAAsB,iBAAXyT,EAAqB,SACT,IAAjBzH,EAAKyH,SACR,IAAI3S,UAAW,oBAAmB2S,MAG1CzH,EAAKyH,UACI9D,EAAQzB,UAAYyB,EAAQ+D,OACrC1H,EAAKqC,QACLrC,EAAKuE,gCAIcvQ,UACdkH,KAAK6E,MAAK,WACfmD,GAASyE,kBAAkBzM,KAAMlH,iCAIVoG,SACnBjC,EAAS9E,EAAuB6H,UAEjC/C,IAAWA,EAAO9C,UAAUC,SAxcT,yBA4clBtB,EAAS,IACV6M,EAAYI,kBAAkB9I,MAC9B0I,EAAYI,kBAAkB/F,OAE7B0M,EAAa1M,KAAKpI,aAAa,oBAEjC8U,IACF5T,EAAOkO,UAAW,GAGpBgB,GAASyE,kBAAkBxP,EAAQnE,GAE/B4T,GACF1E,GAAS9D,YAAYjH,GAAQ0M,GAAG+C,GAGlCxN,EAAMwD,kBAUVrC,EAAaQ,GAAGlL,SAxec,6BAkBF,sCAsdyCqS,GAAS2E,qBAE9EtM,EAAaQ,GAAG5F,OA3ea,6BA2egB,WACrC2R,EAAYrX,EAAeC,KAxdR,iCA0dpB,IAAIwJ,EAAI,EAAGC,EAAM2N,EAAUjU,OAAQqG,EAAIC,EAAKD,IAC/CgJ,GAASyE,kBAAkBG,EAAU5N,GAAIgJ,GAAS9D,YAAY0I,EAAU5N,QAW5E1D,EAAmB0M,IC5iBnB,MAAMrM,GAAO,WAKPoL,GAAU,CACd3B,QAAQ,EACRyH,OAAQ,IAGJvF,GAAc,CAClBlC,OAAQ,UACRyH,OAAQ,oBASJC,GAAkB,OAClBC,GAAsB,WACtBC,GAAwB,aACxBC,GAAuB,YAEvBC,GAAQ,QAIRhI,GAAuB,8BAQ7B,MAAMiI,WAAiB5J,EACrBC,YAAY9N,EAASoD,SACbpD,QAED0X,kBAAmB,OACnB3E,QAAUzI,KAAK0I,WAAW5P,QAC1BuU,cAAgB9X,EAAeC,KACjC,GAAE0P,aAA+BlF,KAAKyD,SAAS6J,QAC7CpI,uBAAyClF,KAAKyD,SAAS6J,cAGtDC,EAAahY,EAAeC,KAAK0P,QAElC,IAAIlG,EAAI,EAAGC,EAAMsO,EAAW5U,OAAQqG,EAAIC,EAAKD,IAAK,OAC/CwO,EAAOD,EAAWvO,GAClBvJ,EAAWyC,EAAuBsV,GAClCC,EAAgBlY,EAAeC,KAAKC,GACvCY,QAAOqX,GAAaA,IAAc1N,KAAKyD,WAEzB,OAAbhO,GAAqBgY,EAAc9U,cAChCgV,UAAYlY,OACZ4X,cAAcvW,KAAK0W,SAIvBI,QAAU5N,KAAKyI,QAAQoE,OAAS7M,KAAK6N,aAAe,KAEpD7N,KAAKyI,QAAQoE,aACXiB,0BAA0B9N,KAAKyD,SAAUzD,KAAKqN,eAGjDrN,KAAKyI,QAAQrD,aACVA,qCAOA2B,4BAIApL,GAKTyJ,SACMpF,KAAKyD,SAAStJ,UAAUC,SAAS0S,SAC9BiB,YAEAC,OAITA,UACMhO,KAAKoN,kBAAoBpN,KAAKyD,SAAStJ,UAAUC,SAAS0S,eAI1DmB,EACAC,EAEAlO,KAAK4N,UACPK,EAAU1Y,EAAeC,KA1EN,qBA0E6BwK,KAAK4N,SAClDvX,QAAOmX,GAC6B,iBAAxBxN,KAAKyI,QAAQoE,OACfW,EAAK5V,aAAa,oBAAsBoI,KAAKyI,QAAQoE,OAGvDW,EAAKrT,UAAUC,SAAS2S,MAGZ,IAAnBkB,EAAQtV,SACVsV,EAAU,aAIRE,EAAY5Y,EAAeW,QAAQ8J,KAAK2N,cAC1CM,EAAS,OACLG,EAAiBH,EAAQzY,MAAKgY,GAAQW,IAAcX,OAC1DU,EAAcE,EAAiBjB,GAASjJ,YAAYkK,GAAkB,KAElEF,GAAeA,EAAYd,2BAKd/M,EAAamB,QAAQxB,KAAKyD,SAhH7B,oBAiHD3B,wBAIXmM,GACFA,EAAQ/U,SAAQmV,IACVF,IAAcE,GAChBlB,GAASmB,kBAAkBD,EAAY,QAGpCH,GACHxK,EAAKb,IAAIwL,EA1IF,cA0IwB,eAK/BE,EAAYvO,KAAKwO,qBAElB/K,SAAStJ,UAAUkJ,OAAO0J,SAC1BtJ,SAAStJ,UAAU2Q,IAAIkC,SAEvBvJ,SAASgL,MAAMF,GAAa,EAE7BvO,KAAKqN,cAAc1U,aAChB0U,cAAcnU,SAAQxD,IACzBA,EAAQyE,UAAUkJ,OAAO4J,IACzBvX,EAAQ2P,aAAa,iBAAiB,WAIrCqJ,kBAAiB,SAchBC,EAAc,SADSJ,EAAU,GAAG1U,cAAgB0U,EAAUjN,MAAM,UAGrE0C,gBAdY,UACVP,SAAStJ,UAAUkJ,OAAO2J,SAC1BvJ,SAAStJ,UAAU2Q,IAAIiC,GAAqBD,SAE5CrJ,SAASgL,MAAMF,GAAa,QAE5BG,kBAAiB,GAEtBrO,EAAamB,QAAQxB,KAAKyD,SAxJX,uBA8JazD,KAAKyD,UAAU,QACxCA,SAASgL,MAAMF,GAAc,GAAEvO,KAAKyD,SAASkL,OAGpDZ,UACM/N,KAAKoN,mBAAqBpN,KAAKyD,SAAStJ,UAAUC,SAAS0S,cAI5CzM,EAAamB,QAAQxB,KAAKyD,SAtK7B,oBAuKD3B,8BAITyM,EAAYvO,KAAKwO,qBAElB/K,SAASgL,MAAMF,GAAc,GAAEvO,KAAKyD,SAAS8C,wBAAwBgI,OAE1E1T,EAAOmF,KAAKyD,eAEPA,SAAStJ,UAAU2Q,IAAIkC,SACvBvJ,SAAStJ,UAAUkJ,OAAO0J,GAAqBD,UAE9C8B,EAAqB5O,KAAKqN,cAAc1U,UAC1CiW,EAAqB,MAClB,IAAI5P,EAAI,EAAGA,EAAI4P,EAAoB5P,IAAK,OACrCwC,EAAUxB,KAAKqN,cAAcrO,GAC7BwO,EAAOrV,EAAuBqJ,GAEhCgM,IAASA,EAAKrT,UAAUC,SAAS0S,MACnCtL,EAAQrH,UAAU2Q,IAAImC,IACtBzL,EAAQ6D,aAAa,iBAAiB,SAKvCqJ,kBAAiB,QASjBjL,SAASgL,MAAMF,GAAa,QAE5BvK,gBATY,UACV0K,kBAAiB,QACjBjL,SAAStJ,UAAUkJ,OAAO2J,SAC1BvJ,SAAStJ,UAAU2Q,IAAIiC,IAC5B1M,EAAamB,QAAQxB,KAAKyD,SAtMV,wBA2MYzD,KAAKyD,UAAU,GAG/CiL,iBAAiBG,QACVzB,iBAAmByB,EAK1BnG,WAAW5P,UACTA,EAAS,IACJiO,MACAjO,IAEEsM,OAASxE,QAAQ9H,EAAOsM,QAC/BxM,EAAgB+C,GAAM7C,EAAQwO,IACvBxO,EAGT0V,uBACSxO,KAAKyD,SAAStJ,UAAUC,SAAS8S,IAASA,GAtNtC,SAyNbW,iBACMhB,OAAEA,GAAW7M,KAAKyI,QAEtBoE,EAASnU,EAAWmU,SAEdpX,EAAY,GAAEyP,sBAAwC2H,aAE5DtX,EAAeC,KAAKC,EAAUoX,GAC3B3T,SAAQxD,UACDoZ,EAAW3W,EAAuBzC,QAEnCoY,0BACHgB,EACA,CAACpZ,OAIAmX,EAGTiB,0BAA0BpY,EAASqZ,OAC5BrZ,IAAYqZ,EAAapW,oBAIxBqW,EAAStZ,EAAQyE,UAAUC,SAAS0S,IAE1CiC,EAAa7V,SAAQsU,IACfwB,EACFxB,EAAKrT,UAAUkJ,OAAO4J,IAEtBO,EAAKrT,UAAU2Q,IAAImC,IAGrBO,EAAKnI,aAAa,gBAAiB2J,+BAMdtZ,EAASoD,OAC5BgM,EAAOqI,GAASjJ,YAAYxO,SAC1B+S,EAAU,IACX1B,MACApB,EAAYI,kBAAkBrQ,MACX,iBAAXoD,GAAuBA,EAASA,EAAS,QAGjDgM,GAAQ2D,EAAQrD,QAA4B,iBAAXtM,GAAuB,YAAYa,KAAKb,KAC5E2P,EAAQrD,QAAS,GAGdN,IACHA,EAAO,IAAIqI,GAASzX,EAAS+S,IAGT,iBAAX3P,EAAqB,SACF,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,6BAIcA,UACdkH,KAAK6E,MAAK,WACfsI,GAASmB,kBAAkBtO,KAAMlH,OAWvCuH,EAAaQ,GAAGlL,SA/Sc,6BA+SkBuP,IAAsB,SAAUhG,IAEjD,MAAzBA,EAAMjC,OAAO8N,SAAoB7L,EAAMa,gBAAmD,MAAjCb,EAAMa,eAAegL,UAChF7L,EAAMwD,uBAGFuM,EAActJ,EAAYI,kBAAkB/F,MAC5CvK,EAAWyC,EAAuB8H,MACfzK,EAAeC,KAAKC,GAE5ByD,SAAQxD,UACjBoP,EAAOqI,GAASjJ,YAAYxO,OAC9BoD,EACAgM,GAEmB,OAAjBA,EAAK8I,SAAkD,iBAAvBqB,EAAYpC,SAC9C/H,EAAK2D,QAAQoE,OAASoC,EAAYpC,OAClC/H,EAAK8I,QAAU9I,EAAK+I,cAGtB/U,EAAS,UAETA,EAASmW,EAGX9B,GAASmB,kBAAkB5Y,EAASoD,SAWxCwC,EAAmB6R,ICjYZ,IAAI3G,GAAM,MACN0I,GAAS,SACTC,GAAQ,QACRzI,GAAO,OACP0I,GAAO,OACPC,GAAiB,CAAC7I,GAAK0I,GAAQC,GAAOzI,IACtC2D,GAAQ,QACRK,GAAM,MACN4E,GAAkB,kBAClBC,GAAW,WACXC,GAAS,SACTC,GAAY,YACZC,GAAmCL,GAAeM,QAAO,SAAUC,EAAKC,UAC1ED,EAAI/Z,OAAO,CAACga,EAAY,IAAMxF,GAAOwF,EAAY,IAAMnF,OAC7D,IACQoF,GAA0B,GAAGja,OAAOwZ,GAAgB,CAACD,KAAOO,QAAO,SAAUC,EAAKC,UACpFD,EAAI/Z,OAAO,CAACga,EAAWA,EAAY,IAAMxF,GAAOwF,EAAY,IAAMnF,OACxE,IAEQqF,GAAa,aACbC,GAAO,OACPC,GAAY,YAEZC,GAAa,aACbC,GAAO,OACPC,GAAY,YAEZC,GAAc,cACdC,GAAQ,QACRC,GAAa,aACbC,GAAiB,CAACT,GAAYC,GAAMC,GAAWC,GAAYC,GAAMC,GAAWC,GAAaC,GAAOC,IC9B5F,SAASE,GAAY/a,UAC3BA,GAAWA,EAAQgb,UAAY,IAAIjX,cAAgB,KCD7C,SAASkX,GAAUC,MACpB,MAARA,SACK3V,UAGe,oBAApB2V,EAAKrX,WAAkC,KACrCsX,EAAgBD,EAAKC,qBAClBA,GAAgBA,EAAcC,aAAwB7V,cAGxD2V,ECRT,SAASrY,GAAUqY,UAEVA,aADUD,GAAUC,GAAM9a,SACI8a,aAAgB9a,QAGvD,SAASib,GAAcH,UAEdA,aADUD,GAAUC,GAAMI,aACIJ,aAAgBI,YAGvD,SAASC,GAAaL,SAEM,oBAAfjW,aAKJiW,aADUD,GAAUC,GAAMjW,YACIiW,aAAgBjW,mBCyDxC,CACbe,KAAM,cACNwV,SAAS,EACTC,MAAO,QACPtV,GA5EF,SAAqBuV,OACfC,EAAQD,EAAKC,MACjBrY,OAAOC,KAAKoY,EAAMC,UAAUpY,SAAQ,SAAUwC,OACxC+S,EAAQ4C,EAAME,OAAO7V,IAAS,GAC9BsK,EAAaqL,EAAMrL,WAAWtK,IAAS,GACvChG,EAAU2b,EAAMC,SAAS5V,GAExBqV,GAAcrb,IAAa+a,GAAY/a,KAO5CsD,OAAOwY,OAAO9b,EAAQ+Y,MAAOA,GAC7BzV,OAAOC,KAAK+M,GAAY9M,SAAQ,SAAUwC,OACpCrC,EAAQ2M,EAAWtK,IAET,IAAVrC,EACF3D,EAAQoQ,gBAAgBpK,GAExBhG,EAAQ2P,aAAa3J,GAAgB,IAAVrC,EAAiB,GAAKA,WAwDvDoY,OAlDF,SAAgBC,OACVL,EAAQK,EAAML,MACdM,EAAgB,CAClBnC,OAAQ,CACN5I,SAAUyK,EAAMO,QAAQC,SACxBnL,KAAM,IACNF,IAAK,IACLsL,OAAQ,KAEVC,MAAO,CACLnL,SAAU,YAEZ6I,UAAW,WAEbzW,OAAOwY,OAAOH,EAAMC,SAAS9B,OAAOf,MAAOkD,EAAcnC,QACzD6B,EAAME,OAASI,EAEXN,EAAMC,SAASS,OACjB/Y,OAAOwY,OAAOH,EAAMC,SAASS,MAAMtD,MAAOkD,EAAcI,OAGnD,WACL/Y,OAAOC,KAAKoY,EAAMC,UAAUpY,SAAQ,SAAUwC,OACxChG,EAAU2b,EAAMC,SAAS5V,GACzBsK,EAAaqL,EAAMrL,WAAWtK,IAAS,GAGvC+S,EAFkBzV,OAAOC,KAAKoY,EAAME,OAAOS,eAAetW,GAAQ2V,EAAME,OAAO7V,GAAQiW,EAAcjW,IAE7EiU,QAAO,SAAUlB,EAAOtV,UAClDsV,EAAMtV,GAAY,GACXsV,IACN,IAEEsC,GAAcrb,IAAa+a,GAAY/a,KAI5CsD,OAAOwY,OAAO9b,EAAQ+Y,MAAOA,GAC7BzV,OAAOC,KAAK+M,GAAY9M,SAAQ,SAAU+Y,GACxCvc,EAAQoQ,gBAAgBmM,YAa9BC,SAAU,CAAC,kBCjFE,SAASC,GAAiBtC,UAChCA,EAAU7X,MAAM,KAAK,GCFf,SAASuO,GAAsB7Q,OACxC4Q,EAAO5Q,EAAQ6Q,8BACZ,CACL6L,MAAO9L,EAAK8L,MACZC,OAAQ/L,EAAK+L,OACb7L,IAAKF,EAAKE,IACV2I,MAAO7I,EAAK6I,MACZD,OAAQ5I,EAAK4I,OACbxI,KAAMJ,EAAKI,KACX4L,EAAGhM,EAAKI,KACR6L,EAAGjM,EAAKE,KCPG,SAASgM,GAAc9c,OAChC+c,EAAalM,GAAsB7Q,GAGnC0c,EAAQ1c,EAAQgd,YAChBL,EAAS3c,EAAQoF,oBAEjBvD,KAAK0S,IAAIwI,EAAWL,MAAQA,IAAU,IACxCA,EAAQK,EAAWL,OAGjB7a,KAAK0S,IAAIwI,EAAWJ,OAASA,IAAW,IAC1CA,EAASI,EAAWJ,QAGf,CACLC,EAAG5c,EAAQoR,WACXyL,EAAG7c,EAAQmR,UACXuL,MAAOA,EACPC,OAAQA,GCrBG,SAASjY,GAASyS,EAAQvW,OACnCqc,EAAWrc,EAAMmE,aAAenE,EAAMmE,iBAEtCoS,EAAOzS,SAAS9D,UACX,EAEJ,GAAIqc,GAAY1B,GAAa0B,GAAW,KACrCzb,EAAOZ,IAER,IACGY,GAAQ2V,EAAO+F,WAAW1b,UACrB,EAITA,EAAOA,EAAKR,YAAcQ,EAAK2b,WACxB3b,UAIN,ECpBM,SAAS8C,GAAiBtE,UAChCib,GAAUjb,GAASsE,iBAAiBtE,GCD9B,SAASod,GAAepd,SAC9B,CAAC,QAAS,KAAM,MAAMgI,QAAQ+S,GAAY/a,KAAa,ECDjD,SAASqd,GAAmBrd,WAEhC6C,GAAU7C,GAAWA,EAAQmb,cACtCnb,EAAQC,WAAasF,OAAOtF,UAAUC,gBCDzB,SAASod,GAActd,SACP,SAAzB+a,GAAY/a,GACPA,EAMPA,EAAQud,cACRvd,EAAQgB,aACRua,GAAavb,GAAWA,EAAQmd,KAAO,OAEvCE,GAAmBrd,GCRvB,SAASwd,GAAoBxd,UACtBqb,GAAcrb,IACoB,UAAvCsE,GAAiBtE,GAASkR,SAInBlR,EAAQyd,aAHN,KAwCI,SAASC,GAAgB1d,WAClCuF,EAAS0V,GAAUjb,GACnByd,EAAeD,GAAoBxd,GAEhCyd,GAAgBL,GAAeK,IAA6D,WAA5CnZ,GAAiBmZ,GAAcvM,UACpFuM,EAAeD,GAAoBC,UAGjCA,IAA+C,SAA9B1C,GAAY0C,IAA0D,SAA9B1C,GAAY0C,IAAwE,WAA5CnZ,GAAiBmZ,GAAcvM,UAC3H3L,EAGFkY,GA5CT,SAA4Bzd,OACtB2d,GAAsE,IAA1DxK,UAAUyK,UAAU7Z,cAAciE,QAAQ,eACH,IAA5CmL,UAAUyK,UAAU5V,QAAQ,YAE3BqT,GAAcrb,IAII,UAFXsE,GAAiBtE,GAEnBkR,gBACN,aAIP2M,EAAcP,GAActd,GAEzBqb,GAAcwC,IAAgB,CAAC,OAAQ,QAAQ7V,QAAQ+S,GAAY8C,IAAgB,GAAG,KACvFC,EAAMxZ,GAAiBuZ,MAIL,SAAlBC,EAAIC,WAA4C,SAApBD,EAAIE,aAA0C,UAAhBF,EAAIG,UAAiF,IAA1D,CAAC,YAAa,eAAejW,QAAQ8V,EAAII,aAAsBP,GAAgC,WAAnBG,EAAII,YAA2BP,GAAaG,EAAInd,QAAyB,SAAfmd,EAAInd,cAC1Nkd,EAEPA,EAAcA,EAAY7c,kBAIvB,KAiBgBmd,CAAmBne,IAAYuF,EC9DzC,SAAS6Y,GAAyBjE,SACxC,CAAC,MAAO,UAAUnS,QAAQmS,IAAc,EAAI,IAAM,ICDpD,IAAIjS,GAAMrG,KAAKqG,IACXC,GAAMtG,KAAKsG,IACXkW,GAAQxc,KAAKwc,MCDT,SAASC,GAAOnW,EAAKxE,EAAOuE,UAClCqW,GAAQpW,EAAKqW,GAAQ7a,EAAOuE,ICDtB,SAASuW,GAAmBC,UAClCpb,OAAOwY,OAAO,GCDd,CACLhL,IAAK,EACL2I,MAAO,EACPD,OAAQ,EACRxI,KAAM,GDHuC0N,GEFlC,SAASC,GAAgBhb,EAAOJ,UACtCA,EAAK0W,QAAO,SAAU2E,EAAS/R,UACpC+R,EAAQ/R,GAAOlJ,EACRib,IACN,WCwFU,CACb5Y,KAAM,QACNwV,SAAS,EACTC,MAAO,OACPtV,GA9EF,SAAeuV,OACTmD,EAEAlD,EAAQD,EAAKC,MACb3V,EAAO0V,EAAK1V,KACZkW,EAAUR,EAAKQ,QACf4C,EAAenD,EAAMC,SAASS,MAC9B0C,EAAgBpD,EAAMqD,cAAcD,cACpCE,EAAgBxC,GAAiBd,EAAMxB,WACvC+E,EAAOd,GAAyBa,GAEhC1V,EADa,CAACyH,GAAMyI,IAAOzR,QAAQiX,IAAkB,EAClC,SAAW,WAE7BH,GAAiBC,OAIlBL,EAxBgB,SAAyBS,EAASxD,UAI/C8C,GAAsC,iBAH7CU,EAA6B,mBAAZA,EAAyBA,EAAQ7b,OAAOwY,OAAO,GAAIH,EAAMyD,MAAO,CAC/EjF,UAAWwB,EAAMxB,aACbgF,GACkDA,EAAUR,GAAgBQ,EAASxF,KAoBvE0F,CAAgBnD,EAAQiD,QAASxD,GACjD2D,EAAYxC,GAAcgC,GAC1BS,EAAmB,MAATL,EAAepO,GAAME,GAC/BwO,EAAmB,MAATN,EAAe1F,GAASC,GAClCgG,EAAU9D,EAAMyD,MAAMrF,UAAUxQ,GAAOoS,EAAMyD,MAAMrF,UAAUmF,GAAQH,EAAcG,GAAQvD,EAAMyD,MAAMtF,OAAOvQ,GAC9GmW,EAAYX,EAAcG,GAAQvD,EAAMyD,MAAMrF,UAAUmF,GACxDS,EAAoBjC,GAAgBoB,GACpCc,EAAaD,EAA6B,MAATT,EAAeS,EAAkBE,cAAgB,EAAIF,EAAkBG,aAAe,EAAI,EAC3HC,EAAoBN,EAAU,EAAIC,EAAY,EAG9CvX,EAAMuW,EAAca,GACpBrX,EAAM0X,EAAaN,EAAU/V,GAAOmV,EAAcc,GAClDQ,EAASJ,EAAa,EAAIN,EAAU/V,GAAO,EAAIwW,EAC/CpP,EAAS2N,GAAOnW,EAAK6X,EAAQ9X,GAE7B+X,EAAWf,EACfvD,EAAMqD,cAAchZ,KAAS6Y,EAAwB,IAA0BoB,GAAYtP,EAAQkO,EAAsBqB,aAAevP,EAASqP,EAAQnB,KA6CzJ9C,OA1CF,SAAgBC,OACVL,EAAQK,EAAML,MAEdwE,EADUnE,EAAME,QACWlc,QAC3B8e,OAAoC,IAArBqB,EAA8B,sBAAwBA,EAErD,MAAhBrB,IAKwB,iBAAjBA,IACTA,EAAenD,EAAMC,SAAS9B,OAAOrZ,cAAcqe,OAOxB,eAAzBsB,QAAQC,IAAIC,WACTjF,GAAcyD,IACjBvR,QAAQC,MAAM,CAAC,sEAAuE,sEAAuE,cAAc+S,KAAK,OAI/K7b,GAASiX,EAAMC,SAAS9B,OAAQgF,GAQrCnD,EAAMC,SAASS,MAAQyC,EAPQ,eAAzBsB,QAAQC,IAAIC,UACd/S,QAAQC,MAAM,CAAC,sEAAuE,YAAY+S,KAAK,QAgB3G/D,SAAU,CAAC,iBACXgE,iBAAkB,CAAC,oBC3FjBC,GAAa,CACf3P,IAAK,OACL2I,MAAO,OACPD,OAAQ,OACRxI,KAAM,QAgBD,SAAS0P,GAAY1E,OACtB2E,EAEA7G,EAASkC,EAAMlC,OACf8G,EAAa5E,EAAM4E,WACnBzG,EAAY6B,EAAM7B,UAClB0G,EAAU7E,EAAM6E,QAChB3P,EAAW8K,EAAM9K,SACjB4P,EAAkB9E,EAAM8E,gBACxBC,EAAW/E,EAAM+E,SACjBC,EAAehF,EAAMgF,aAErBC,GAAyB,IAAjBD,EAvBd,SAA2BtF,OACrBkB,EAAIlB,EAAKkB,EACTC,EAAInB,EAAKmB,EAETqE,EADM3b,OACI4b,kBAAoB,QAC3B,CACLvE,EAAGyB,GAAMA,GAAMzB,EAAIsE,GAAOA,IAAQ,EAClCrE,EAAGwB,GAAMA,GAAMxB,EAAIqE,GAAOA,IAAQ,GAgBAE,CAAkBP,GAAmC,mBAAjBG,EAA8BA,EAAaH,GAAWA,EAC1HQ,EAAUJ,EAAMrE,EAChBA,OAAgB,IAAZyE,EAAqB,EAAIA,EAC7BC,EAAUL,EAAMpE,EAChBA,OAAgB,IAAZyE,EAAqB,EAAIA,EAE7BC,EAAOV,EAAQvE,eAAe,KAC9BkF,EAAOX,EAAQvE,eAAe,KAC9BmF,EAAQzQ,GACR0Q,EAAQ5Q,GACR6Q,EAAMpc,UAENwb,EAAU,KACRtD,EAAeC,GAAgB5D,GAC/B8H,EAAa,eACbC,EAAY,cAEZpE,IAAiBxC,GAAUnB,IAGmB,WAA5CxV,GAFJmZ,EAAeJ,GAAmBvD,IAEC5I,WACjC0Q,EAAa,eACbC,EAAY,eAKhBpE,EAAeA,EAEXtD,IAAcrJ,KAChB4Q,EAAQlI,GAERqD,GAAKY,EAAamE,GAAchB,EAAWjE,OAC3CE,GAAKiE,EAAkB,GAAK,GAG1B3G,IAAcnJ,KAChByQ,EAAQhI,GAERmD,GAAKa,EAAaoE,GAAajB,EAAWlE,MAC1CE,GAAKkE,EAAkB,GAAK,OAS1BgB,EALFC,EAAeze,OAAOwY,OAAO,CAC/B5K,SAAUA,GACT6P,GAAYN,WAEXK,EAGKxd,OAAOwY,OAAO,GAAIiG,IAAeD,EAAiB,IAAmBJ,GAASF,EAAO,IAAM,GAAIM,EAAeL,GAASF,EAAO,IAAM,GAAIO,EAAe/D,WAAa4D,EAAIR,kBAAoB,GAAK,EAAI,aAAevE,EAAI,OAASC,EAAI,MAAQ,eAAiBD,EAAI,OAASC,EAAI,SAAUiF,IAG3Rxe,OAAOwY,OAAO,GAAIiG,IAAepB,EAAkB,IAAoBe,GAASF,EAAO3E,EAAI,KAAO,GAAI8D,EAAgBc,GAASF,EAAO3E,EAAI,KAAO,GAAI+D,EAAgB5C,UAAY,GAAI4C,WAsD/K,CACb3a,KAAM,gBACNwV,SAAS,EACTC,MAAO,cACPtV,GAvDF,SAAuB6b,OACjBrG,EAAQqG,EAAMrG,MACdO,EAAU8F,EAAM9F,QAChB+F,EAAwB/F,EAAQ4E,gBAChCA,OAA4C,IAA1BmB,GAA0CA,EAC5DC,EAAoBhG,EAAQ6E,SAC5BA,OAAiC,IAAtBmB,GAAsCA,EACjDC,EAAwBjG,EAAQ8E,aAChCA,OAAyC,IAA1BmB,GAA0CA,KAEhC,eAAzB/B,QAAQC,IAAIC,SAA2B,KACrC8B,EAAqB9d,GAAiBqX,EAAMC,SAAS9B,QAAQsI,oBAAsB,GAEnFrB,GAAY,CAAC,YAAa,MAAO,QAAS,SAAU,QAAQsB,MAAK,SAAU5e,UACtE2e,EAAmBpa,QAAQvE,IAAa,MAE/C8J,QAAQ+U,KAAK,CAAC,oEAAqE,iEAAkE,OAAQ,qEAAsE,kEAAmE,qEAAsE,2CAA4C,OAAQ,qEAAsE,uEAAuE/B,KAAK,UAIljBwB,EAAe,CACjB5H,UAAWsC,GAAiBd,EAAMxB,WAClCL,OAAQ6B,EAAMC,SAAS9B,OACvB8G,WAAYjF,EAAMyD,MAAMtF,OACxBgH,gBAAiBA,GAGsB,MAArCnF,EAAMqD,cAAcD,gBACtBpD,EAAME,OAAO/B,OAASxW,OAAOwY,OAAO,GAAIH,EAAME,OAAO/B,OAAQ4G,GAAYpd,OAAOwY,OAAO,GAAIiG,EAAc,CACvGlB,QAASlF,EAAMqD,cAAcD,cAC7B7N,SAAUyK,EAAMO,QAAQC,SACxB4E,SAAUA,EACVC,aAAcA,OAIe,MAA7BrF,EAAMqD,cAAc3C,QACtBV,EAAME,OAAOQ,MAAQ/Y,OAAOwY,OAAO,GAAIH,EAAME,OAAOQ,MAAOqE,GAAYpd,OAAOwY,OAAO,GAAIiG,EAAc,CACrGlB,QAASlF,EAAMqD,cAAc3C,MAC7BnL,SAAU,WACV6P,UAAU,EACVC,aAAcA,OAIlBrF,EAAMrL,WAAWwJ,OAASxW,OAAOwY,OAAO,GAAIH,EAAMrL,WAAWwJ,OAAQ,yBAC1C6B,EAAMxB,aAUjC/K,KAAM,ICvJJmT,GAAU,CACZA,SAAS,MAsCI,CACbvc,KAAM,iBACNwV,SAAS,EACTC,MAAO,QACPtV,GAAI,aACJ4V,OAxCF,SAAgBL,OACVC,EAAQD,EAAKC,MACbvO,EAAWsO,EAAKtO,SAChB8O,EAAUR,EAAKQ,QACfsG,EAAkBtG,EAAQuG,OAC1BA,OAA6B,IAApBD,GAAoCA,EAC7CE,EAAkBxG,EAAQyG,OAC1BA,OAA6B,IAApBD,GAAoCA,EAC7Cnd,EAAS0V,GAAUU,EAAMC,SAAS9B,QAClC8I,EAAgB,GAAGziB,OAAOwb,EAAMiH,cAAc7I,UAAW4B,EAAMiH,cAAc9I,eAE7E2I,GACFG,EAAcpf,SAAQ,SAAUqf,GAC9BA,EAAarc,iBAAiB,SAAU4G,EAAS0V,OAAQP,OAIzDI,GACFpd,EAAOiB,iBAAiB,SAAU4G,EAAS0V,OAAQP,IAG9C,WACDE,GACFG,EAAcpf,SAAQ,SAAUqf,GAC9BA,EAAarb,oBAAoB,SAAU4F,EAAS0V,OAAQP,OAI5DI,GACFpd,EAAOiC,oBAAoB,SAAU4F,EAAS0V,OAAQP,MAY1DnT,KAAM,IC/CJ2T,GAAO,CACT/R,KAAM,QACNyI,MAAO,OACPD,OAAQ,MACR1I,IAAK,UAEQ,SAASkS,GAAqB7I,UACpCA,EAAU1P,QAAQ,0BAA0B,SAAUwY,UACpDF,GAAKE,MCRhB,IAAIF,GAAO,CACTpO,MAAO,MACPK,IAAK,SAEQ,SAASkO,GAA8B/I,UAC7CA,EAAU1P,QAAQ,cAAc,SAAUwY,UACxCF,GAAKE,MCLD,SAASE,GAAgBjI,OAClCyG,EAAM1G,GAAUC,SAGb,CACLjK,WAHe0Q,EAAIyB,YAInBrS,UAHc4Q,EAAI0B,aCDP,SAASC,GAAoBtjB,UAQnC6Q,GAAsBwM,GAAmBrd,IAAUgR,KAAOmS,GAAgBnjB,GAASiR,WCV7E,SAASsS,GAAevjB,OAEjCwjB,EAAoBlf,GAAiBtE,GACrCyjB,EAAWD,EAAkBC,SAC7BC,EAAYF,EAAkBE,UAC9BC,EAAYH,EAAkBG,gBAE3B,6BAA6B1f,KAAKwf,EAAWE,EAAYD,GCJnD,SAASE,GAAgB1I,SAClC,CAAC,OAAQ,OAAQ,aAAalT,QAAQ+S,GAAYG,KAAU,EAEvDA,EAAKC,cAAc3V,KAGxB6V,GAAcH,IAASqI,GAAerI,GACjCA,EAGF0I,GAAgBtG,GAAcpC,ICHxB,SAAS2I,GAAkB7jB,EAAS2H,OAC7Cmc,OAES,IAATnc,IACFA,EAAO,QAGLkb,EAAee,GAAgB5jB,GAC/B+jB,EAASlB,KAAqE,OAAlDiB,EAAwB9jB,EAAQmb,oBAAyB,EAAS2I,EAAsBte,MACpHmc,EAAM1G,GAAU4H,GAChBtb,EAASwc,EAAS,CAACpC,GAAKxhB,OAAOwhB,EAAIqC,gBAAkB,GAAIT,GAAeV,GAAgBA,EAAe,IAAMA,EAC7GoB,EAActc,EAAKxH,OAAOoH,UACvBwc,EAASE,EAChBA,EAAY9jB,OAAO0jB,GAAkBvG,GAAc/V,KCxBtC,SAAS2c,GAAiBtT,UAChCtN,OAAOwY,OAAO,GAAIlL,EAAM,CAC7BI,KAAMJ,EAAKgM,EACX9L,IAAKF,EAAKiM,EACVpD,MAAO7I,EAAKgM,EAAIhM,EAAK8L,MACrBlD,OAAQ5I,EAAKiM,EAAIjM,EAAK+L,SCuB1B,SAASwH,GAA2BnkB,EAASokB,UACpCA,IAAmBvK,GAAWqK,GC1BxB,SAAyBlkB,OAClC2hB,EAAM1G,GAAUjb,GAChBqkB,EAAOhH,GAAmBrd,GAC1BgkB,EAAiBrC,EAAIqC,eACrBtH,EAAQ2H,EAAKvE,YACbnD,EAAS0H,EAAKxE,aACdjD,EAAI,EACJC,EAAI,SAMJmH,IACFtH,EAAQsH,EAAetH,MACvBC,EAASqH,EAAerH,OASnB,iCAAiC1Y,KAAKkP,UAAUyK,aACnDhB,EAAIoH,EAAe5S,WACnByL,EAAImH,EAAe7S,YAIhB,CACLuL,MAAOA,EACPC,OAAQA,EACRC,EAAGA,EAAI0G,GAAoBtjB,GAC3B6c,EAAGA,GDRiDyH,CAAgBtkB,IAAYqb,GAAc+I,GAdlG,SAAoCpkB,OAC9B4Q,EAAOC,GAAsB7Q,UACjC4Q,EAAKE,IAAMF,EAAKE,IAAM9Q,EAAQukB,UAC9B3T,EAAKI,KAAOJ,EAAKI,KAAOhR,EAAQwkB,WAChC5T,EAAK4I,OAAS5I,EAAKE,IAAM9Q,EAAQ6f,aACjCjP,EAAK6I,MAAQ7I,EAAKI,KAAOhR,EAAQ8f,YACjClP,EAAK8L,MAAQ1c,EAAQ8f,YACrBlP,EAAK+L,OAAS3c,EAAQ6f,aACtBjP,EAAKgM,EAAIhM,EAAKI,KACdJ,EAAKiM,EAAIjM,EAAKE,IACPF,EAI2G6T,CAA2BL,GAAkBF,GEtBlJ,SAAyBlkB,OAClC8jB,EAEAO,EAAOhH,GAAmBrd,GAC1B0kB,EAAYvB,GAAgBnjB,GAC5BwF,EAA0D,OAAlDse,EAAwB9jB,EAAQmb,oBAAyB,EAAS2I,EAAsBte,KAChGkX,EAAQxU,GAAImc,EAAKM,YAAaN,EAAKvE,YAAata,EAAOA,EAAKmf,YAAc,EAAGnf,EAAOA,EAAKsa,YAAc,GACvGnD,EAASzU,GAAImc,EAAKO,aAAcP,EAAKxE,aAAcra,EAAOA,EAAKof,aAAe,EAAGpf,EAAOA,EAAKqa,aAAe,GAC5GjD,GAAK8H,EAAUzT,WAAaqS,GAAoBtjB,GAChD6c,GAAK6H,EAAU3T,gBAE8B,QAA7CzM,GAAiBkB,GAAQ6e,GAAM7P,YACjCoI,GAAK1U,GAAImc,EAAKvE,YAAata,EAAOA,EAAKsa,YAAc,GAAKpD,GAGrD,CACLA,MAAOA,EACPC,OAAQA,EACRC,EAAGA,EACHC,EAAGA,GFG2KgI,CAAgBxH,GAAmBrd,KG7BtM,SAAS8kB,GAAa3K,UAC5BA,EAAU7X,MAAM,KAAK,GCGf,SAASyiB,GAAerJ,OAQjCmF,EAPA9G,EAAY2B,EAAK3B,UACjB/Z,EAAU0b,EAAK1b,QACfma,EAAYuB,EAAKvB,UACjB8E,EAAgB9E,EAAYsC,GAAiBtC,GAAa,KAC1D6K,EAAY7K,EAAY2K,GAAa3K,GAAa,KAClD8K,EAAUlL,EAAU6C,EAAI7C,EAAU2C,MAAQ,EAAI1c,EAAQ0c,MAAQ,EAC9DwI,EAAUnL,EAAU8C,EAAI9C,EAAU4C,OAAS,EAAI3c,EAAQ2c,OAAS,SAG5DsC,QACDnO,GACH+P,EAAU,CACRjE,EAAGqI,EACHpI,EAAG9C,EAAU8C,EAAI7c,EAAQ2c,mBAIxBnD,GACHqH,EAAU,CACRjE,EAAGqI,EACHpI,EAAG9C,EAAU8C,EAAI9C,EAAU4C,mBAI1BlD,GACHoH,EAAU,CACRjE,EAAG7C,EAAU6C,EAAI7C,EAAU2C,MAC3BG,EAAGqI,cAIFlU,GACH6P,EAAU,CACRjE,EAAG7C,EAAU6C,EAAI5c,EAAQ0c,MACzBG,EAAGqI,iBAKLrE,EAAU,CACRjE,EAAG7C,EAAU6C,EACbC,EAAG9C,EAAU8C,OAIfsI,EAAWlG,EAAgBb,GAAyBa,GAAiB,QAEzD,MAAZkG,EAAkB,KAChB5b,EAAmB,MAAb4b,EAAmB,SAAW,eAEhCH,QACDrQ,GACHkM,EAAQsE,GAAYtE,EAAQsE,IAAapL,EAAUxQ,GAAO,EAAIvJ,EAAQuJ,GAAO,cAG1EyL,GACH6L,EAAQsE,GAAYtE,EAAQsE,IAAapL,EAAUxQ,GAAO,EAAIvJ,EAAQuJ,GAAO,WAO5EsX,EC1DM,SAASuE,GAAezJ,EAAOO,QAC5B,IAAZA,IACFA,EAAU,QAGRmJ,EAAWnJ,EACXoJ,EAAqBD,EAASlL,UAC9BA,OAAmC,IAAvBmL,EAAgC3J,EAAMxB,UAAYmL,EAC9DC,EAAoBF,EAASG,SAC7BA,OAAiC,IAAtBD,EAA+B3L,GAAkB2L,EAC5DE,EAAwBJ,EAASK,aACjCA,OAAyC,IAA1BD,EAAmC5L,GAAW4L,EAC7DE,EAAwBN,EAASO,eACjCA,OAA2C,IAA1BD,EAAmC7L,GAAS6L,EAC7DE,EAAuBR,EAASS,YAChCA,OAAuC,IAAzBD,GAA0CA,EACxDE,EAAmBV,EAASlG,QAC5BA,OAA+B,IAArB4G,EAA8B,EAAIA,EAC5CrH,EAAgBD,GAAsC,iBAAZU,EAAuBA,EAAUR,GAAgBQ,EAASxF,KACpGqM,EAAaJ,IAAmB9L,GAASC,GAAYD,GACrDmM,EAAmBtK,EAAMC,SAAS7B,UAClC6G,EAAajF,EAAMyD,MAAMtF,OACzB9Z,EAAU2b,EAAMC,SAASkK,EAAcE,EAAaJ,GACpDM,ELmBS,SAAyBlmB,EAASwlB,EAAUE,OACrDS,EAAmC,oBAAbX,EAlB5B,SAA4BxlB,OACtB4Z,EAAkBiK,GAAkBvG,GAActd,IAElDomB,EADoB,CAAC,WAAY,SAASpe,QAAQ1D,GAAiBtE,GAASkR,WAAa,GACnDmK,GAAcrb,GAAW0d,GAAgB1d,GAAWA,SAEzF6C,GAAUujB,GAKRxM,EAAgBjZ,QAAO,SAAUyjB,UAC/BvhB,GAAUuhB,IAAmB1f,GAAS0f,EAAgBgC,IAAmD,SAAhCrL,GAAYqJ,MALrF,GAYkDiC,CAAmBrmB,GAAW,GAAGG,OAAOqlB,GAC/F5L,EAAkB,GAAGzZ,OAAOgmB,EAAqB,CAACT,IAClDY,EAAsB1M,EAAgB,GACtC2M,EAAe3M,EAAgBK,QAAO,SAAUuM,EAASpC,OACvDxT,EAAOuT,GAA2BnkB,EAASokB,UAC/CoC,EAAQ1V,IAAM5I,GAAI0I,EAAKE,IAAK0V,EAAQ1V,KACpC0V,EAAQ/M,MAAQtR,GAAIyI,EAAK6I,MAAO+M,EAAQ/M,OACxC+M,EAAQhN,OAASrR,GAAIyI,EAAK4I,OAAQgN,EAAQhN,QAC1CgN,EAAQxV,KAAO9I,GAAI0I,EAAKI,KAAMwV,EAAQxV,MAC/BwV,IACNrC,GAA2BnkB,EAASsmB,WACvCC,EAAa7J,MAAQ6J,EAAa9M,MAAQ8M,EAAavV,KACvDuV,EAAa5J,OAAS4J,EAAa/M,OAAS+M,EAAazV,IACzDyV,EAAa3J,EAAI2J,EAAavV,KAC9BuV,EAAa1J,EAAI0J,EAAazV,IACvByV,EKnCkBE,CAAgB5jB,GAAU7C,GAAWA,EAAUA,EAAQ0mB,gBAAkBrJ,GAAmB1B,EAAMC,SAAS9B,QAAS0L,EAAUE,GACnJiB,EAAsB9V,GAAsBoV,GAC5ClH,EAAgBgG,GAAe,CACjChL,UAAW4M,EACX3mB,QAAS4gB,EACTzE,SAAU,WACVhC,UAAWA,IAETyM,EAAmB1C,GAAiB5gB,OAAOwY,OAAO,GAAI8E,EAAY7B,IAClE8H,EAAoBjB,IAAmB9L,GAAS8M,EAAmBD,EAGnEG,EAAkB,CACpBhW,IAAKoV,EAAmBpV,IAAM+V,EAAkB/V,IAAM4N,EAAc5N,IACpE0I,OAAQqN,EAAkBrN,OAAS0M,EAAmB1M,OAASkF,EAAclF,OAC7ExI,KAAMkV,EAAmBlV,KAAO6V,EAAkB7V,KAAO0N,EAAc1N,KACvEyI,MAAOoN,EAAkBpN,MAAQyM,EAAmBzM,MAAQiF,EAAcjF,OAExEsN,EAAapL,EAAMqD,cAAcrO,UAEjCiV,IAAmB9L,IAAUiN,EAAY,KACvCpW,EAASoW,EAAW5M,GACxB7W,OAAOC,KAAKujB,GAAiBtjB,SAAQ,SAAUqJ,OACzCma,EAAW,CAACvN,GAAOD,IAAQxR,QAAQ6E,IAAQ,EAAI,GAAK,EACpDqS,EAAO,CAACpO,GAAK0I,IAAQxR,QAAQ6E,IAAQ,EAAI,IAAM,IACnDia,EAAgBja,IAAQ8D,EAAOuO,GAAQ8H,YAIpCF,EC1DM,SAASG,GAAqBtL,EAAOO,QAClC,IAAZA,IACFA,EAAU,QAGRmJ,EAAWnJ,EACX/B,EAAYkL,EAASlL,UACrBqL,EAAWH,EAASG,SACpBE,EAAeL,EAASK,aACxBvG,EAAUkG,EAASlG,QACnB+H,EAAiB7B,EAAS6B,eAC1BC,EAAwB9B,EAAS+B,sBACjCA,OAAkD,IAA1BD,EAAmCE,GAAgBF,EAC3EnC,EAAYF,GAAa3K,GACzBC,EAAa4K,EAAYkC,EAAiBlN,GAAsBA,GAAoBrZ,QAAO,SAAUwZ,UAChG2K,GAAa3K,KAAe6K,KAChCrL,GACD2N,EAAoBlN,EAAWzZ,QAAO,SAAUwZ,UAC3CiN,EAAsBpf,QAAQmS,IAAc,KAGpB,IAA7BmN,EAAkBrkB,SACpBqkB,EAAoBlN,EAES,eAAzBgG,QAAQC,IAAIC,UACd/S,QAAQC,MAAM,CAAC,+DAAgE,kEAAmE,6BAA8B,8DAA+D,6BAA6B+S,KAAK,WAKjRgH,EAAYD,EAAkBrN,QAAO,SAAUC,EAAKC,UACtDD,EAAIC,GAAaiL,GAAezJ,EAAO,CACrCxB,UAAWA,EACXqL,SAAUA,EACVE,aAAcA,EACdvG,QAASA,IACR1C,GAAiBtC,IACbD,IACN,WACI5W,OAAOC,KAAKgkB,GAAWC,MAAK,SAAUC,EAAGC,UACvCH,EAAUE,GAAKF,EAAUG,aC6FrB,CACb1hB,KAAM,OACNwV,SAAS,EACTC,MAAO,OACPtV,GA5HF,SAAcuV,OACRC,EAAQD,EAAKC,MACbO,EAAUR,EAAKQ,QACflW,EAAO0V,EAAK1V,SAEZ2V,EAAMqD,cAAchZ,GAAM2hB,eAI1BC,EAAoB1L,EAAQiJ,SAC5B0C,OAAsC,IAAtBD,GAAsCA,EACtDE,EAAmB5L,EAAQ6L,QAC3BC,OAAoC,IAArBF,GAAqCA,EACpDG,EAA8B/L,EAAQgM,mBACtC/I,EAAUjD,EAAQiD,QAClBqG,EAAWtJ,EAAQsJ,SACnBE,EAAexJ,EAAQwJ,aACvBI,EAAc5J,EAAQ4J,YACtBqC,EAAwBjM,EAAQgL,eAChCA,OAA2C,IAA1BiB,GAA0CA,EAC3Df,EAAwBlL,EAAQkL,sBAChCgB,EAAqBzM,EAAMO,QAAQ/B,UACnC8E,EAAgBxC,GAAiB2L,GAEjCF,EAAqBD,IADHhJ,IAAkBmJ,GACqClB,EAjC/E,SAAuC/M,MACjCsC,GAAiBtC,KAAeT,SAC3B,OAGL2O,EAAoBrF,GAAqB7I,SACtC,CAAC+I,GAA8B/I,GAAYkO,EAAmBnF,GAA8BmF,IA2BwCC,CAA8BF,GAA3E,CAACpF,GAAqBoF,KAChHhO,EAAa,CAACgO,GAAoBjoB,OAAO+nB,GAAoBjO,QAAO,SAAUC,EAAKC,UAC9ED,EAAI/Z,OAAOsc,GAAiBtC,KAAeT,GAAOuN,GAAqBtL,EAAO,CACnFxB,UAAWA,EACXqL,SAAUA,EACVE,aAAcA,EACdvG,QAASA,EACT+H,eAAgBA,EAChBE,sBAAuBA,IACpBjN,KACJ,IACCoO,EAAgB5M,EAAMyD,MAAMrF,UAC5B6G,EAAajF,EAAMyD,MAAMtF,OACzB0O,EAAY,IAAItb,IAChBub,GAAqB,EACrBC,EAAwBtO,EAAW,GAE9B9Q,EAAI,EAAGA,EAAI8Q,EAAWnX,OAAQqG,IAAK,KACtC6Q,EAAYC,EAAW9Q,GAEvBqf,EAAiBlM,GAAiBtC,GAElCyO,EAAmB9D,GAAa3K,KAAexF,GAC/CkU,EAAa,CAAC/X,GAAK0I,IAAQxR,QAAQ2gB,IAAmB,EACtDpf,EAAMsf,EAAa,QAAU,SAC7BpF,EAAW2B,GAAezJ,EAAO,CACnCxB,UAAWA,EACXqL,SAAUA,EACVE,aAAcA,EACdI,YAAaA,EACb3G,QAASA,IAEP2J,EAAoBD,EAAaD,EAAmBnP,GAAQzI,GAAO4X,EAAmBpP,GAAS1I,GAE/FyX,EAAchf,GAAOqX,EAAWrX,KAClCuf,EAAoB9F,GAAqB8F,QAGvCC,EAAmB/F,GAAqB8F,GACxCE,EAAS,MAETnB,GACFmB,EAAO5nB,KAAKqiB,EAASkF,IAAmB,GAGtCX,GACFgB,EAAO5nB,KAAKqiB,EAASqF,IAAsB,EAAGrF,EAASsF,IAAqB,GAG1EC,EAAOC,OAAM,SAAUC,UAClBA,KACL,CACFR,EAAwBvO,EACxBsO,GAAqB,QAIvBD,EAAUrb,IAAIgN,EAAW6O,MAGvBP,UAIEU,EAAQ,SAAeC,OACrBC,EAAmBjP,EAAWta,MAAK,SAAUqa,OAC3C6O,EAASR,EAAUzb,IAAIoN,MAEvB6O,SACKA,EAAOpd,MAAM,EAAGwd,GAAIH,OAAM,SAAUC,UAClCA,WAKTG,SACFX,EAAwBW,EACjB,SAIFD,EAnBYlC,EAAiB,EAAI,EAmBZkC,EAAK,GAGpB,UAFFD,EAAMC,GADmBA,KAOpCzN,EAAMxB,YAAcuO,IACtB/M,EAAMqD,cAAchZ,GAAM2hB,OAAQ,EAClChM,EAAMxB,UAAYuO,EAClB/M,EAAM2N,OAAQ,KAUhB9I,iBAAkB,CAAC,UACnBpR,KAAM,CACJuY,OAAO,IC7IX,SAAS4B,GAAe9F,EAAU7S,EAAM4Y,eACb,IAArBA,IACFA,EAAmB,CACjB5M,EAAG,EACHC,EAAG,IAIA,CACL/L,IAAK2S,EAAS3S,IAAMF,EAAK+L,OAAS6M,EAAiB3M,EACnDpD,MAAOgK,EAAShK,MAAQ7I,EAAK8L,MAAQ8M,EAAiB5M,EACtDpD,OAAQiK,EAASjK,OAAS5I,EAAK+L,OAAS6M,EAAiB3M,EACzD7L,KAAMyS,EAASzS,KAAOJ,EAAK8L,MAAQ8M,EAAiB5M,GAIxD,SAAS6M,GAAsBhG,SACtB,CAAC3S,GAAK2I,GAAOD,GAAQxI,IAAMqR,MAAK,SAAUqH,UACxCjG,EAASiG,IAAS,YAiCd,CACb1jB,KAAM,OACNwV,SAAS,EACTC,MAAO,OACP+E,iBAAkB,CAAC,mBACnBra,GAlCF,SAAcuV,OACRC,EAAQD,EAAKC,MACb3V,EAAO0V,EAAK1V,KACZuiB,EAAgB5M,EAAMyD,MAAMrF,UAC5B6G,EAAajF,EAAMyD,MAAMtF,OACzB0P,EAAmB7N,EAAMqD,cAAc2K,gBACvCC,EAAoBxE,GAAezJ,EAAO,CAC5CiK,eAAgB,cAEdiE,EAAoBzE,GAAezJ,EAAO,CAC5CmK,aAAa,IAEXgE,EAA2BP,GAAeK,EAAmBrB,GAC7DwB,EAAsBR,GAAeM,EAAmBjJ,EAAY4I,GACpEQ,EAAoBP,GAAsBK,GAC1CG,EAAmBR,GAAsBM,GAC7CpO,EAAMqD,cAAchZ,GAAQ,CAC1B8jB,yBAA0BA,EAC1BC,oBAAqBA,EACrBC,kBAAmBA,EACnBC,iBAAkBA,GAEpBtO,EAAMrL,WAAWwJ,OAASxW,OAAOwY,OAAO,GAAIH,EAAMrL,WAAWwJ,OAAQ,gCACnCkQ,wBACTC,SCHZ,CACbjkB,KAAM,SACNwV,SAAS,EACTC,MAAO,OACPe,SAAU,CAAC,iBACXrW,GA5BF,SAAgB6V,OACVL,EAAQK,EAAML,MACdO,EAAUF,EAAME,QAChBlW,EAAOgW,EAAMhW,KACbkkB,EAAkBhO,EAAQvL,OAC1BA,OAA6B,IAApBuZ,EAA6B,CAAC,EAAG,GAAKA,EAC/C9a,EAAOgL,GAAWH,QAAO,SAAUC,EAAKC,UAC1CD,EAAIC,GA5BD,SAAiCA,EAAWiF,EAAOzO,OACpDsO,EAAgBxC,GAAiBtC,GACjCgQ,EAAiB,CAACnZ,GAAMF,IAAK9I,QAAQiX,IAAkB,GAAK,EAAI,EAEhEvD,EAAyB,mBAAX/K,EAAwBA,EAAOrN,OAAOwY,OAAO,GAAIsD,EAAO,CACxEjF,UAAWA,KACPxJ,EACFyZ,EAAW1O,EAAK,GAChB2O,EAAW3O,EAAK,UAEpB0O,EAAWA,GAAY,EACvBC,GAAYA,GAAY,GAAKF,EACtB,CAACnZ,GAAMyI,IAAOzR,QAAQiX,IAAkB,EAAI,CACjDrC,EAAGyN,EACHxN,EAAGuN,GACD,CACFxN,EAAGwN,EACHvN,EAAGwN,GAWcC,CAAwBnQ,EAAWwB,EAAMyD,MAAOzO,GAC1DuJ,IACN,IACCqQ,EAAwBnb,EAAKuM,EAAMxB,WACnCyC,EAAI2N,EAAsB3N,EAC1BC,EAAI0N,EAAsB1N,EAEW,MAArClB,EAAMqD,cAAcD,gBACtBpD,EAAMqD,cAAcD,cAAcnC,GAAKA,EACvCjB,EAAMqD,cAAcD,cAAclC,GAAKA,GAGzClB,EAAMqD,cAAchZ,GAAQoJ,OCxBf,CACbpJ,KAAM,gBACNwV,SAAS,EACTC,MAAO,OACPtV,GApBF,SAAuBuV,OACjBC,EAAQD,EAAKC,MACb3V,EAAO0V,EAAK1V,KAKhB2V,EAAMqD,cAAchZ,GAAQ+e,GAAe,CACzChL,UAAW4B,EAAMyD,MAAMrF,UACvB/Z,QAAS2b,EAAMyD,MAAMtF,OACrBqC,SAAU,WACVhC,UAAWwB,EAAMxB,aAUnB/K,KAAM,OC6FO,CACbpJ,KAAM,kBACNwV,SAAS,EACTC,MAAO,OACPtV,GA5GF,SAAyBuV,OACnBC,EAAQD,EAAKC,MACbO,EAAUR,EAAKQ,QACflW,EAAO0V,EAAK1V,KACZ4hB,EAAoB1L,EAAQiJ,SAC5B0C,OAAsC,IAAtBD,GAAsCA,EACtDE,EAAmB5L,EAAQ6L,QAC3BC,OAAoC,IAArBF,GAAsCA,EACrDtC,EAAWtJ,EAAQsJ,SACnBE,EAAexJ,EAAQwJ,aACvBI,EAAc5J,EAAQ4J,YACtB3G,EAAUjD,EAAQiD,QAClBqL,EAAkBtO,EAAQuO,OAC1BA,OAA6B,IAApBD,GAAoCA,EAC7CE,EAAwBxO,EAAQyO,aAChCA,OAAyC,IAA1BD,EAAmC,EAAIA,EACtDjH,EAAW2B,GAAezJ,EAAO,CACnC6J,SAAUA,EACVE,aAAcA,EACdvG,QAASA,EACT2G,YAAaA,IAEX7G,EAAgBxC,GAAiBd,EAAMxB,WACvC6K,EAAYF,GAAanJ,EAAMxB,WAC/ByQ,GAAmB5F,EACnBG,EAAW/G,GAAyBa,GACpC8I,ECrCY,MDqCS5C,ECrCH,IAAM,IDsCxBpG,EAAgBpD,EAAMqD,cAAcD,cACpCwJ,EAAgB5M,EAAMyD,MAAMrF,UAC5B6G,EAAajF,EAAMyD,MAAMtF,OACzB+Q,EAA4C,mBAAjBF,EAA8BA,EAAarnB,OAAOwY,OAAO,GAAIH,EAAMyD,MAAO,CACvGjF,UAAWwB,EAAMxB,aACbwQ,EACFvb,EAAO,CACTwN,EAAG,EACHC,EAAG,MAGAkC,MAID8I,GAAiBG,EAAc,KAC7B8C,EAAwB,MAAb3F,EAAmBrU,GAAME,GACpC+Z,EAAuB,MAAb5F,EAAmB3L,GAASC,GACtClQ,EAAmB,MAAb4b,EAAmB,SAAW,QACpCxU,EAASoO,EAAcoG,GACvBhd,EAAM4W,EAAcoG,GAAY1B,EAASqH,GACzC5iB,EAAM6W,EAAcoG,GAAY1B,EAASsH,GACzCC,EAAWP,GAAU7J,EAAWrX,GAAO,EAAI,EAC3C0hB,EAASjG,IAAcrQ,GAAQ4T,EAAchf,GAAOqX,EAAWrX,GAC/D2hB,EAASlG,IAAcrQ,IAASiM,EAAWrX,IAAQgf,EAAchf,GAGjEuV,EAAenD,EAAMC,SAASS,MAC9BiD,EAAYmL,GAAU3L,EAAehC,GAAcgC,GAAgB,CACrEpC,MAAO,EACPC,OAAQ,GAENwO,EAAqBxP,EAAMqD,cAAc,oBAAsBrD,EAAMqD,cAAc,oBAAoBG,QxBtEtG,CACLrO,IAAK,EACL2I,MAAO,EACPD,OAAQ,EACRxI,KAAM,GwBmEFoa,EAAkBD,EAAmBL,GACrCO,EAAkBF,EAAmBJ,GAMrCO,EAAWhN,GAAO,EAAGiK,EAAchf,GAAM+V,EAAU/V,IACnDgiB,EAAYX,EAAkBrC,EAAchf,GAAO,EAAIyhB,EAAWM,EAAWF,EAAkBP,EAAoBI,EAASK,EAAWF,EAAkBP,EACzJW,EAAYZ,GAAmBrC,EAAchf,GAAO,EAAIyhB,EAAWM,EAAWD,EAAkBR,EAAoBK,EAASI,EAAWD,EAAkBR,EAC1JlL,EAAoBhE,EAAMC,SAASS,OAASqB,GAAgB/B,EAAMC,SAASS,OAC3EoP,EAAe9L,EAAiC,MAAbwF,EAAmBxF,EAAkB4E,WAAa,EAAI5E,EAAkB6E,YAAc,EAAI,EAC7HkH,EAAsB/P,EAAMqD,cAAcrO,OAASgL,EAAMqD,cAAcrO,OAAOgL,EAAMxB,WAAWgL,GAAY,EAC3GwG,EAAY5M,EAAcoG,GAAYoG,EAAYG,EAAsBD,EACxEG,EAAY7M,EAAcoG,GAAYqG,EAAYE,KAElD7D,EAAe,KACbgE,EAAkBvN,GAAOmM,EAASjM,GAAQrW,EAAKwjB,GAAaxjB,EAAKwI,EAAQ8Z,EAASlM,GAAQrW,EAAK0jB,GAAa1jB,GAChH6W,EAAcoG,GAAY0G,EAC1Bzc,EAAK+V,GAAY0G,EAAkBlb,KAGjCqX,EAAc,KACZ8D,EAAyB,MAAb3G,EAAmBrU,GAAME,GAErC+a,EAAwB,MAAb5G,EAAmB3L,GAASC,GAEvCuS,EAAUjN,EAAcgJ,GAExBkE,EAAOD,EAAUvI,EAASqI,GAE1BI,GAAOF,EAAUvI,EAASsI,GAE1BI,GAAmB7N,GAAOmM,EAASjM,GAAQyN,EAAMN,GAAaM,EAAMD,EAASvB,EAASlM,GAAQ2N,GAAMN,GAAaM,IAErHnN,EAAcgJ,GAAWoE,GACzB/c,EAAK2Y,GAAWoE,GAAmBH,GAIvCrQ,EAAMqD,cAAchZ,GAAQoJ,IAS5BoR,iBAAkB,CAAC,WEhHN,SAAS4L,GAAiBC,EAAyB5O,EAAc6O,QAC9D,IAAZA,IACFA,GAAU,OCPwBpR,ECJOlb,EFcvCE,EAAkBmd,GAAmBI,GACrC7M,EAAOC,GAAsBwb,GAC7BE,EAA0BlR,GAAcoC,GACxCgF,EAAS,CACXxR,WAAY,EACZF,UAAW,GAET8P,EAAU,CACZjE,EAAG,EACHC,EAAG,UAGD0P,IAA4BA,IAA4BD,MACxB,SAA9BvR,GAAY0C,IAChB8F,GAAerjB,MACbuiB,GCzBgCvH,EDyBTuC,KCxBdxC,GAAUC,IAAUG,GAAcH,GCJxC,CACLjK,YAFyCjR,EDQbkb,GCNRjK,WACpBF,UAAW/Q,EAAQ+Q,WDGZoS,GAAgBjI,ID0BnBG,GAAcoC,KAChBoD,EAAUhQ,GAAsB4M,IACxBb,GAAKa,EAAa+G,WAC1B3D,EAAQhE,GAAKY,EAAa8G,WACjBrkB,IACT2gB,EAAQjE,EAAI0G,GAAoBpjB,KAI7B,CACL0c,EAAGhM,EAAKI,KAAOyR,EAAOxR,WAAa4P,EAAQjE,EAC3CC,EAAGjM,EAAKE,IAAM2R,EAAO1R,UAAY8P,EAAQhE,EACzCH,MAAO9L,EAAK8L,MACZC,OAAQ/L,EAAK+L,QG3CjB,SAASvI,GAAMoY,OACTC,EAAM,IAAIvf,IACVwf,EAAU,IAAI5jB,IACd6jB,EAAS,YAKJnF,EAAKoF,GACZF,EAAQtX,IAAIwX,EAAS5mB,MACN,GAAG7F,OAAOysB,EAASpQ,UAAY,GAAIoQ,EAASpM,kBAAoB,IACtEhd,SAAQ,SAAUqpB,OACpBH,EAAQ1iB,IAAI6iB,GAAM,KACjBC,EAAcL,EAAI1f,IAAI8f,GAEtBC,GACFtF,EAAKsF,OAIXH,EAAOvrB,KAAKwrB,UAhBdJ,EAAUhpB,SAAQ,SAAUopB,GAC1BH,EAAItf,IAAIyf,EAAS5mB,KAAM4mB,MAkBzBJ,EAAUhpB,SAAQ,SAAUopB,GACrBF,EAAQ1iB,IAAI4iB,EAAS5mB,OAExBwhB,EAAKoF,MAGFD,EC/BM,SAASI,GAAOC,OACxB,IAAIC,EAAOC,UAAUjqB,OAAQ8I,EAAO,IAAI0B,MAAMwf,EAAO,EAAIA,EAAO,EAAI,GAAIE,EAAO,EAAGA,EAAOF,EAAME,IAClGphB,EAAKohB,EAAO,GAAKD,UAAUC,SAGtB,GAAGhtB,OAAO4L,GAAMkO,QAAO,SAAUmT,EAAGC,UAClCD,EAAE3iB,QAAQ,KAAM4iB,KACtBL,GCLL,IAAIM,GAAyB,gFAEzBC,GAAmB,CAAC,OAAQ,UAAW,QAAS,KAAM,SAAU,WAAY,WCU5EC,GAAwB,+GAExBC,GAAkB,CACpBtT,UAAW,SACXqS,UAAW,GACXrQ,SAAU,YAGZ,SAASuR,SACF,IAAIT,EAAOC,UAAUjqB,OAAQ8I,EAAO,IAAI0B,MAAMwf,GAAOE,EAAO,EAAGA,EAAOF,EAAME,IAC/EphB,EAAKohB,GAAQD,UAAUC,UAGjBphB,EAAKsW,MAAK,SAAUriB,WACjBA,GAAoD,mBAAlCA,EAAQ6Q,0BAIhC,SAAS8c,GAAgBC,QACL,IAArBA,IACFA,EAAmB,QAGjBC,EAAoBD,EACpBE,EAAwBD,EAAkBE,iBAC1CA,OAA6C,IAA1BD,EAAmC,GAAKA,EAC3DE,EAAyBH,EAAkBI,eAC3CA,OAA4C,IAA3BD,EAAoCP,GAAkBO,SACpE,SAAsBjU,EAAWD,EAAQoC,QAC9B,IAAZA,IACFA,EAAU+R,OC5CiB9nB,EAC3B+nB,ED8CEvS,EAAQ,CACVxB,UAAW,SACXgU,iBAAkB,GAClBjS,QAAS5Y,OAAOwY,OAAO,GAAI2R,GAAiBQ,GAC5CjP,cAAe,GACfpD,SAAU,CACR7B,UAAWA,EACXD,OAAQA,GAEVxJ,WAAY,GACZuL,OAAQ,IAENuS,EAAmB,GACnBC,GAAc,EACdjhB,EAAW,CACbuO,MAAOA,EACP2S,WAAY,SAAoBpS,GAC9BqS,IACA5S,EAAMO,QAAU5Y,OAAOwY,OAAO,GAAImS,EAAgBtS,EAAMO,QAASA,GACjEP,EAAMiH,cAAgB,CACpB7I,UAAWlX,GAAUkX,GAAa8J,GAAkB9J,GAAaA,EAAU2M,eAAiB7C,GAAkB9J,EAAU2M,gBAAkB,GAC1I5M,OAAQ+J,GAAkB/J,QEpEH0U,EAAKroB,EAChCsoB,ECD8BjC,EAC9BkC,EHuEMP,EHtCG,SAAwB3B,OAEjC2B,EAAmB/Z,GAAMoY,UAEtB1R,GAAeb,QAAO,SAAUC,EAAKuB,UACnCvB,EAAI/Z,OAAOguB,EAAiBxtB,QAAO,SAAUisB,UAC3CA,EAASnR,QAAUA,QAE3B,IG8B0BkT,EGxEKnC,EHwEsB,GAAGrsB,OAAO4tB,EAAkBpS,EAAMO,QAAQsQ,WGvE9FkC,EAASlC,EAAUvS,QAAO,SAAUyU,EAAQE,OAC1CC,EAAWH,EAAOE,EAAQ5oB,aAC9B0oB,EAAOE,EAAQ5oB,MAAQ6oB,EAAWvrB,OAAOwY,OAAO,GAAI+S,EAAUD,EAAS,CACrE1S,QAAS5Y,OAAOwY,OAAO,GAAI+S,EAAS3S,QAAS0S,EAAQ1S,SACrD9M,KAAM9L,OAAOwY,OAAO,GAAI+S,EAASzf,KAAMwf,EAAQxf,QAC5Cwf,EACEF,IACN,IAEIprB,OAAOC,KAAKmrB,GAAQjC,KAAI,SAAU5f,UAChC6hB,EAAO7hB,WH+DV8O,EAAMwS,iBAAmBA,EAAiBxtB,QAAO,SAAUmuB,UAClDA,EAAEtT,WAIkB,eAAzB4E,QAAQC,IAAIC,SAA2B,ED1EpC,SAA2BkM,GACxCA,EAAUhpB,SAAQ,SAAUopB,GAC1BtpB,OAAOC,KAAKqpB,GAAUppB,SAAQ,SAAUqJ,UAC9BA,OACD,OAC0B,iBAAlB+f,EAAS5mB,MAClBuH,QAAQC,MAAMuf,GAAOO,GAAwByB,OAAOnC,EAAS5mB,MAAO,SAAU,WAAY,IAAO+oB,OAAOnC,EAAS5mB,MAAQ,gBAKxH,UAC6B,kBAArB4mB,EAASpR,SAClBjO,QAAQC,MAAMuf,GAAOO,GAAwBV,EAAS5mB,KAAM,YAAa,YAAa,IAAO+oB,OAAOnC,EAASpR,SAAW,UAGvH,QACCV,GAAe9S,QAAQ4kB,EAASnR,OAAS,GAC3ClO,QAAQC,MAAMuf,GAAOO,GAAwBV,EAAS5mB,KAAM,UAAW,UAAY8U,GAAeyF,KAAK,MAAO,IAAOwO,OAAOnC,EAASnR,OAAS,gBAK7I,KACwB,mBAAhBmR,EAASzmB,IAClBoH,QAAQC,MAAMuf,GAAOO,GAAwBV,EAAS5mB,KAAM,OAAQ,aAAc,IAAO+oB,OAAOnC,EAASzmB,IAAM,gBAK9G,SAC4B,mBAApBymB,EAAS7Q,QAClBxO,QAAQC,MAAMuf,GAAOO,GAAwBV,EAAS5mB,KAAM,WAAY,aAAc,IAAO+oB,OAAOnC,EAASzmB,IAAM,gBAKlH,WACEsH,MAAMuhB,QAAQpC,EAASpQ,WAC1BjP,QAAQC,MAAMuf,GAAOO,GAAwBV,EAAS5mB,KAAM,aAAc,UAAW,IAAO+oB,OAAOnC,EAASpQ,UAAY,gBAKvH,mBACE/O,MAAMuhB,QAAQpC,EAASpM,mBAC1BjT,QAAQC,MAAMuf,GAAOO,GAAwBV,EAAS5mB,KAAM,qBAAsB,UAAW,IAAO+oB,OAAOnC,EAASpM,kBAAoB,gBAKvI,cACA,qBAIHjT,QAAQC,MAAM,2DAA8Dof,EAAS5mB,KAAO,oCAAuCunB,GAAiBd,KAAI,SAAUwC,SACzJ,IAAOA,EAAI,OACjB1O,KAAK,MAAQ,UAAa1T,EAAM,mBAGvC+f,EAASpQ,UAAYoQ,EAASpQ,SAAShZ,SAAQ,SAAU0rB,GAGjD,MAFF1C,EAAU1sB,MAAK,SAAUqvB,UACpBA,EAAInpB,OAASkpB,MAEpB3hB,QAAQC,MAAMuf,GAnEO,0EAmE0BgC,OAAOnC,EAAS5mB,MAAOkpB,EAAaA,cCcnFE,EEpFuBZ,EFgFE,GAAGruB,OAAOguB,EAAkBxS,EAAMO,QAAQsQ,WEhFvCrmB,EFgFmD,SAAUuV,UAC5EA,EAAK1V,MEhFtByoB,EAAc,IAAI3lB,IACf0lB,EAAI7tB,QAAO,SAAU0uB,OACtBC,EAAanpB,EAAGkpB,OAEfZ,EAAYzkB,IAAIslB,UACnBb,EAAYrZ,IAAIka,IACT,OF+EC7S,GAAiBd,EAAMO,QAAQ/B,aAAeT,KAC7BiC,EAAMwS,iBAAiBruB,MAAK,SAAUkc,SAEvC,SADLA,EAAMhW,SAKjBuH,QAAQC,MAAM,CAAC,2DAA4D,gCAAgC+S,KAAK,WAIhHiD,EAAoBlf,GAAiBwV,GAQrC,CAPY0J,EAAkB+L,UAChB/L,EAAkBgM,YACjBhM,EAAkBiM,aACpBjM,EAAkBkM,YAIoBrN,MAAK,SAAUjG,UAC7DlV,WAAWkV,OAElB7O,QAAQ+U,KAAK,CAAC,8DAA+D,4DAA6D,6DAA8D,2DAA4D,cAAc/B,KAAK,aAoH7R5E,EAAMwS,iBAAiB3qB,SAAQ,SAAUyd,OACnCjb,EAAOib,EAAMjb,KACb2pB,EAAgB1O,EAAM/E,QACtBA,OAA4B,IAAlByT,EAA2B,GAAKA,EAC1C5T,EAASkF,EAAMlF,UAEG,mBAAXA,EAAuB,KAC5B6T,EAAY7T,EAAO,CACrBJ,MAAOA,EACP3V,KAAMA,EACNoH,SAAUA,EACV8O,QAASA,IAKXkS,EAAiBhtB,KAAKwuB,GAFT,kBA7HRxiB,EAAS0V,UAOlB+M,YAAa,eACPxB,OAIAyB,EAAkBnU,EAAMC,SACxB7B,EAAY+V,EAAgB/V,UAC5BD,EAASgW,EAAgBhW,UAGxB4T,GAAiB3T,EAAWD,IASjC6B,EAAMyD,MAAQ,CACZrF,UAAWqS,GAAiBrS,EAAW2D,GAAgB5D,GAAoC,UAA3B6B,EAAMO,QAAQC,UAC9ErC,OAAQgD,GAAchD,IAOxB6B,EAAM2N,OAAQ,EACd3N,EAAMxB,UAAYwB,EAAMO,QAAQ/B,UAKhCwB,EAAMwS,iBAAiB3qB,SAAQ,SAAUopB,UAChCjR,EAAMqD,cAAc4N,EAAS5mB,MAAQ1C,OAAOwY,OAAO,GAAI8Q,EAASxd,iBAErE2gB,EAAkB,EAEbhoB,EAAQ,EAAGA,EAAQ4T,EAAMwS,iBAAiBlrB,OAAQ8E,IAAS,IACrC,eAAzBqY,QAAQC,IAAIC,WACdyP,GAAmB,GAEG,IAAK,CACzBxiB,QAAQC,MArJI,2IA0JI,IAAhBmO,EAAM2N,WAMN0G,EAAwBrU,EAAMwS,iBAAiBpmB,GAC/C5B,EAAK6pB,EAAsB7pB,GAC3B8pB,EAAyBD,EAAsB9T,QAC/CmJ,OAAsC,IAA3B4K,EAAoC,GAAKA,EACpDjqB,EAAOgqB,EAAsBhqB,KAEf,mBAAPG,IACTwV,EAAQxV,EAAG,CACTwV,MAAOA,EACPO,QAASmJ,EACTrf,KAAMA,EACNoH,SAAUA,KACNuO,QAjBNA,EAAM2N,OAAQ,EACdvhB,GAAS,OAxCkB,eAAzBqY,QAAQC,IAAIC,UACd/S,QAAQC,MAAMggB,MA6DpB1K,QCjM2B3c,EDiMV,kBACR,IAAI+pB,SAAQ,SAAUC,GAC3B/iB,EAASyiB,cACTM,EAAQxU,OClMT,kBACAuS,IACHA,EAAU,IAAIgC,SAAQ,SAAUC,GAC9BD,QAAQC,UAAUC,MAAK,WACrBlC,OAAUmC,EACVF,EAAQhqB,YAKP+nB,ID2LLoC,QAAS,WACP/B,IACAF,GAAc,QAIbX,GAAiB3T,EAAWD,SACF,eAAzBsG,QAAQC,IAAIC,UACd/S,QAAQC,MAAMggB,IAGTpgB,WAmCAmhB,IACPH,EAAiB5qB,SAAQ,SAAU2C,UAC1BA,OAETioB,EAAmB,UApCrBhhB,EAASkhB,WAAWpS,GAASkU,MAAK,SAAUzU,IACrC0S,GAAenS,EAAQqU,eAC1BrU,EAAQqU,cAAc5U,MAqCnBvO,GAGJ,IAAIojB,GAA4B7C,KIzPnC6C,GAA4B7C,GAAgB,CAC9CI,iBAFqB,CAAC0C,GAAgB1R,GAAe2R,GAAeC,MCMlEH,GAA4B7C,GAAgB,CAC9CI,iBAFqB,CAAC0C,GAAgB1R,GAAe2R,GAAeC,GAAahgB,GAAQigB,GAAMjH,GAAiBtN,GAAOhE,oiBCsBzH,MAAMpS,GAAO,WAKP4qB,GAAa,SACbC,GAAY,QAEZC,GAAe,UACfC,GAAiB,YAGjBC,GAAiB,IAAIjtB,OAAQ,4BAO7BktB,GAAwB,6BACxBC,GAA0B,+BAG1B/Z,GAAkB,OAMlB5H,GAAuB,8BACvB4hB,GAAgB,iBAIhBC,GAAgB3rB,IAAU,UAAY,YACtC4rB,GAAmB5rB,IAAU,YAAc,UAC3C6rB,GAAmB7rB,IAAU,aAAe,eAC5C8rB,GAAsB9rB,IAAU,eAAiB,aACjD+rB,GAAkB/rB,IAAU,aAAe,cAC3CgsB,GAAiBhsB,IAAU,cAAgB,aAE3C2L,GAAU,CACdV,OAAQ,CAAC,EAAG,GACZ6U,SAAU,kBACVzL,UAAW,SACX4X,QAAS,UACTC,aAAc,KACdC,WAAW,GAGPjgB,GAAc,CAClBjB,OAAQ,0BACR6U,SAAU,mBACVzL,UAAW,0BACX4X,QAAS,SACTC,aAAc,yBACdC,UAAW,oBASb,MAAMC,WAAiBjkB,EACrBC,YAAY9N,EAASoD,SACbpD,QAED+xB,QAAU,UACVhf,QAAUzI,KAAK0I,WAAW5P,QAC1B4uB,MAAQ1nB,KAAK2nB,uBACbC,UAAY5nB,KAAK6nB,qBAEjB5e,iDAMElC,mCAIAO,4BAIA3L,GAKTyJ,SACMlL,EAAW8F,KAAKyD,YAIHzD,KAAKyD,SAAStJ,UAAUC,SAAS0S,SAG3CiB,YAIFC,QAGPA,UACM9T,EAAW8F,KAAKyD,WAAazD,KAAK0nB,MAAMvtB,UAAUC,SAAS0S,iBAIzDD,EAAS2a,GAASM,qBAAqB9nB,KAAKyD,UAC5C3D,EAAgB,CACpBA,cAAeE,KAAKyD,cAGJpD,EAAamB,QAAQxB,KAAKyD,SAtG5B,mBAsGkD3D,GAEpDgC,qBAKV9B,KAAK4nB,UACPjiB,EAAYC,iBAAiB5F,KAAK0nB,MAAO,SAAU,YAC9C,SACiB,IAAXK,SACH,IAAInuB,UAAU,oEAGlB+hB,EAAmB3b,KAAKyD,SAEG,WAA3BzD,KAAKyI,QAAQgH,UACfkM,EAAmB9O,EACVtU,EAAUyH,KAAKyI,QAAQgH,WAChCkM,EAAmBjjB,EAAWsH,KAAKyI,QAAQgH,WACA,iBAA3BzP,KAAKyI,QAAQgH,YAC7BkM,EAAmB3b,KAAKyI,QAAQgH,iBAG5B6X,EAAetnB,KAAKgoB,mBACpBC,EAAkBX,EAAapF,UAAU1sB,MAAK8sB,GAA8B,gBAAlBA,EAAS5mB,OAA+C,IAArB4mB,EAASpR,eAEvGuW,QAAUM,GAAoBpM,EAAkB3b,KAAK0nB,MAAOJ,GAE7DW,GACFtiB,EAAYC,iBAAiB5F,KAAK0nB,MAAO,SAAU,UAQnD,iBAAkB/xB,SAASC,kBAC5BiX,EAAOlI,QA9Hc,mBA+HnB9O,UAAUF,SAASuF,KAAK9E,UACxB8C,SAAQsU,GAAQnN,EAAaQ,GAAG2M,EAAM,YAAa5S,UAGnD6I,SAASykB,aACTzkB,SAAS4B,aAAa,iBAAiB,QAEvCqiB,MAAMvtB,UAAUiL,OAAO0H,SACvBrJ,SAAStJ,UAAUiL,OAAO0H,IAC/BzM,EAAamB,QAAQxB,KAAKyD,SAtJT,oBAsJgC3D,IAGnDiO,UACM7T,EAAW8F,KAAKyD,YAAczD,KAAK0nB,MAAMvtB,UAAUC,SAAS0S,iBAI1DhN,EAAgB,CACpBA,cAAeE,KAAKyD,eAGjB0kB,cAAcroB,GAGrB8D,UACM5D,KAAKynB,cACFA,QAAQzB,gBAGTpiB,UAGR4U,cACOoP,UAAY5nB,KAAK6nB,gBAClB7nB,KAAKynB,cACFA,QAAQjP,SAMjBvP,qBACE5I,EAAaQ,GAAGb,KAAKyD,SAtLJ,qBAsL2BvE,IAC1CA,EAAMwD,sBACD0C,YAIT+iB,cAAcroB,GACMO,EAAamB,QAAQxB,KAAKyD,SAjM5B,mBAiMkD3D,GACpDgC,mBAMV,iBAAkBnM,SAASC,oBAC1BC,UAAUF,SAASuF,KAAK9E,UACxB8C,SAAQsU,GAAQnN,EAAaC,IAAIkN,EAAM,YAAa5S,KAGrDoF,KAAKynB,cACFA,QAAQzB,eAGV0B,MAAMvtB,UAAUkJ,OAAOyJ,SACvBrJ,SAAStJ,UAAUkJ,OAAOyJ,SAC1BrJ,SAAS4B,aAAa,gBAAiB,SAC5CM,EAAYE,oBAAoB7F,KAAK0nB,MAAO,UAC5CrnB,EAAamB,QAAQxB,KAAKyD,SApNR,qBAoNgC3D,IAGpD4I,WAAW5P,MACTA,EAAS,IACJkH,KAAKwD,YAAYuD,WACjBpB,EAAYI,kBAAkB/F,KAAKyD,aACnC3K,GAGLF,EAAgB+C,GAAM7C,EAAQkH,KAAKwD,YAAY8D,aAEf,iBAArBxO,EAAO2W,YAA2BlX,EAAUO,EAAO2W,YACV,mBAA3C3W,EAAO2W,UAAUlJ,4BAGlB,IAAI3M,UAAW,GAAE+B,GAAK9B,sHAGvBf,EAGT6uB,yBACSpyB,EAAe2B,KAAK8I,KAAKyD,SAAUqjB,IAAe,GAG3DsB,sBACQC,EAAiBroB,KAAKyD,SAAS/M,cAEjC2xB,EAAeluB,UAAUC,SAvON,kBAwOd+sB,MAGLkB,EAAeluB,UAAUC,SA1OJ,oBA2OhBgtB,SAIHkB,EAAkF,QAA1EtuB,iBAAiBgG,KAAK0nB,OAAOztB,iBAAiB,iBAAiBhC,cAEzEowB,EAAeluB,UAAUC,SAnPP,UAoPbkuB,EAAQtB,GAAmBD,GAG7BuB,EAAQpB,GAAsBD,GAGvCY,uBAC4D,OAAnD7nB,KAAKyD,SAASkB,QAAS,WAGhC4jB,mBACQliB,OAAEA,GAAWrG,KAAKyI,cAEF,iBAAXpC,EACFA,EAAOrO,MAAM,KAAKmqB,KAAI5c,GAAO5I,OAAO8O,SAASlG,EAAK,MAGrC,mBAAXc,EACFmiB,GAAcniB,EAAOmiB,EAAYxoB,KAAKyD,UAGxC4C,EAGT2hB,yBACQS,EAAwB,CAC5B5Y,UAAW7P,KAAKooB,gBAChBlG,UAAW,CAAC,CACVxmB,KAAM,kBACNkW,QAAS,CACPsJ,SAAUlb,KAAKyI,QAAQyS,WAG3B,CACExf,KAAM,SACNkW,QAAS,CACPvL,OAAQrG,KAAKuoB,uBAMU,WAAzBvoB,KAAKyI,QAAQ4e,UACfoB,EAAsBvG,UAAY,CAAC,CACjCxmB,KAAM,cACNwV,SAAS,KAIN,IACFuX,KACsC,mBAA9BzoB,KAAKyI,QAAQ6e,aAA8BtnB,KAAKyI,QAAQ6e,aAAamB,GAAyBzoB,KAAKyI,QAAQ6e,cAI1HoB,iBAAgBnmB,IAAEA,EAAFtF,OAAOA,UACf0rB,EAAQpzB,EAAeC,KApSF,8DAoS+BwK,KAAK0nB,OAAOrxB,OAAOyD,GAExE6uB,EAAMhwB,QAMXyE,EAAqBurB,EAAO1rB,EAAQsF,IAAQmkB,IAAiBiC,EAAM7wB,SAASmF,IAASirB,iCAK9DxyB,EAASoD,SAC1BgM,EAAO0iB,GAASziB,oBAAoBrP,EAASoD,MAE7B,iBAAXA,EAAqB,SACF,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,6BAIcA,UACdkH,KAAK6E,MAAK,WACf2iB,GAASoB,kBAAkB5oB,KAAMlH,wBAInBoG,MACZA,IA1VmB,IA0VTA,EAAMwG,QAAiD,UAAfxG,EAAMqB,MA7VhD,QA6VoErB,EAAMqD,kBAIhFsmB,EAAUtzB,EAAeC,KAAK0P,QAE/B,IAAIlG,EAAI,EAAGC,EAAM4pB,EAAQlwB,OAAQqG,EAAIC,EAAKD,IAAK,OAC5C8pB,EAAUtB,GAAStjB,YAAY2kB,EAAQ7pB,QACxC8pB,IAAyC,IAA9BA,EAAQrgB,QAAQ8e,uBAI3BuB,EAAQrlB,SAAStJ,UAAUC,SAAS0S,mBAInChN,EAAgB,CACpBA,cAAegpB,EAAQrlB,aAGrBvE,EAAO,OACH6pB,EAAe7pB,EAAM6pB,eACrBC,EAAeD,EAAajxB,SAASgxB,EAAQpB,UAEjDqB,EAAajxB,SAASgxB,EAAQrlB,WACC,WAA9BqlB,EAAQrgB,QAAQ8e,YAA2ByB,GACb,YAA9BF,EAAQrgB,QAAQ8e,WAA2ByB,cAM1CF,EAAQpB,MAAMttB,SAAS8E,EAAMjC,UAA4B,UAAfiC,EAAMqB,MA7X5C,QA6XgErB,EAAMqD,KAAoB,qCAAqC5I,KAAKuF,EAAMjC,OAAO8N,mBAItI,UAAf7L,EAAMqB,OACRT,EAAcmpB,WAAa/pB,GAI/B4pB,EAAQX,cAAcroB,gCAIEpK,UACnByC,EAAuBzC,IAAYA,EAAQgB,wCAGvBwI,MAQvB,kBAAkBvF,KAAKuF,EAAMjC,OAAO8N,SACtC7L,EAAMqD,MAAQikB,IAActnB,EAAMqD,MAAQgkB,KACxCrnB,EAAMqD,MAAQmkB,IAAkBxnB,EAAMqD,MAAQkkB,IAC9CvnB,EAAMjC,OAAO0H,QAAQmiB,MACtBH,GAAehtB,KAAKuF,EAAMqD,kBAIvB2mB,EAAWlpB,KAAK7F,UAAUC,SAAS0S,QAEpCoc,GAAYhqB,EAAMqD,MAAQgkB,aAI/BrnB,EAAMwD,iBACNxD,EAAMiqB,kBAEFjvB,EAAW8F,mBAITopB,EAAkB,IAAMppB,KAAKzJ,QAAQ2O,IAAwBlF,KAAOzK,EAAewB,KAAKiJ,KAAMkF,IAAsB,UAEtHhG,EAAMqD,MAAQgkB,IAChB6C,IAAkBlB,aAClBV,GAAS6B,cAIPnqB,EAAMqD,MAAQkkB,IAAgBvnB,EAAMqD,MAAQmkB,IACzCwC,GACHE,IAAkBE,aAGpB9B,GAAStjB,YAAYklB,KAAmBV,gBAAgBxpB,SAIrDgqB,GAAYhqB,EAAMqD,MAAQikB,IAC7BgB,GAAS6B,eAWfhpB,EAAaQ,GAAGlL,SAAUkxB,GAAwB3hB,GAAsBsiB,GAAS+B,uBACjFlpB,EAAaQ,GAAGlL,SAAUkxB,GAAwBC,GAAeU,GAAS+B,uBAC1ElpB,EAAaQ,GAAGlL,SAAUixB,GAAsBY,GAAS6B,YACzDhpB,EAAaQ,GAAGlL,SA7bc,6BA6bkB6xB,GAAS6B,YACzDhpB,EAAaQ,GAAGlL,SAAUixB,GAAsB1hB,IAAsB,SAAUhG,GAC9EA,EAAMwD,iBACN8kB,GAASoB,kBAAkB5oB,SAU7B1E,EAAmBksB,ICpfnB,MAAMgC,GAAyB,oDACzBC,GAA0B,cAEhC,MAAMC,GACJlmB,mBACOC,SAAW9N,SAASuF,KAG3ByuB,iBAEQC,EAAgBj0B,SAASC,gBAAgB4f,mBACxCje,KAAK0S,IAAIhP,OAAO4uB,WAAaD,GAGtC7b,aACQqE,EAAQpS,KAAK2pB,gBACdG,wBAEAC,sBAAsB/pB,KAAKyD,SAAU,gBAAgBumB,GAAmBA,EAAkB5X,SAE1F2X,sBAAsBP,GAAwB,gBAAgBQ,GAAmBA,EAAkB5X,SACnG2X,sBAAsBN,GAAyB,eAAeO,GAAmBA,EAAkB5X,IAG1G0X,wBACOG,sBAAsBjqB,KAAKyD,SAAU,iBACrCA,SAASgL,MAAM0K,SAAW,SAGjC4Q,sBAAsBt0B,EAAUy0B,EAAW1uB,SACnC2uB,EAAiBnqB,KAAK2pB,gBAWvBS,2BAA2B30B,GAVHC,OACvBA,IAAYsK,KAAKyD,UAAYxI,OAAO4uB,WAAan0B,EAAQ8f,YAAc2U,cAItEF,sBAAsBv0B,EAASw0B,SAC9BF,EAAkB/uB,OAAOjB,iBAAiBtE,GAASw0B,GACzDx0B,EAAQ+Y,MAAMyb,GAAc,GAAE1uB,EAASmB,OAAOC,WAAWotB,WAM7DhL,aACOqL,wBAAwBrqB,KAAKyD,SAAU,iBACvC4mB,wBAAwBrqB,KAAKyD,SAAU,qBACvC4mB,wBAAwBb,GAAwB,qBAChDa,wBAAwBZ,GAAyB,eAGxDQ,sBAAsBv0B,EAASw0B,SACvBI,EAAc50B,EAAQ+Y,MAAMyb,GAC9BI,GACF3kB,EAAYC,iBAAiBlQ,EAASw0B,EAAWI,GAIrDD,wBAAwB50B,EAAUy0B,QAW3BE,2BAA2B30B,GAVHC,UACrB2D,EAAQsM,EAAYS,iBAAiB1Q,EAASw0B,QAC/B,IAAV7wB,EACT3D,EAAQ+Y,MAAM8b,eAAeL,IAE7BvkB,EAAYE,oBAAoBnQ,EAASw0B,GACzCx0B,EAAQ+Y,MAAMyb,GAAa7wB,MAOjC+wB,2BAA2B30B,EAAU+0B,GAC/BjyB,EAAU9C,GACZ+0B,EAAS/0B,GAETF,EAAeC,KAAKC,EAAUuK,KAAKyD,UAAUvK,QAAQsxB,GAIzDC,uBACSzqB,KAAK2pB,WAAa,GClF7B,MAAM5iB,GAAU,CACdjN,WAAW,EACXmK,YAAY,EACZK,YAAa,OACbomB,cAAe,MAGXpjB,GAAc,CAClBxN,UAAW,UACXmK,WAAY,UACZK,YAAa,mBACbomB,cAAe,mBAKX5d,GAAkB,OAElB6d,GAAmB,wBAEzB,MAAMC,GACJpnB,YAAY1K,QACL2P,QAAUzI,KAAK0I,WAAW5P,QAC1B+xB,aAAc,OACdpnB,SAAW,KAGlBuK,KAAKxS,GACEwE,KAAKyI,QAAQ3O,gBAKbgxB,UAED9qB,KAAKyI,QAAQxE,YACfpJ,EAAOmF,KAAK+qB,oBAGTA,cAAc5wB,UAAU2Q,IAAIgC,SAE5Bke,mBAAkB,KACrB7uB,EAAQX,OAbRW,EAAQX,GAiBZuS,KAAKvS,GACEwE,KAAKyI,QAAQ3O,gBAKbixB,cAAc5wB,UAAUkJ,OAAOyJ,SAE/Bke,mBAAkB,UAChBpnB,UACLzH,EAAQX,OARRW,EAAQX,GAcZuvB,kBACO/qB,KAAKyD,SAAU,OACZwnB,EAAWt1B,SAASu1B,cAAc,OACxCD,EAASE,UAnDa,iBAoDlBnrB,KAAKyI,QAAQxE,YACfgnB,EAAS9wB,UAAU2Q,IApDH,aAuDbrH,SAAWwnB,SAGXjrB,KAAKyD,SAGdiF,WAAW5P,UACTA,EAAS,IACJiO,MACmB,iBAAXjO,EAAsBA,EAAS,KAIrCwL,YAAc5L,EAAWI,EAAOwL,aACvC1L,EAvES,WAuEaE,EAAQwO,IACvBxO,EAGTgyB,UACM9qB,KAAK6qB,mBAIJpiB,QAAQnE,YAAY8mB,YAAYprB,KAAK+qB,eAE1C1qB,EAAaQ,GAAGb,KAAK+qB,cAAeJ,IAAiB,KACnDxuB,EAAQ6D,KAAKyI,QAAQiiB,uBAGlBG,aAAc,GAGrBjnB,UACO5D,KAAK6qB,cAIVxqB,EAAaC,IAAIN,KAAKyD,SAAUknB,SAE3BlnB,SAASJ,cACTwnB,aAAc,GAGrBG,kBAAkBxvB,GAChBY,EAAuBZ,EAAUwE,KAAK+qB,cAAe/qB,KAAKyI,QAAQxE,aChGtE,MAAMtI,GAAO,QAIP4qB,GAAa,SAEbxf,GAAU,CACdkkB,UAAU,EACVhkB,UAAU,EACVihB,OAAO,GAGH5gB,GAAc,CAClB2jB,SAAU,mBACVhkB,SAAU,UACVihB,MAAO,WAKHmD,GAAgB,kBAChBC,GAAc,gBAEdC,GAAiB,mBACjBC,GAAgB,kBAChBC,GAAuB,yBACvBC,GAAyB,2BAEzBC,GAA2B,6BAG3BC,GAAkB,aAElB9e,GAAkB,OAClB+e,GAAoB,eAa1B,MAAMC,WAAcvoB,EAClBC,YAAY9N,EAASoD,SACbpD,QAED+S,QAAUzI,KAAK0I,WAAW5P,QAC1BizB,QAAUx2B,EAAeW,QAhBV,gBAgBmC8J,KAAKyD,eACvDuoB,UAAYhsB,KAAKisB,2BACjBC,UAAW,OACXC,sBAAuB,OACvB/e,kBAAmB,OACnBgf,WAAa,IAAI1C,+BAMf3iB,4BAIApL,GAKTyJ,OAAOtF,UACEE,KAAKksB,SAAWlsB,KAAK+N,OAAS/N,KAAKgO,KAAKlO,GAGjDkO,KAAKlO,GACCE,KAAKksB,UAAYlsB,KAAKoN,kBAIR/M,EAAamB,QAAQxB,KAAKyD,SAAU6nB,GAAY,CAChExrB,cAAAA,IAGYgC,wBAIToqB,UAAW,EAEZlsB,KAAKqsB,qBACFjf,kBAAmB,QAGrBgf,WAAWre,OAEhBpY,SAASuF,KAAKf,UAAU2Q,IAAI8gB,SAEvBU,qBAEAC,uBACAC,kBAELnsB,EAAaQ,GAAGb,KAAKyD,SAAUgoB,GAjEL,6BAiEiDvsB,GAASc,KAAK+N,KAAK7O,KAE9FmB,EAAaQ,GAAGb,KAAK+rB,QAASJ,IAAyB,KACrDtrB,EAAaS,IAAId,KAAKyD,SAhFG,4BAgF8BvE,IACjDA,EAAMjC,SAAW+C,KAAKyD,gBACnB0oB,sBAAuB,cAK7BM,eAAc,IAAMzsB,KAAK0sB,aAAa5sB,MAG7CiO,KAAK7O,MACCA,GAAS,CAAC,IAAK,QAAQpH,SAASoH,EAAMjC,OAAO8N,UAC/C7L,EAAMwD,kBAGH1C,KAAKksB,UAAYlsB,KAAKoN,2BAIT/M,EAAamB,QAAQxB,KAAKyD,SA5G5B,iBA8GF3B,6BAIToqB,UAAW,QACVjoB,EAAajE,KAAKqsB,cAEpBpoB,SACGmJ,kBAAmB,QAGrBmf,uBACAC,kBAELnsB,EAAaC,IAAI3K,SAAU41B,SAEtB9nB,SAAStJ,UAAUkJ,OAAOyJ,IAE/BzM,EAAaC,IAAIN,KAAKyD,SAAUgoB,IAChCprB,EAAaC,IAAIN,KAAK+rB,QAASJ,SAE1B3nB,gBAAe,IAAMhE,KAAK2sB,cAAc3sB,KAAKyD,SAAUQ,GAG9DL,WACG3I,OAAQ+E,KAAK+rB,SACX7yB,SAAQ0zB,GAAevsB,EAAaC,IAAIssB,EAxJ5B,oBA0JVZ,UAAUpoB,gBACTA,UAONvD,EAAaC,IAAI3K,SAAU41B,IAG7BsB,oBACOP,gBAKPL,6BACS,IAAIrB,GAAS,CAClB9wB,UAAW8G,QAAQZ,KAAKyI,QAAQwiB,UAChChnB,WAAYjE,KAAKqsB,gBAIrB3jB,WAAW5P,UACTA,EAAS,IACJiO,MACApB,EAAYI,kBAAkB/F,KAAKyD,aAChB,iBAAX3K,EAAsBA,EAAS,IAE5CF,EAAgB+C,GAAM7C,EAAQwO,IACvBxO,EAGT4zB,aAAa5sB,SACLmE,EAAajE,KAAKqsB,cAClBS,EAAYv3B,EAAeW,QA3JT,cA2JsC8J,KAAK+rB,SAE9D/rB,KAAKyD,SAAS/M,YAAcsJ,KAAKyD,SAAS/M,WAAWC,WAAaC,KAAKC,cAE1ElB,SAASuF,KAAKkwB,YAAYprB,KAAKyD,eAG5BA,SAASgL,MAAM4Y,QAAU,aACzB5jB,SAASqC,gBAAgB,oBACzBrC,SAAS4B,aAAa,cAAc,QACpC5B,SAAS4B,aAAa,OAAQ,eAC9B5B,SAASgD,UAAY,EAEtBqmB,IACFA,EAAUrmB,UAAY,GAGpBxC,GACFpJ,EAAOmF,KAAKyD,eAGTA,SAAStJ,UAAU2Q,IAAIgC,IAExB9M,KAAKyI,QAAQyf,YACV6E,qBAcF/oB,gBAXsB,KACrBhE,KAAKyI,QAAQyf,YACVzkB,SAASykB,aAGX9a,kBAAmB,EACxB/M,EAAamB,QAAQxB,KAAKyD,SA3MX,iBA2MkC,CAC/C3D,cAAAA,MAIoCE,KAAK+rB,QAAS9nB,GAGxD8oB,gBACE1sB,EAAaC,IAAI3K,SAAU41B,IAC3BlrB,EAAaQ,GAAGlL,SAAU41B,IAAersB,IACnCvJ,WAAauJ,EAAMjC,QACnB+C,KAAKyD,WAAavE,EAAMjC,QACvB+C,KAAKyD,SAASrJ,SAAS8E,EAAMjC,cAC3BwG,SAASykB,WAKpBqE,kBACMvsB,KAAKksB,SACP7rB,EAAaQ,GAAGb,KAAKyD,SAAUioB,IAAuBxsB,IAChDc,KAAKyI,QAAQxB,UAAY/H,EAAMqD,MAAQgkB,IACzCrnB,EAAMwD,sBACDqL,QACK/N,KAAKyI,QAAQxB,UAAY/H,EAAMqD,MAAQgkB,SAC5CyG,gCAIT3sB,EAAaC,IAAIN,KAAKyD,SAAUioB,IAIpCc,kBACMxsB,KAAKksB,SACP7rB,EAAaQ,GAAG5F,OAAQuwB,IAAc,IAAMxrB,KAAKssB,kBAEjDjsB,EAAaC,IAAIrF,OAAQuwB,IAI7BmB,kBACOlpB,SAASgL,MAAM4Y,QAAU,YACzB5jB,SAAS4B,aAAa,eAAe,QACrC5B,SAASqC,gBAAgB,mBACzBrC,SAASqC,gBAAgB,aACzBsH,kBAAmB,OACnB4e,UAAUje,MAAK,KAClBpY,SAASuF,KAAKf,UAAUkJ,OAAOuoB,SAC1BqB,yBACAb,WAAWpN,QAChB3e,EAAamB,QAAQxB,KAAKyD,SAAU4nB,OAIxCoB,cAAcjxB,GACZ6E,EAAaQ,GAAGb,KAAKyD,SAAUgoB,IAAqBvsB,IAC9Cc,KAAKmsB,0BACFA,sBAAuB,EAI1BjtB,EAAMjC,SAAWiC,EAAMguB,iBAIG,IAA1BltB,KAAKyI,QAAQwiB,cACVld,OAC8B,WAA1B/N,KAAKyI,QAAQwiB,eACjB+B,sCAIJhB,UAAUhe,KAAKxS,GAGtB6wB,qBACSrsB,KAAKyD,SAAStJ,UAAUC,SA/QX,QAkRtB4yB,gCACoB3sB,EAAamB,QAAQxB,KAAKyD,SAhSlB,0BAiSZ3B,8BAIR3H,UAAEA,EAAFmgB,aAAaA,EAAb7L,MAA2BA,GAAUzO,KAAKyD,SAC1C0pB,EAAqB7S,EAAe3kB,SAASC,gBAAgB2f,cAG7D4X,GAA0C,WAApB1e,EAAM4K,WAA2Blf,EAAUC,SAASyxB,MAI3EsB,IACH1e,EAAM4K,UAAY,UAGpBlf,EAAU2Q,IAAI+gB,SACT7nB,gBAAe,KAClB7J,EAAUkJ,OAAOwoB,IACZsB,QACEnpB,gBAAe,KAClByK,EAAM4K,UAAY,KACjBrZ,KAAK+rB,WAET/rB,KAAK+rB,cAEHtoB,SAASykB,SAOhBoE,sBACQa,EAAqBntB,KAAKyD,SAAS6W,aAAe3kB,SAASC,gBAAgB2f,aAC3E4U,EAAiBnqB,KAAKosB,WAAWzC,WACjCyD,EAAoBjD,EAAiB,IAErCiD,GAAqBD,IAAuB/xB,KAAagyB,IAAsBD,GAAsB/xB,YACpGqI,SAASgL,MAAM4e,YAAe,GAAElD,QAGlCiD,IAAsBD,IAAuB/xB,MAAcgyB,GAAqBD,GAAsB/xB,YACpGqI,SAASgL,MAAM6e,aAAgB,GAAEnD,OAI1C8C,yBACOxpB,SAASgL,MAAM4e,YAAc,QAC7B5pB,SAASgL,MAAM6e,aAAe,0BAKdx0B,EAAQgH,UACtBE,KAAK6E,MAAK,iBACTC,EAAOgnB,GAAM/mB,oBAAoB/E,KAAMlH,MAEvB,iBAAXA,WAIiB,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,GAAQgH,QAWnBO,EAAaQ,GAAGlL,SApWc,0BASD,4BA2VyC,SAAUuJ,SACxEjC,EAAS9E,EAAuB6H,MAElC,CAAC,IAAK,QAAQlI,SAASkI,KAAK+K,UAC9B7L,EAAMwD,iBAGRrC,EAAaS,IAAI7D,EAAQquB,IAAYiC,IAC/BA,EAAUzrB,kBAKdzB,EAAaS,IAAI7D,EAAQouB,IAAc,KACjCvxB,EAAUkG,YACPkoB,cAKE4D,GAAM/mB,oBAAoB9H,GAElCmI,OAAOpF,SAUd1E,EAAmBwwB,IClanB,MAAMnwB,GAAO,YAOPoL,GAAU,CACdkkB,UAAU,EACVhkB,UAAU,EACVkR,QAAQ,GAGJ7Q,GAAc,CAClB2jB,SAAU,UACVhkB,SAAU,UACVkR,OAAQ,WAGJrL,GAAkB,OAClB0gB,GAAgB,kBAKhBnC,GAAgB,sBAChBE,GAAiB,uBAcvB,MAAMkC,WAAkBlqB,EACtBC,YAAY9N,EAASoD,SACbpD,QAED+S,QAAUzI,KAAK0I,WAAW5P,QAC1BozB,UAAW,OACXF,UAAYhsB,KAAKisB,2BACjBhjB,8CAMEtN,+BAIAoL,GAKT3B,OAAOtF,UACEE,KAAKksB,SAAWlsB,KAAK+N,OAAS/N,KAAKgO,KAAKlO,GAGjDkO,KAAKlO,GACCE,KAAKksB,UAIS7rB,EAAamB,QAAQxB,KAAKyD,SAjD5B,oBAiDkD,CAAE3D,cAAAA,IAEtDgC,wBAIToqB,UAAW,OACXzoB,SAASgL,MAAMif,WAAa,eAE5B1B,UAAUhe,OAEVhO,KAAKyI,QAAQ0P,cACZuR,IAAkB3b,YACjB4f,uBAAuB3tB,KAAKyD,gBAG9BA,SAASqC,gBAAgB,oBACzBrC,SAAS4B,aAAa,cAAc,QACpC5B,SAAS4B,aAAa,OAAQ,eAC9B5B,SAAStJ,UAAU2Q,IAAIgC,SAMvB9I,gBAJoB,KACvB3D,EAAamB,QAAQxB,KAAKyD,SAtEX,qBAsEkC,CAAE3D,cAAAA,MAGfE,KAAKyD,UAAU,IAGvDsK,OACO/N,KAAKksB,WAIQ7rB,EAAamB,QAAQxB,KAAKyD,SAhF5B,qBAkFF3B,mBAIdzB,EAAaC,IAAI3K,SAAU41B,SACtB9nB,SAASmqB,YACT1B,UAAW,OACXzoB,SAAStJ,UAAUkJ,OAAOyJ,SAC1Bkf,UAAUje,YAeV/J,gBAboB,UAClBP,SAAS4B,aAAa,eAAe,QACrC5B,SAASqC,gBAAgB,mBACzBrC,SAASqC,gBAAgB,aACzBrC,SAASgL,MAAMif,WAAa,SAE5B1tB,KAAKyI,QAAQ0P,aACZuR,IAAkB1K,QAGxB3e,EAAamB,QAAQxB,KAAKyD,SAAU4nB,MAGArrB,KAAKyD,UAAU,KAGvDG,eACOooB,UAAUpoB,gBACTA,UACNvD,EAAaC,IAAI3K,SAAU41B,IAK7B7iB,WAAW5P,UACTA,EAAS,IACJiO,MACApB,EAAYI,kBAAkB/F,KAAKyD,aAChB,iBAAX3K,EAAsBA,EAAS,IAE5CF,EAAgB+C,GAAM7C,EAAQwO,IACvBxO,EAGTmzB,6BACS,IAAIrB,GAAS,CAClB9wB,UAAWkG,KAAKyI,QAAQwiB,SACxBhnB,YAAY,EACZK,YAAatE,KAAKyD,SAAS/M,WAC3Bg0B,cAAe,IAAM1qB,KAAK+N,SAI9B4f,uBAAuBj4B,GACrB2K,EAAaC,IAAI3K,SAAU41B,IAC3BlrB,EAAaQ,GAAGlL,SAAU41B,IAAersB,IACnCvJ,WAAauJ,EAAMjC,QACrBvH,IAAYwJ,EAAMjC,QACjBvH,EAAQ0E,SAAS8E,EAAMjC,SACxBvH,EAAQwyB,WAGZxyB,EAAQwyB,QAGVjf,qBACE5I,EAAaQ,GAAGb,KAAKyD,SAhJI,6BAGC,iCA6IiD,IAAMzD,KAAK+N,SAEtF1N,EAAaQ,GAAGb,KAAKyD,SAjJM,gCAiJ2BvE,IAChDc,KAAKyI,QAAQxB,UA1KJ,WA0KgB/H,EAAMqD,UAC5BwL,iCAOYjV,UACdkH,KAAK6E,MAAK,iBACTC,EAAO2oB,GAAU1oB,oBAAoB/E,KAAMlH,MAE3B,iBAAXA,WAIUitB,IAAjBjhB,EAAKhM,IAAyBA,EAAOf,WAAW,MAAmB,gBAAXe,QACpD,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,GAAQkH,WAWnBK,EAAaQ,GAAGlL,SAnLc,8BAKD,gCA8KyC,SAAUuJ,SACxEjC,EAAS9E,EAAuB6H,SAElC,CAAC,IAAK,QAAQlI,SAASkI,KAAK+K,UAC9B7L,EAAMwD,iBAGJxI,EAAW8F,aAIfK,EAAaS,IAAI7D,EAAQouB,IAAc,KAEjCvxB,EAAUkG,YACPkoB,iBAKH2F,EAAet4B,EAAeW,QAAQs3B,IACxCK,GAAgBA,IAAiB5wB,GACnCwwB,GAAUvpB,YAAY2pB,GAAc9f,OAGzB0f,GAAU1oB,oBAAoB9H,GACtCmI,OAAOpF,SAGdK,EAAaQ,GAAG5F,OAtOa,8BAsOgB,IAC3C1F,EAAeC,KAAKg4B,IAAet0B,SAAQ40B,GAAML,GAAU1oB,oBAAoB+oB,GAAI9f,WASrF1S,EAAmBmyB,ICxQnB,MAAMM,GAAW,IAAIvvB,IAAI,CACvB,aACA,OACA,OACA,WACA,WACA,SACA,MACA,eAUIwvB,GAAmB,6DAOnBC,GAAmB,qIAEnBC,GAAmB,CAACC,EAAMC,WACxBC,EAAWF,EAAKzd,SAASjX,iBAE3B20B,EAAqBt2B,SAASu2B,UAC5BN,GAASruB,IAAI2uB,IACRztB,QAAQotB,GAAiBr0B,KAAKw0B,EAAKG,YAAcL,GAAiBt0B,KAAKw0B,EAAKG,kBAMjFC,EAASH,EAAqB/3B,QAAOm4B,GAAaA,aAAqB90B,aAGxE,IAAIsF,EAAI,EAAGC,EAAMsvB,EAAO51B,OAAQqG,EAAIC,EAAKD,OACxCuvB,EAAOvvB,GAAGrF,KAAK00B,UACV,SAIJ,GAqCF,SAASI,GAAaC,EAAYC,EAAWC,OAC7CF,EAAW/1B,cACP+1B,KAGLE,GAAoC,mBAAfA,SAChBA,EAAWF,SAIdG,GADY,IAAI5zB,OAAO6zB,WACKC,gBAAgBL,EAAY,aACxDM,EAAgBh2B,OAAOC,KAAK01B,GAC5Brd,EAAW,GAAGzb,UAAUg5B,EAAgB3zB,KAAKlF,iBAAiB,UAE/D,IAAIgJ,EAAI,EAAGC,EAAMqS,EAAS3Y,OAAQqG,EAAIC,EAAKD,IAAK,OAC7C8uB,EAAKxc,EAAStS,GACdiwB,EAASnB,EAAGpd,SAASjX,kBAEtBu1B,EAAcl3B,SAASm3B,GAAS,CACnCnB,EAAGzqB,wBAKC6rB,EAAgB,GAAGr5B,UAAUi4B,EAAG9nB,YAChCmpB,EAAoB,GAAGt5B,OAAO84B,EAAU,MAAQ,GAAIA,EAAUM,IAAW,IAE/EC,EAAch2B,SAAQi1B,IACfD,GAAiBC,EAAMgB,IAC1BrB,EAAGhoB,gBAAgBqoB,EAAKzd,oBAKvBme,EAAgB3zB,KAAKk0B,UC1F9B,MAAMzzB,GAAO,UAIP0zB,GAAqB,IAAI31B,OAAQ,wBAA6B,KAC9D41B,GAAwB,IAAI9wB,IAAI,CAAC,WAAY,YAAa,eAE1D8I,GAAc,CAClBioB,UAAW,UACXC,SAAU,SACVC,MAAO,4BACPjuB,QAAS,SACTkuB,MAAO,kBACP3V,KAAM,UACNtkB,SAAU,mBACVoa,UAAW,oBACXxJ,OAAQ,0BACR8H,UAAW,2BACXyP,mBAAoB,QACpB1C,SAAU,mBACVyU,YAAa,oBACbC,SAAU,UACVhB,WAAY,kBACZD,UAAW,SACXrH,aAAc,0BAGVuI,GAAgB,CACpBC,KAAM,OACNC,IAAK,MACLC,MAAO50B,IAAU,OAAS,QAC1B60B,OAAQ,SACRC,KAAM90B,IAAU,QAAU,QAGtB2L,GAAU,CACdwoB,WAAW,EACXC,SAAU,+GAIVhuB,QAAS,cACTiuB,MAAO,GACPC,MAAO,EACP3V,MAAM,EACNtkB,UAAU,EACVoa,UAAW,MACXxJ,OAAQ,CAAC,EAAG,GACZ8H,WAAW,EACXyP,mBAAoB,CAAC,MAAO,QAAS,SAAU,QAC/C1C,SAAU,kBACVyU,YAAa,GACbC,UAAU,EACVhB,WAAY,KACZD,UDhC8B,KAEzB,CAAC,QAAS,MAAO,KAAM,OAAQ,OAzCP,kBA0C7BxR,EAAG,CAAC,SAAU,OAAQ,QAAS,OAC/BgT,KAAM,GACN/S,EAAG,GACHgT,GAAI,GACJC,IAAK,GACLC,KAAM,GACNC,IAAK,GACLC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJ/xB,EAAG,GACHgyB,IAAK,CAAC,MAAO,SAAU,MAAO,QAAS,QAAS,UAChDC,GAAI,GACJC,GAAI,GACJpO,EAAG,GACHqO,IAAK,GACLxM,EAAG,GACHyM,MAAO,GACPC,KAAM,GACNC,IAAK,GACLC,IAAK,GACLC,OAAQ,GACRC,EAAG,GACHC,GAAI,ICEJpK,aAAc,MAGVhvB,GAAQ,CACZq5B,KAAO,kBACPC,OAAS,oBACTC,KAAO,kBACPC,MAAQ,mBACRC,SAAW,sBACXC,MAAQ,mBACRC,QAAU,qBACVC,SAAW,sBACXC,WAAa,wBACbC,WAAa,yBAGTC,GAAkB,OAElBvlB,GAAkB,OAElBwlB,GAAmB,OACnBC,GAAkB,MAIlBC,GAAgB,QAChBC,GAAgB,QAUtB,MAAMC,WAAgBnvB,EACpBC,YAAY9N,EAASoD,WACG,IAAXivB,SACH,IAAInuB,UAAU,qEAGhBlE,QAGDi9B,YAAa,OACbC,SAAW,OACXC,YAAc,QACdC,eAAiB,QACjBrL,QAAU,UAGVhf,QAAUzI,KAAK0I,WAAW5P,QAC1Bi6B,IAAM,UAENC,4CAMEjsB,4BAIApL,6BAIArD,mCAIAgP,GAKT2rB,cACON,YAAa,EAGpBO,eACOP,YAAa,EAGpBQ,qBACOR,YAAc3yB,KAAK2yB,WAG1BvtB,OAAOlG,MACAc,KAAK2yB,cAINzzB,EAAO,OACH4pB,EAAU9oB,KAAKozB,6BAA6Bl0B,GAElD4pB,EAAQgK,eAAexJ,OAASR,EAAQgK,eAAexJ,MAEnDR,EAAQuK,uBACVvK,EAAQwK,OAAO,KAAMxK,GAErBA,EAAQyK,OAAO,KAAMzK,OAElB,IACD9oB,KAAKwzB,gBAAgBr5B,UAAUC,SAAS0S,qBACrCymB,OAAO,KAAMvzB,WAIfszB,OAAO,KAAMtzB,OAItB4D,UACE+G,aAAa3K,KAAK4yB,UAElBvyB,EAAaC,IAAIN,KAAKyD,SAASkB,QAAS,UAAwB,gBAAiB3E,KAAKyzB,mBAElFzzB,KAAK+yB,UACFA,IAAI1vB,SAGPrD,KAAKynB,cACFA,QAAQzB,gBAGTpiB,UAGRoK,UACsC,SAAhChO,KAAKyD,SAASgL,MAAM4Y,cAChB,IAAIljB,MAAM,2CAGZnE,KAAK0zB,kBAAmB1zB,KAAK2yB,wBAI7BpF,EAAYltB,EAAamB,QAAQxB,KAAKyD,SAAUzD,KAAKwD,YAAYlL,MAAMu5B,MACvE8B,EAAap5B,EAAeyF,KAAKyD,UACjCmwB,EAA4B,OAAfD,EACjB3zB,KAAKyD,SAASoN,cAAcjb,gBAAgBwE,SAAS4F,KAAKyD,UAC1DkwB,EAAWv5B,SAAS4F,KAAKyD,aAEvB8pB,EAAUzrB,mBAAqB8xB,eAI7Bb,EAAM/yB,KAAKwzB,gBACXK,EAAQx8B,EAAO2I,KAAKwD,YAAY7H,MAEtCo3B,EAAI1tB,aAAa,KAAMwuB,QAClBpwB,SAAS4B,aAAa,mBAAoBwuB,QAE1CC,aAED9zB,KAAKyI,QAAQ8mB,WACfwD,EAAI54B,UAAU2Q,IAAIunB,UAGdxiB,EAA8C,mBAA3B7P,KAAKyI,QAAQoH,UACpC7P,KAAKyI,QAAQoH,UAAU5Z,KAAK+J,KAAM+yB,EAAK/yB,KAAKyD,UAC5CzD,KAAKyI,QAAQoH,UAETkkB,EAAa/zB,KAAKg0B,eAAenkB,QAClCokB,oBAAoBF,SAEnB5lB,UAAEA,GAAcnO,KAAKyI,QAC3B/E,EAAKb,IAAIkwB,EAAK/yB,KAAKwD,YAAYG,SAAU3D,MAEpCA,KAAKyD,SAASoN,cAAcjb,gBAAgBwE,SAAS4F,KAAK+yB,OAC7D5kB,EAAUid,YAAY2H,GACtB1yB,EAAamB,QAAQxB,KAAKyD,SAAUzD,KAAKwD,YAAYlL,MAAMy5B,WAGzD/xB,KAAKynB,aACFA,QAAQjP,cAERiP,QAAUM,GAAoB/nB,KAAKyD,SAAUsvB,EAAK/yB,KAAKgoB,iBAAiB+L,IAG/EhB,EAAI54B,UAAU2Q,IAAIgC,UAEZ6iB,EAAkD,mBAA7B3vB,KAAKyI,QAAQknB,YAA6B3vB,KAAKyI,QAAQknB,cAAgB3vB,KAAKyI,QAAQknB,YAC3GA,GACFoD,EAAI54B,UAAU2Q,OAAO6kB,EAAY33B,MAAM,MAOrC,iBAAkBrC,SAASC,oBAC1BC,UAAUF,SAASuF,KAAK9E,UAAU8C,SAAQxD,IAC3C2K,EAAaQ,GAAGnL,EAAS,YAAakF,YAepCqJ,EAAajE,KAAK+yB,IAAI54B,UAAUC,SAASi4B,SAC1CruB,gBAZY,WACTkwB,EAAiBl0B,KAAK6yB,iBAEvBA,YAAc,KACnBxyB,EAAamB,QAAQxB,KAAKyD,SAAUzD,KAAKwD,YAAYlL,MAAMw5B,OAEvDoC,IAAmB3B,SAChBgB,OAAO,KAAMvzB,QAKQA,KAAK+yB,IAAK9uB,GAG1C8J,WACO/N,KAAKynB,qBAIJsL,EAAM/yB,KAAKwzB,mBAoBCnzB,EAAamB,QAAQxB,KAAKyD,SAAUzD,KAAKwD,YAAYlL,MAAMq5B,MAC/D7vB,wBAIdixB,EAAI54B,UAAUkJ,OAAOyJ,IAIjB,iBAAkBnX,SAASC,oBAC1BC,UAAUF,SAASuF,KAAK9E,UACxB8C,SAAQxD,GAAW2K,EAAaC,IAAI5K,EAAS,YAAakF,UAG1Dk4B,eAAL,OAAqC,OAChCA,eAAL,OAAqC,OAChCA,eAAL,OAAqC,QAE/B7uB,EAAajE,KAAK+yB,IAAI54B,UAAUC,SAASi4B,SAC1CruB,gBAtCY,KACXhE,KAAKqzB,yBAILrzB,KAAK6yB,cAAgBP,IACvBS,EAAI1vB,cAGD8wB,sBACA1wB,SAASqC,gBAAgB,oBAC9BzF,EAAamB,QAAQxB,KAAKyD,SAAUzD,KAAKwD,YAAYlL,MAAMs5B,QAEvD5xB,KAAKynB,eACFA,QAAQzB,eACRyB,QAAU,SAuBWznB,KAAK+yB,IAAK9uB,QACnC4uB,YAAc,GAGrBra,SACuB,OAAjBxY,KAAKynB,cACFA,QAAQjP,SAMjBkb,uBACS9yB,QAAQZ,KAAKo0B,YAGtBZ,mBACMxzB,KAAK+yB,WACA/yB,KAAK+yB,UAGRr9B,EAAUC,SAASu1B,cAAc,cACvCx1B,EAAQ05B,UAAYpvB,KAAKyI,QAAQ+mB,cAE5BuD,IAAMr9B,EAAQU,SAAS,GACrB4J,KAAK+yB,IAGde,mBACQf,EAAM/yB,KAAKwzB,qBACZa,kBAAkB9+B,EAAeW,QA1QX,iBA0Q2C68B,GAAM/yB,KAAKo0B,YACjFrB,EAAI54B,UAAUkJ,OAAOgvB,GAAiBvlB,IAGxCunB,kBAAkB3+B,EAAS4+B,MACT,OAAZ5+B,SAIA6C,EAAU+7B,IACZA,EAAU57B,EAAW47B,QAGjBt0B,KAAKyI,QAAQsR,KACXua,EAAQ59B,aAAehB,IACzBA,EAAQ05B,UAAY,GACpB15B,EAAQ01B,YAAYkJ,IAGtB5+B,EAAQ6+B,YAAcD,EAAQC,mBAM9Bv0B,KAAKyI,QAAQsR,MACX/Z,KAAKyI,QAAQmnB,WACf0E,EAAU7F,GAAa6F,EAASt0B,KAAKyI,QAAQkmB,UAAW3uB,KAAKyI,QAAQmmB,aAGvEl5B,EAAQ05B,UAAYkF,GAEpB5+B,EAAQ6+B,YAAcD,GAI1BF,eACM3E,EAAQzvB,KAAKyD,SAAS7L,aAAa,iCAElC63B,IACHA,EAAsC,mBAAvBzvB,KAAKyI,QAAQgnB,MAC1BzvB,KAAKyI,QAAQgnB,MAAMx5B,KAAK+J,KAAKyD,UAC7BzD,KAAKyI,QAAQgnB,OAGVA,EAGT+E,iBAAiBT,SACI,UAAfA,EACK,MAGU,SAAfA,EACK,QAGFA,EAKTX,6BAA6Bl0B,EAAO4pB,SAC5B2L,EAAUz0B,KAAKwD,YAAYG,gBACjCmlB,EAAUA,GAAWplB,EAAKjB,IAAIvD,EAAMa,eAAgB00B,MAGlD3L,EAAU,IAAI9oB,KAAKwD,YAAYtE,EAAMa,eAAgBC,KAAK00B,sBAC1DhxB,EAAKb,IAAI3D,EAAMa,eAAgB00B,EAAS3L,IAGnCA,EAGTP,mBACQliB,OAAEA,GAAWrG,KAAKyI,cAEF,iBAAXpC,EACFA,EAAOrO,MAAM,KAAKmqB,KAAI5c,GAAO5I,OAAO8O,SAASlG,EAAK,MAGrC,mBAAXc,EACFmiB,GAAcniB,EAAOmiB,EAAYxoB,KAAKyD,UAGxC4C,EAGT2hB,iBAAiB+L,SACTtL,EAAwB,CAC5B5Y,UAAWkkB,EACX7R,UAAW,CACT,CACExmB,KAAM,OACNkW,QAAS,CACPgM,mBAAoB5d,KAAKyI,QAAQmV,qBAGrC,CACEliB,KAAM,SACNkW,QAAS,CACPvL,OAAQrG,KAAKuoB,eAGjB,CACE7sB,KAAM,kBACNkW,QAAS,CACPsJ,SAAUlb,KAAKyI,QAAQyS,WAG3B,CACExf,KAAM,QACNkW,QAAS,CACPlc,QAAU,IAAGsK,KAAKwD,YAAY7H,eAGlC,CACED,KAAM,WACNwV,SAAS,EACTC,MAAO,aACPtV,GAAIiJ,GAAQ9E,KAAK20B,6BAA6B7vB,KAGlDmhB,cAAenhB,IACTA,EAAK8M,QAAQ/B,YAAc/K,EAAK+K,gBAC7B8kB,6BAA6B7vB,WAKjC,IACF2jB,KACsC,mBAA9BzoB,KAAKyI,QAAQ6e,aAA8BtnB,KAAKyI,QAAQ6e,aAAamB,GAAyBzoB,KAAKyI,QAAQ6e,cAI1H2M,oBAAoBF,QACbP,gBAAgBr5B,UAAU2Q,IAAK,cAAkB9K,KAAKw0B,iBAAiBT,MAG9EC,eAAenkB,UACNggB,GAAchgB,EAAUhW,eAGjCm5B,gBACmBhzB,KAAKyI,QAAQjH,QAAQxJ,MAAM,KAEnCkB,SAAQsI,OACC,UAAZA,EACFnB,EAAaQ,GAAGb,KAAKyD,SAAUzD,KAAKwD,YAAYlL,MAAM05B,MAAOhyB,KAAKyI,QAAQhT,UAAUyJ,GAASc,KAAKoF,OAAOlG,UACpG,GA3ZU,WA2ZNsC,EAA4B,OAC/BozB,EAAUpzB,IAAYgxB,GAC1BxyB,KAAKwD,YAAYlL,MAAM65B,WACvBnyB,KAAKwD,YAAYlL,MAAM25B,QACnB4C,EAAWrzB,IAAYgxB,GAC3BxyB,KAAKwD,YAAYlL,MAAM85B,WACvBpyB,KAAKwD,YAAYlL,MAAM45B,SAEzB7xB,EAAaQ,GAAGb,KAAKyD,SAAUmxB,EAAS50B,KAAKyI,QAAQhT,UAAUyJ,GAASc,KAAKszB,OAAOp0B,KACpFmB,EAAaQ,GAAGb,KAAKyD,SAAUoxB,EAAU70B,KAAKyI,QAAQhT,UAAUyJ,GAASc,KAAKuzB,OAAOr0B,cAIpFu0B,kBAAoB,KACnBzzB,KAAKyD,eACFsK,QAIT1N,EAAaQ,GAAGb,KAAKyD,SAASkB,QAAS,UAAwB,gBAAiB3E,KAAKyzB,mBAEjFzzB,KAAKyI,QAAQhT,cACVgT,QAAU,IACVzI,KAAKyI,QACRjH,QAAS,SACT/L,SAAU,SAGPq/B,YAITA,kBACQrF,EAAQzvB,KAAKyD,SAAS7L,aAAa,SACnCm9B,SAA2B/0B,KAAKyD,SAAS7L,aAAa,2BAExD63B,GAA+B,WAAtBsF,UACNtxB,SAAS4B,aAAa,yBAA0BoqB,GAAS,KAC1DA,GAAUzvB,KAAKyD,SAAS7L,aAAa,eAAkBoI,KAAKyD,SAAS8wB,kBAClE9wB,SAAS4B,aAAa,aAAcoqB,QAGtChsB,SAAS4B,aAAa,QAAS,KAIxCiuB,OAAOp0B,EAAO4pB,GACZA,EAAU9oB,KAAKozB,6BAA6Bl0B,EAAO4pB,GAE/C5pB,IACF4pB,EAAQgK,eACS,YAAf5zB,EAAMqB,KAAqBkyB,GAAgBD,KACzC,GAGF1J,EAAQ0K,gBAAgBr5B,UAAUC,SAAS0S,KAAoBgc,EAAQ+J,cAAgBP,GACzFxJ,EAAQ+J,YAAcP,IAIxB3nB,aAAame,EAAQ8J,UAErB9J,EAAQ+J,YAAcP,GAEjBxJ,EAAQrgB,QAAQinB,OAAU5G,EAAQrgB,QAAQinB,MAAM1hB,KAKrD8a,EAAQ8J,SAAWz1B,YAAW,KACxB2rB,EAAQ+J,cAAgBP,IAC1BxJ,EAAQ9a,SAET8a,EAAQrgB,QAAQinB,MAAM1hB,MARvB8a,EAAQ9a,QAWZulB,OAAOr0B,EAAO4pB,GACZA,EAAU9oB,KAAKozB,6BAA6Bl0B,EAAO4pB,GAE/C5pB,IACF4pB,EAAQgK,eACS,aAAf5zB,EAAMqB,KAAsBkyB,GAAgBD,IAC1C1J,EAAQrlB,SAASrJ,SAAS8E,EAAMY,gBAGlCgpB,EAAQuK,yBAIZ1oB,aAAame,EAAQ8J,UAErB9J,EAAQ+J,YAAcN,GAEjBzJ,EAAQrgB,QAAQinB,OAAU5G,EAAQrgB,QAAQinB,MAAM3hB,KAKrD+a,EAAQ8J,SAAWz1B,YAAW,KACxB2rB,EAAQ+J,cAAgBN,IAC1BzJ,EAAQ/a,SAET+a,EAAQrgB,QAAQinB,MAAM3hB,MARvB+a,EAAQ/a,QAWZslB,2BACO,MAAM7xB,KAAWxB,KAAK8yB,kBACrB9yB,KAAK8yB,eAAetxB,UACf,SAIJ,EAGTkH,WAAW5P,SACHk8B,EAAiBrvB,EAAYI,kBAAkB/F,KAAKyD,iBAE1DzK,OAAOC,KAAK+7B,GAAgB97B,SAAQ+7B,IAC9B3F,GAAsB5vB,IAAIu1B,WACrBD,EAAeC,OAI1Bn8B,EAAS,IACJkH,KAAKwD,YAAYuD,WACjBiuB,KACmB,iBAAXl8B,GAAuBA,EAASA,EAAS,KAG/CqV,WAAiC,IAArBrV,EAAOqV,UAAsBxY,SAASuF,KAAOxC,EAAWI,EAAOqV,WAEtD,iBAAjBrV,EAAO42B,QAChB52B,EAAO42B,MAAQ,CACb1hB,KAAMlV,EAAO42B,MACb3hB,KAAMjV,EAAO42B,QAIW,iBAAjB52B,EAAO22B,QAChB32B,EAAO22B,MAAQ32B,EAAO22B,MAAMl2B,YAGA,iBAAnBT,EAAOw7B,UAChBx7B,EAAOw7B,QAAUx7B,EAAOw7B,QAAQ/6B,YAGlCX,EAAgB+C,GAAM7C,EAAQkH,KAAKwD,YAAY8D,aAE3CxO,EAAO82B,WACT92B,EAAO02B,SAAWf,GAAa31B,EAAO02B,SAAU12B,EAAO61B,UAAW71B,EAAO81B,aAGpE91B,EAGT47B,2BACQ57B,EAAS,MAEXkH,KAAKyI,YACF,MAAMlG,KAAOvC,KAAKyI,QACjBzI,KAAKwD,YAAYuD,QAAQxE,KAASvC,KAAKyI,QAAQlG,KACjDzJ,EAAOyJ,GAAOvC,KAAKyI,QAAQlG,WAK1BzJ,EAGTq7B,uBACQpB,EAAM/yB,KAAKwzB,gBACX0B,EAAWnC,EAAIn7B,aAAa,SAAS4B,MAAM61B,IAChC,OAAb6F,GAAqBA,EAASv8B,OAAS,GACzCu8B,EAAS/S,KAAIgT,GAASA,EAAMl9B,SACzBiB,SAAQk8B,GAAUrC,EAAI54B,UAAUkJ,OAAO+xB,KAI9CT,6BAA6BnM,SACrBnX,MAAEA,GAAUmX,EAEbnX,SAIA0hB,IAAM1hB,EAAMC,SAAS9B,YACrB2kB,sBACAF,oBAAoBj0B,KAAKg0B,eAAe3iB,EAAMxB,oCAK9B/W,UACdkH,KAAK6E,MAAK,iBACTC,EAAO4tB,GAAQ3tB,oBAAoB/E,KAAMlH,MAEzB,iBAAXA,EAAqB,SACF,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,UAabwC,EAAmBo3B,ICvtBnB,MAIMrD,GAAqB,IAAI31B,OAAQ,wBAA6B,KAE9DqN,GAAU,IACX2rB,GAAQ3rB,QACX8I,UAAW,QACXxJ,OAAQ,CAAC,EAAG,GACZ7E,QAAS,QACT8yB,QAAS,GACT9E,SAAU,+IAONloB,GAAc,IACforB,GAAQprB,YACXgtB,QAAS,6BAGLh8B,GAAQ,CACZq5B,KAAO,kBACPC,OAAS,oBACTC,KAAO,kBACPC,MAAQ,mBACRC,SAAW,sBACXC,MAAQ,mBACRC,QAAU,qBACVC,SAAW,sBACXC,WAAa,wBACbC,WAAa,yBAMTiD,GAAiB,kBACjBC,GAAmB,gBAQzB,MAAMC,WAAgB7C,+BAIX3rB,2BArDE,oCA6DFzO,mCAIAgP,GAKTosB,uBACS1zB,KAAKo0B,YAAcp0B,KAAKw1B,cAGjChC,uBACMxzB,KAAK+yB,WAIJA,IAAM0C,MAAMjC,gBAEZxzB,KAAKo0B,YACR7+B,EAAeW,QAAQm/B,GAAgBr1B,KAAK+yB,KAAK1vB,SAG9CrD,KAAKw1B,eACRjgC,EAAeW,QAAQo/B,GAAkBt1B,KAAK+yB,KAAK1vB,UAV5CrD,KAAK+yB,IAgBhBe,mBACQf,EAAM/yB,KAAKwzB,qBAGZa,kBAAkB9+B,EAAeW,QAAQm/B,GAAgBtC,GAAM/yB,KAAKo0B,gBACrEE,EAAUt0B,KAAKw1B,cACI,mBAAZlB,IACTA,EAAUA,EAAQr+B,KAAK+J,KAAKyD,gBAGzB4wB,kBAAkB9+B,EAAeW,QAAQo/B,GAAkBvC,GAAMuB,GAEtEvB,EAAI54B,UAAUkJ,OAnEM,OACA,QAuEtB4wB,oBAAoBF,QACbP,gBAAgBr5B,UAAU2Q,IAAK,cAAkB9K,KAAKw0B,iBAAiBT,MAG9EyB,qBACSx1B,KAAKyD,SAAS7L,aAAa,oBAAsBoI,KAAKyI,QAAQ6rB,QAGvEH,uBACQpB,EAAM/yB,KAAKwzB,gBACX0B,EAAWnC,EAAIn7B,aAAa,SAAS4B,MAAM61B,IAChC,OAAb6F,GAAqBA,EAASv8B,OAAS,GACzCu8B,EAAS/S,KAAIgT,GAASA,EAAMl9B,SACzBiB,SAAQk8B,GAAUrC,EAAI54B,UAAUkJ,OAAO+xB,4BAMvBt8B,UACdkH,KAAK6E,MAAK,iBACTC,EAAOywB,GAAQxwB,oBAAoB/E,KAAMlH,MAEzB,iBAAXA,EAAqB,SACF,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,UAabwC,EAAmBi6B,IC9InB,MAAM55B,GAAO,YAKPoL,GAAU,CACdV,OAAQ,GACRqvB,OAAQ,OACRz4B,OAAQ,IAGJqK,GAAc,CAClBjB,OAAQ,SACRqvB,OAAQ,SACRz4B,OAAQ,oBAQJ4K,GAAoB,SAWpB8tB,GAAkB,WAQxB,MAAMC,WAAkBryB,EACtBC,YAAY9N,EAASoD,SACbpD,QACDmgC,eAA2C,SAA1B71B,KAAKyD,SAASsH,QAAqB9P,OAAS+E,KAAKyD,cAClEgF,QAAUzI,KAAK0I,WAAW5P,QAC1B6U,UAAa,GAAE3N,KAAKyI,QAAQxL,qBAAiC+C,KAAKyI,QAAQxL,4BAAkC+C,KAAKyI,QAAQxL,6BACzH64B,SAAW,QACXC,SAAW,QACXC,cAAgB,UAChBC,cAAgB,EAErB51B,EAAaQ,GAAGb,KAAK61B,eAlCH,uBAkCiC,IAAM71B,KAAKk2B,kBAEzDC,eACAD,uCAMEnvB,4BAIApL,GAKTw6B,gBACQC,EAAap2B,KAAK61B,iBAAmB71B,KAAK61B,eAAe56B,OAvC7C,SAyChB06B,GAEIU,EAAuC,SAAxBr2B,KAAKyI,QAAQitB,OAChCU,EACAp2B,KAAKyI,QAAQitB,OAETY,EAAaD,IAAiBV,GAClC31B,KAAKu2B,gBACL,OAEGT,SAAW,QACXC,SAAW,QACXE,cAAgBj2B,KAAKw2B,mBAEVjhC,EAAeC,KAAKwK,KAAK2N,WAEjCwU,KAAIzsB,UACJ+gC,EAAiBv+B,EAAuBxC,GACxCuH,EAASw5B,EAAiBlhC,EAAeW,QAAQugC,GAAkB,QAErEx5B,EAAQ,OACJy5B,EAAYz5B,EAAOsJ,2BACrBmwB,EAAUtkB,OAASskB,EAAUrkB,aACxB,CACL1M,EAAY0wB,GAAcp5B,GAAQuJ,IAAM8vB,EACxCG,UAKC,QAENpgC,QAAO0uB,GAAQA,IACf7H,MAAK,CAACC,EAAGC,IAAMD,EAAE,GAAKC,EAAE,KACxBlkB,SAAQ6rB,SACF+Q,SAASh/B,KAAKiuB,EAAK,SACnBgR,SAASj/B,KAAKiuB,EAAK,OAI9BnhB,UACEvD,EAAaC,IAAIN,KAAK61B,eAhHP,uBAiHTjyB,UAKR8E,WAAW5P,MAOoB,iBAN7BA,EAAS,IACJiO,MACApB,EAAYI,kBAAkB/F,KAAKyD,aAChB,iBAAX3K,GAAuBA,EAASA,EAAS,KAGpCmE,QAAuB1E,EAAUO,EAAOmE,QAAS,KAC7DqQ,GAAEA,GAAOxU,EAAOmE,OACfqQ,IACHA,EAAKjW,EAAOsE,IACZ7C,EAAOmE,OAAOqQ,GAAKA,GAGrBxU,EAAOmE,OAAU,IAAGqQ,WAGtB1U,EAAgB+C,GAAM7C,EAAQwO,IAEvBxO,EAGTy9B,uBACSv2B,KAAK61B,iBAAmB56B,OAC7B+E,KAAK61B,eAAe9c,YACpB/Y,KAAK61B,eAAepvB,UAGxB+vB,0BACSx2B,KAAK61B,eAAevb,cAAgB/iB,KAAKqG,IAC9CjI,SAASuF,KAAKof,aACd3kB,SAASC,gBAAgB0kB,cAI7Bqc,0BACS32B,KAAK61B,iBAAmB56B,OAC7BA,OAAO27B,YACP52B,KAAK61B,eAAetvB,wBAAwB8L,OAGhD6jB,iBACQzvB,EAAYzG,KAAKu2B,gBAAkBv2B,KAAKyI,QAAQpC,OAChDiU,EAAeta,KAAKw2B,mBACpBK,EAAY72B,KAAKyI,QAAQpC,OAASiU,EAAeta,KAAK22B,sBAExD32B,KAAKi2B,gBAAkB3b,QACpB6b,UAGH1vB,GAAaowB,SACT55B,EAAS+C,KAAK+1B,SAAS/1B,KAAK+1B,SAASp9B,OAAS,GAEhDqH,KAAKg2B,gBAAkB/4B,QACpB65B,UAAU75B,WAMf+C,KAAKg2B,eAAiBvvB,EAAYzG,KAAK81B,SAAS,IAAM91B,KAAK81B,SAAS,GAAK,cACtEE,cAAgB,eAChBe,aAIF,IAAI/3B,EAAIgB,KAAK81B,SAASn9B,OAAQqG,KACVgB,KAAKg2B,gBAAkBh2B,KAAK+1B,SAAS/2B,IACxDyH,GAAazG,KAAK81B,SAAS92B,UACM,IAAzBgB,KAAK81B,SAAS92B,EAAI,IAAsByH,EAAYzG,KAAK81B,SAAS92B,EAAI,UAG3E83B,UAAU92B,KAAK+1B,SAAS/2B,KAKnC83B,UAAU75B,QACH+4B,cAAgB/4B,OAEhB85B,eAECC,EAAUh3B,KAAK2N,UAAU3V,MAAM,KAClCmqB,KAAI1sB,GAAa,GAAEA,qBAA4BwH,OAAYxH,WAAkBwH,QAE1Eg6B,EAAO1hC,EAAeW,QAAQ8gC,EAAQ/gB,KAAK,MAE7CghB,EAAK98B,UAAUC,SA1LU,kBA2L3B7E,EAAeW,QAlLY,mBAkLsB+gC,EAAKtyB,QAnLlC,cAoLjBxK,UAAU2Q,IAAIjD,IAEjBovB,EAAK98B,UAAU2Q,IAAIjD,MAGnBovB,EAAK98B,UAAU2Q,IAAIjD,IAEnBtS,EAAeiB,QAAQygC,EA/LG,qBAgMvB/9B,SAAQg+B,IAGP3hC,EAAewB,KAAKmgC,EAAY,+BAC7Bh+B,SAAQ6rB,GAAQA,EAAK5qB,UAAU2Q,IAAIjD,MAGtCtS,EAAewB,KAAKmgC,EArMH,aAsMdh+B,SAAQi+B,IACP5hC,EAAea,SAAS+gC,EAxMX,aAyMVj+B,SAAQ6rB,GAAQA,EAAK5qB,UAAU2Q,IAAIjD,aAKhDxH,EAAamB,QAAQxB,KAAK61B,eAvNN,wBAuNsC,CACxD/1B,cAAe7C,IAInB85B,SACExhC,EAAeC,KAAKwK,KAAK2N,WACtBtX,QAAOua,GAAQA,EAAKzW,UAAUC,SAASyN,MACvC3O,SAAQ0X,GAAQA,EAAKzW,UAAUkJ,OAAOwE,6BAKpB/O,UACdkH,KAAK6E,MAAK,iBACTC,EAAO8wB,GAAU7wB,oBAAoB/E,KAAMlH,MAE3B,iBAAXA,WAIiB,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,UAWXuH,EAAaQ,GAAG5F,OAzPa,8BAyPgB,KAC3C1F,EAAeC,KArPS,0BAsPrB0D,SAAQk+B,GAAO,IAAIxB,GAAUwB,QAUlC97B,EAAmBs6B,IC1RnB,MAYM/tB,GAAoB,SACpBwqB,GAAkB,OAClBvlB,GAAkB,OAIlBuqB,GAAkB,UAClBC,GAAqB,wBAW3B,MAAMC,WAAYh0B,0BA9BL,MAuCXyK,UACOhO,KAAKyD,SAAS/M,YACjBsJ,KAAKyD,SAAS/M,WAAWC,WAAaC,KAAKC,cAC3CmJ,KAAKyD,SAAStJ,UAAUC,SAASyN,eAI/B7Q,QACEiG,EAAS9E,EAAuB6H,KAAKyD,UACrC+zB,EAAcx3B,KAAKyD,SAASkB,QA/BN,wBAiCxB6yB,EAAa,OACTC,EAAwC,OAAzBD,EAAY9mB,UAA8C,OAAzB8mB,EAAY9mB,SAAoB4mB,GAAqBD,GAC3GrgC,EAAWzB,EAAeC,KAAKiiC,EAAcD,GAC7CxgC,EAAWA,EAASA,EAAS2B,OAAS,SAGlC++B,EAAY1gC,EAChBqJ,EAAamB,QAAQxK,EApDP,cAoD6B,CACzC8I,cAAeE,KAAKyD,WAEtB,QAEgBpD,EAAamB,QAAQxB,KAAKyD,SAvD5B,cAuDkD,CAChE3D,cAAe9I,IAGH8K,kBAAmC,OAAd41B,GAAsBA,EAAU51B,6BAI9Dg1B,UAAU92B,KAAKyD,SAAU+zB,SAExBG,EAAW,KACft3B,EAAamB,QAAQxK,EAnEL,gBAmE6B,CAC3C8I,cAAeE,KAAKyD,WAEtBpD,EAAamB,QAAQxB,KAAKyD,SApEX,eAoEkC,CAC/C3D,cAAe9I,KAIfiG,OACG65B,UAAU75B,EAAQA,EAAOvG,WAAYihC,GAE1CA,IAMJb,UAAUphC,EAASyY,EAAW3S,SAKtBo8B,IAJiBzpB,GAAqC,OAAvBA,EAAUuC,UAA4C,OAAvBvC,EAAUuC,SAE5Enb,EAAea,SAAS+X,EAAWkpB,IADnC9hC,EAAeC,KAAK8hC,GAAoBnpB,IAGZ,GACxBU,EAAkBrT,GAAao8B,GAAUA,EAAOz9B,UAAUC,SAASi4B,IAEnEsF,EAAW,IAAM33B,KAAK63B,oBAAoBniC,EAASkiC,EAAQp8B,GAE7Do8B,GAAU/oB,GACZ+oB,EAAOz9B,UAAUkJ,OAAOyJ,SACnB9I,eAAe2zB,EAAUjiC,GAAS,IAEvCiiC,IAIJE,oBAAoBniC,EAASkiC,EAAQp8B,MAC/Bo8B,EAAQ,CACVA,EAAOz9B,UAAUkJ,OAAOwE,UAElBiwB,EAAgBviC,EAAeW,QA1FJ,kCA0F4C0hC,EAAOlhC,YAEhFohC,GACFA,EAAc39B,UAAUkJ,OAAOwE,IAGG,QAAhC+vB,EAAOhgC,aAAa,SACtBggC,EAAOvyB,aAAa,iBAAiB,GAIzC3P,EAAQyE,UAAU2Q,IAAIjD,IACe,QAAjCnS,EAAQkC,aAAa,SACvBlC,EAAQ2P,aAAa,iBAAiB,GAGxCxK,EAAOnF,GAEHA,EAAQyE,UAAUC,SAASi4B,KAC7B38B,EAAQyE,UAAU2Q,IAAIgC,QAGpBD,EAASnX,EAAQgB,cACjBmW,GAA8B,OAApBA,EAAO6D,WACnB7D,EAASA,EAAOnW,YAGdmW,GAAUA,EAAO1S,UAAUC,SAhIF,iBAgIsC,OAC3D29B,EAAkBriC,EAAQiP,QA5HZ,aA8HhBozB,GACFxiC,EAAeC,KA1HU,mBA0HqBuiC,GAC3C7+B,SAAQ8+B,GAAYA,EAAS79B,UAAU2Q,IAAIjD,MAGhDnS,EAAQ2P,aAAa,iBAAiB,GAGpC7J,GACFA,2BAMmB1C,UACdkH,KAAK6E,MAAK,iBACTC,EAAOyyB,GAAIxyB,oBAAoB/E,SAEf,iBAAXlH,EAAqB,SACF,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,UAYbuH,EAAaQ,GAAGlL,SAzKc,wBAWD,4EA8JyC,SAAUuJ,GAC1E,CAAC,IAAK,QAAQpH,SAASkI,KAAK+K,UAC9B7L,EAAMwD,iBAGJxI,EAAW8F,OAIFu3B,GAAIxyB,oBAAoB/E,MAChCgO,UAUP1S,EAAmBi8B,ICvMnB,MAAM57B,GAAO,QAePs8B,GAAkB,OAClBnrB,GAAkB,OAClBorB,GAAqB,UAErB5wB,GAAc,CAClBioB,UAAW,UACX4I,SAAU,UACVzI,MAAO,UAGH3oB,GAAU,CACdwoB,WAAW,EACX4I,UAAU,EACVzI,MAAO,KAWT,MAAM0I,WAAc70B,EAClBC,YAAY9N,EAASoD,SACbpD,QAED+S,QAAUzI,KAAK0I,WAAW5P,QAC1B85B,SAAW,UACXyF,sBAAuB,OACvBC,yBAA0B,OAC1BtF,gDAME1rB,+BAIAP,4BAIApL,GAKTqS,OACoB3N,EAAamB,QAAQxB,KAAKyD,SAxD5B,iBA0DF3B,wBAITy2B,gBAEDv4B,KAAKyI,QAAQ8mB,gBACV9rB,SAAStJ,UAAU2Q,IA9DN,aA0EfrH,SAAStJ,UAAUkJ,OAAO40B,IAC/Bp9B,EAAOmF,KAAKyD,eACPA,SAAStJ,UAAU2Q,IAAIotB,SAEvBl0B,gBAbY,UACVP,SAAStJ,UAAUkJ,OAAO60B,SAC1Bz0B,SAAStJ,UAAU2Q,IAAIgC,IAE5BzM,EAAamB,QAAQxB,KAAKyD,SAvEX,uBAyEV+0B,uBAOuBx4B,KAAKyD,SAAUzD,KAAKyI,QAAQ8mB,YAG5DxhB,OACO/N,KAAKyD,SAAStJ,UAAUC,SAAS0S,MAIpBzM,EAAamB,QAAQxB,KAAKyD,SA3F5B,iBA6FF3B,wBAST2B,SAAStJ,UAAUkJ,OAAOyJ,SAC1B9I,gBANY,UACVP,SAAStJ,UAAU2Q,IAAImtB,IAC5B53B,EAAamB,QAAQxB,KAAKyD,SAlGV,qBAsGYzD,KAAKyD,SAAUzD,KAAKyI,QAAQ8mB,aAG5D3rB,eACO20B,gBAEDv4B,KAAKyD,SAAStJ,UAAUC,SAAS0S,UAC9BrJ,SAAStJ,UAAUkJ,OAAOyJ,UAG3BlJ,UAKR8E,WAAW5P,UACTA,EAAS,IACJiO,MACApB,EAAYI,kBAAkB/F,KAAKyD,aAChB,iBAAX3K,GAAuBA,EAASA,EAAS,IAGtDF,EAAgB+C,GAAM7C,EAAQkH,KAAKwD,YAAY8D,aAExCxO,EAGT0/B,qBACOx4B,KAAKyI,QAAQ0vB,WAIdn4B,KAAKq4B,sBAAwBr4B,KAAKs4B,+BAIjC1F,SAAWz1B,YAAW,UACpB4Q,SACJ/N,KAAKyI,QAAQinB,SAGlB+I,eAAev5B,EAAOw5B,UACZx5B,EAAMqB,UACP,gBACA,gBACE83B,qBAAuBK,YAEzB,cACA,gBACEJ,wBAA0BI,KAM/BA,mBACGH,sBAIDxsB,EAAc7M,EAAMY,cACtBE,KAAKyD,WAAasI,GAAe/L,KAAKyD,SAASrJ,SAAS2R,SAIvDysB,qBAGPxF,gBACE3yB,EAAaQ,GAAGb,KAAKyD,SAjLI,yBA2BC,6BAsJiD,IAAMzD,KAAK+N,SACtF1N,EAAaQ,GAAGb,KAAKyD,SAjLA,sBAiL2BvE,GAASc,KAAKy4B,eAAev5B,GAAO,KACpFmB,EAAaQ,GAAGb,KAAKyD,SAjLD,qBAiL2BvE,GAASc,KAAKy4B,eAAev5B,GAAO,KACnFmB,EAAaQ,GAAGb,KAAKyD,SAjLF,oBAiL2BvE,GAASc,KAAKy4B,eAAev5B,GAAO,KAClFmB,EAAaQ,GAAGb,KAAKyD,SAjLD,qBAiL2BvE,GAASc,KAAKy4B,eAAev5B,GAAO,KAGrFq5B,gBACE5tB,aAAa3K,KAAK4yB,eACbA,SAAW,4BAKK95B,UACdkH,KAAK6E,MAAK,iBACTC,EAAOszB,GAAMrzB,oBAAoB/E,KAAMlH,MAEvB,iBAAXA,EAAqB,SACF,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,GAAQkH,kBAarB1E,EAAmB88B,IC3NJ,CACbh0B,MAAAA,EACAe,OAAAA,EACA6C,SAAAA,GACAmF,SAAAA,GACAqa,SAAAA,GACAsE,MAAAA,GACA2B,UAAAA,GACA8H,QAAAA,GACAK,UAAAA,GACA2B,IAAAA,GACAa,MAAAA,GACA1F,QAAAA"} \ No newline at end of file diff --git a/assets/js/progress.js b/assets/js/progress.js new file mode 100644 index 00000000..c85374a1 --- /dev/null +++ b/assets/js/progress.js @@ -0,0 +1,74 @@ +/** + * @file + * Extends the methods of progress bar in core/misc/progress.js. + */ + +(function($, Drupal) { + /** + * Theme function for the progress bar. + * + * @param {string} id + * The id for the progress bar. + * + * @return {string} + * The HTML for the progress bar. + */ + Drupal.theme.progressBar = function(id) { + return ( + `<div id="${id}" aria-live="polite">` + + '<label class="progress-bar-label"></label>' + + '<div class="progress"><div class="progress-bar progress-bar-striped progress-bar-animated" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"></div></div>' + + '<small class="form-text text-muted progress-bar-message"></small>' + + '</div>' + ); + }; + + $.extend( + Drupal.ProgressBar.prototype, + /** @lends Drupal.ProgressBar# */ { + /** + * Set the percentage and status message for the progressbar. + * + * @param {number} percentage + * The progress percentage. + * @param {string} message + * The message to show the user. + * @param {string} label + * The text for the progressbar label. + */ + setProgress(percentage, message, label) { + if (percentage >= 0 && percentage <= 100) { + $(this.element) + .find('div.progress-bar') + .css('width', `${percentage}%`) + .attr('aria-valuenow', percentage) + .html(`${percentage}%`); + } + $('label.progress-bar-label', this.element).html(label); + $('small.progress-bar-message', this.element).html(message); + if (this.updateCallback) { + this.updateCallback(percentage, message, this); + } + }, + + /** + * Display errors on the page. + * + * @param {string} string + * The error message to show the user. + */ + displayError(string) { + const error = $('<div class="alert alert-danger"></div>').html( + string, + ); + $(this.element) + .before(error) + .hide(); + + if (this.errorCallback) { + this.errorCallback(this); + } + }, + }, + ); +})(jQuery, Drupal); diff --git a/bcl-builder.config.js b/bcl-builder.config.js new file mode 100644 index 00000000..d7756012 --- /dev/null +++ b/bcl-builder.config.js @@ -0,0 +1,38 @@ +const path = require("path"); + +const outputFolder = path.resolve(__dirname); +const nodeModules = path.resolve(__dirname, "./node_modules"); + +// SCSS includePaths +const includePaths = [nodeModules]; + +module.exports = { + styles: [ + { + entry: path.resolve(outputFolder, "resources/sass/default.style.scss"), + dest: path.resolve(outputFolder, "assets/css/oe_bootstrap_theme.style.min.css"), + options: { + includePaths, + minify: true, + sourceMap: "file", + }, + }, + ], + copy: [ + { + from: ["node_modules/@openeuropa/bcl-theme-default/css/**"], + to: path.resolve(outputFolder, "assets/css"), + options: { up: true }, + }, + { + from: ["node_modules/@openeuropa/bcl-theme-default/js/**"], + to: path.resolve(outputFolder, "assets/js"), + options: { up: true }, + }, + { + from: ["node_modules/@openeuropa/bcl-theme-default/icons/bootstrap-icons.svg"], + to: path.resolve(outputFolder, "assets/icons"), + options: { up: true }, + }, + ], +}; diff --git a/composer.json b/composer.json index 874845ea..6b262f0d 100644 --- a/composer.json +++ b/composer.json @@ -7,6 +7,7 @@ "prefer-stable": true, "require": { "drupal/core": "^8.9 || ^9.1", + "openeuropa/oe_bootstrap_theme": "dev-FRONT-2362", "php": ">=7.3" }, "require-dev": { diff --git a/config/schema/oe_whitelabel.schema.yml b/config/schema/oe_whitelabel.schema.yml new file mode 100644 index 00000000..a92883f8 --- /dev/null +++ b/config/schema/oe_whitelabel.schema.yml @@ -0,0 +1,5 @@ +# Schema for the configuration files of the OpenEuropa Whitelabel theme. + +oe_whitelabel.settings: + type: theme_settings + label: 'OpenEuropa Whitelabel settings' diff --git a/docker-compose.yml b/docker-compose.yml index 5876338e..b230d87c 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -23,6 +23,35 @@ services: # ports: # - 3306:3306 + # If you would like to see what is going on you can run the following on your host: + # docker run --rm -p 4444:4444 -p 5900:5900 --network="host" selenium/standalone-chrome-debug:latest + # Newer version of this image might run into this issue: + # @link https://github.com/elgalu/docker-selenium/issues/20 + selenium: + image: selenium/standalone-chrome-debug:3.141.59-oxygen + expose: + - '4444' + environment: + - DISPLAY=:99 + - SE_OPTS=-debug + - SCREEN_WIDTH=1280 + - SCREEN_HEIGHT=800 + - VNC_NO_PASSWORD=1 + ports: + - '4444:4444' + - '5900:5900' + shm_size: 2g + node: + image: node:14.17.3 + user: "node" + working_dir: /home/node/app + environment: + - NODE_ENV=${NODE_ENV} + - SHELL=bash + volumes: + - ./:/home/node/app + command: "sleep infinity" + #### Mac users: uncomment the "volumes" key to enable the NFS file sharing. You can find more information about Docker for Mac here: https://github.com/openeuropa/openeuropa/blob/master/docs/starting/tooling.md#using-docker-on-macos #volumes: diff --git a/includes/block.inc b/includes/block.inc new file mode 100644 index 00000000..bb4b2fa8 --- /dev/null +++ b/includes/block.inc @@ -0,0 +1,6 @@ +<?php + +/** + * @file + * Theme and preprocess functions for blocks. + */ diff --git a/includes/comment.inc b/includes/comment.inc new file mode 100644 index 00000000..4b41c9fe --- /dev/null +++ b/includes/comment.inc @@ -0,0 +1,6 @@ +<?php + +/** + * @file + * Theme and preprocess functions for comments. + */ diff --git a/includes/content.inc b/includes/content.inc new file mode 100644 index 00000000..e4202538 --- /dev/null +++ b/includes/content.inc @@ -0,0 +1,6 @@ +<?php + +/** + * @file + * Theme and preprocess functions for nodes. + */ diff --git a/includes/field.inc b/includes/field.inc new file mode 100644 index 00000000..baf589a2 --- /dev/null +++ b/includes/field.inc @@ -0,0 +1,6 @@ +<?php + +/** + * @file + * Theme and preprocess functions for fields. + */ diff --git a/includes/form.inc b/includes/form.inc new file mode 100644 index 00000000..88e959dc --- /dev/null +++ b/includes/form.inc @@ -0,0 +1,6 @@ +<?php + +/** + * @file + * Theme and preprocess functions for forms. + */ diff --git a/includes/menu.inc b/includes/menu.inc new file mode 100644 index 00000000..5fca8a7a --- /dev/null +++ b/includes/menu.inc @@ -0,0 +1,6 @@ +<?php + +/** + * @file + * Theme and preprocess functions for menus. + */ diff --git a/includes/theme.inc b/includes/theme.inc new file mode 100644 index 00000000..33399cfb --- /dev/null +++ b/includes/theme.inc @@ -0,0 +1,6 @@ +<?php + +/** + * @file + * Custom theme hooks. + */ diff --git a/includes/user.inc b/includes/user.inc new file mode 100644 index 00000000..7589628f --- /dev/null +++ b/includes/user.inc @@ -0,0 +1,6 @@ +<?php + +/** + * @file + * Theme and preprocess functions for users. + */ diff --git a/includes/view.inc b/includes/view.inc new file mode 100644 index 00000000..312b8ea6 --- /dev/null +++ b/includes/view.inc @@ -0,0 +1,6 @@ +<?php + +/** + * @file + * Theme and preprocess functions for views. + */ diff --git a/oe_whitelabel.breakpoints.yml b/oe_whitelabel.breakpoints.yml new file mode 100644 index 00000000..4afd2d6a --- /dev/null +++ b/oe_whitelabel.breakpoints.yml @@ -0,0 +1,36 @@ +default.xs: + label: XS + mediaQuery: '(max-width: 575px)' + weight: 0 + multipliers: + - 1x +default.sm: + label: SM + mediaQuery: '(min-width: 576px) and (max-width: 767px)' + weight: 1 + multipliers: + - 1x +default.md: + label: MD + mediaQuery: '(min-width: 768px) and (max-width: 991px)' + weight: 1 + multipliers: + - 1x +default.lg: + label: LG + mediaQuery: '(min-width: 992px) and (max-width: 1199px)' + weight: 1 + multipliers: + - 1x +default.xl: + label: XL + mediaQuery: '(min-width: 1200px) and (max-width: 1399px)' + weight: 1 + multipliers: + - 1x +default.xxl: + label: XXL + mediaQuery: '(min-width: 1400px)' + weight: 1 + multipliers: + - 1x diff --git a/oe_whitelabel.info.yml b/oe_whitelabel.info.yml index 376f0e10..fb5851b3 100644 --- a/oe_whitelabel.info.yml +++ b/oe_whitelabel.info.yml @@ -4,3 +4,26 @@ screenshot: screenshot.png type: theme base theme: oe_bootstrap_theme core_version_requirement: ^8.9 || ^9.1 + +stylesheets-remove: + - system.theme.css + - system.menus.css + - system.admin.css + +libraries: + - oe_whitelabel/bcl + +libraries-override: + oe_bootstrap_theme/bcl: false + +ckeditor_stylesheets: + - assets/css/oe-bcl-default.min.css + +regions: + navbar_branding: Navbar branding + navbar_left: Navbar left + navbar_right: Navbar right + header: Header + content: Content + page_bottom: Page bottom + footer: Footer diff --git a/oe_whitelabel.libraries.yml b/oe_whitelabel.libraries.yml index e69de29b..cedadb7f 100644 --- a/oe_whitelabel.libraries.yml +++ b/oe_whitelabel.libraries.yml @@ -0,0 +1,6 @@ +bcl: + js: + assets/js/oe-bcl-default.bundle.min.js: {} + css: + theme: + assets/css/oe-bcl-default.min.css: {} diff --git a/oe_whitelabel.theme b/oe_whitelabel.theme new file mode 100644 index 00000000..718cc06e --- /dev/null +++ b/oe_whitelabel.theme @@ -0,0 +1,14 @@ +<?php + +/** + * @file + * The oe_whitelabel_theme hooks. + */ + +// Include all files from the includes directory. +$includes_path = __DIR__ . '/includes/*.inc'; +foreach (glob($includes_path) as $filename) { + // The inspection disallowing basename() is not relevant for known paths. + // phpcs:ignore QualityAssurance.Functions.DrupalWrappers.FoundWithAlternative + require_once __DIR__ . '/includes/' . basename($filename); +} diff --git a/package.json b/package.json new file mode 100644 index 00000000..1e319894 --- /dev/null +++ b/package.json @@ -0,0 +1,25 @@ +{ + "name": "oe_whitelabel", + "version": "1.0.0", + "description": "OE_BOOTSTRAP_THEME_SUBTHEME_DESCRIPTION", + "private": true, + "scripts": { + "build": "npm-run-all build:*", + "build:styles": "cross-env bcl-builder styles", + "build:copy": "cross-env bcl-builder copy", + "watch:styles": "chokidar \"./resources/sass/**/*.scss\" -i \"/node_modules/\" -c \"stylelint {path} & npm run build:styles\"", + "watch": "npm-run-all --parallel watch:* -ln", + "postinstall": "npm-run-all build:*", + "production": "npm-run-all build:*" + }, + "devDependencies": { + "@openeuropa/bcl-builder": "0.4.0", + "@openeuropa/bcl-theme-default": "0.4.0", + "bootstrap-ie11": "5.0.2", + "chokidar-cli": "1.2.0", + "copyfiles": "2.4.1", + "cross-env": "7.0.3", + "glob": "7.1.7", + "npm-run-all": "4.1.5" + } +} diff --git a/resources/sass/block/_block.scss b/resources/sass/block/_block.scss new file mode 100644 index 00000000..e69de29b diff --git a/resources/sass/components/_my.component.scss b/resources/sass/components/_my.component.scss new file mode 100644 index 00000000..8858f4af --- /dev/null +++ b/resources/sass/components/_my.component.scss @@ -0,0 +1,5 @@ +// Custom style for your component. +// ----------------------------------------------------------------------------- +.my__component { + +} diff --git a/resources/sass/content/_node.article.scss b/resources/sass/content/_node.article.scss new file mode 100644 index 00000000..625a7779 --- /dev/null +++ b/resources/sass/content/_node.article.scss @@ -0,0 +1,11 @@ +// Article: Teaser +// ----------------------------------------------------------------------------- +.article--teaser { + +} + +// Article: Full +// ----------------------------------------------------------------------------- +.article--full { + +} diff --git a/resources/sass/content/_node.page.scss b/resources/sass/content/_node.page.scss new file mode 100644 index 00000000..7e1c0693 --- /dev/null +++ b/resources/sass/content/_node.page.scss @@ -0,0 +1,2 @@ +// Page +// ----------------------------------------------------------------------------- diff --git a/resources/sass/default.style.scss b/resources/sass/default.style.scss new file mode 100644 index 00000000..174375ee --- /dev/null +++ b/resources/sass/default.style.scss @@ -0,0 +1,15 @@ +// Layout +// ----------------------------------------------------------------------------- +@import "layout/page.header"; +@import "layout/page.content"; +@import "layout/page.footer"; + +// Component +// ----------------------------------------------------------------------------- +@import "components/my.component"; + +// Other +// ----------------------------------------------------------------------------- +@import "block/block"; +@import "content/node.page"; +@import "content/node.article"; diff --git a/resources/sass/layout/_page.content.scss b/resources/sass/layout/_page.content.scss new file mode 100644 index 00000000..e12cfe6d --- /dev/null +++ b/resources/sass/layout/_page.content.scss @@ -0,0 +1,5 @@ +// Page: Content +// ----------------------------------------------------------------------------- +.page__content { + +} diff --git a/resources/sass/layout/_page.footer.scss b/resources/sass/layout/_page.footer.scss new file mode 100644 index 00000000..ffbfe681 --- /dev/null +++ b/resources/sass/layout/_page.footer.scss @@ -0,0 +1,5 @@ +// Page: Footer +// ----------------------------------------------------------------------------- +.page__footer { + +} diff --git a/resources/sass/layout/_page.header.scss b/resources/sass/layout/_page.header.scss new file mode 100644 index 00000000..787b099d --- /dev/null +++ b/resources/sass/layout/_page.header.scss @@ -0,0 +1,5 @@ +// Page: Header +// ----------------------------------------------------------------------------- +.page__header { + +} diff --git a/runner.yml.dist b/runner.yml.dist index aba3d87f..7b6b2a7e 100644 --- a/runner.yml.dist +++ b/runner.yml.dist @@ -2,7 +2,7 @@ drupal: root: "build" base_url: "http://web:8080/build" site: - name: "OpenEuropa" + name: "OpenEuropa Whitelabel theme" profile: "minimal" database: host: "mysql" @@ -12,14 +12,14 @@ drupal: password: "" post_install: # Prepare the instance. + - "./vendor/bin/drush en ui_patterns ui_patterns_library ui_patterns_settings components -y" + - "./vendor/bin/drush en field_ui -y" - "./vendor/bin/drush en toolbar -y" - "./vendor/bin/drush theme:enable oe_whitelabel -y" - "./vendor/bin/drush theme:enable seven -y" - "./vendor/bin/drush config-set system.theme default oe_whitelabel -y" - "./vendor/bin/drush config-set system.theme admin seven -y" - "./vendor/bin/drush config-set node.settings use_admin_theme 1 -y" - # Enable the modules. - - "./vendor/bin/drush en config_devel -y" - "./vendor/bin/drush cr" settings: settings: @@ -29,6 +29,11 @@ drupal: - "vendor" - "${drupal.root}" +selenium: + host: "http://selenium" + port: "4444" + browser: "chrome" + commands: drupal:site-setup: - { task: "run", command: "drupal:symlink-project" } diff --git a/screenshot.png b/screenshot.png index 8f9bc2b2627d1ec1f6f13e3c859d30e8216b4ac2..2019e547c2267c1467d700f15628e3a31817fc31 100644 GIT binary patch literal 17450 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 literal 1435 zcmeAS@N?(olHy`uVBq!ia0y~yV2WU1U_8XZ1QgjLs9?;%z?$Ug;uunK>+MxTMg|5J z2FDcPzy#HtcS?UgN!l_p#7|{mkWd_?$c=+xu%ZS*roo94S{Mc`8oUWjgK;#ak&&K9 eQyMTy$3z8tu*B5*{tE*Zx(uGKelF{r5}E+|w(M*G diff --git a/templates/README.txt b/templates/README.txt new file mode 100644 index 00000000..f208fb7a --- /dev/null +++ b/templates/README.txt @@ -0,0 +1,2 @@ + +This directory should be used to place template files. diff --git a/templates/layouts/README.txt b/templates/layouts/README.txt new file mode 100644 index 00000000..b1b1cadd --- /dev/null +++ b/templates/layouts/README.txt @@ -0,0 +1 @@ +Place layouts template files here. diff --git a/templates/overrides/README.txt b/templates/overrides/README.txt new file mode 100644 index 00000000..2cfba3ea --- /dev/null +++ b/templates/overrides/README.txt @@ -0,0 +1,2 @@ +Place overrides template files here, +please, try to keep same folder structure as base-theme. \ No newline at end of file diff --git a/templates/paragraphs/README.txt b/templates/paragraphs/README.txt new file mode 100644 index 00000000..9ee4a308 --- /dev/null +++ b/templates/paragraphs/README.txt @@ -0,0 +1 @@ +Place paragraphs template files here. diff --git a/templates/patterns/README.txt b/templates/patterns/README.txt new file mode 100644 index 00000000..819416ff --- /dev/null +++ b/templates/patterns/README.txt @@ -0,0 +1 @@ +Place patterns template files here. diff --git a/whitelabel.theme b/whitelabel.theme deleted file mode 100644 index 5ecfd45c..00000000 --- a/whitelabel.theme +++ /dev/null @@ -1,6 +0,0 @@ -<?php - -/** - * @file - * The oe_whitelabel_theme hooks. - */ -- GitLab From 3dc8a5398bcc4ba1d5003fd6ca99825a8e6dda86 Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Fri, 30 Jul 2021 11:09:59 +0000 Subject: [PATCH 05/25] OEL-309: Improve instructions in readme file. --- README.md | 124 ++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 115 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index d48b1e46..c2c3afad 100644 --- a/README.md +++ b/README.md @@ -8,24 +8,130 @@ This depends on the following software: ## Installation +The recommended way of installing the OpenEuropa Whitelabel Theme is via [Composer](https://www.drupal.org/docs/develop/using-composer/using-composer-to-manage-drupal-site-dependencies#managing-contributed). + +```bash +composer require openeuropa/oe_whitelabel +``` + +### Enable the theme + +In order to enable the theme in your project perform the following steps: + +- Enable the OpenEuropa Whitelabel Theme and set it as default ```./vendor/bin/drush config-set system.theme default oe_bootstrap_theme``` + +## Development setup + OpenEuropa Whitelabel theme uses [Webpack](https://webpack.js.org) to compile and bundle SASS and JS. -#### Step 1 Make sure you have Node and npm installed. + You can read a guide on how to install node here: https://docs.npmjs.com/getting-started/installing-node If you prefer to use [Yarn](https://yarnpkg.com) instead of npm, install Yarn by following the guide [here](https://yarnpkg.com/docs/install). -#### Step 2 -Go to the root of OpenEuropa Whitelabel theme and run the following commands: `npm install` or `yarn install`. +To install required Node.js dependencies run: + + +`npm install` or `yarn install`. + +To build the final artifacts run: + +```bash +npm run build +``` + +This will compile all SASS and JavaScript files into self-contained assets that are exposed as [Drupal libraries][11]. + +In order to download all required PHP code run: + +```bash +composer install +``` + +This will build a fully functional Drupal site in the `./build` directory that can be used to develop and showcase the +theme. + +Before setting up and installing the site make sure to customize default configuration values by copying [runner.yml.dist](runner.yml.dist) +to `./runner.yml` and override relevant properties. + +To set up the project run: + +```bash +./vendor/bin/run drupal:site-setup +``` + +A post command hook (`drupal:site-setup`) is triggered automatically after `composer install`. +It will make sure that the necessary symlinks are properly setup in the development site. +It will also perform token substitution in development configuration files such as `behat.yml.dist`. + +The development site web root should be available in the `build` directory. + +### Using Docker Compose + +Alternatively, you can build a development site using [Docker](https://www.docker.com/get-docker) and +[Docker Compose](https://docs.docker.com/compose/) with the provided configuration. + +Docker provides the necessary services and tools such as a web server and a database server to get the site running, +regardless of your local host configuration. + +#### Requirements: + +- [Docker](https://www.docker.com/get-docker) +- [Docker Compose](https://docs.docker.com/compose/) + +#### Configuration + +By default, Docker Compose reads two files, a `docker-compose.yml` and an optional `docker-compose.override.yml` file. +By convention, the `docker-compose.yml` contains your base configuration and it's provided by default. +The override file, as its name implies, can contain configuration overrides for existing services or entirely new +services. +If a service is defined in both files, Docker Compose merges the configurations. + +Find more information on Docker Compose extension mechanism on [the official Docker Compose documentation](https://docs.docker.com/compose/extends/). + +#### Usage + +To start, run: + +```bash +docker-compose up +``` + +It's advised to not daemonize `docker-compose` so you can turn it off (`CTRL+C`) quickly when you're done working. +However, if you'd like to daemonize it, you have to add the flag `-d`: + +```bash +docker-compose up -d +``` + +Then: + +```bash +docker-compose exec -u node node npm install +docker-compose exec -u node node npm run build +docker-compose exec web composer install +docker-compose exec web ./vendor/bin/run drupal:site-install +``` + +Using default configuration, the development site files should be available in the `build` directory and the development site should be available at: [http://127.0.0.1:8080/build](http://127.0.0.1:8080/build). + +#### Running the tests + +To run the grumphp checks: -#### Step 3 -Run the following command to compile Sass and watch for changes: `npm run watch` or `yarn watch`. +```bash +docker-compose exec web ./vendor/bin/grumphp run +``` -*Important:* `style` and `copy` tasks are defined in the bcl-builder config file. You can change or improve them based on your needs. [bcl-builder.config.js](bcl-builder.config.js) +To run the phpunit tests: -## Overriding inherited templates -Add template file with the same name in your sub-theme folder to have it override the template from the parent theme. -[layout](layout), [overrides](overrides), [paragraphs](paragraphs), [patterns](patterns) folders are there for this purpose. +```bash +docker-compose exec web ./vendor/bin/phpunit +``` +To run the behat tests: +```bash +docker-compose exec web ./vendor/bin/behat +``` -- GitLab From 22d4792b72f1645f4e10fce03633116faf0af423 Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Fri, 30 Jul 2021 15:36:13 +0300 Subject: [PATCH 06/25] OEL-309: Remove assets folder. --- assets/css/oe-bcl-default.css | 11634 ---------------- assets/css/oe-bcl-default.css.map | 1 - assets/css/oe-bcl-default.min.css | 2 - assets/css/oe-bcl-default.min.css.map | 1 - assets/css/oe_bootstrap_theme.style.min.css | 2 - .../css/oe_bootstrap_theme.style.min.css.map | 1 - assets/icons/bootstrap-icons.svg | 1 - assets/js/oe-bcl-default.bundle.js | 6743 --------- assets/js/oe-bcl-default.bundle.js.map | 1 - assets/js/oe-bcl-default.bundle.min.js | 2 - assets/js/oe-bcl-default.bundle.min.js.map | 1 - assets/js/oe-bcl-default.esm.js | 4962 ------- assets/js/oe-bcl-default.esm.js.map | 1 - assets/js/oe-bcl-default.esm.min.js | 2 - assets/js/oe-bcl-default.esm.min.js.map | 1 - assets/js/oe-bcl-default.umd.js | 6914 --------- assets/js/oe-bcl-default.umd.js.map | 1 - assets/js/oe-bcl-default.umd.min.js | 2 - assets/js/oe-bcl-default.umd.min.js.map | 1 - assets/js/progress.js | 74 - 20 files changed, 30347 deletions(-) delete mode 100644 assets/css/oe-bcl-default.css delete mode 100644 assets/css/oe-bcl-default.css.map delete mode 100644 assets/css/oe-bcl-default.min.css delete mode 100644 assets/css/oe-bcl-default.min.css.map delete mode 100644 assets/css/oe_bootstrap_theme.style.min.css delete mode 100644 assets/css/oe_bootstrap_theme.style.min.css.map delete mode 100644 assets/icons/bootstrap-icons.svg delete mode 100644 assets/js/oe-bcl-default.bundle.js delete mode 100644 assets/js/oe-bcl-default.bundle.js.map delete mode 100644 assets/js/oe-bcl-default.bundle.min.js delete mode 100644 assets/js/oe-bcl-default.bundle.min.js.map delete mode 100644 assets/js/oe-bcl-default.esm.js delete mode 100644 assets/js/oe-bcl-default.esm.js.map delete mode 100644 assets/js/oe-bcl-default.esm.min.js delete mode 100644 assets/js/oe-bcl-default.esm.min.js.map delete mode 100644 assets/js/oe-bcl-default.umd.js delete mode 100644 assets/js/oe-bcl-default.umd.js.map delete mode 100644 assets/js/oe-bcl-default.umd.min.js delete mode 100644 assets/js/oe-bcl-default.umd.min.js.map delete mode 100644 assets/js/progress.js diff --git a/assets/css/oe-bcl-default.css b/assets/css/oe-bcl-default.css deleted file mode 100644 index 42cb3a32..00000000 --- a/assets/css/oe-bcl-default.css +++ /dev/null @@ -1,11634 +0,0 @@ -@charset "UTF-8"; -:root { - --bs-blue: #0d6efd; - --bs-indigo: #6610f2; - --bs-purple: #6f42c1; - --bs-pink: #d63384; - --bs-red: #dc3545; - --bs-orange: #fd7e14; - --bs-yellow: #ffc107; - --bs-green: #198754; - --bs-teal: #20c997; - --bs-cyan: #0dcaf0; - --bs-white: #fff; - --bs-gray: #6c757d; - --bs-gray-dark: #343a40; - --bs-primary: #0d6efd; - --bs-secondary: #6c757d; - --bs-success: #198754; - --bs-info: #0dcaf0; - --bs-warning: #ffc107; - --bs-danger: #dc3545; - --bs-light: #f8f9fa; - --bs-dark: #212529; - --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)); -} - -*, -*::before, -*::after { - box-sizing: border-box; -} - -@media (prefers-reduced-motion: no-preference) { - :root { - scroll-behavior: smooth; - } -} - -body { - margin: 0; - font-family: var(--bs-font-sans-serif); - font-size: 1rem; - font-weight: 400; - line-height: 1.5; - color: #212529; - background-color: #fff; - -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: 0.25; -} - -hr:not([size]) { - height: 1px; -} - -h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 { - margin-top: 0; - margin-bottom: 0.5rem; - font-weight: 500; - line-height: 1.2; -} - -h1, .h1 { - font-size: calc(1.375rem + 1.5vw); -} -@media (min-width: 1200px) { - h1, .h1 { - font-size: 2.5rem; - } -} - -h2, .h2 { - font-size: calc(1.325rem + 0.9vw); -} -@media (min-width: 1200px) { - h2, .h2 { - font-size: 2rem; - } -} - -h3, .h3 { - font-size: calc(1.3rem + 0.6vw); -} -@media (min-width: 1200px) { - h3, .h3 { - font-size: 1.75rem; - } -} - -h4, .h4 { - font-size: calc(1.275rem + 0.3vw); -} -@media (min-width: 1200px) { - h4, .h4 { - font-size: 1.5rem; - } -} - -h5, .h5 { - font-size: 1.25rem; -} - -h6, .h6 { - font-size: 1rem; -} - -p { - margin-top: 0; - margin-bottom: 1rem; -} - -abbr[title], -abbr[data-bs-original-title] { - -webkit-text-decoration: underline dotted; - text-decoration: underline dotted; - cursor: help; - -webkit-text-decoration-skip-ink: none; - 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: 0.5rem; - margin-left: 0; -} - -blockquote { - margin: 0 0 1rem; -} - -b, -strong { - font-weight: bolder; -} - -small, .small { - font-size: 0.875em; -} - -mark, .mark { - padding: 0.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: #0d6efd; - text-decoration: underline; -} -a:hover { - color: #0a58ca; -} - -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; -} -pre code { - font-size: inherit; - color: inherit; - word-break: normal; -} - -code { - font-size: 0.875em; - color: #d63384; - word-wrap: break-word; -} -a > code { - color: inherit; -} - -kbd { - padding: 0.2rem 0.4rem; - font-size: 0.875em; - color: #fff; - background-color: #212529; - border-radius: 0.2rem; -} -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: 0.5rem; - padding-bottom: 0.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: 0.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; -} - -/* rtl:raw: -[type="tel"], -[type="url"], -[type="email"], -[type="number"] { - direction: ltr; -} -*/ -::-webkit-search-decoration { - -webkit-appearance: none; -} - -::-webkit-color-swatch-wrapper { - padding: 0; -} - -::-webkit-file-upload-button { - font: inherit; -} - -::file-selector-button { - font: inherit; -} - -::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: 0.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: 0.25rem; - background-color: #fff; - border: 1px solid #dee2e6; - border-radius: 0.25rem; - max-width: 100%; - height: auto; -} - -.figure { - display: inline-block; -} - -.figure-img { - margin-bottom: 0.5rem; - line-height: 1; -} - -.figure-caption { - font-size: 0.875em; - color: #6c757d; -} - -.container, -.container-fluid, -.container-xxl, -.container-xl, -.container-lg, -.container-md, -.container-sm { - width: 100%; - padding-right: var(--bs-gutter-x, 0.75rem); - padding-left: var(--bs-gutter-x, 0.75rem); - margin-right: auto; - margin-left: auto; -} - -@media (min-width: 576px) { - .container-sm, .container { - max-width: 540px; - } -} -@media (min-width: 768px) { - .container-md, .container-sm, .container { - max-width: 720px; - } -} -@media (min-width: 992px) { - .container-lg, .container-md, .container-sm, .container { - max-width: 960px; - } -} -@media (min-width: 1200px) { - .container-xl, .container-lg, .container-md, .container-sm, .container { - max-width: 1140px; - } -} -@media (min-width: 1400px) { - .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container { - max-width: 1320px; - } -} -.row { - --bs-gutter-x: 1.5rem; - --bs-gutter-y: 0; - display: -ms-flexbox; - display: flex; - -ms-flex-wrap: wrap; - flex-wrap: wrap; - margin-top: calc(var(--bs-gutter-y) * -1); - margin-right: calc(var(--bs-gutter-x) * -.5); - margin-left: calc(var(--bs-gutter-x) * -.5); -} -.row > * { - -ms-flex-negative: 0; - flex-shrink: 0; - width: 100%; - max-width: 100%; - padding-right: calc(var(--bs-gutter-x) * .5); - padding-left: calc(var(--bs-gutter-x) * .5); - margin-top: var(--bs-gutter-y); -} - -.col { - -ms-flex: 1 0 0%; - flex: 1 0 0%; -} - -.row-cols-auto > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: auto; -} - -.row-cols-1 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 100%; -} - -.row-cols-2 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 50%; -} - -.row-cols-3 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 33.3333333333%; -} - -.row-cols-4 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 25%; -} - -.row-cols-5 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 20%; -} - -.row-cols-6 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 16.6666666667%; -} - -@media (min-width: 576px) { - .col-sm { - -ms-flex: 1 0 0%; - flex: 1 0 0%; - } - - .row-cols-sm-auto > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: auto; - } - - .row-cols-sm-1 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 100%; - } - - .row-cols-sm-2 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 50%; - } - - .row-cols-sm-3 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 33.3333333333%; - } - - .row-cols-sm-4 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 25%; - } - - .row-cols-sm-5 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 20%; - } - - .row-cols-sm-6 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 16.6666666667%; - } -} -@media (min-width: 768px) { - .col-md { - -ms-flex: 1 0 0%; - flex: 1 0 0%; - } - - .row-cols-md-auto > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: auto; - } - - .row-cols-md-1 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 100%; - } - - .row-cols-md-2 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 50%; - } - - .row-cols-md-3 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 33.3333333333%; - } - - .row-cols-md-4 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 25%; - } - - .row-cols-md-5 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 20%; - } - - .row-cols-md-6 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 16.6666666667%; - } -} -@media (min-width: 992px) { - .col-lg { - -ms-flex: 1 0 0%; - flex: 1 0 0%; - } - - .row-cols-lg-auto > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: auto; - } - - .row-cols-lg-1 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 100%; - } - - .row-cols-lg-2 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 50%; - } - - .row-cols-lg-3 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 33.3333333333%; - } - - .row-cols-lg-4 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 25%; - } - - .row-cols-lg-5 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 20%; - } - - .row-cols-lg-6 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 16.6666666667%; - } -} -@media (min-width: 1200px) { - .col-xl { - -ms-flex: 1 0 0%; - flex: 1 0 0%; - } - - .row-cols-xl-auto > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: auto; - } - - .row-cols-xl-1 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 100%; - } - - .row-cols-xl-2 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 50%; - } - - .row-cols-xl-3 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 33.3333333333%; - } - - .row-cols-xl-4 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 25%; - } - - .row-cols-xl-5 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 20%; - } - - .row-cols-xl-6 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 16.6666666667%; - } -} -@media (min-width: 1400px) { - .col-xxl { - -ms-flex: 1 0 0%; - flex: 1 0 0%; - } - - .row-cols-xxl-auto > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: auto; - } - - .row-cols-xxl-1 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 100%; - } - - .row-cols-xxl-2 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 50%; - } - - .row-cols-xxl-3 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 33.3333333333%; - } - - .row-cols-xxl-4 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 25%; - } - - .row-cols-xxl-5 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 20%; - } - - .row-cols-xxl-6 > * { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 16.6666666667%; - } -} -.col-auto { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: auto; -} - -.col-1 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 8.33333333%; -} - -.col-2 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 16.66666667%; -} - -.col-3 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 25%; -} - -.col-4 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 33.33333333%; -} - -.col-5 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 41.66666667%; -} - -.col-6 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 50%; -} - -.col-7 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 58.33333333%; -} - -.col-8 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 66.66666667%; -} - -.col-9 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 75%; -} - -.col-10 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 83.33333333%; -} - -.col-11 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 91.66666667%; -} - -.col-12 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 100%; -} - -.offset-1 { - margin-left: 8.33333333%; -} - -.offset-2 { - margin-left: 16.66666667%; -} - -.offset-3 { - margin-left: 25%; -} - -.offset-4 { - margin-left: 33.33333333%; -} - -.offset-5 { - margin-left: 41.66666667%; -} - -.offset-6 { - margin-left: 50%; -} - -.offset-7 { - margin-left: 58.33333333%; -} - -.offset-8 { - margin-left: 66.66666667%; -} - -.offset-9 { - margin-left: 75%; -} - -.offset-10 { - margin-left: 83.33333333%; -} - -.offset-11 { - margin-left: 91.66666667%; -} - -.g-0, -.gx-0 { - --bs-gutter-x: 0; -} - -.g-0, -.gy-0 { - --bs-gutter-y: 0; -} - -.g-1, -.gx-1 { - --bs-gutter-x: 0.25rem; -} - -.g-1, -.gy-1 { - --bs-gutter-y: 0.25rem; -} - -.g-2, -.gx-2 { - --bs-gutter-x: 0.5rem; -} - -.g-2, -.gy-2 { - --bs-gutter-y: 0.5rem; -} - -.g-3, -.gx-3 { - --bs-gutter-x: 1rem; -} - -.g-3, -.gy-3 { - --bs-gutter-y: 1rem; -} - -.g-4, -.gx-4 { - --bs-gutter-x: 1.5rem; -} - -.g-4, -.gy-4 { - --bs-gutter-y: 1.5rem; -} - -.g-5, -.gx-5 { - --bs-gutter-x: 3rem; -} - -.g-5, -.gy-5 { - --bs-gutter-y: 3rem; -} - -@media (min-width: 576px) { - .col-sm-auto { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: auto; - } - - .col-sm-1 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 8.33333333%; - } - - .col-sm-2 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 16.66666667%; - } - - .col-sm-3 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 25%; - } - - .col-sm-4 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 33.33333333%; - } - - .col-sm-5 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 41.66666667%; - } - - .col-sm-6 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 50%; - } - - .col-sm-7 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 58.33333333%; - } - - .col-sm-8 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 66.66666667%; - } - - .col-sm-9 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 75%; - } - - .col-sm-10 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 83.33333333%; - } - - .col-sm-11 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 91.66666667%; - } - - .col-sm-12 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 100%; - } - - .offset-sm-0 { - margin-left: 0; - } - - .offset-sm-1 { - margin-left: 8.33333333%; - } - - .offset-sm-2 { - margin-left: 16.66666667%; - } - - .offset-sm-3 { - margin-left: 25%; - } - - .offset-sm-4 { - margin-left: 33.33333333%; - } - - .offset-sm-5 { - margin-left: 41.66666667%; - } - - .offset-sm-6 { - margin-left: 50%; - } - - .offset-sm-7 { - margin-left: 58.33333333%; - } - - .offset-sm-8 { - margin-left: 66.66666667%; - } - - .offset-sm-9 { - margin-left: 75%; - } - - .offset-sm-10 { - margin-left: 83.33333333%; - } - - .offset-sm-11 { - margin-left: 91.66666667%; - } - - .g-sm-0, -.gx-sm-0 { - --bs-gutter-x: 0; - } - - .g-sm-0, -.gy-sm-0 { - --bs-gutter-y: 0; - } - - .g-sm-1, -.gx-sm-1 { - --bs-gutter-x: 0.25rem; - } - - .g-sm-1, -.gy-sm-1 { - --bs-gutter-y: 0.25rem; - } - - .g-sm-2, -.gx-sm-2 { - --bs-gutter-x: 0.5rem; - } - - .g-sm-2, -.gy-sm-2 { - --bs-gutter-y: 0.5rem; - } - - .g-sm-3, -.gx-sm-3 { - --bs-gutter-x: 1rem; - } - - .g-sm-3, -.gy-sm-3 { - --bs-gutter-y: 1rem; - } - - .g-sm-4, -.gx-sm-4 { - --bs-gutter-x: 1.5rem; - } - - .g-sm-4, -.gy-sm-4 { - --bs-gutter-y: 1.5rem; - } - - .g-sm-5, -.gx-sm-5 { - --bs-gutter-x: 3rem; - } - - .g-sm-5, -.gy-sm-5 { - --bs-gutter-y: 3rem; - } -} -@media (min-width: 768px) { - .col-md-auto { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: auto; - } - - .col-md-1 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 8.33333333%; - } - - .col-md-2 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 16.66666667%; - } - - .col-md-3 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 25%; - } - - .col-md-4 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 33.33333333%; - } - - .col-md-5 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 41.66666667%; - } - - .col-md-6 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 50%; - } - - .col-md-7 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 58.33333333%; - } - - .col-md-8 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 66.66666667%; - } - - .col-md-9 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 75%; - } - - .col-md-10 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 83.33333333%; - } - - .col-md-11 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 91.66666667%; - } - - .col-md-12 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 100%; - } - - .offset-md-0 { - margin-left: 0; - } - - .offset-md-1 { - margin-left: 8.33333333%; - } - - .offset-md-2 { - margin-left: 16.66666667%; - } - - .offset-md-3 { - margin-left: 25%; - } - - .offset-md-4 { - margin-left: 33.33333333%; - } - - .offset-md-5 { - margin-left: 41.66666667%; - } - - .offset-md-6 { - margin-left: 50%; - } - - .offset-md-7 { - margin-left: 58.33333333%; - } - - .offset-md-8 { - margin-left: 66.66666667%; - } - - .offset-md-9 { - margin-left: 75%; - } - - .offset-md-10 { - margin-left: 83.33333333%; - } - - .offset-md-11 { - margin-left: 91.66666667%; - } - - .g-md-0, -.gx-md-0 { - --bs-gutter-x: 0; - } - - .g-md-0, -.gy-md-0 { - --bs-gutter-y: 0; - } - - .g-md-1, -.gx-md-1 { - --bs-gutter-x: 0.25rem; - } - - .g-md-1, -.gy-md-1 { - --bs-gutter-y: 0.25rem; - } - - .g-md-2, -.gx-md-2 { - --bs-gutter-x: 0.5rem; - } - - .g-md-2, -.gy-md-2 { - --bs-gutter-y: 0.5rem; - } - - .g-md-3, -.gx-md-3 { - --bs-gutter-x: 1rem; - } - - .g-md-3, -.gy-md-3 { - --bs-gutter-y: 1rem; - } - - .g-md-4, -.gx-md-4 { - --bs-gutter-x: 1.5rem; - } - - .g-md-4, -.gy-md-4 { - --bs-gutter-y: 1.5rem; - } - - .g-md-5, -.gx-md-5 { - --bs-gutter-x: 3rem; - } - - .g-md-5, -.gy-md-5 { - --bs-gutter-y: 3rem; - } -} -@media (min-width: 992px) { - .col-lg-auto { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: auto; - } - - .col-lg-1 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 8.33333333%; - } - - .col-lg-2 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 16.66666667%; - } - - .col-lg-3 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 25%; - } - - .col-lg-4 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 33.33333333%; - } - - .col-lg-5 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 41.66666667%; - } - - .col-lg-6 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 50%; - } - - .col-lg-7 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 58.33333333%; - } - - .col-lg-8 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 66.66666667%; - } - - .col-lg-9 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 75%; - } - - .col-lg-10 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 83.33333333%; - } - - .col-lg-11 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 91.66666667%; - } - - .col-lg-12 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 100%; - } - - .offset-lg-0 { - margin-left: 0; - } - - .offset-lg-1 { - margin-left: 8.33333333%; - } - - .offset-lg-2 { - margin-left: 16.66666667%; - } - - .offset-lg-3 { - margin-left: 25%; - } - - .offset-lg-4 { - margin-left: 33.33333333%; - } - - .offset-lg-5 { - margin-left: 41.66666667%; - } - - .offset-lg-6 { - margin-left: 50%; - } - - .offset-lg-7 { - margin-left: 58.33333333%; - } - - .offset-lg-8 { - margin-left: 66.66666667%; - } - - .offset-lg-9 { - margin-left: 75%; - } - - .offset-lg-10 { - margin-left: 83.33333333%; - } - - .offset-lg-11 { - margin-left: 91.66666667%; - } - - .g-lg-0, -.gx-lg-0 { - --bs-gutter-x: 0; - } - - .g-lg-0, -.gy-lg-0 { - --bs-gutter-y: 0; - } - - .g-lg-1, -.gx-lg-1 { - --bs-gutter-x: 0.25rem; - } - - .g-lg-1, -.gy-lg-1 { - --bs-gutter-y: 0.25rem; - } - - .g-lg-2, -.gx-lg-2 { - --bs-gutter-x: 0.5rem; - } - - .g-lg-2, -.gy-lg-2 { - --bs-gutter-y: 0.5rem; - } - - .g-lg-3, -.gx-lg-3 { - --bs-gutter-x: 1rem; - } - - .g-lg-3, -.gy-lg-3 { - --bs-gutter-y: 1rem; - } - - .g-lg-4, -.gx-lg-4 { - --bs-gutter-x: 1.5rem; - } - - .g-lg-4, -.gy-lg-4 { - --bs-gutter-y: 1.5rem; - } - - .g-lg-5, -.gx-lg-5 { - --bs-gutter-x: 3rem; - } - - .g-lg-5, -.gy-lg-5 { - --bs-gutter-y: 3rem; - } -} -@media (min-width: 1200px) { - .col-xl-auto { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: auto; - } - - .col-xl-1 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 8.33333333%; - } - - .col-xl-2 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 16.66666667%; - } - - .col-xl-3 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 25%; - } - - .col-xl-4 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 33.33333333%; - } - - .col-xl-5 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 41.66666667%; - } - - .col-xl-6 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 50%; - } - - .col-xl-7 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 58.33333333%; - } - - .col-xl-8 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 66.66666667%; - } - - .col-xl-9 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 75%; - } - - .col-xl-10 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 83.33333333%; - } - - .col-xl-11 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 91.66666667%; - } - - .col-xl-12 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 100%; - } - - .offset-xl-0 { - margin-left: 0; - } - - .offset-xl-1 { - margin-left: 8.33333333%; - } - - .offset-xl-2 { - margin-left: 16.66666667%; - } - - .offset-xl-3 { - margin-left: 25%; - } - - .offset-xl-4 { - margin-left: 33.33333333%; - } - - .offset-xl-5 { - margin-left: 41.66666667%; - } - - .offset-xl-6 { - margin-left: 50%; - } - - .offset-xl-7 { - margin-left: 58.33333333%; - } - - .offset-xl-8 { - margin-left: 66.66666667%; - } - - .offset-xl-9 { - margin-left: 75%; - } - - .offset-xl-10 { - margin-left: 83.33333333%; - } - - .offset-xl-11 { - margin-left: 91.66666667%; - } - - .g-xl-0, -.gx-xl-0 { - --bs-gutter-x: 0; - } - - .g-xl-0, -.gy-xl-0 { - --bs-gutter-y: 0; - } - - .g-xl-1, -.gx-xl-1 { - --bs-gutter-x: 0.25rem; - } - - .g-xl-1, -.gy-xl-1 { - --bs-gutter-y: 0.25rem; - } - - .g-xl-2, -.gx-xl-2 { - --bs-gutter-x: 0.5rem; - } - - .g-xl-2, -.gy-xl-2 { - --bs-gutter-y: 0.5rem; - } - - .g-xl-3, -.gx-xl-3 { - --bs-gutter-x: 1rem; - } - - .g-xl-3, -.gy-xl-3 { - --bs-gutter-y: 1rem; - } - - .g-xl-4, -.gx-xl-4 { - --bs-gutter-x: 1.5rem; - } - - .g-xl-4, -.gy-xl-4 { - --bs-gutter-y: 1.5rem; - } - - .g-xl-5, -.gx-xl-5 { - --bs-gutter-x: 3rem; - } - - .g-xl-5, -.gy-xl-5 { - --bs-gutter-y: 3rem; - } -} -@media (min-width: 1400px) { - .col-xxl-auto { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: auto; - } - - .col-xxl-1 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 8.33333333%; - } - - .col-xxl-2 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 16.66666667%; - } - - .col-xxl-3 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 25%; - } - - .col-xxl-4 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 33.33333333%; - } - - .col-xxl-5 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 41.66666667%; - } - - .col-xxl-6 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 50%; - } - - .col-xxl-7 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 58.33333333%; - } - - .col-xxl-8 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 66.66666667%; - } - - .col-xxl-9 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 75%; - } - - .col-xxl-10 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 83.33333333%; - } - - .col-xxl-11 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 91.66666667%; - } - - .col-xxl-12 { - -ms-flex: 0 0 auto; - flex: 0 0 auto; - width: 100%; - } - - .offset-xxl-0 { - margin-left: 0; - } - - .offset-xxl-1 { - margin-left: 8.33333333%; - } - - .offset-xxl-2 { - margin-left: 16.66666667%; - } - - .offset-xxl-3 { - margin-left: 25%; - } - - .offset-xxl-4 { - margin-left: 33.33333333%; - } - - .offset-xxl-5 { - margin-left: 41.66666667%; - } - - .offset-xxl-6 { - margin-left: 50%; - } - - .offset-xxl-7 { - margin-left: 58.33333333%; - } - - .offset-xxl-8 { - margin-left: 66.66666667%; - } - - .offset-xxl-9 { - margin-left: 75%; - } - - .offset-xxl-10 { - margin-left: 83.33333333%; - } - - .offset-xxl-11 { - margin-left: 91.66666667%; - } - - .g-xxl-0, -.gx-xxl-0 { - --bs-gutter-x: 0; - } - - .g-xxl-0, -.gy-xxl-0 { - --bs-gutter-y: 0; - } - - .g-xxl-1, -.gx-xxl-1 { - --bs-gutter-x: 0.25rem; - } - - .g-xxl-1, -.gy-xxl-1 { - --bs-gutter-y: 0.25rem; - } - - .g-xxl-2, -.gx-xxl-2 { - --bs-gutter-x: 0.5rem; - } - - .g-xxl-2, -.gy-xxl-2 { - --bs-gutter-y: 0.5rem; - } - - .g-xxl-3, -.gx-xxl-3 { - --bs-gutter-x: 1rem; - } - - .g-xxl-3, -.gy-xxl-3 { - --bs-gutter-y: 1rem; - } - - .g-xxl-4, -.gx-xxl-4 { - --bs-gutter-x: 1.5rem; - } - - .g-xxl-4, -.gy-xxl-4 { - --bs-gutter-y: 1.5rem; - } - - .g-xxl-5, -.gx-xxl-5 { - --bs-gutter-x: 3rem; - } - - .g-xxl-5, -.gy-xxl-5 { - --bs-gutter-y: 3rem; - } -} -.table { - --bs-table-bg: transparent; - --bs-table-accent-bg: transparent; - --bs-table-striped-color: #212529; - --bs-table-striped-bg: rgba(0, 0, 0, 0.05); - --bs-table-active-color: #212529; - --bs-table-active-bg: rgba(0, 0, 0, 0.1); - --bs-table-hover-color: #212529; - --bs-table-hover-bg: rgba(0, 0, 0, 0.075); - width: 100%; - margin-bottom: 1rem; - color: #212529; - vertical-align: top; - border-color: #dee2e6; -} -.table > :not(caption) > * > * { - padding: 0.5rem 0.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(:last-child) > :last-child > * { - border-bottom-color: currentColor; -} - -.caption-top { - caption-side: top; -} - -.table-sm > :not(caption) > * > * { - padding: 0.25rem 0.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-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: #cfe2ff; - --bs-table-striped-bg: #c5d7f2; - --bs-table-striped-color: #000; - --bs-table-active-bg: #bacbe6; - --bs-table-active-color: #000; - --bs-table-hover-bg: #bfd1ec; - --bs-table-hover-color: #000; - color: #000; - border-color: #bacbe6; -} - -.table-secondary { - --bs-table-bg: #e2e3e5; - --bs-table-striped-bg: #d7d8da; - --bs-table-striped-color: #000; - --bs-table-active-bg: #cbccce; - --bs-table-active-color: #000; - --bs-table-hover-bg: #d1d2d4; - --bs-table-hover-color: #000; - color: #000; - border-color: #cbccce; -} - -.table-success { - --bs-table-bg: #d1e7dd; - --bs-table-striped-bg: #c7dbd2; - --bs-table-striped-color: #000; - --bs-table-active-bg: #bcd0c7; - --bs-table-active-color: #000; - --bs-table-hover-bg: #c1d6cc; - --bs-table-hover-color: #000; - color: #000; - border-color: #bcd0c7; -} - -.table-info { - --bs-table-bg: #cff4fc; - --bs-table-striped-bg: #c5e8ef; - --bs-table-striped-color: #000; - --bs-table-active-bg: #badce3; - --bs-table-active-color: #000; - --bs-table-hover-bg: #bfe2e9; - --bs-table-hover-color: #000; - color: #000; - border-color: #badce3; -} - -.table-warning { - --bs-table-bg: #fff3cd; - --bs-table-striped-bg: #f2e7c3; - --bs-table-striped-color: #000; - --bs-table-active-bg: #e6dbb9; - --bs-table-active-color: #000; - --bs-table-hover-bg: #ece1be; - --bs-table-hover-color: #000; - color: #000; - border-color: #e6dbb9; -} - -.table-danger { - --bs-table-bg: #f8d7da; - --bs-table-striped-bg: #eccccf; - --bs-table-striped-color: #000; - --bs-table-active-bg: #dfc2c4; - --bs-table-active-color: #000; - --bs-table-hover-bg: #e5c7ca; - --bs-table-hover-color: #000; - color: #000; - border-color: #dfc2c4; -} - -.table-light { - --bs-table-bg: #f8f9fa; - --bs-table-striped-bg: #ecedee; - --bs-table-striped-color: #000; - --bs-table-active-bg: #dfe0e1; - --bs-table-active-color: #000; - --bs-table-hover-bg: #e5e6e7; - --bs-table-hover-color: #000; - color: #000; - border-color: #dfe0e1; -} - -.table-dark { - --bs-table-bg: #212529; - --bs-table-striped-bg: #2c3034; - --bs-table-striped-color: #fff; - --bs-table-active-bg: #373b3e; - --bs-table-active-color: #fff; - --bs-table-hover-bg: #323539; - --bs-table-hover-color: #fff; - color: #fff; - border-color: #373b3e; -} - -.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 { - margin-bottom: 0.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: 0.25rem; - font-size: 0.875em; - color: #6c757d; -} - -.form-control { - display: block; - width: 100%; - padding: 0.375rem 0.75rem; - font-size: 1rem; - font-weight: 400; - line-height: 1.5; - color: #212529; - background-color: #fff; - background-clip: padding-box; - border: 1px solid #ced4da; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; - border-radius: 0.25rem; - transition: border-color 0.15s ease-in-out, box-shadow 0.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: #212529; - background-color: #fff; - border-color: #86b7fe; - outline: 0; - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); -} -.form-control::-webkit-date-and-time-value { - height: 1.5em; -} -.form-control::-webkit-input-placeholder { - color: #6c757d; - opacity: 1; -} -.form-control::-moz-placeholder { - color: #6c757d; - opacity: 1; -} -.form-control:-ms-input-placeholder { - color: #6c757d; - opacity: 1; -} -.form-control::-ms-input-placeholder { - color: #6c757d; - opacity: 1; -} -.form-control::placeholder { - color: #6c757d; - opacity: 1; -} -.form-control:disabled, .form-control[readonly] { - background-color: #e9ecef; - opacity: 1; -} -.form-control::-webkit-file-upload-button { - padding: 0.375rem 0.75rem; - margin: -0.375rem -0.75rem; - -webkit-margin-end: 0.75rem; - margin-inline-end: 0.75rem; - color: #212529; - background-color: #e9ecef; - pointer-events: none; - border-color: inherit; - border-style: solid; - border-width: 0; - border-inline-end-width: 1px; - border-radius: 0; - -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; -} -.form-control::file-selector-button { - padding: 0.375rem 0.75rem; - margin: -0.375rem -0.75rem; - -webkit-margin-end: 0.75rem; - -moz-margin-end: 0.75rem; - margin-inline-end: 0.75rem; - color: #212529; - background-color: #e9ecef; - pointer-events: none; - border-color: inherit; - border-style: solid; - border-width: 0; - border-inline-end-width: 1px; - border-radius: 0; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; -} -.form-control::file-selector-button { - padding: 0.375rem 0.75rem; - margin: -0.375rem -0.75rem; - -webkit-margin-end: 0.75rem; - -moz-margin-end: 0.75rem; - margin-inline-end: 0.75rem; - color: #212529; - background-color: #e9ecef; - pointer-events: none; - border-color: inherit; - border-style: solid; - border-width: 0; - border-inline-end-width: 1px; - border-radius: 0; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; -} -@media (prefers-reduced-motion: reduce) { - .form-control::-webkit-file-upload-button { - -webkit-transition: none; - transition: none; - } - .form-control::file-selector-button { - transition: none; - } - .form-control::file-selector-button { - transition: none; - } -} -.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button { - background-color: #dde0e3; -} -.form-control:hover:not(:disabled):not([readonly])::file-selector-button { - background-color: #dde0e3; -} -.form-control:hover:not(:disabled):not([readonly])::file-selector-button { - background-color: #dde0e3; -} -.form-control::-webkit-file-upload-button { - padding: 0.375rem 0.75rem; - margin: -0.375rem -0.75rem; - -webkit-margin-end: 0.75rem; - margin-inline-end: 0.75rem; - color: #212529; - background-color: #e9ecef; - pointer-events: none; - border-color: inherit; - border-style: solid; - border-width: 0; - border-inline-end-width: 1px; - border-radius: 0; - -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; -} -@media (prefers-reduced-motion: reduce) { - .form-control::-webkit-file-upload-button { - -webkit-transition: none; - transition: none; - } -} -.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button { - background-color: #dde0e3; -} - -.form-control-plaintext { - display: block; - width: 100%; - padding: 0.375rem 0; - margin-bottom: 0; - line-height: 1.5; - color: #212529; - 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: 0.25rem 0.5rem; - font-size: 0.875rem; - border-radius: 0.2rem; -} -.form-control-sm::-webkit-file-upload-button { - padding: 0.25rem 0.5rem; - margin: -0.25rem -0.5rem; - -webkit-margin-end: 0.5rem; - margin-inline-end: 0.5rem; -} -.form-control-sm::file-selector-button { - padding: 0.25rem 0.5rem; - margin: -0.25rem -0.5rem; - -webkit-margin-end: 0.5rem; - -moz-margin-end: 0.5rem; - margin-inline-end: 0.5rem; -} -.form-control-sm::file-selector-button { - padding: 0.25rem 0.5rem; - margin: -0.25rem -0.5rem; - -webkit-margin-end: 0.5rem; - -moz-margin-end: 0.5rem; - margin-inline-end: 0.5rem; -} -.form-control-sm::-webkit-file-upload-button { - padding: 0.25rem 0.5rem; - margin: -0.25rem -0.5rem; - -webkit-margin-end: 0.5rem; - margin-inline-end: 0.5rem; -} - -.form-control-lg { - min-height: calc(1.5em + (1rem + 2px)); - padding: 0.5rem 1rem; - font-size: 1.25rem; - border-radius: 0.3rem; -} -.form-control-lg::-webkit-file-upload-button { - padding: 0.5rem 1rem; - margin: -0.5rem -1rem; - -webkit-margin-end: 1rem; - margin-inline-end: 1rem; -} -.form-control-lg::file-selector-button { - padding: 0.5rem 1rem; - margin: -0.5rem -1rem; - -webkit-margin-end: 1rem; - -moz-margin-end: 1rem; - margin-inline-end: 1rem; -} -.form-control-lg::file-selector-button { - padding: 0.5rem 1rem; - margin: -0.5rem -1rem; - -webkit-margin-end: 1rem; - -moz-margin-end: 1rem; - margin-inline-end: 1rem; -} -.form-control-lg::-webkit-file-upload-button { - padding: 0.5rem 1rem; - margin: -0.5rem -1rem; - -webkit-margin-end: 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 { - max-width: 3rem; - height: auto; - padding: 0.375rem; -} -.form-control-color:not(:disabled):not([readonly]) { - cursor: pointer; -} -.form-control-color::-moz-color-swatch { - height: 1.5em; - border-radius: 0.25rem; -} -.form-control-color::-webkit-color-swatch { - height: 1.5em; - border-radius: 0.25rem; -} - -.form-select { - display: block; - width: 100%; - padding: 0.375rem 2.25rem 0.375rem 0.75rem; - -moz-padding-start: calc(0.75rem - 3px); - font-size: 1rem; - font-weight: 400; - line-height: 1.5; - color: #212529; - 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 0.75rem center; - background-size: 16px 12px; - border: 1px solid #ced4da; - border-radius: 0.25rem; - transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; -} -@media (prefers-reduced-motion: reduce) { - .form-select { - transition: none; - } -} -.form-select:focus { - border-color: #86b7fe; - outline: 0; - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); -} -.form-select[multiple], .form-select[size]:not([size="1"]) { - padding-right: 0.75rem; - background-image: none; -} -.form-select:disabled { - background-color: #e9ecef; -} -.form-select:-moz-focusring { - color: transparent; - text-shadow: 0 0 0 #212529; -} - -.form-select-sm { - padding-top: 0.25rem; - padding-bottom: 0.25rem; - padding-left: 0.5rem; - font-size: 0.875rem; -} - -.form-select-lg { - padding-top: 0.5rem; - padding-bottom: 0.5rem; - padding-left: 1rem; - font-size: 1.25rem; -} - -.form-check { - display: block; - min-height: 1.5rem; - padding-left: 1.5em; - margin-bottom: 0.125rem; -} -.form-check .form-check-input { - float: left; - margin-left: -1.5em; -} - -.form-check-input { - width: 1em; - height: 1em; - margin-top: 0.25em; - vertical-align: top; - background-color: #fff; - background-repeat: no-repeat; - background-position: center; - background-size: contain; - border: 1px solid rgba(0, 0, 0, 0.25); - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; - -webkit-print-color-adjust: exact; - color-adjust: exact; -} -.form-check-input[type=checkbox] { - border-radius: 0.25em; -} -.form-check-input[type=radio] { - border-radius: 50%; -} -.form-check-input:active { - -webkit-filter: brightness(90%); - filter: brightness(90%); -} -.form-check-input:focus { - border-color: #86b7fe; - outline: 0; - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); -} -.form-check-input:checked { - background-color: #0d6efd; - border-color: #0d6efd; -} -.form-check-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] { - 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 { - background-color: #0d6efd; - border-color: #0d6efd; - 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 { - pointer-events: none; - -webkit-filter: none; - filter: none; - opacity: 0.5; -} -.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label { - opacity: 0.5; -} - -.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; - border-radius: 2em; - transition: background-position 0.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='%2386b7fe'/%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 { - 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; - -webkit-filter: none; - filter: none; - opacity: 0.65; -} - -.form-range { - width: 100%; - height: 1.5rem; - padding: 0; - background-color: transparent; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; -} -.form-range:focus { - outline: 0; -} -.form-range:focus::-webkit-slider-thumb { - box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25); -} -.form-range:focus::-moz-range-thumb { - box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25); -} -.form-range::-moz-focus-outer { - border: 0; -} -.form-range::-webkit-slider-thumb { - width: 1rem; - height: 1rem; - margin-top: -0.25rem; - background-color: #0d6efd; - border: 0; - border-radius: 1rem; - -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - -webkit-appearance: none; - appearance: none; -} -@media (prefers-reduced-motion: reduce) { - .form-range::-webkit-slider-thumb { - -webkit-transition: none; - transition: none; - } -} -.form-range::-webkit-slider-thumb:active { - background-color: #b6d4fe; -} -.form-range::-webkit-slider-runnable-track { - width: 100%; - height: 0.5rem; - color: transparent; - cursor: pointer; - background-color: #dee2e6; - border-color: transparent; - border-radius: 1rem; -} -.form-range::-moz-range-thumb { - width: 1rem; - height: 1rem; - background-color: #0d6efd; - border: 0; - border-radius: 1rem; - -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - -moz-appearance: none; - appearance: none; -} -@media (prefers-reduced-motion: reduce) { - .form-range::-moz-range-thumb { - -moz-transition: none; - transition: none; - } -} -.form-range::-moz-range-thumb:active { - background-color: #b6d4fe; -} -.form-range::-moz-range-track { - width: 100%; - height: 0.5rem; - color: transparent; - cursor: pointer; - background-color: #dee2e6; - border-color: transparent; - border-radius: 1rem; -} -.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 0.75rem; - pointer-events: none; - border: 1px solid transparent; - -webkit-transform-origin: 0 0; - transform-origin: 0 0; - transition: opacity 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out; - transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out; - transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out; -} -@media (prefers-reduced-motion: reduce) { - .form-floating > label { - transition: none; - } -} -.form-floating > .form-control { - padding: 1rem 0.75rem; -} -.form-floating > .form-control::-webkit-input-placeholder { - color: transparent; -} -.form-floating > .form-control::-moz-placeholder { - color: transparent; -} -.form-floating > .form-control:-ms-input-placeholder { - color: transparent; -} -.form-floating > .form-control::-ms-input-placeholder { - color: transparent; -} -.form-floating > .form-control::placeholder { - color: transparent; -} -.form-floating > .form-control:not(:-moz-placeholder-shown) { - padding-top: 1.625rem; - padding-bottom: 0.625rem; -} -.form-floating > .form-control:not(:-ms-input-placeholder) { - padding-top: 1.625rem; - padding-bottom: 0.625rem; -} -.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown) { - padding-top: 1.625rem; - padding-bottom: 0.625rem; -} -.form-floating > .form-control:-webkit-autofill { - padding-top: 1.625rem; - padding-bottom: 0.625rem; -} -.form-floating > .form-select { - padding-top: 1.625rem; - padding-bottom: 0.625rem; -} -.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label { - opacity: 0.65; - transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); -} -.form-floating > .form-control:not(:-ms-input-placeholder) ~ label { - opacity: 0.65; - transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); -} -.form-floating > .form-control:focus ~ label, -.form-floating > .form-control:not(:placeholder-shown) ~ label, -.form-floating > .form-select ~ label { - opacity: 0.65; - -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); - transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); -} -.form-floating > .form-control:-webkit-autofill ~ label { - opacity: 0.65; - -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); - transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); -} - -.input-group { - position: relative; - display: -ms-flexbox; - display: flex; - -ms-flex-wrap: wrap; - flex-wrap: wrap; - -ms-flex-align: stretch; - align-items: stretch; - width: 100%; -} -.input-group > .form-control, -.input-group > .form-select { - position: relative; - -ms-flex: 1 1 auto; - 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: -ms-flexbox; - display: flex; - -ms-flex-align: center; - align-items: center; - padding: 0.375rem 0.75rem; - font-size: 1rem; - font-weight: 400; - line-height: 1.5; - color: #212529; - text-align: center; - white-space: nowrap; - background-color: #e9ecef; - border: 1px solid #ced4da; - border-radius: 0.25rem; -} - -.input-group-lg > .form-control, -.input-group-lg > .form-select, -.input-group-lg > .input-group-text, -.input-group-lg > .btn { - padding: 0.5rem 1rem; - font-size: 1.25rem; - border-radius: 0.3rem; -} - -.input-group-sm > .form-control, -.input-group-sm > .form-select, -.input-group-sm > .input-group-text, -.input-group-sm > .btn { - padding: 0.25rem 0.5rem; - font-size: 0.875rem; - border-radius: 0.2rem; -} - -.input-group-lg > .form-select, -.input-group-sm > .form-select { - padding-right: 3rem; -} - -.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu), -.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3) { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} -.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu), -.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4) { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} -.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) { - margin-left: -1px; - border-top-left-radius: 0; - border-bottom-left-radius: 0; -} - -.valid-feedback { - display: none; - width: 100%; - margin-top: 0.25rem; - font-size: 0.875em; - color: #198754; -} - -.valid-tooltip { - position: absolute; - top: 100%; - z-index: 5; - display: none; - max-width: 100%; - padding: 0.25rem 0.5rem; - margin-top: 0.1rem; - font-size: 0.875rem; - color: #fff; - background-color: rgba(25, 135, 84, 0.9); - border-radius: 0.25rem; -} - -.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: #198754; - 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='%23198754' 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: #198754; - box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.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: #198754; -} -.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='%23198754' 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 0.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: #198754; - box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); -} - -.was-validated .form-check-input:valid, .form-check-input.is-valid { - border-color: #198754; -} -.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked { - background-color: #198754; -} -.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus { - box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); -} -.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label { - color: #198754; -} - -.form-check-inline .form-check-input ~ .valid-feedback { - margin-left: 0.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: 0.25rem; - font-size: 0.875em; - color: #dc3545; -} - -.invalid-tooltip { - position: absolute; - top: 100%; - z-index: 5; - display: none; - max-width: 100%; - padding: 0.25rem 0.5rem; - margin-top: 0.1rem; - font-size: 0.875rem; - color: #fff; - background-color: rgba(220, 53, 69, 0.9); - border-radius: 0.25rem; -} - -.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: #dc3545; - 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='%23dc3545'%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='%23dc3545' 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: #dc3545; - box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.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: #dc3545; -} -.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='%23dc3545'%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='%23dc3545' stroke='none'/%3e%3c/svg%3e"); - background-position: right 0.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: #dc3545; - box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); -} - -.was-validated .form-check-input:invalid, .form-check-input.is-invalid { - border-color: #dc3545; -} -.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked { - background-color: #dc3545; -} -.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus { - box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); -} -.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label { - color: #dc3545; -} - -.form-check-inline .form-check-input ~ .invalid-feedback { - margin-left: 0.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: #212529; - text-align: center; - text-decoration: none; - vertical-align: middle; - cursor: pointer; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - background-color: transparent; - border: 1px solid transparent; - padding: 0.375rem 0.75rem; - font-size: 1rem; - border-radius: 0.25rem; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; -} -@media (prefers-reduced-motion: reduce) { - .btn { - transition: none; - } -} -.btn:hover { - color: #212529; -} -.btn-check:focus + .btn, .btn:focus { - outline: 0; - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); -} -.btn:disabled, .btn.disabled, fieldset:disabled .btn { - pointer-events: none; - opacity: 0.65; -} - -.btn-primary { - color: #fff; - background-color: #0d6efd; - border-color: #0d6efd; -} -.btn-primary:hover { - color: #fff; - background-color: #0b5ed7; - border-color: #0a58ca; -} -.btn-check:focus + .btn-primary, .btn-primary:focus { - color: #fff; - background-color: #0b5ed7; - border-color: #0a58ca; - box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.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: #0a58ca; - border-color: #0a53be; -} -.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 0.25rem rgba(49, 132, 253, 0.5); -} -.btn-primary:disabled, .btn-primary.disabled { - color: #fff; - background-color: #0d6efd; - border-color: #0d6efd; -} - -.btn-secondary { - color: #fff; - background-color: #6c757d; - border-color: #6c757d; -} -.btn-secondary:hover { - color: #fff; - background-color: #5c636a; - border-color: #565e64; -} -.btn-check:focus + .btn-secondary, .btn-secondary:focus { - color: #fff; - background-color: #5c636a; - border-color: #565e64; - box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.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: #565e64; - border-color: #51585e; -} -.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 0.25rem rgba(130, 138, 145, 0.5); -} -.btn-secondary:disabled, .btn-secondary.disabled { - color: #fff; - background-color: #6c757d; - border-color: #6c757d; -} - -.btn-success { - color: #fff; - background-color: #198754; - border-color: #198754; -} -.btn-success:hover { - color: #fff; - background-color: #157347; - border-color: #146c43; -} -.btn-check:focus + .btn-success, .btn-success:focus { - color: #fff; - background-color: #157347; - border-color: #146c43; - box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.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: #146c43; - border-color: #13653f; -} -.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 0.25rem rgba(60, 153, 110, 0.5); -} -.btn-success:disabled, .btn-success.disabled { - color: #fff; - background-color: #198754; - border-color: #198754; -} - -.btn-info { - color: #000; - background-color: #0dcaf0; - border-color: #0dcaf0; -} -.btn-info:hover { - color: #000; - background-color: #31d2f2; - border-color: #25cff2; -} -.btn-check:focus + .btn-info, .btn-info:focus { - color: #000; - background-color: #31d2f2; - border-color: #25cff2; - box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5); -} -.btn-check:checked + .btn-info, .btn-check:active + .btn-info, .btn-info:active, .btn-info.active, .show > .btn-info.dropdown-toggle { - color: #000; - background-color: #3dd5f3; - border-color: #25cff2; -} -.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 0.25rem rgba(11, 172, 204, 0.5); -} -.btn-info:disabled, .btn-info.disabled { - color: #000; - background-color: #0dcaf0; - border-color: #0dcaf0; -} - -.btn-warning { - color: #000; - background-color: #ffc107; - border-color: #ffc107; -} -.btn-warning:hover { - color: #000; - background-color: #ffca2c; - border-color: #ffc720; -} -.btn-check:focus + .btn-warning, .btn-warning:focus { - color: #000; - background-color: #ffca2c; - border-color: #ffc720; - box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5); -} -.btn-check:checked + .btn-warning, .btn-check:active + .btn-warning, .btn-warning:active, .btn-warning.active, .show > .btn-warning.dropdown-toggle { - color: #000; - background-color: #ffcd39; - border-color: #ffc720; -} -.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 0.25rem rgba(217, 164, 6, 0.5); -} -.btn-warning:disabled, .btn-warning.disabled { - color: #000; - background-color: #ffc107; - border-color: #ffc107; -} - -.btn-danger { - color: #fff; - background-color: #dc3545; - border-color: #dc3545; -} -.btn-danger:hover { - color: #fff; - background-color: #bb2d3b; - border-color: #b02a37; -} -.btn-check:focus + .btn-danger, .btn-danger:focus { - color: #fff; - background-color: #bb2d3b; - border-color: #b02a37; - box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.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: #b02a37; - border-color: #a52834; -} -.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 0.25rem rgba(225, 83, 97, 0.5); -} -.btn-danger:disabled, .btn-danger.disabled { - color: #fff; - background-color: #dc3545; - border-color: #dc3545; -} - -.btn-light { - color: #000; - background-color: #f8f9fa; - border-color: #f8f9fa; -} -.btn-light:hover { - color: #000; - background-color: #f9fafb; - border-color: #f9fafb; -} -.btn-check:focus + .btn-light, .btn-light:focus { - color: #000; - background-color: #f9fafb; - border-color: #f9fafb; - box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.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: #f9fafb; - border-color: #f9fafb; -} -.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 0.25rem rgba(211, 212, 213, 0.5); -} -.btn-light:disabled, .btn-light.disabled { - color: #000; - background-color: #f8f9fa; - border-color: #f8f9fa; -} - -.btn-dark { - color: #fff; - background-color: #212529; - border-color: #212529; -} -.btn-dark:hover { - color: #fff; - background-color: #1c1f23; - border-color: #1a1e21; -} -.btn-check:focus + .btn-dark, .btn-dark:focus { - color: #fff; - background-color: #1c1f23; - border-color: #1a1e21; - box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.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: #1a1e21; - border-color: #191c1f; -} -.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 0.25rem rgba(66, 70, 73, 0.5); -} -.btn-dark:disabled, .btn-dark.disabled { - color: #fff; - background-color: #212529; - border-color: #212529; -} - -.btn-outline-primary { - color: #0d6efd; - border-color: #0d6efd; -} -.btn-outline-primary:hover { - color: #fff; - background-color: #0d6efd; - border-color: #0d6efd; -} -.btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus { - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.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: #0d6efd; - border-color: #0d6efd; -} -.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 0.25rem rgba(13, 110, 253, 0.5); -} -.btn-outline-primary:disabled, .btn-outline-primary.disabled { - color: #0d6efd; - background-color: transparent; -} - -.btn-outline-secondary { - color: #6c757d; - border-color: #6c757d; -} -.btn-outline-secondary:hover { - color: #fff; - background-color: #6c757d; - border-color: #6c757d; -} -.btn-check:focus + .btn-outline-secondary, .btn-outline-secondary:focus { - box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.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: #6c757d; - border-color: #6c757d; -} -.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 0.25rem rgba(108, 117, 125, 0.5); -} -.btn-outline-secondary:disabled, .btn-outline-secondary.disabled { - color: #6c757d; - background-color: transparent; -} - -.btn-outline-success { - color: #198754; - border-color: #198754; -} -.btn-outline-success:hover { - color: #fff; - background-color: #198754; - border-color: #198754; -} -.btn-check:focus + .btn-outline-success, .btn-outline-success:focus { - box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.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: #198754; - border-color: #198754; -} -.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 0.25rem rgba(25, 135, 84, 0.5); -} -.btn-outline-success:disabled, .btn-outline-success.disabled { - color: #198754; - background-color: transparent; -} - -.btn-outline-info { - color: #0dcaf0; - border-color: #0dcaf0; -} -.btn-outline-info:hover { - color: #000; - background-color: #0dcaf0; - border-color: #0dcaf0; -} -.btn-check:focus + .btn-outline-info, .btn-outline-info:focus { - box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.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: #000; - background-color: #0dcaf0; - border-color: #0dcaf0; -} -.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 0.25rem rgba(13, 202, 240, 0.5); -} -.btn-outline-info:disabled, .btn-outline-info.disabled { - color: #0dcaf0; - background-color: transparent; -} - -.btn-outline-warning { - color: #ffc107; - border-color: #ffc107; -} -.btn-outline-warning:hover { - color: #000; - background-color: #ffc107; - border-color: #ffc107; -} -.btn-check:focus + .btn-outline-warning, .btn-outline-warning:focus { - box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.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: #000; - background-color: #ffc107; - border-color: #ffc107; -} -.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 0.25rem rgba(255, 193, 7, 0.5); -} -.btn-outline-warning:disabled, .btn-outline-warning.disabled { - color: #ffc107; - background-color: transparent; -} - -.btn-outline-danger { - color: #dc3545; - border-color: #dc3545; -} -.btn-outline-danger:hover { - color: #fff; - background-color: #dc3545; - border-color: #dc3545; -} -.btn-check:focus + .btn-outline-danger, .btn-outline-danger:focus { - box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.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: #dc3545; - border-color: #dc3545; -} -.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 0.25rem rgba(220, 53, 69, 0.5); -} -.btn-outline-danger:disabled, .btn-outline-danger.disabled { - color: #dc3545; - background-color: transparent; -} - -.btn-outline-light { - color: #f8f9fa; - border-color: #f8f9fa; -} -.btn-outline-light:hover { - color: #000; - background-color: #f8f9fa; - border-color: #f8f9fa; -} -.btn-check:focus + .btn-outline-light, .btn-outline-light:focus { - box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.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: #f8f9fa; - border-color: #f8f9fa; -} -.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 0.25rem rgba(248, 249, 250, 0.5); -} -.btn-outline-light:disabled, .btn-outline-light.disabled { - color: #f8f9fa; - background-color: transparent; -} - -.btn-outline-dark { - color: #212529; - border-color: #212529; -} -.btn-outline-dark:hover { - color: #fff; - background-color: #212529; - border-color: #212529; -} -.btn-check:focus + .btn-outline-dark, .btn-outline-dark:focus { - box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.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: #212529; - border-color: #212529; -} -.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 0.25rem rgba(33, 37, 41, 0.5); -} -.btn-outline-dark:disabled, .btn-outline-dark.disabled { - color: #212529; - background-color: transparent; -} - -.btn-link { - font-weight: 400; - color: #0d6efd; - text-decoration: underline; -} -.btn-link:hover { - color: #0a58ca; -} -.btn-link:disabled, .btn-link.disabled { - color: #6c757d; -} - -.btn-lg, .btn-group-lg > .btn { - padding: 0.5rem 1rem; - font-size: 1.25rem; - border-radius: 0.3rem; -} - -.btn-sm, .btn-group-sm > .btn { - padding: 0.25rem 0.5rem; - font-size: 0.875rem; - border-radius: 0.2rem; -} - -.fade { - transition: opacity 0.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 0.35s ease; -} -@media (prefers-reduced-motion: reduce) { - .collapsing { - transition: none; - } -} - -.dropup, -.dropend, -.dropdown, -.dropstart { - position: relative; -} - -.dropdown-toggle { - white-space: nowrap; -} -.dropdown-toggle::after { - display: inline-block; - margin-left: 0.255em; - vertical-align: 0.255em; - content: ""; - border-top: 0.3em solid; - border-right: 0.3em solid transparent; - border-bottom: 0; - border-left: 0.3em solid transparent; -} -.dropdown-toggle:empty::after { - margin-left: 0; -} - -.dropdown-menu { - position: absolute; - z-index: 1000; - display: none; - min-width: 10rem; - padding: 0.5rem 0; - margin: 0; - font-size: 1rem; - color: #212529; - text-align: left; - list-style: none; - background-color: #fff; - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, 0.15); - border-radius: 0.25rem; -} -.dropdown-menu[data-bs-popper] { - top: 100%; - left: 0; - margin-top: 0.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: 0.125rem; -} -.dropup .dropdown-toggle::after { - display: inline-block; - margin-left: 0.255em; - vertical-align: 0.255em; - content: ""; - border-top: 0; - border-right: 0.3em solid transparent; - border-bottom: 0.3em solid; - border-left: 0.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: 0.125rem; -} -.dropend .dropdown-toggle::after { - display: inline-block; - margin-left: 0.255em; - vertical-align: 0.255em; - content: ""; - border-top: 0.3em solid transparent; - border-right: 0; - border-bottom: 0.3em solid transparent; - border-left: 0.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: 0.125rem; -} -.dropstart .dropdown-toggle::after { - display: inline-block; - margin-left: 0.255em; - vertical-align: 0.255em; - content: ""; -} -.dropstart .dropdown-toggle::after { - display: none; -} -.dropstart .dropdown-toggle::before { - display: inline-block; - margin-right: 0.255em; - vertical-align: 0.255em; - content: ""; - border-top: 0.3em solid transparent; - border-right: 0.3em solid; - border-bottom: 0.3em solid transparent; -} -.dropstart .dropdown-toggle:empty::after { - margin-left: 0; -} -.dropstart .dropdown-toggle::before { - vertical-align: 0; -} - -.dropdown-divider { - height: 0; - margin: 0.5rem 0; - overflow: hidden; - border-top: 1px solid rgba(0, 0, 0, 0.15); -} - -.dropdown-item { - display: block; - width: 100%; - padding: 0.25rem 1rem; - clear: both; - font-weight: 400; - color: #212529; - text-align: inherit; - text-decoration: none; - white-space: nowrap; - background-color: transparent; - border: 0; -} -.dropdown-item:hover, .dropdown-item:focus { - color: #1e2125; - background-color: #e9ecef; -} -.dropdown-item.active, .dropdown-item:active { - color: #fff; - text-decoration: none; - background-color: #0d6efd; -} -.dropdown-item.disabled, .dropdown-item:disabled { - color: #adb5bd; - pointer-events: none; - background-color: transparent; -} - -.dropdown-menu.show { - display: block; -} - -.dropdown-header { - display: block; - padding: 0.5rem 1rem; - margin-bottom: 0; - font-size: 0.875rem; - color: #6c757d; - white-space: nowrap; -} - -.dropdown-item-text { - display: block; - padding: 0.25rem 1rem; - color: #212529; -} - -.dropdown-menu-dark { - color: #dee2e6; - background-color: #343a40; - border-color: rgba(0, 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, 0.15); -} -.dropdown-menu-dark .dropdown-item.active, .dropdown-menu-dark .dropdown-item:active { - color: #fff; - background-color: #0d6efd; -} -.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, 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: -ms-inline-flexbox; - display: inline-flex; - vertical-align: middle; -} -.btn-group > .btn, -.btn-group-vertical > .btn { - position: relative; - -ms-flex: 1 1 auto; - 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: -ms-flexbox; - display: flex; - -ms-flex-wrap: wrap; - flex-wrap: wrap; - -ms-flex-pack: start; - 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; -} -.btn-group > .btn:not(:last-child):not(.dropdown-toggle), -.btn-group > .btn-group:not(:last-child) > .btn { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} -.btn-group > .btn:nth-child(n+3), -.btn-group > :not(.btn-check) + .btn, -.btn-group > .btn-group:not(:first-child) > .btn { - border-top-left-radius: 0; - border-bottom-left-radius: 0; -} - -.dropdown-toggle-split { - padding-right: 0.5625rem; - padding-left: 0.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: 0.375rem; - padding-left: 0.375rem; -} - -.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split { - padding-right: 0.75rem; - padding-left: 0.75rem; -} - -.btn-group-vertical { - -ms-flex-direction: column; - flex-direction: column; - -ms-flex-align: start; - align-items: flex-start; - -ms-flex-pack: center; - 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; -} -.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle), -.btn-group-vertical > .btn-group:not(:last-child) > .btn { - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} -.btn-group-vertical > .btn ~ .btn, -.btn-group-vertical > .btn-group:not(:first-child) > .btn { - border-top-left-radius: 0; - border-top-right-radius: 0; -} - -.nav { - display: -ms-flexbox; - display: flex; - -ms-flex-wrap: wrap; - flex-wrap: wrap; - padding-left: 0; - margin-bottom: 0; - list-style: none; -} - -.nav-link { - display: block; - padding: 0.5rem 1rem; - color: #0d6efd; - text-decoration: none; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; -} -@media (prefers-reduced-motion: reduce) { - .nav-link { - transition: none; - } -} -.nav-link:hover, .nav-link:focus { - color: #0a58ca; -} -.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; - border-top-left-radius: 0.25rem; - border-top-right-radius: 0.25rem; -} -.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus { - border-color: #e9ecef #e9ecef #dee2e6; - 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: #495057; - background-color: #fff; - border-color: #dee2e6 #dee2e6 #fff; -} -.nav-tabs .dropdown-menu { - margin-top: -1px; - border-top-left-radius: 0; - border-top-right-radius: 0; -} - -.nav-pills .nav-link { - background: none; - border: 0; - border-radius: 0.25rem; -} -.nav-pills .nav-link.active, -.nav-pills .show > .nav-link { - color: #fff; - background-color: #0d6efd; -} - -.nav-fill > .nav-link, -.nav-fill .nav-item { - -ms-flex: 1 1 auto; - flex: 1 1 auto; - text-align: center; -} - -.nav-justified > .nav-link, -.nav-justified .nav-item { - -ms-flex-preferred-size: 0; - flex-basis: 0; - -ms-flex-positive: 1; - 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: -ms-flexbox; - display: flex; - -ms-flex-wrap: wrap; - flex-wrap: wrap; - -ms-flex-align: center; - align-items: center; - -ms-flex-pack: justify; - justify-content: space-between; - padding-top: 0.5rem; - padding-bottom: 0.5rem; -} -.navbar > .container, -.navbar > .container-fluid, -.navbar > .container-sm, -.navbar > .container-md, -.navbar > .container-lg, -.navbar > .container-xl, -.navbar > .container-xxl { - display: -ms-flexbox; - display: flex; - -ms-flex-wrap: inherit; - flex-wrap: inherit; - -ms-flex-align: center; - align-items: center; - -ms-flex-pack: justify; - justify-content: space-between; -} -.navbar-brand { - padding-top: 0.3125rem; - padding-bottom: 0.3125rem; - margin-right: 1rem; - font-size: 1.25rem; - text-decoration: none; - white-space: nowrap; -} -.navbar-nav { - display: -ms-flexbox; - display: flex; - -ms-flex-direction: column; - 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: 0.5rem; - padding-bottom: 0.5rem; -} - -.navbar-collapse { - -ms-flex-preferred-size: 100%; - flex-basis: 100%; - -ms-flex-positive: 1; - flex-grow: 1; - -ms-flex-align: center; - align-items: center; -} - -.navbar-toggler { - padding: 0.25rem 0.75rem; - font-size: 1.25rem; - line-height: 1; - background-color: transparent; - border: 1px solid transparent; - border-radius: 0.25rem; - transition: box-shadow 0.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 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 { - -ms-flex-wrap: nowrap; - flex-wrap: nowrap; - -ms-flex-pack: start; - justify-content: flex-start; - } - .navbar-expand-sm .navbar-nav { - -ms-flex-direction: row; - flex-direction: row; - } - .navbar-expand-sm .navbar-nav .dropdown-menu { - position: absolute; - } - .navbar-expand-sm .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; - } - .navbar-expand-sm .navbar-nav-scroll { - overflow: visible; - } - .navbar-expand-sm .navbar-collapse { - display: -ms-flexbox !important; - display: flex !important; - -ms-flex-preferred-size: auto; - flex-basis: auto; - } - .navbar-expand-sm .navbar-toggler { - display: none; - } -} -@media (min-width: 768px) { - .navbar-expand-md { - -ms-flex-wrap: nowrap; - flex-wrap: nowrap; - -ms-flex-pack: start; - justify-content: flex-start; - } - .navbar-expand-md .navbar-nav { - -ms-flex-direction: row; - flex-direction: row; - } - .navbar-expand-md .navbar-nav .dropdown-menu { - position: absolute; - } - .navbar-expand-md .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; - } - .navbar-expand-md .navbar-nav-scroll { - overflow: visible; - } - .navbar-expand-md .navbar-collapse { - display: -ms-flexbox !important; - display: flex !important; - -ms-flex-preferred-size: auto; - flex-basis: auto; - } - .navbar-expand-md .navbar-toggler { - display: none; - } -} -@media (min-width: 992px) { - .navbar-expand-lg { - -ms-flex-wrap: nowrap; - flex-wrap: nowrap; - -ms-flex-pack: start; - justify-content: flex-start; - } - .navbar-expand-lg .navbar-nav { - -ms-flex-direction: row; - flex-direction: row; - } - .navbar-expand-lg .navbar-nav .dropdown-menu { - position: absolute; - } - .navbar-expand-lg .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; - } - .navbar-expand-lg .navbar-nav-scroll { - overflow: visible; - } - .navbar-expand-lg .navbar-collapse { - display: -ms-flexbox !important; - display: flex !important; - -ms-flex-preferred-size: auto; - flex-basis: auto; - } - .navbar-expand-lg .navbar-toggler { - display: none; - } -} -@media (min-width: 1200px) { - .navbar-expand-xl { - -ms-flex-wrap: nowrap; - flex-wrap: nowrap; - -ms-flex-pack: start; - justify-content: flex-start; - } - .navbar-expand-xl .navbar-nav { - -ms-flex-direction: row; - flex-direction: row; - } - .navbar-expand-xl .navbar-nav .dropdown-menu { - position: absolute; - } - .navbar-expand-xl .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; - } - .navbar-expand-xl .navbar-nav-scroll { - overflow: visible; - } - .navbar-expand-xl .navbar-collapse { - display: -ms-flexbox !important; - display: flex !important; - -ms-flex-preferred-size: auto; - flex-basis: auto; - } - .navbar-expand-xl .navbar-toggler { - display: none; - } -} -@media (min-width: 1400px) { - .navbar-expand-xxl { - -ms-flex-wrap: nowrap; - flex-wrap: nowrap; - -ms-flex-pack: start; - justify-content: flex-start; - } - .navbar-expand-xxl .navbar-nav { - -ms-flex-direction: row; - flex-direction: row; - } - .navbar-expand-xxl .navbar-nav .dropdown-menu { - position: absolute; - } - .navbar-expand-xxl .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; - } - .navbar-expand-xxl .navbar-nav-scroll { - overflow: visible; - } - .navbar-expand-xxl .navbar-collapse { - display: -ms-flexbox !important; - display: flex !important; - -ms-flex-preferred-size: auto; - flex-basis: auto; - } - .navbar-expand-xxl .navbar-toggler { - display: none; - } -} -.navbar-expand { - -ms-flex-wrap: nowrap; - flex-wrap: nowrap; - -ms-flex-pack: start; - justify-content: flex-start; -} -.navbar-expand .navbar-nav { - -ms-flex-direction: row; - flex-direction: row; -} -.navbar-expand .navbar-nav .dropdown-menu { - position: absolute; -} -.navbar-expand .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; -} -.navbar-expand .navbar-nav-scroll { - overflow: visible; -} -.navbar-expand .navbar-collapse { - display: -ms-flexbox !important; - display: flex !important; - -ms-flex-preferred-size: auto; - flex-basis: auto; -} -.navbar-expand .navbar-toggler { - display: none; -} - -.navbar-light .navbar-brand { - color: rgba(0, 0, 0, 0.9); -} -.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus { - color: rgba(0, 0, 0, 0.9); -} -.navbar-light .navbar-nav .nav-link { - color: rgba(0, 0, 0, 0.55); -} -.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus { - color: rgba(0, 0, 0, 0.7); -} -.navbar-light .navbar-nav .nav-link.disabled { - color: rgba(0, 0, 0, 0.3); -} -.navbar-light .navbar-nav .show > .nav-link, -.navbar-light .navbar-nav .nav-link.active { - color: rgba(0, 0, 0, 0.9); -} -.navbar-light .navbar-toggler { - color: rgba(0, 0, 0, 0.55); - border-color: rgba(0, 0, 0, 0.1); -} -.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%280, 0, 0, 0.55%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(0, 0, 0, 0.55); -} -.navbar-light .navbar-text a, -.navbar-light .navbar-text a:hover, -.navbar-light .navbar-text a:focus { - color: rgba(0, 0, 0, 0.9); -} - -.navbar-dark .navbar-brand { - color: #fff; -} -.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus { - color: #fff; -} -.navbar-dark .navbar-nav .nav-link { - color: rgba(255, 255, 255, 0.55); -} -.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus { - color: rgba(255, 255, 255, 0.75); -} -.navbar-dark .navbar-nav .nav-link.disabled { - color: rgba(255, 255, 255, 0.25); -} -.navbar-dark .navbar-nav .show > .nav-link, -.navbar-dark .navbar-nav .nav-link.active { - color: #fff; -} -.navbar-dark .navbar-toggler { - color: rgba(255, 255, 255, 0.55); - border-color: rgba(255, 255, 255, 0.1); -} -.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.55%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, 0.55); -} -.navbar-dark .navbar-text a, -.navbar-dark .navbar-text a:hover, -.navbar-dark .navbar-text a:focus { - color: #fff; -} - -.card { - position: relative; - display: -ms-flexbox; - display: flex; - -ms-flex-direction: column; - flex-direction: column; - min-width: 0; - word-wrap: break-word; - background-color: #fff; - background-clip: border-box; - border: 1px solid rgba(0, 0, 0, 0.125); - border-radius: 0.25rem; -} -.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; - border-top-left-radius: calc(0.25rem - 1px); - border-top-right-radius: calc(0.25rem - 1px); -} -.card > .list-group:last-child { - border-bottom-width: 0; - border-bottom-right-radius: calc(0.25rem - 1px); - border-bottom-left-radius: calc(0.25rem - 1px); -} -.card > .card-header + .list-group, -.card > .list-group + .card-footer { - border-top: 0; -} - -.card-body { - -ms-flex: 1 1 auto; - flex: 1 1 auto; - padding: 1rem 1rem; -} - -.card-title { - margin-bottom: 0.5rem; -} - -.card-subtitle { - margin-top: -0.25rem; - margin-bottom: 0; -} - -.card-text:last-child { - margin-bottom: 0; -} - -.card-link:hover { - text-decoration: none; -} -.card-link + .card-link { - margin-left: 1rem; -} - -.card-header { - padding: 0.5rem 1rem; - margin-bottom: 0; - background-color: rgba(0, 0, 0, 0.03); - border-bottom: 1px solid rgba(0, 0, 0, 0.125); -} -.card-header:first-child { - border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; -} - -.card-footer { - padding: 0.5rem 1rem; - background-color: rgba(0, 0, 0, 0.03); - border-top: 1px solid rgba(0, 0, 0, 0.125); -} -.card-footer:last-child { - border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px); -} - -.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; - border-radius: calc(0.25rem - 1px); -} - -.card-img, -.card-img-top, -.card-img-bottom { - width: 100%; -} - -.card-img, -.card-img-top { - border-top-left-radius: calc(0.25rem - 1px); - border-top-right-radius: calc(0.25rem - 1px); -} - -.card-img, -.card-img-bottom { - border-bottom-right-radius: calc(0.25rem - 1px); - border-bottom-left-radius: calc(0.25rem - 1px); -} - -.card-group > .card { - margin-bottom: 0.75rem; -} -@media (min-width: 576px) { - .card-group { - display: -ms-flexbox; - display: flex; - -ms-flex-flow: row wrap; - flex-flow: row wrap; - } - .card-group > .card { - -ms-flex: 1 0 0%; - flex: 1 0 0%; - margin-bottom: 0; - } - .card-group > .card + .card { - margin-left: 0; - border-left: 0; - } - .card-group > .card:not(:last-child) { - border-top-right-radius: 0; - border-bottom-right-radius: 0; - } - .card-group > .card:not(:last-child) .card-img-top, -.card-group > .card:not(:last-child) .card-header { - border-top-right-radius: 0; - } - .card-group > .card:not(:last-child) .card-img-bottom, -.card-group > .card:not(:last-child) .card-footer { - border-bottom-right-radius: 0; - } - .card-group > .card:not(:first-child) { - border-top-left-radius: 0; - border-bottom-left-radius: 0; - } - .card-group > .card:not(:first-child) .card-img-top, -.card-group > .card:not(:first-child) .card-header { - border-top-left-radius: 0; - } - .card-group > .card:not(:first-child) .card-img-bottom, -.card-group > .card:not(:first-child) .card-footer { - border-bottom-left-radius: 0; - } -} - -.accordion-button { - position: relative; - display: -ms-flexbox; - display: flex; - -ms-flex-align: center; - align-items: center; - width: 100%; - padding: 1rem 1.25rem; - font-size: 1rem; - color: #212529; - text-align: left; - background-color: #fff; - border: 0; - border-radius: 0; - overflow-anchor: none; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease; -} -@media (prefers-reduced-motion: reduce) { - .accordion-button { - transition: none; - } -} -.accordion-button:not(.collapsed) { - color: #0c63e4; - background-color: #e7f1ff; - box-shadow: inset 0 -1px 0 rgba(0, 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='%230c63e4'%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"); - -webkit-transform: rotate(-180deg); - transform: rotate(-180deg); -} -.accordion-button::after { - -ms-flex-negative: 0; - 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='%23212529'%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: -webkit-transform 0.2s ease-in-out; - transition: transform 0.2s ease-in-out; - transition: transform 0.2s ease-in-out, -webkit-transform 0.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: #86b7fe; - outline: 0; - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); -} - -.accordion-header { - margin-bottom: 0; -} - -.accordion-item { - background-color: #fff; - border: 1px solid rgba(0, 0, 0, 0.125); -} -.accordion-item:first-of-type { - border-top-left-radius: 0.25rem; - border-top-right-radius: 0.25rem; -} -.accordion-item:first-of-type .accordion-button { - border-top-left-radius: calc(0.25rem - 1px); - border-top-right-radius: calc(0.25rem - 1px); -} -.accordion-item:not(:first-of-type) { - border-top: 0; -} -.accordion-item:last-of-type { - border-bottom-right-radius: 0.25rem; - border-bottom-left-radius: 0.25rem; -} -.accordion-item:last-of-type .accordion-button.collapsed { - border-bottom-right-radius: calc(0.25rem - 1px); - border-bottom-left-radius: calc(0.25rem - 1px); -} -.accordion-item:last-of-type .accordion-collapse { - border-bottom-right-radius: 0.25rem; - border-bottom-left-radius: 0.25rem; -} - -.accordion-body { - padding: 1rem 1.25rem; -} - -.accordion-flush .accordion-collapse { - border-width: 0; -} -.accordion-flush .accordion-item { - border-right: 0; - border-left: 0; - border-radius: 0; -} -.accordion-flush .accordion-item:first-child { - border-top: 0; -} -.accordion-flush .accordion-item:last-child { - border-bottom: 0; -} -.accordion-flush .accordion-item .accordion-button { - border-radius: 0; -} - -.breadcrumb { - display: -ms-flexbox; - display: flex; - -ms-flex-wrap: wrap; - flex-wrap: wrap; - padding: 0 0; - margin-bottom: 1rem; - list-style: none; -} - -.breadcrumb-item + .breadcrumb-item { - padding-left: 0.5rem; -} -.breadcrumb-item + .breadcrumb-item::before { - float: left; - padding-right: 0.5rem; - color: #6c757d; - content: var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */; -} -.breadcrumb-item.active { - color: #6c757d; -} - -.pagination { - display: -ms-flexbox; - display: flex; - padding-left: 0; - list-style: none; -} - -.page-link { - position: relative; - display: block; - color: #0d6efd; - text-decoration: none; - background-color: #fff; - border: 1px solid #dee2e6; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; -} -@media (prefers-reduced-motion: reduce) { - .page-link { - transition: none; - } -} -.page-link:hover { - z-index: 2; - color: #0a58ca; - background-color: #e9ecef; - border-color: #dee2e6; -} -.page-link:focus { - z-index: 3; - color: #0a58ca; - background-color: #e9ecef; - outline: 0; - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); -} - -.page-item:not(:first-child) .page-link { - margin-left: -1px; -} -.page-item.active .page-link { - z-index: 3; - color: #fff; - background-color: #0d6efd; - border-color: #0d6efd; -} -.page-item.disabled .page-link { - color: #6c757d; - pointer-events: none; - background-color: #fff; - border-color: #dee2e6; -} - -.page-link { - padding: 0.375rem 0.75rem; -} - -.page-item:first-child .page-link { - border-top-left-radius: 0.25rem; - border-bottom-left-radius: 0.25rem; -} -.page-item:last-child .page-link { - border-top-right-radius: 0.25rem; - border-bottom-right-radius: 0.25rem; -} - -.pagination-lg .page-link { - padding: 0.75rem 1.5rem; - font-size: 1.25rem; -} -.pagination-lg .page-item:first-child .page-link { - border-top-left-radius: 0.3rem; - border-bottom-left-radius: 0.3rem; -} -.pagination-lg .page-item:last-child .page-link { - border-top-right-radius: 0.3rem; - border-bottom-right-radius: 0.3rem; -} - -.pagination-sm .page-link { - padding: 0.25rem 0.5rem; - font-size: 0.875rem; -} -.pagination-sm .page-item:first-child .page-link { - border-top-left-radius: 0.2rem; - border-bottom-left-radius: 0.2rem; -} -.pagination-sm .page-item:last-child .page-link { - border-top-right-radius: 0.2rem; - border-bottom-right-radius: 0.2rem; -} - -.badge { - display: inline-block; - padding: 0.35em 0.65em; - font-size: 0.75em; - font-weight: 700; - line-height: 1; - color: #fff; - text-align: center; - white-space: nowrap; - vertical-align: baseline; - border-radius: 0.25rem; -} -.badge:empty { - display: none; -} - -.btn .badge { - position: relative; - top: -1px; -} - -.alert { - position: relative; - padding: 1rem 1rem; - margin-bottom: 1rem; - border: 1px solid transparent; - border-radius: 0.25rem; -} - -.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-primary { - color: #084298; - background-color: #cfe2ff; - border-color: #b6d4fe; -} -.alert-primary .alert-link { - color: #06357a; -} - -.alert-secondary { - color: #41464b; - background-color: #e2e3e5; - border-color: #d3d6d8; -} -.alert-secondary .alert-link { - color: #34383c; -} - -.alert-success { - color: #0f5132; - background-color: #d1e7dd; - border-color: #badbcc; -} -.alert-success .alert-link { - color: #0c4128; -} - -.alert-info { - color: #055160; - background-color: #cff4fc; - border-color: #b6effb; -} -.alert-info .alert-link { - color: #04414d; -} - -.alert-warning { - color: #664d03; - background-color: #fff3cd; - border-color: #ffecb5; -} -.alert-warning .alert-link { - color: #523e02; -} - -.alert-danger { - color: #842029; - background-color: #f8d7da; - border-color: #f5c2c7; -} -.alert-danger .alert-link { - color: #6a1a21; -} - -.alert-light { - color: #636464; - background-color: #fefefe; - border-color: #fdfdfe; -} -.alert-light .alert-link { - color: #4f5050; -} - -.alert-dark { - color: #141619; - background-color: #d3d3d4; - border-color: #bcbebf; -} -.alert-dark .alert-link { - color: #101214; -} - -@-webkit-keyframes progress-bar-stripes { - 0% { - background-position-x: 1rem; - } -} - -@keyframes progress-bar-stripes { - 0% { - background-position-x: 1rem; - } -} -.progress { - display: -ms-flexbox; - display: flex; - height: 1rem; - overflow: hidden; - font-size: 0.75rem; - background-color: #e9ecef; - border-radius: 0.25rem; -} - -.progress-bar { - display: -ms-flexbox; - display: flex; - -ms-flex-direction: column; - flex-direction: column; - -ms-flex-pack: center; - justify-content: center; - overflow: hidden; - color: #fff; - text-align: center; - white-space: nowrap; - background-color: #0d6efd; - transition: width 0.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 { - -webkit-animation: 1s linear infinite progress-bar-stripes; - animation: 1s linear infinite progress-bar-stripes; -} -@media (prefers-reduced-motion: reduce) { - .progress-bar-animated { - -webkit-animation: none; - animation: none; - } -} - -.list-group { - display: -ms-flexbox; - display: flex; - -ms-flex-direction: column; - flex-direction: column; - padding-left: 0; - margin-bottom: 0; - border-radius: 0.25rem; -} - -.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: #495057; - text-align: inherit; -} -.list-group-item-action:hover, .list-group-item-action:focus { - z-index: 1; - color: #495057; - text-decoration: none; - background-color: #f8f9fa; -} -.list-group-item-action:active { - color: #212529; - background-color: #e9ecef; -} - -.list-group-item { - position: relative; - display: block; - padding: 0.5rem 1rem; - color: #212529; - text-decoration: none; - background-color: #fff; - border: 1px solid rgba(0, 0, 0, 0.125); -} -.list-group-item:first-child { - border-top-left-radius: inherit; - border-top-right-radius: inherit; -} -.list-group-item:last-child { - border-bottom-right-radius: inherit; - border-bottom-left-radius: inherit; -} -.list-group-item.disabled, .list-group-item:disabled { - color: #6c757d; - pointer-events: none; - background-color: #fff; -} -.list-group-item.active { - z-index: 2; - color: #fff; - background-color: #0d6efd; - border-color: #0d6efd; -} -.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 { - -ms-flex-direction: row; - flex-direction: row; -} -.list-group-horizontal > .list-group-item:first-child { - border-bottom-left-radius: 0.25rem; - border-top-right-radius: 0; -} -.list-group-horizontal > .list-group-item:last-child { - border-top-right-radius: 0.25rem; - border-bottom-left-radius: 0; -} -.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 { - -ms-flex-direction: row; - flex-direction: row; - } - .list-group-horizontal-sm > .list-group-item:first-child { - border-bottom-left-radius: 0.25rem; - border-top-right-radius: 0; - } - .list-group-horizontal-sm > .list-group-item:last-child { - border-top-right-radius: 0.25rem; - border-bottom-left-radius: 0; - } - .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 { - -ms-flex-direction: row; - flex-direction: row; - } - .list-group-horizontal-md > .list-group-item:first-child { - border-bottom-left-radius: 0.25rem; - border-top-right-radius: 0; - } - .list-group-horizontal-md > .list-group-item:last-child { - border-top-right-radius: 0.25rem; - border-bottom-left-radius: 0; - } - .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 { - -ms-flex-direction: row; - flex-direction: row; - } - .list-group-horizontal-lg > .list-group-item:first-child { - border-bottom-left-radius: 0.25rem; - border-top-right-radius: 0; - } - .list-group-horizontal-lg > .list-group-item:last-child { - border-top-right-radius: 0.25rem; - border-bottom-left-radius: 0; - } - .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 { - -ms-flex-direction: row; - flex-direction: row; - } - .list-group-horizontal-xl > .list-group-item:first-child { - border-bottom-left-radius: 0.25rem; - border-top-right-radius: 0; - } - .list-group-horizontal-xl > .list-group-item:last-child { - border-top-right-radius: 0.25rem; - border-bottom-left-radius: 0; - } - .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 { - -ms-flex-direction: row; - flex-direction: row; - } - .list-group-horizontal-xxl > .list-group-item:first-child { - border-bottom-left-radius: 0.25rem; - border-top-right-radius: 0; - } - .list-group-horizontal-xxl > .list-group-item:last-child { - border-top-right-radius: 0.25rem; - border-bottom-left-radius: 0; - } - .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 { - border-radius: 0; -} -.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-primary { - color: #084298; - background-color: #cfe2ff; -} -.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus { - color: #084298; - background-color: #bacbe6; -} -.list-group-item-primary.list-group-item-action.active { - color: #fff; - background-color: #084298; - border-color: #084298; -} - -.list-group-item-secondary { - color: #41464b; - background-color: #e2e3e5; -} -.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus { - color: #41464b; - background-color: #cbccce; -} -.list-group-item-secondary.list-group-item-action.active { - color: #fff; - background-color: #41464b; - border-color: #41464b; -} - -.list-group-item-success { - color: #0f5132; - background-color: #d1e7dd; -} -.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus { - color: #0f5132; - background-color: #bcd0c7; -} -.list-group-item-success.list-group-item-action.active { - color: #fff; - background-color: #0f5132; - border-color: #0f5132; -} - -.list-group-item-info { - color: #055160; - background-color: #cff4fc; -} -.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus { - color: #055160; - background-color: #badce3; -} -.list-group-item-info.list-group-item-action.active { - color: #fff; - background-color: #055160; - border-color: #055160; -} - -.list-group-item-warning { - color: #664d03; - background-color: #fff3cd; -} -.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus { - color: #664d03; - background-color: #e6dbb9; -} -.list-group-item-warning.list-group-item-action.active { - color: #fff; - background-color: #664d03; - border-color: #664d03; -} - -.list-group-item-danger { - color: #842029; - background-color: #f8d7da; -} -.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus { - color: #842029; - background-color: #dfc2c4; -} -.list-group-item-danger.list-group-item-action.active { - color: #fff; - background-color: #842029; - border-color: #842029; -} - -.list-group-item-light { - color: #636464; - background-color: #fefefe; -} -.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus { - color: #636464; - background-color: #e5e5e5; -} -.list-group-item-light.list-group-item-action.active { - color: #fff; - background-color: #636464; - border-color: #636464; -} - -.list-group-item-dark { - color: #141619; - background-color: #d3d3d4; -} -.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus { - color: #141619; - background-color: #bebebf; -} -.list-group-item-dark.list-group-item-action.active { - color: #fff; - background-color: #141619; - border-color: #141619; -} - -.btn-close { - box-sizing: content-box; - width: 1em; - height: 1em; - padding: 0.25em 0.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; - border-radius: 0.25rem; - opacity: 0.5; -} -.btn-close:hover { - color: #000; - text-decoration: none; - opacity: 0.75; -} -.btn-close:focus { - outline: 0; - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); - opacity: 1; -} -.btn-close:disabled, .btn-close.disabled { - pointer-events: none; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - opacity: 0.25; -} - -.btn-close-white { - -webkit-filter: invert(1) grayscale(100%) brightness(200%); - 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, 0.85); - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, 0.1); - box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); - border-radius: 0.25rem; -} -.toast:not(.showing):not(.show) { - opacity: 0; -} -.toast.hide { - display: none; -} - -.toast-container { - width: -webkit-max-content; - width: -moz-max-content; - width: max-content; - max-width: 100%; - pointer-events: none; -} -.toast-container > :not(:last-child) { - margin-bottom: 0.75rem; -} - -.toast-header { - display: -ms-flexbox; - display: flex; - -ms-flex-align: center; - align-items: center; - padding: 0.5rem 0.75rem; - color: #6c757d; - background-color: rgba(255, 255, 255, 0.85); - background-clip: padding-box; - border-bottom: 1px solid rgba(0, 0, 0, 0.05); - border-top-left-radius: calc(0.25rem - 1px); - border-top-right-radius: calc(0.25rem - 1px); -} -.toast-header .btn-close { - margin-right: -0.375rem; - margin-left: 0.75rem; -} - -.toast-body { - padding: 0.75rem; - word-wrap: break-word; -} - -.modal { - position: fixed; - top: 0; - left: 0; - z-index: 1060; - display: none; - width: 100%; - height: 100%; - overflow-x: hidden; - overflow-y: auto; - outline: 0; -} - -.modal-dialog { - position: relative; - width: auto; - margin: 0.5rem; - pointer-events: none; -} -.modal.fade .modal-dialog { - transition: -webkit-transform 0.3s ease-out; - transition: transform 0.3s ease-out; - transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out; - -webkit-transform: translate(0, -50px); - transform: translate(0, -50px); -} -@media (prefers-reduced-motion: reduce) { - .modal.fade .modal-dialog { - transition: none; - } -} -.modal.show .modal-dialog { - -webkit-transform: none; - transform: none; -} -.modal.modal-static .modal-dialog { - -webkit-transform: scale(1.02); - 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: -ms-flexbox; - display: flex; - -ms-flex-align: center; - align-items: center; - min-height: calc(100% - 1rem); -} - -.modal-content { - position: relative; - display: -ms-flexbox; - display: flex; - -ms-flex-direction: column; - flex-direction: column; - width: 100%; - pointer-events: auto; - background-color: #fff; - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, 0.2); - border-radius: 0.3rem; - outline: 0; -} - -.modal-backdrop { - position: fixed; - top: 0; - left: 0; - z-index: 1040; - width: 100vw; - height: 100vh; - background-color: #000; -} -.modal-backdrop.fade { - opacity: 0; -} -.modal-backdrop.show { - opacity: 0.5; -} - -.modal-header { - display: -ms-flexbox; - display: flex; - -ms-flex-negative: 0; - flex-shrink: 0; - -ms-flex-align: center; - align-items: center; - -ms-flex-pack: justify; - justify-content: space-between; - padding: 1rem 1rem; - border-bottom: 1px solid #dee2e6; - border-top-left-radius: calc(0.3rem - 1px); - border-top-right-radius: calc(0.3rem - 1px); -} -.modal-header .btn-close { - padding: 0.5rem 0.5rem; - margin: -0.5rem -0.5rem -0.5rem auto; -} - -.modal-title { - margin-bottom: 0; - line-height: 1.5; -} - -.modal-body { - position: relative; - -ms-flex: 1 1 auto; - flex: 1 1 auto; - padding: 1rem; -} - -.modal-footer { - display: -ms-flexbox; - display: flex; - -ms-flex-wrap: wrap; - flex-wrap: wrap; - -ms-flex-negative: 0; - flex-shrink: 0; - -ms-flex-align: center; - align-items: center; - -ms-flex-pack: end; - justify-content: flex-end; - padding: 0.75rem; - border-top: 1px solid #dee2e6; - border-bottom-right-radius: calc(0.3rem - 1px); - border-bottom-left-radius: calc(0.3rem - 1px); -} -.modal-footer > * { - margin: 0.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; - border-radius: 0; -} -.modal-fullscreen .modal-header { - border-radius: 0; -} -.modal-fullscreen .modal-body { - overflow-y: auto; -} -.modal-fullscreen .modal-footer { - border-radius: 0; -} - -@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; - border-radius: 0; - } - .modal-fullscreen-sm-down .modal-header { - border-radius: 0; - } - .modal-fullscreen-sm-down .modal-body { - overflow-y: auto; - } - .modal-fullscreen-sm-down .modal-footer { - border-radius: 0; - } -} -@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; - border-radius: 0; - } - .modal-fullscreen-md-down .modal-header { - border-radius: 0; - } - .modal-fullscreen-md-down .modal-body { - overflow-y: auto; - } - .modal-fullscreen-md-down .modal-footer { - border-radius: 0; - } -} -@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; - border-radius: 0; - } - .modal-fullscreen-lg-down .modal-header { - border-radius: 0; - } - .modal-fullscreen-lg-down .modal-body { - overflow-y: auto; - } - .modal-fullscreen-lg-down .modal-footer { - border-radius: 0; - } -} -@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; - border-radius: 0; - } - .modal-fullscreen-xl-down .modal-header { - border-radius: 0; - } - .modal-fullscreen-xl-down .modal-body { - overflow-y: auto; - } - .modal-fullscreen-xl-down .modal-footer { - border-radius: 0; - } -} -@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; - border-radius: 0; - } - .modal-fullscreen-xxl-down .modal-header { - border-radius: 0; - } - .modal-fullscreen-xxl-down .modal-body { - overflow-y: auto; - } - .modal-fullscreen-xxl-down .modal-footer { - border-radius: 0; - } -} -.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: 0.9; -} -.tooltip .tooltip-arrow { - position: absolute; - display: block; - width: 0.8rem; - height: 0.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: 0.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: 0.4rem 0.4rem 0; - border-top-color: #000; -} - -.bs-tooltip-end, .bs-tooltip-auto[data-popper-placement^=right] { - padding: 0 0.4rem; -} -.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow { - left: 0; - width: 0.4rem; - height: 0.8rem; -} -.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before { - right: -1px; - border-width: 0.4rem 0.4rem 0.4rem 0; - border-right-color: #000; -} - -.bs-tooltip-bottom, .bs-tooltip-auto[data-popper-placement^=bottom] { - padding: 0.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 0.4rem 0.4rem; - border-bottom-color: #000; -} - -.bs-tooltip-start, .bs-tooltip-auto[data-popper-placement^=left] { - padding: 0 0.4rem; -} -.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow { - right: 0; - width: 0.4rem; - height: 0.8rem; -} -.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before { - left: -1px; - border-width: 0.4rem 0 0.4rem 0.4rem; - border-left-color: #000; -} - -.tooltip-inner { - max-width: 200px; - padding: 0.25rem 0.5rem; - color: #fff; - text-align: center; - background-color: #000; - border-radius: 0.25rem; -} - -.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, 0.2); - border-radius: 0.3rem; -} -.popover .popover-arrow { - position: absolute; - display: block; - width: 1rem; - height: 0.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: 0.5rem 0.5rem 0; - border-top-color: rgba(0, 0, 0, 0.25); -} -.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after { - bottom: 1px; - border-width: 0.5rem 0.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: 0.5rem; - height: 1rem; -} -.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before { - left: 0; - border-width: 0.5rem 0.5rem 0.5rem 0; - border-right-color: rgba(0, 0, 0, 0.25); -} -.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after { - left: 1px; - border-width: 0.5rem 0.5rem 0.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 0.5rem 0.5rem 0.5rem; - border-bottom-color: rgba(0, 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 0.5rem 0.5rem 0.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: 0.5rem; - height: 1rem; -} -.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before { - right: 0; - border-width: 0.5rem 0 0.5rem 0.5rem; - border-left-color: rgba(0, 0, 0, 0.25); -} -.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after { - right: 1px; - border-width: 0.5rem 0 0.5rem 0.5rem; - border-left-color: #fff; -} - -.popover-header { - padding: 0.5rem 1rem; - margin-bottom: 0; - font-size: 1rem; - background-color: #f0f0f0; - border-bottom: 1px solid rgba(0, 0, 0, 0.2); - border-top-left-radius: calc(0.3rem - 1px); - border-top-right-radius: calc(0.3rem - 1px); -} -.popover-header:empty { - display: none; -} - -.popover-body { - padding: 1rem 1rem; - color: #212529; -} - -.carousel { - position: relative; -} - -.carousel.pointer-event { - -ms-touch-action: pan-y; - 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%; - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - transition: -webkit-transform 0.6s ease-in-out; - transition: transform 0.6s ease-in-out; - transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out; -} -@media (prefers-reduced-motion: reduce) { - .carousel-item { - transition: none; - } -} - -.carousel-item.active, -.carousel-item-next, -.carousel-item-prev { - display: block; -} - -/* rtl:begin:ignore */ -.carousel-item-next:not(.carousel-item-start), -.active.carousel-item-end { - -webkit-transform: translateX(100%); - transform: translateX(100%); -} - -.carousel-item-prev:not(.carousel-item-end), -.active.carousel-item-start { - -webkit-transform: translateX(-100%); - transform: translateX(-100%); -} - -/* rtl:end:ignore */ -.carousel-fade .carousel-item { - opacity: 0; - transition-property: opacity; - -webkit-transform: none; - 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 0.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: -ms-flexbox; - display: flex; - -ms-flex-align: center; - align-items: center; - -ms-flex-pack: center; - justify-content: center; - width: 15%; - padding: 0; - color: #fff; - text-align: center; - background: none; - border: 0; - opacity: 0.5; - transition: opacity 0.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: 0.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%; -} - -/* rtl:options: { - "autoRename": true, - "stringMap":[ { - "name" : "prev-next", - "search" : "prev", - "replace" : "next" - } ] -} */ -.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: -ms-flexbox; - display: flex; - -ms-flex-pack: center; - 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; - -ms-flex: 0 1 auto; - 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: 0.5; - transition: opacity 0.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 { - -webkit-filter: invert(1) grayscale(100); - filter: invert(1) grayscale(100); -} -.carousel-dark .carousel-indicators [data-bs-target] { - background-color: #000; -} -.carousel-dark .carousel-caption { - color: #000; -} - -@-webkit-keyframes spinner-border { - to { - -webkit-transform: rotate(360deg) /* rtl:ignore */; - transform: rotate(360deg) /* rtl:ignore */; - } -} - -@keyframes spinner-border { - to { - -webkit-transform: rotate(360deg) /* rtl:ignore */; - transform: rotate(360deg) /* rtl:ignore */; - } -} -.spinner-border { - display: inline-block; - width: 2rem; - height: 2rem; - vertical-align: -0.125em; - border: 0.25em solid currentColor; - border-right-color: transparent; - border-radius: 50%; - -webkit-animation: 0.75s linear infinite spinner-border; - animation: 0.75s linear infinite spinner-border; -} - -.spinner-border-sm { - width: 1rem; - height: 1rem; - border-width: 0.2em; -} - -@-webkit-keyframes spinner-grow { - 0% { - -webkit-transform: scale(0); - transform: scale(0); - } - 50% { - opacity: 1; - -webkit-transform: none; - transform: none; - } -} - -@keyframes spinner-grow { - 0% { - -webkit-transform: scale(0); - transform: scale(0); - } - 50% { - opacity: 1; - -webkit-transform: none; - transform: none; - } -} -.spinner-grow { - display: inline-block; - width: 2rem; - height: 2rem; - vertical-align: -0.125em; - background-color: currentColor; - border-radius: 50%; - opacity: 0; - -webkit-animation: 0.75s linear infinite spinner-grow; - animation: 0.75s linear infinite spinner-grow; -} - -.spinner-grow-sm { - width: 1rem; - height: 1rem; -} - -@media (prefers-reduced-motion: reduce) { - .spinner-border, -.spinner-grow { - -webkit-animation-duration: 1.5s; - animation-duration: 1.5s; - } -} -.offcanvas { - position: fixed; - bottom: 0; - z-index: 1050; - display: -ms-flexbox; - display: flex; - -ms-flex-direction: column; - flex-direction: column; - max-width: 100%; - visibility: hidden; - background-color: #fff; - background-clip: padding-box; - outline: 0; - transition: -webkit-transform 0.3s ease-in-out; - transition: transform 0.3s ease-in-out; - transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out; -} -@media (prefers-reduced-motion: reduce) { - .offcanvas { - transition: none; - } -} - -.offcanvas-header { - display: -ms-flexbox; - display: flex; - -ms-flex-align: center; - align-items: center; - -ms-flex-pack: justify; - justify-content: space-between; - padding: 1rem 1rem; -} -.offcanvas-header .btn-close { - padding: 0.5rem 0.5rem; - margin-top: -0.5rem; - margin-right: -0.5rem; - margin-bottom: -0.5rem; -} - -.offcanvas-title { - margin-bottom: 0; - line-height: 1.5; -} - -.offcanvas-body { - -ms-flex-positive: 1; - 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, 0.2); - -webkit-transform: translateX(-100%); - transform: translateX(-100%); -} - -.offcanvas-end { - top: 0; - right: 0; - width: 400px; - border-left: 1px solid rgba(0, 0, 0, 0.2); - -webkit-transform: translateX(100%); - transform: translateX(100%); -} - -.offcanvas-top { - top: 0; - right: 0; - left: 0; - height: 30vh; - max-height: 100%; - border-bottom: 1px solid rgba(0, 0, 0, 0.2); - -webkit-transform: translateY(-100%); - transform: translateY(-100%); -} - -.offcanvas-bottom { - right: 0; - left: 0; - height: 30vh; - max-height: 100%; - border-top: 1px solid rgba(0, 0, 0, 0.2); - -webkit-transform: translateY(100%); - transform: translateY(100%); -} - -.offcanvas.show { - -webkit-transform: none; - transform: none; -} - -.clearfix::after { - display: block; - clear: both; - content: ""; -} - -.link-primary { - color: #0d6efd; -} -.link-primary:hover, .link-primary:focus { - color: #0a58ca; -} - -.link-secondary { - color: #6c757d; -} -.link-secondary:hover, .link-secondary:focus { - color: #565e64; -} - -.link-success { - color: #198754; -} -.link-success:hover, .link-success:focus { - color: #146c43; -} - -.link-info { - color: #0dcaf0; -} -.link-info:hover, .link-info:focus { - color: #3dd5f3; -} - -.link-warning { - color: #ffc107; -} -.link-warning:hover, .link-warning:focus { - color: #ffcd39; -} - -.link-danger { - color: #dc3545; -} -.link-danger:hover, .link-danger:focus { - color: #b02a37; -} - -.link-light { - color: #f8f9fa; -} -.link-light:hover, .link-light:focus { - color: #f9fafb; -} - -.link-dark { - color: #212529; -} -.link-dark:hover, .link-dark:focus { - color: #1a1e21; -} - -.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: -webkit-sticky; - position: sticky; - top: 0; - z-index: 1020; -} - -@media (min-width: 576px) { - .sticky-sm-top { - position: -webkit-sticky; - position: sticky; - top: 0; - z-index: 1020; - } -} -@media (min-width: 768px) { - .sticky-md-top { - position: -webkit-sticky; - position: sticky; - top: 0; - z-index: 1020; - } -} -@media (min-width: 992px) { - .sticky-lg-top { - position: -webkit-sticky; - position: sticky; - top: 0; - z-index: 1020; - } -} -@media (min-width: 1200px) { - .sticky-xl-top { - position: -webkit-sticky; - position: sticky; - top: 0; - z-index: 1020; - } -} -@media (min-width: 1400px) { - .sticky-xxl-top { - position: -webkit-sticky; - position: sticky; - top: 0; - z-index: 1020; - } -} -.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; -} - -.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; -} - -.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: -ms-grid !important; - 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: -ms-flexbox !important; - display: flex !important; -} - -.d-inline-flex { - display: -ms-inline-flexbox !important; - display: inline-flex !important; -} - -.d-none { - display: none !important; -} - -.shadow { - box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; -} - -.shadow-sm { - box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; -} - -.shadow-lg { - box-shadow: 0 1rem 3rem rgba(0, 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: -webkit-sticky !important; - 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 { - -webkit-transform: translate(-50%, -50%) !important; - transform: translate(-50%, -50%) !important; -} - -.translate-middle-x { - -webkit-transform: translateX(-50%) !important; - transform: translateX(-50%) !important; -} - -.translate-middle-y { - -webkit-transform: translateY(-50%) !important; - 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-primary { - border-color: #0d6efd !important; -} - -.border-secondary { - border-color: #6c757d !important; -} - -.border-success { - border-color: #198754 !important; -} - -.border-info { - border-color: #0dcaf0 !important; -} - -.border-warning { - border-color: #ffc107 !important; -} - -.border-danger { - border-color: #dc3545 !important; -} - -.border-light { - border-color: #f8f9fa !important; -} - -.border-dark { - border-color: #212529 !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 { - -ms-flex: 1 1 auto !important; - flex: 1 1 auto !important; -} - -.flex-row { - -ms-flex-direction: row !important; - flex-direction: row !important; -} - -.flex-column { - -ms-flex-direction: column !important; - flex-direction: column !important; -} - -.flex-row-reverse { - -ms-flex-direction: row-reverse !important; - flex-direction: row-reverse !important; -} - -.flex-column-reverse { - -ms-flex-direction: column-reverse !important; - flex-direction: column-reverse !important; -} - -.flex-grow-0 { - -ms-flex-positive: 0 !important; - flex-grow: 0 !important; -} - -.flex-grow-1 { - -ms-flex-positive: 1 !important; - flex-grow: 1 !important; -} - -.flex-shrink-0 { - -ms-flex-negative: 0 !important; - flex-shrink: 0 !important; -} - -.flex-shrink-1 { - -ms-flex-negative: 1 !important; - flex-shrink: 1 !important; -} - -.flex-wrap { - -ms-flex-wrap: wrap !important; - flex-wrap: wrap !important; -} - -.flex-nowrap { - -ms-flex-wrap: nowrap !important; - flex-wrap: nowrap !important; -} - -.flex-wrap-reverse { - -ms-flex-wrap: wrap-reverse !important; - flex-wrap: wrap-reverse !important; -} - -.gap-0 { - gap: 0 !important; -} - -.gap-1 { - gap: 0.25rem !important; -} - -.gap-2 { - gap: 0.5rem !important; -} - -.gap-3 { - gap: 1rem !important; -} - -.gap-4 { - gap: 1.5rem !important; -} - -.gap-5 { - gap: 3rem !important; -} - -.justify-content-start { - -ms-flex-pack: start !important; - justify-content: flex-start !important; -} - -.justify-content-end { - -ms-flex-pack: end !important; - justify-content: flex-end !important; -} - -.justify-content-center { - -ms-flex-pack: center !important; - justify-content: center !important; -} - -.justify-content-between { - -ms-flex-pack: justify !important; - justify-content: space-between !important; -} - -.justify-content-around { - -ms-flex-pack: distribute !important; - justify-content: space-around !important; -} - -.justify-content-evenly { - -ms-flex-pack: space-evenly !important; - justify-content: space-evenly !important; -} - -.align-items-start { - -ms-flex-align: start !important; - align-items: flex-start !important; -} - -.align-items-end { - -ms-flex-align: end !important; - align-items: flex-end !important; -} - -.align-items-center { - -ms-flex-align: center !important; - align-items: center !important; -} - -.align-items-baseline { - -ms-flex-align: baseline !important; - align-items: baseline !important; -} - -.align-items-stretch { - -ms-flex-align: stretch !important; - align-items: stretch !important; -} - -.align-content-start { - -ms-flex-line-pack: start !important; - align-content: flex-start !important; -} - -.align-content-end { - -ms-flex-line-pack: end !important; - align-content: flex-end !important; -} - -.align-content-center { - -ms-flex-line-pack: center !important; - align-content: center !important; -} - -.align-content-between { - -ms-flex-line-pack: justify !important; - align-content: space-between !important; -} - -.align-content-around { - -ms-flex-line-pack: distribute !important; - align-content: space-around !important; -} - -.align-content-stretch { - -ms-flex-line-pack: stretch !important; - align-content: stretch !important; -} - -.align-self-auto { - -ms-flex-item-align: auto !important; - -ms-grid-row-align: auto !important; - align-self: auto !important; -} - -.align-self-start { - -ms-flex-item-align: start !important; - align-self: flex-start !important; -} - -.align-self-end { - -ms-flex-item-align: end !important; - align-self: flex-end !important; -} - -.align-self-center { - -ms-flex-item-align: center !important; - -ms-grid-row-align: center !important; - align-self: center !important; -} - -.align-self-baseline { - -ms-flex-item-align: baseline !important; - align-self: baseline !important; -} - -.align-self-stretch { - -ms-flex-item-align: stretch !important; - -ms-grid-row-align: stretch !important; - align-self: stretch !important; -} - -.order-first { - -ms-flex-order: -1 !important; - order: -1 !important; -} - -.order-0 { - -ms-flex-order: 0 !important; - order: 0 !important; -} - -.order-1 { - -ms-flex-order: 1 !important; - order: 1 !important; -} - -.order-2 { - -ms-flex-order: 2 !important; - order: 2 !important; -} - -.order-3 { - -ms-flex-order: 3 !important; - order: 3 !important; -} - -.order-4 { - -ms-flex-order: 4 !important; - order: 4 !important; -} - -.order-5 { - -ms-flex-order: 5 !important; - order: 5 !important; -} - -.order-last { - -ms-flex-order: 6 !important; - order: 6 !important; -} - -.m-0 { - margin: 0 !important; -} - -.m-1 { - margin: 0.25rem !important; -} - -.m-2 { - margin: 0.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: 0.25rem !important; - margin-left: 0.25rem !important; -} - -.mx-2 { - margin-right: 0.5rem !important; - margin-left: 0.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: 0.25rem !important; - margin-bottom: 0.25rem !important; -} - -.my-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.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: 0.25rem !important; -} - -.mt-2 { - margin-top: 0.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: 0.25rem !important; -} - -.me-2 { - margin-right: 0.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: 0.25rem !important; -} - -.mb-2 { - margin-bottom: 0.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: 0.25rem !important; -} - -.ms-2 { - margin-left: 0.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: 0.25rem !important; -} - -.p-2 { - padding: 0.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: 0.25rem !important; - padding-left: 0.25rem !important; -} - -.px-2 { - padding-right: 0.5rem !important; - padding-left: 0.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: 0.25rem !important; - padding-bottom: 0.25rem !important; -} - -.py-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.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: 0.25rem !important; -} - -.pt-2 { - padding-top: 0.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: 0.25rem !important; -} - -.pe-2 { - padding-right: 0.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: 0.25rem !important; -} - -.pb-2 { - padding-bottom: 0.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: 0.25rem !important; -} - -.ps-2 { - padding-left: 0.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.375rem + 1.5vw) !important; -} - -.fs-2 { - font-size: calc(1.325rem + 0.9vw) !important; -} - -.fs-3 { - font-size: calc(1.3rem + 0.6vw) !important; -} - -.fs-4 { - font-size: calc(1.275rem + 0.3vw) !important; -} - -.fs-5 { - font-size: 1.25rem !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; -} - -/* rtl:begin:remove */ -.text-break { - word-wrap: break-word !important; - word-break: break-word !important; -} - -/* rtl:end:remove */ -.text-primary { - color: #0d6efd !important; -} - -.text-secondary { - color: #6c757d !important; -} - -.text-success { - color: #198754 !important; -} - -.text-info { - color: #0dcaf0 !important; -} - -.text-warning { - color: #ffc107 !important; -} - -.text-danger { - color: #dc3545 !important; -} - -.text-light { - color: #f8f9fa !important; -} - -.text-dark { - color: #212529 !important; -} - -.text-white { - color: #fff !important; -} - -.text-body { - color: #212529 !important; -} - -.text-muted { - color: #6c757d !important; -} - -.text-black-50 { - color: rgba(0, 0, 0, 0.5) !important; -} - -.text-white-50 { - color: rgba(255, 255, 255, 0.5) !important; -} - -.text-reset { - color: inherit !important; -} - -.bg-primary { - background-color: #0d6efd !important; -} - -.bg-secondary { - background-color: #6c757d !important; -} - -.bg-success { - background-color: #198754 !important; -} - -.bg-info { - background-color: #0dcaf0 !important; -} - -.bg-warning { - background-color: #ffc107 !important; -} - -.bg-danger { - background-color: #dc3545 !important; -} - -.bg-light { - background-color: #f8f9fa !important; -} - -.bg-dark { - background-color: #212529 !important; -} - -.bg-body { - background-color: #fff !important; -} - -.bg-white { - background-color: #fff !important; -} - -.bg-transparent { - background-color: transparent !important; -} - -.bg-gradient { - background-image: var(--bs-gradient) !important; -} - -.user-select-all { - -webkit-user-select: all !important; - -moz-user-select: all !important; - user-select: all !important; -} - -.user-select-auto { - -webkit-user-select: auto !important; - -moz-user-select: auto !important; - -ms-user-select: auto !important; - user-select: auto !important; -} - -.user-select-none { - -webkit-user-select: none !important; - -moz-user-select: none !important; - -ms-user-select: none !important; - user-select: none !important; -} - -.pe-none { - pointer-events: none !important; -} - -.pe-auto { - pointer-events: auto !important; -} - -.rounded { - border-radius: 0.25rem !important; -} - -.rounded-0 { - border-radius: 0 !important; -} - -.rounded-1 { - border-radius: 0.2rem !important; -} - -.rounded-2 { - border-radius: 0.25rem !important; -} - -.rounded-3 { - border-radius: 0.3rem !important; -} - -.rounded-circle { - border-radius: 50% !important; -} - -.rounded-pill { - border-radius: 50rem !important; -} - -.rounded-top { - border-top-left-radius: 0.25rem !important; - border-top-right-radius: 0.25rem !important; -} - -.rounded-end { - border-top-right-radius: 0.25rem !important; - border-bottom-right-radius: 0.25rem !important; -} - -.rounded-bottom { - border-bottom-right-radius: 0.25rem !important; - border-bottom-left-radius: 0.25rem !important; -} - -.rounded-start { - border-bottom-left-radius: 0.25rem !important; - border-top-left-radius: 0.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: -ms-grid !important; - 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: -ms-flexbox !important; - display: flex !important; - } - - .d-sm-inline-flex { - display: -ms-inline-flexbox !important; - display: inline-flex !important; - } - - .d-sm-none { - display: none !important; - } - - .flex-sm-fill { - -ms-flex: 1 1 auto !important; - flex: 1 1 auto !important; - } - - .flex-sm-row { - -ms-flex-direction: row !important; - flex-direction: row !important; - } - - .flex-sm-column { - -ms-flex-direction: column !important; - flex-direction: column !important; - } - - .flex-sm-row-reverse { - -ms-flex-direction: row-reverse !important; - flex-direction: row-reverse !important; - } - - .flex-sm-column-reverse { - -ms-flex-direction: column-reverse !important; - flex-direction: column-reverse !important; - } - - .flex-sm-grow-0 { - -ms-flex-positive: 0 !important; - flex-grow: 0 !important; - } - - .flex-sm-grow-1 { - -ms-flex-positive: 1 !important; - flex-grow: 1 !important; - } - - .flex-sm-shrink-0 { - -ms-flex-negative: 0 !important; - flex-shrink: 0 !important; - } - - .flex-sm-shrink-1 { - -ms-flex-negative: 1 !important; - flex-shrink: 1 !important; - } - - .flex-sm-wrap { - -ms-flex-wrap: wrap !important; - flex-wrap: wrap !important; - } - - .flex-sm-nowrap { - -ms-flex-wrap: nowrap !important; - flex-wrap: nowrap !important; - } - - .flex-sm-wrap-reverse { - -ms-flex-wrap: wrap-reverse !important; - flex-wrap: wrap-reverse !important; - } - - .gap-sm-0 { - gap: 0 !important; - } - - .gap-sm-1 { - gap: 0.25rem !important; - } - - .gap-sm-2 { - gap: 0.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 { - -ms-flex-pack: start !important; - justify-content: flex-start !important; - } - - .justify-content-sm-end { - -ms-flex-pack: end !important; - justify-content: flex-end !important; - } - - .justify-content-sm-center { - -ms-flex-pack: center !important; - justify-content: center !important; - } - - .justify-content-sm-between { - -ms-flex-pack: justify !important; - justify-content: space-between !important; - } - - .justify-content-sm-around { - -ms-flex-pack: distribute !important; - justify-content: space-around !important; - } - - .justify-content-sm-evenly { - -ms-flex-pack: space-evenly !important; - justify-content: space-evenly !important; - } - - .align-items-sm-start { - -ms-flex-align: start !important; - align-items: flex-start !important; - } - - .align-items-sm-end { - -ms-flex-align: end !important; - align-items: flex-end !important; - } - - .align-items-sm-center { - -ms-flex-align: center !important; - align-items: center !important; - } - - .align-items-sm-baseline { - -ms-flex-align: baseline !important; - align-items: baseline !important; - } - - .align-items-sm-stretch { - -ms-flex-align: stretch !important; - align-items: stretch !important; - } - - .align-content-sm-start { - -ms-flex-line-pack: start !important; - align-content: flex-start !important; - } - - .align-content-sm-end { - -ms-flex-line-pack: end !important; - align-content: flex-end !important; - } - - .align-content-sm-center { - -ms-flex-line-pack: center !important; - align-content: center !important; - } - - .align-content-sm-between { - -ms-flex-line-pack: justify !important; - align-content: space-between !important; - } - - .align-content-sm-around { - -ms-flex-line-pack: distribute !important; - align-content: space-around !important; - } - - .align-content-sm-stretch { - -ms-flex-line-pack: stretch !important; - align-content: stretch !important; - } - - .align-self-sm-auto { - -ms-flex-item-align: auto !important; - -ms-grid-row-align: auto !important; - align-self: auto !important; - } - - .align-self-sm-start { - -ms-flex-item-align: start !important; - align-self: flex-start !important; - } - - .align-self-sm-end { - -ms-flex-item-align: end !important; - align-self: flex-end !important; - } - - .align-self-sm-center { - -ms-flex-item-align: center !important; - -ms-grid-row-align: center !important; - align-self: center !important; - } - - .align-self-sm-baseline { - -ms-flex-item-align: baseline !important; - align-self: baseline !important; - } - - .align-self-sm-stretch { - -ms-flex-item-align: stretch !important; - -ms-grid-row-align: stretch !important; - align-self: stretch !important; - } - - .order-sm-first { - -ms-flex-order: -1 !important; - order: -1 !important; - } - - .order-sm-0 { - -ms-flex-order: 0 !important; - order: 0 !important; - } - - .order-sm-1 { - -ms-flex-order: 1 !important; - order: 1 !important; - } - - .order-sm-2 { - -ms-flex-order: 2 !important; - order: 2 !important; - } - - .order-sm-3 { - -ms-flex-order: 3 !important; - order: 3 !important; - } - - .order-sm-4 { - -ms-flex-order: 4 !important; - order: 4 !important; - } - - .order-sm-5 { - -ms-flex-order: 5 !important; - order: 5 !important; - } - - .order-sm-last { - -ms-flex-order: 6 !important; - order: 6 !important; - } - - .m-sm-0 { - margin: 0 !important; - } - - .m-sm-1 { - margin: 0.25rem !important; - } - - .m-sm-2 { - margin: 0.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: 0.25rem !important; - margin-left: 0.25rem !important; - } - - .mx-sm-2 { - margin-right: 0.5rem !important; - margin-left: 0.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: 0.25rem !important; - margin-bottom: 0.25rem !important; - } - - .my-sm-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.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: 0.25rem !important; - } - - .mt-sm-2 { - margin-top: 0.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: 0.25rem !important; - } - - .me-sm-2 { - margin-right: 0.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: 0.25rem !important; - } - - .mb-sm-2 { - margin-bottom: 0.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: 0.25rem !important; - } - - .ms-sm-2 { - margin-left: 0.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: 0.25rem !important; - } - - .p-sm-2 { - padding: 0.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: 0.25rem !important; - padding-left: 0.25rem !important; - } - - .px-sm-2 { - padding-right: 0.5rem !important; - padding-left: 0.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: 0.25rem !important; - padding-bottom: 0.25rem !important; - } - - .py-sm-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.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: 0.25rem !important; - } - - .pt-sm-2 { - padding-top: 0.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: 0.25rem !important; - } - - .pe-sm-2 { - padding-right: 0.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: 0.25rem !important; - } - - .pb-sm-2 { - padding-bottom: 0.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: 0.25rem !important; - } - - .ps-sm-2 { - padding-left: 0.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: -ms-grid !important; - 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: -ms-flexbox !important; - display: flex !important; - } - - .d-md-inline-flex { - display: -ms-inline-flexbox !important; - display: inline-flex !important; - } - - .d-md-none { - display: none !important; - } - - .flex-md-fill { - -ms-flex: 1 1 auto !important; - flex: 1 1 auto !important; - } - - .flex-md-row { - -ms-flex-direction: row !important; - flex-direction: row !important; - } - - .flex-md-column { - -ms-flex-direction: column !important; - flex-direction: column !important; - } - - .flex-md-row-reverse { - -ms-flex-direction: row-reverse !important; - flex-direction: row-reverse !important; - } - - .flex-md-column-reverse { - -ms-flex-direction: column-reverse !important; - flex-direction: column-reverse !important; - } - - .flex-md-grow-0 { - -ms-flex-positive: 0 !important; - flex-grow: 0 !important; - } - - .flex-md-grow-1 { - -ms-flex-positive: 1 !important; - flex-grow: 1 !important; - } - - .flex-md-shrink-0 { - -ms-flex-negative: 0 !important; - flex-shrink: 0 !important; - } - - .flex-md-shrink-1 { - -ms-flex-negative: 1 !important; - flex-shrink: 1 !important; - } - - .flex-md-wrap { - -ms-flex-wrap: wrap !important; - flex-wrap: wrap !important; - } - - .flex-md-nowrap { - -ms-flex-wrap: nowrap !important; - flex-wrap: nowrap !important; - } - - .flex-md-wrap-reverse { - -ms-flex-wrap: wrap-reverse !important; - flex-wrap: wrap-reverse !important; - } - - .gap-md-0 { - gap: 0 !important; - } - - .gap-md-1 { - gap: 0.25rem !important; - } - - .gap-md-2 { - gap: 0.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 { - -ms-flex-pack: start !important; - justify-content: flex-start !important; - } - - .justify-content-md-end { - -ms-flex-pack: end !important; - justify-content: flex-end !important; - } - - .justify-content-md-center { - -ms-flex-pack: center !important; - justify-content: center !important; - } - - .justify-content-md-between { - -ms-flex-pack: justify !important; - justify-content: space-between !important; - } - - .justify-content-md-around { - -ms-flex-pack: distribute !important; - justify-content: space-around !important; - } - - .justify-content-md-evenly { - -ms-flex-pack: space-evenly !important; - justify-content: space-evenly !important; - } - - .align-items-md-start { - -ms-flex-align: start !important; - align-items: flex-start !important; - } - - .align-items-md-end { - -ms-flex-align: end !important; - align-items: flex-end !important; - } - - .align-items-md-center { - -ms-flex-align: center !important; - align-items: center !important; - } - - .align-items-md-baseline { - -ms-flex-align: baseline !important; - align-items: baseline !important; - } - - .align-items-md-stretch { - -ms-flex-align: stretch !important; - align-items: stretch !important; - } - - .align-content-md-start { - -ms-flex-line-pack: start !important; - align-content: flex-start !important; - } - - .align-content-md-end { - -ms-flex-line-pack: end !important; - align-content: flex-end !important; - } - - .align-content-md-center { - -ms-flex-line-pack: center !important; - align-content: center !important; - } - - .align-content-md-between { - -ms-flex-line-pack: justify !important; - align-content: space-between !important; - } - - .align-content-md-around { - -ms-flex-line-pack: distribute !important; - align-content: space-around !important; - } - - .align-content-md-stretch { - -ms-flex-line-pack: stretch !important; - align-content: stretch !important; - } - - .align-self-md-auto { - -ms-flex-item-align: auto !important; - -ms-grid-row-align: auto !important; - align-self: auto !important; - } - - .align-self-md-start { - -ms-flex-item-align: start !important; - align-self: flex-start !important; - } - - .align-self-md-end { - -ms-flex-item-align: end !important; - align-self: flex-end !important; - } - - .align-self-md-center { - -ms-flex-item-align: center !important; - -ms-grid-row-align: center !important; - align-self: center !important; - } - - .align-self-md-baseline { - -ms-flex-item-align: baseline !important; - align-self: baseline !important; - } - - .align-self-md-stretch { - -ms-flex-item-align: stretch !important; - -ms-grid-row-align: stretch !important; - align-self: stretch !important; - } - - .order-md-first { - -ms-flex-order: -1 !important; - order: -1 !important; - } - - .order-md-0 { - -ms-flex-order: 0 !important; - order: 0 !important; - } - - .order-md-1 { - -ms-flex-order: 1 !important; - order: 1 !important; - } - - .order-md-2 { - -ms-flex-order: 2 !important; - order: 2 !important; - } - - .order-md-3 { - -ms-flex-order: 3 !important; - order: 3 !important; - } - - .order-md-4 { - -ms-flex-order: 4 !important; - order: 4 !important; - } - - .order-md-5 { - -ms-flex-order: 5 !important; - order: 5 !important; - } - - .order-md-last { - -ms-flex-order: 6 !important; - order: 6 !important; - } - - .m-md-0 { - margin: 0 !important; - } - - .m-md-1 { - margin: 0.25rem !important; - } - - .m-md-2 { - margin: 0.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: 0.25rem !important; - margin-left: 0.25rem !important; - } - - .mx-md-2 { - margin-right: 0.5rem !important; - margin-left: 0.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: 0.25rem !important; - margin-bottom: 0.25rem !important; - } - - .my-md-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.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: 0.25rem !important; - } - - .mt-md-2 { - margin-top: 0.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: 0.25rem !important; - } - - .me-md-2 { - margin-right: 0.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: 0.25rem !important; - } - - .mb-md-2 { - margin-bottom: 0.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: 0.25rem !important; - } - - .ms-md-2 { - margin-left: 0.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: 0.25rem !important; - } - - .p-md-2 { - padding: 0.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: 0.25rem !important; - padding-left: 0.25rem !important; - } - - .px-md-2 { - padding-right: 0.5rem !important; - padding-left: 0.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: 0.25rem !important; - padding-bottom: 0.25rem !important; - } - - .py-md-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.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: 0.25rem !important; - } - - .pt-md-2 { - padding-top: 0.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: 0.25rem !important; - } - - .pe-md-2 { - padding-right: 0.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: 0.25rem !important; - } - - .pb-md-2 { - padding-bottom: 0.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: 0.25rem !important; - } - - .ps-md-2 { - padding-left: 0.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: -ms-grid !important; - 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: -ms-flexbox !important; - display: flex !important; - } - - .d-lg-inline-flex { - display: -ms-inline-flexbox !important; - display: inline-flex !important; - } - - .d-lg-none { - display: none !important; - } - - .flex-lg-fill { - -ms-flex: 1 1 auto !important; - flex: 1 1 auto !important; - } - - .flex-lg-row { - -ms-flex-direction: row !important; - flex-direction: row !important; - } - - .flex-lg-column { - -ms-flex-direction: column !important; - flex-direction: column !important; - } - - .flex-lg-row-reverse { - -ms-flex-direction: row-reverse !important; - flex-direction: row-reverse !important; - } - - .flex-lg-column-reverse { - -ms-flex-direction: column-reverse !important; - flex-direction: column-reverse !important; - } - - .flex-lg-grow-0 { - -ms-flex-positive: 0 !important; - flex-grow: 0 !important; - } - - .flex-lg-grow-1 { - -ms-flex-positive: 1 !important; - flex-grow: 1 !important; - } - - .flex-lg-shrink-0 { - -ms-flex-negative: 0 !important; - flex-shrink: 0 !important; - } - - .flex-lg-shrink-1 { - -ms-flex-negative: 1 !important; - flex-shrink: 1 !important; - } - - .flex-lg-wrap { - -ms-flex-wrap: wrap !important; - flex-wrap: wrap !important; - } - - .flex-lg-nowrap { - -ms-flex-wrap: nowrap !important; - flex-wrap: nowrap !important; - } - - .flex-lg-wrap-reverse { - -ms-flex-wrap: wrap-reverse !important; - flex-wrap: wrap-reverse !important; - } - - .gap-lg-0 { - gap: 0 !important; - } - - .gap-lg-1 { - gap: 0.25rem !important; - } - - .gap-lg-2 { - gap: 0.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 { - -ms-flex-pack: start !important; - justify-content: flex-start !important; - } - - .justify-content-lg-end { - -ms-flex-pack: end !important; - justify-content: flex-end !important; - } - - .justify-content-lg-center { - -ms-flex-pack: center !important; - justify-content: center !important; - } - - .justify-content-lg-between { - -ms-flex-pack: justify !important; - justify-content: space-between !important; - } - - .justify-content-lg-around { - -ms-flex-pack: distribute !important; - justify-content: space-around !important; - } - - .justify-content-lg-evenly { - -ms-flex-pack: space-evenly !important; - justify-content: space-evenly !important; - } - - .align-items-lg-start { - -ms-flex-align: start !important; - align-items: flex-start !important; - } - - .align-items-lg-end { - -ms-flex-align: end !important; - align-items: flex-end !important; - } - - .align-items-lg-center { - -ms-flex-align: center !important; - align-items: center !important; - } - - .align-items-lg-baseline { - -ms-flex-align: baseline !important; - align-items: baseline !important; - } - - .align-items-lg-stretch { - -ms-flex-align: stretch !important; - align-items: stretch !important; - } - - .align-content-lg-start { - -ms-flex-line-pack: start !important; - align-content: flex-start !important; - } - - .align-content-lg-end { - -ms-flex-line-pack: end !important; - align-content: flex-end !important; - } - - .align-content-lg-center { - -ms-flex-line-pack: center !important; - align-content: center !important; - } - - .align-content-lg-between { - -ms-flex-line-pack: justify !important; - align-content: space-between !important; - } - - .align-content-lg-around { - -ms-flex-line-pack: distribute !important; - align-content: space-around !important; - } - - .align-content-lg-stretch { - -ms-flex-line-pack: stretch !important; - align-content: stretch !important; - } - - .align-self-lg-auto { - -ms-flex-item-align: auto !important; - -ms-grid-row-align: auto !important; - align-self: auto !important; - } - - .align-self-lg-start { - -ms-flex-item-align: start !important; - align-self: flex-start !important; - } - - .align-self-lg-end { - -ms-flex-item-align: end !important; - align-self: flex-end !important; - } - - .align-self-lg-center { - -ms-flex-item-align: center !important; - -ms-grid-row-align: center !important; - align-self: center !important; - } - - .align-self-lg-baseline { - -ms-flex-item-align: baseline !important; - align-self: baseline !important; - } - - .align-self-lg-stretch { - -ms-flex-item-align: stretch !important; - -ms-grid-row-align: stretch !important; - align-self: stretch !important; - } - - .order-lg-first { - -ms-flex-order: -1 !important; - order: -1 !important; - } - - .order-lg-0 { - -ms-flex-order: 0 !important; - order: 0 !important; - } - - .order-lg-1 { - -ms-flex-order: 1 !important; - order: 1 !important; - } - - .order-lg-2 { - -ms-flex-order: 2 !important; - order: 2 !important; - } - - .order-lg-3 { - -ms-flex-order: 3 !important; - order: 3 !important; - } - - .order-lg-4 { - -ms-flex-order: 4 !important; - order: 4 !important; - } - - .order-lg-5 { - -ms-flex-order: 5 !important; - order: 5 !important; - } - - .order-lg-last { - -ms-flex-order: 6 !important; - order: 6 !important; - } - - .m-lg-0 { - margin: 0 !important; - } - - .m-lg-1 { - margin: 0.25rem !important; - } - - .m-lg-2 { - margin: 0.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: 0.25rem !important; - margin-left: 0.25rem !important; - } - - .mx-lg-2 { - margin-right: 0.5rem !important; - margin-left: 0.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: 0.25rem !important; - margin-bottom: 0.25rem !important; - } - - .my-lg-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.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: 0.25rem !important; - } - - .mt-lg-2 { - margin-top: 0.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: 0.25rem !important; - } - - .me-lg-2 { - margin-right: 0.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: 0.25rem !important; - } - - .mb-lg-2 { - margin-bottom: 0.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: 0.25rem !important; - } - - .ms-lg-2 { - margin-left: 0.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: 0.25rem !important; - } - - .p-lg-2 { - padding: 0.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: 0.25rem !important; - padding-left: 0.25rem !important; - } - - .px-lg-2 { - padding-right: 0.5rem !important; - padding-left: 0.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: 0.25rem !important; - padding-bottom: 0.25rem !important; - } - - .py-lg-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.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: 0.25rem !important; - } - - .pt-lg-2 { - padding-top: 0.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: 0.25rem !important; - } - - .pe-lg-2 { - padding-right: 0.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: 0.25rem !important; - } - - .pb-lg-2 { - padding-bottom: 0.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: 0.25rem !important; - } - - .ps-lg-2 { - padding-left: 0.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: -ms-grid !important; - 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: -ms-flexbox !important; - display: flex !important; - } - - .d-xl-inline-flex { - display: -ms-inline-flexbox !important; - display: inline-flex !important; - } - - .d-xl-none { - display: none !important; - } - - .flex-xl-fill { - -ms-flex: 1 1 auto !important; - flex: 1 1 auto !important; - } - - .flex-xl-row { - -ms-flex-direction: row !important; - flex-direction: row !important; - } - - .flex-xl-column { - -ms-flex-direction: column !important; - flex-direction: column !important; - } - - .flex-xl-row-reverse { - -ms-flex-direction: row-reverse !important; - flex-direction: row-reverse !important; - } - - .flex-xl-column-reverse { - -ms-flex-direction: column-reverse !important; - flex-direction: column-reverse !important; - } - - .flex-xl-grow-0 { - -ms-flex-positive: 0 !important; - flex-grow: 0 !important; - } - - .flex-xl-grow-1 { - -ms-flex-positive: 1 !important; - flex-grow: 1 !important; - } - - .flex-xl-shrink-0 { - -ms-flex-negative: 0 !important; - flex-shrink: 0 !important; - } - - .flex-xl-shrink-1 { - -ms-flex-negative: 1 !important; - flex-shrink: 1 !important; - } - - .flex-xl-wrap { - -ms-flex-wrap: wrap !important; - flex-wrap: wrap !important; - } - - .flex-xl-nowrap { - -ms-flex-wrap: nowrap !important; - flex-wrap: nowrap !important; - } - - .flex-xl-wrap-reverse { - -ms-flex-wrap: wrap-reverse !important; - flex-wrap: wrap-reverse !important; - } - - .gap-xl-0 { - gap: 0 !important; - } - - .gap-xl-1 { - gap: 0.25rem !important; - } - - .gap-xl-2 { - gap: 0.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 { - -ms-flex-pack: start !important; - justify-content: flex-start !important; - } - - .justify-content-xl-end { - -ms-flex-pack: end !important; - justify-content: flex-end !important; - } - - .justify-content-xl-center { - -ms-flex-pack: center !important; - justify-content: center !important; - } - - .justify-content-xl-between { - -ms-flex-pack: justify !important; - justify-content: space-between !important; - } - - .justify-content-xl-around { - -ms-flex-pack: distribute !important; - justify-content: space-around !important; - } - - .justify-content-xl-evenly { - -ms-flex-pack: space-evenly !important; - justify-content: space-evenly !important; - } - - .align-items-xl-start { - -ms-flex-align: start !important; - align-items: flex-start !important; - } - - .align-items-xl-end { - -ms-flex-align: end !important; - align-items: flex-end !important; - } - - .align-items-xl-center { - -ms-flex-align: center !important; - align-items: center !important; - } - - .align-items-xl-baseline { - -ms-flex-align: baseline !important; - align-items: baseline !important; - } - - .align-items-xl-stretch { - -ms-flex-align: stretch !important; - align-items: stretch !important; - } - - .align-content-xl-start { - -ms-flex-line-pack: start !important; - align-content: flex-start !important; - } - - .align-content-xl-end { - -ms-flex-line-pack: end !important; - align-content: flex-end !important; - } - - .align-content-xl-center { - -ms-flex-line-pack: center !important; - align-content: center !important; - } - - .align-content-xl-between { - -ms-flex-line-pack: justify !important; - align-content: space-between !important; - } - - .align-content-xl-around { - -ms-flex-line-pack: distribute !important; - align-content: space-around !important; - } - - .align-content-xl-stretch { - -ms-flex-line-pack: stretch !important; - align-content: stretch !important; - } - - .align-self-xl-auto { - -ms-flex-item-align: auto !important; - -ms-grid-row-align: auto !important; - align-self: auto !important; - } - - .align-self-xl-start { - -ms-flex-item-align: start !important; - align-self: flex-start !important; - } - - .align-self-xl-end { - -ms-flex-item-align: end !important; - align-self: flex-end !important; - } - - .align-self-xl-center { - -ms-flex-item-align: center !important; - -ms-grid-row-align: center !important; - align-self: center !important; - } - - .align-self-xl-baseline { - -ms-flex-item-align: baseline !important; - align-self: baseline !important; - } - - .align-self-xl-stretch { - -ms-flex-item-align: stretch !important; - -ms-grid-row-align: stretch !important; - align-self: stretch !important; - } - - .order-xl-first { - -ms-flex-order: -1 !important; - order: -1 !important; - } - - .order-xl-0 { - -ms-flex-order: 0 !important; - order: 0 !important; - } - - .order-xl-1 { - -ms-flex-order: 1 !important; - order: 1 !important; - } - - .order-xl-2 { - -ms-flex-order: 2 !important; - order: 2 !important; - } - - .order-xl-3 { - -ms-flex-order: 3 !important; - order: 3 !important; - } - - .order-xl-4 { - -ms-flex-order: 4 !important; - order: 4 !important; - } - - .order-xl-5 { - -ms-flex-order: 5 !important; - order: 5 !important; - } - - .order-xl-last { - -ms-flex-order: 6 !important; - order: 6 !important; - } - - .m-xl-0 { - margin: 0 !important; - } - - .m-xl-1 { - margin: 0.25rem !important; - } - - .m-xl-2 { - margin: 0.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: 0.25rem !important; - margin-left: 0.25rem !important; - } - - .mx-xl-2 { - margin-right: 0.5rem !important; - margin-left: 0.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: 0.25rem !important; - margin-bottom: 0.25rem !important; - } - - .my-xl-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.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: 0.25rem !important; - } - - .mt-xl-2 { - margin-top: 0.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: 0.25rem !important; - } - - .me-xl-2 { - margin-right: 0.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: 0.25rem !important; - } - - .mb-xl-2 { - margin-bottom: 0.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: 0.25rem !important; - } - - .ms-xl-2 { - margin-left: 0.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: 0.25rem !important; - } - - .p-xl-2 { - padding: 0.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: 0.25rem !important; - padding-left: 0.25rem !important; - } - - .px-xl-2 { - padding-right: 0.5rem !important; - padding-left: 0.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: 0.25rem !important; - padding-bottom: 0.25rem !important; - } - - .py-xl-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.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: 0.25rem !important; - } - - .pt-xl-2 { - padding-top: 0.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: 0.25rem !important; - } - - .pe-xl-2 { - padding-right: 0.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: 0.25rem !important; - } - - .pb-xl-2 { - padding-bottom: 0.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: 0.25rem !important; - } - - .ps-xl-2 { - padding-left: 0.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: -ms-grid !important; - 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: -ms-flexbox !important; - display: flex !important; - } - - .d-xxl-inline-flex { - display: -ms-inline-flexbox !important; - display: inline-flex !important; - } - - .d-xxl-none { - display: none !important; - } - - .flex-xxl-fill { - -ms-flex: 1 1 auto !important; - flex: 1 1 auto !important; - } - - .flex-xxl-row { - -ms-flex-direction: row !important; - flex-direction: row !important; - } - - .flex-xxl-column { - -ms-flex-direction: column !important; - flex-direction: column !important; - } - - .flex-xxl-row-reverse { - -ms-flex-direction: row-reverse !important; - flex-direction: row-reverse !important; - } - - .flex-xxl-column-reverse { - -ms-flex-direction: column-reverse !important; - flex-direction: column-reverse !important; - } - - .flex-xxl-grow-0 { - -ms-flex-positive: 0 !important; - flex-grow: 0 !important; - } - - .flex-xxl-grow-1 { - -ms-flex-positive: 1 !important; - flex-grow: 1 !important; - } - - .flex-xxl-shrink-0 { - -ms-flex-negative: 0 !important; - flex-shrink: 0 !important; - } - - .flex-xxl-shrink-1 { - -ms-flex-negative: 1 !important; - flex-shrink: 1 !important; - } - - .flex-xxl-wrap { - -ms-flex-wrap: wrap !important; - flex-wrap: wrap !important; - } - - .flex-xxl-nowrap { - -ms-flex-wrap: nowrap !important; - flex-wrap: nowrap !important; - } - - .flex-xxl-wrap-reverse { - -ms-flex-wrap: wrap-reverse !important; - flex-wrap: wrap-reverse !important; - } - - .gap-xxl-0 { - gap: 0 !important; - } - - .gap-xxl-1 { - gap: 0.25rem !important; - } - - .gap-xxl-2 { - gap: 0.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 { - -ms-flex-pack: start !important; - justify-content: flex-start !important; - } - - .justify-content-xxl-end { - -ms-flex-pack: end !important; - justify-content: flex-end !important; - } - - .justify-content-xxl-center { - -ms-flex-pack: center !important; - justify-content: center !important; - } - - .justify-content-xxl-between { - -ms-flex-pack: justify !important; - justify-content: space-between !important; - } - - .justify-content-xxl-around { - -ms-flex-pack: distribute !important; - justify-content: space-around !important; - } - - .justify-content-xxl-evenly { - -ms-flex-pack: space-evenly !important; - justify-content: space-evenly !important; - } - - .align-items-xxl-start { - -ms-flex-align: start !important; - align-items: flex-start !important; - } - - .align-items-xxl-end { - -ms-flex-align: end !important; - align-items: flex-end !important; - } - - .align-items-xxl-center { - -ms-flex-align: center !important; - align-items: center !important; - } - - .align-items-xxl-baseline { - -ms-flex-align: baseline !important; - align-items: baseline !important; - } - - .align-items-xxl-stretch { - -ms-flex-align: stretch !important; - align-items: stretch !important; - } - - .align-content-xxl-start { - -ms-flex-line-pack: start !important; - align-content: flex-start !important; - } - - .align-content-xxl-end { - -ms-flex-line-pack: end !important; - align-content: flex-end !important; - } - - .align-content-xxl-center { - -ms-flex-line-pack: center !important; - align-content: center !important; - } - - .align-content-xxl-between { - -ms-flex-line-pack: justify !important; - align-content: space-between !important; - } - - .align-content-xxl-around { - -ms-flex-line-pack: distribute !important; - align-content: space-around !important; - } - - .align-content-xxl-stretch { - -ms-flex-line-pack: stretch !important; - align-content: stretch !important; - } - - .align-self-xxl-auto { - -ms-flex-item-align: auto !important; - -ms-grid-row-align: auto !important; - align-self: auto !important; - } - - .align-self-xxl-start { - -ms-flex-item-align: start !important; - align-self: flex-start !important; - } - - .align-self-xxl-end { - -ms-flex-item-align: end !important; - align-self: flex-end !important; - } - - .align-self-xxl-center { - -ms-flex-item-align: center !important; - -ms-grid-row-align: center !important; - align-self: center !important; - } - - .align-self-xxl-baseline { - -ms-flex-item-align: baseline !important; - align-self: baseline !important; - } - - .align-self-xxl-stretch { - -ms-flex-item-align: stretch !important; - -ms-grid-row-align: stretch !important; - align-self: stretch !important; - } - - .order-xxl-first { - -ms-flex-order: -1 !important; - order: -1 !important; - } - - .order-xxl-0 { - -ms-flex-order: 0 !important; - order: 0 !important; - } - - .order-xxl-1 { - -ms-flex-order: 1 !important; - order: 1 !important; - } - - .order-xxl-2 { - -ms-flex-order: 2 !important; - order: 2 !important; - } - - .order-xxl-3 { - -ms-flex-order: 3 !important; - order: 3 !important; - } - - .order-xxl-4 { - -ms-flex-order: 4 !important; - order: 4 !important; - } - - .order-xxl-5 { - -ms-flex-order: 5 !important; - order: 5 !important; - } - - .order-xxl-last { - -ms-flex-order: 6 !important; - order: 6 !important; - } - - .m-xxl-0 { - margin: 0 !important; - } - - .m-xxl-1 { - margin: 0.25rem !important; - } - - .m-xxl-2 { - margin: 0.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: 0.25rem !important; - margin-left: 0.25rem !important; - } - - .mx-xxl-2 { - margin-right: 0.5rem !important; - margin-left: 0.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: 0.25rem !important; - margin-bottom: 0.25rem !important; - } - - .my-xxl-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.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: 0.25rem !important; - } - - .mt-xxl-2 { - margin-top: 0.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: 0.25rem !important; - } - - .me-xxl-2 { - margin-right: 0.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: 0.25rem !important; - } - - .mb-xxl-2 { - margin-bottom: 0.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: 0.25rem !important; - } - - .ms-xxl-2 { - margin-left: 0.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: 0.25rem !important; - } - - .p-xxl-2 { - padding: 0.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: 0.25rem !important; - padding-left: 0.25rem !important; - } - - .px-xxl-2 { - padding-right: 0.5rem !important; - padding-left: 0.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: 0.25rem !important; - padding-bottom: 0.25rem !important; - } - - .py-xxl-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.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: 0.25rem !important; - } - - .pt-xxl-2 { - padding-top: 0.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: 0.25rem !important; - } - - .pe-xxl-2 { - padding-right: 0.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: 0.25rem !important; - } - - .pb-xxl-2 { - padding-bottom: 0.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: 0.25rem !important; - } - - .ps-xxl-2 { - padding-left: 0.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; - } -} -@media (min-width: 1200px) { - .fs-1 { - font-size: 2.5rem !important; - } - - .fs-2 { - font-size: 2rem !important; - } - - .fs-3 { - font-size: 1.75rem !important; - } - - .fs-4 { - 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: -ms-grid !important; - 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: -ms-flexbox !important; - display: flex !important; - } - - .d-print-inline-flex { - display: -ms-inline-flexbox !important; - display: inline-flex !important; - } - - .d-print-none { - display: none !important; - } -} -.oe-header { - display: -ms-flexbox; - display: flex; - -ms-flex-align: center; - align-items: center; - -ms-flex-pack: justify; - justify-content: space-between; - margin: 0.5rem; -} - -.oe-language .modal-content { - color: #212529; - background-color: #f8f9fa; -} - -.oe-language__list { - display: -ms-grid; - display: grid; - gap: 1rem; - margin-bottom: 1rem; -} - -.oe-language__item { - color: #0d6efd; - background-color: transparent; -} -.oe-language__item:hover, .oe-language__item:focus { - color: #0a58ca; - background-color: transparent; -} - -.oe-header__navbar { - background-color: transparent; -} - -.oe-header__navbar .nav-link.active { - background-color: transparent; -} - -.icon--2xs { - width: 0.75rem; - height: 0.75rem; -} - -.icon--xs { - width: 1rem; - height: 1rem; -} - -.icon--s { - width: 1.25rem; - height: 1.25rem; -} - -.icon--m { - width: 1.5rem; - height: 1.5rem; -} - -.icon--l { - width: 2rem; - height: 2rem; -} - -.icon--xl { - width: 2.5rem; - height: 2.5rem; -} - -.icon--2xl { - width: 3rem; - height: 3rem; -} - -.icon--fluid { - width: 1em; - height: 1em; -} - -.icon--rotate-90 { - -webkit-transform: rotateZ(90deg); - transform: rotateZ(90deg); -} - -.icon--rotate-180 { - -webkit-transform: rotateZ(180deg); - transform: rotateZ(180deg); -} - -.icon--rotate-270 { - -webkit-transform: rotateZ(270deg); - transform: rotateZ(270deg); -} - -.icon--flip-horizontal { - -webkit-transform: scaleX(-1); - transform: scaleX(-1); -} - -.icon--flip-vertical { - -webkit-transform: scaleY(-1); - transform: scaleY(-1); -} - -a .bi, -.btn .bi { - margin: 0 0.2rem; - vertical-align: middle; -} -/*# sourceMappingURL=oe-bcl-default.css.map */ \ No newline at end of file diff --git a/assets/css/oe-bcl-default.css.map b/assets/css/oe-bcl-default.css.map deleted file mode 100644 index ff368cd9..00000000 --- a/assets/css/oe-bcl-default.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../oe-bcl-default.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_root.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_reboot.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_variables.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/vendor/_rfs.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_border-radius.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_type.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_lists.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_images.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_image.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_containers.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_container.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_breakpoints.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_grid.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_grid.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_tables.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_table-variants.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_labels.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-text.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-control.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_transition.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_gradients.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-select.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-check.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-range.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_floating-labels.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_input-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_forms.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_buttons.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_buttons.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_transitions.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_dropdown.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_caret.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_button-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_nav.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_navbar.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_card.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_accordion.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_breadcrumb.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_pagination.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_pagination.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_badge.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_alert.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_alert.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_progress.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_list-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_list-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_close.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_toasts.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_modal.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_tooltip.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_reset-text.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_popover.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_carousel.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_clearfix.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_spinners.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_offcanvas.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_colored-links.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_ratio.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_position.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_visually-hidden.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_visually-hidden.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_stretched-link.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_text-truncation.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_text-truncate.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_utilities.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/utilities/_api.scss","../../../../../node_modules/@openeuropa/bcl-theme-default/scss/_header.scss","../../../../../node_modules/@openeuropa/bcl-theme-default/scss/_icon.scss"],"names":[],"mappings":"AAAA,gBAAgB;ACAhB;EAGI,kBAAA;EAAA,oBAAA;EAAA,oBAAA;EAAA,kBAAA;EAAA,iBAAA;EAAA,oBAAA;EAAA,oBAAA;EAAA,mBAAA;EAAA,kBAAA;EAAA,kBAAA;EAAA,gBAAA;EAAA,kBAAA;EAAA,uBAAA;EAIA,qBAAA;EAAA,uBAAA;EAAA,qBAAA;EAAA,kBAAA;EAAA,qBAAA;EAAA,oBAAA;EAAA,mBAAA;EAAA,kBAAA;EAKF,qNAAA;EACA,yGAAA;EACA,yFAAA;ADYF;;AEXA;;;EAGE,sBAAA;AFcF;;AEDI;EAJJ;IAKM,uBAAA;EFKJ;AACF;;AEOA;EACE,SAAA;EACA,sCCsX4B;EChIxB,eALI;EF/OR,gBCgY4B;ED/X5B,gBCqY4B;EDpY5B,cClCS;EDoCT,sBC7CS;ED8CT,8BAAA;EACA,6CAAA;AFLF;;AEcA;EACE,cAAA;EACA,cCqb4B;EDpb5B,8BAAA;EACA,SAAA;EACA,aCob4B;AH/b9B;;AEcA;EACE,WC+R4B;AH1S9B;;AEqBA;EACE,aAAA;EACA,qBC0X4B;EDvX5B,gBC0X4B;EDzX5B,gBC0X4B;AH9Y9B;;AEwBA;EE4MQ,iCAAA;AJhOR;AI8DI;EF1CJ;IEmNQ,iBAAA;EJnON;AACF;;AEoBA;EEuMQ,iCAAA;AJvNR;AIqDI;EFrCJ;IE8MQ,eAAA;EJ1NN;AACF;;AEgBA;EEkMQ,+BAAA;AJ9MR;AI4CI;EFhCJ;IEyMQ,kBAAA;EJjNN;AACF;;AEYA;EE6LQ,iCAAA;AJrMR;AImCI;EF3BJ;IEoMQ,iBAAA;EJxMN;AACF;;AEQA;EEoLM,kBALI;AJnLV;;AESA;EE+KM,eALI;AJ/KV;;AEgBA;EACE,aAAA;EACA,mBCyK0B;AHtL5B;;AEwBA;;EAEE,yCAAA;UAAA,iCAAA;EACA,YAAA;EACA,sCAAA;UAAA,8BAAA;AFrBF;;AE2BA;EACE,mBAAA;EACA,kBAAA;EACA,oBAAA;AFxBF;;AE8BA;;EAEE,kBAAA;AF3BF;;AE8BA;;;EAGE,aAAA;EACA,mBAAA;AF3BF;;AE8BA;;;;EAIE,gBAAA;AF3BF;;AE8BA;EACE,gBC6P4B;AHxR9B;;AEgCA;EACE,qBAAA;EACA,cAAA;AF7BF;;AEmCA;EACE,gBAAA;AFhCF;;AEwCA;;EAEE,mBCsO4B;AH3Q9B;;AE6CA;EEgFM,kBALI;AJpHV;;AEgDA;EACE,cCkS4B;EDjS5B,yBCyS4B;AHtV9B;;AEsDA;;EAEE,kBAAA;EE4DI,iBALI;EFrDR,cAAA;EACA,wBAAA;AFnDF;;AEsDA;EAAM,eAAA;AFlDN;;AEmDA;EAAM,WAAA;AF/CN;;AEoDA;EACE,cChNQ;EDiNR,0BCyCwC;AH1F1C;AEmDE;EACE,cCwCsC;AHzF1C;;AE4DE;EAEE,cAAA;EACA,qBAAA;AF1DJ;;AEiEA;;;;EAIE,qCCmJ4B;ECjIxB,cALI;EFXR,+BAAA;EACA,2BAAA;AF9DF;;AEqEA;EACE,cAAA;EACA,aAAA;EACA,mBAAA;EACA,cAAA;EEII,kBALI;AJhEV;AEsEE;EEDI,kBALI;EFQN,cAAA;EACA,kBAAA;AFpEJ;;AEwEA;EERM,kBALI;EFeR,cCtQQ;EDuQR,qBAAA;AFrEF;AEwEE;EACE,cAAA;AFtEJ;;AE0EA;EACE,sBAAA;EEpBI,kBALI;EF2BR,WCnTS;EDoTT,yBC3SS;EEEP,qBAAA;ALmOJ;AEyEE;EACE,UAAA;EE3BE,cALI;EFkCN,gBCgH0B;AHvL9B;;AEgFA;EACE,gBAAA;AF7EF;;AEmFA;;EAEE,sBAAA;AFhFF;;AEwFA;EACE,oBAAA;EACA,yBAAA;AFrFF;;AEwFA;EACE,mBC8K4B;ED7K5B,sBC6K4B;ED5K5B,cCtVS;EDuVT,gBAAA;AFrFF;;AE4FA;EAEE,mBAAA;EACA,gCAAA;AF1FF;;AE6FA;;;;;;EAME,qBAAA;EACA,mBAAA;EACA,eAAA;AF1FF;;AEkGA;EACE,qBAAA;AF/FF;;AEqGA;EAEE,gBAAA;AFnGF;;AE2GA;EACE,UAAA;AFxGF;;AE6GA;;;;;EAKE,SAAA;EACA,oBAAA;EE1HI,kBALI;EFiIR,oBAAA;AF1GF;;AE8GA;;EAEE,oBAAA;AF3GF;;AEgHA;EACE,eAAA;AF7GF;;AEgHA;EAGE,iBAAA;AF/GF;AEkHE;EACE,UAAA;AFhHJ;;AEuHA;EACE,aAAA;AFpHF;;AE4HA;;;;EAIE,0BAAA;AFzHF;AE4HI;;;;EACE,eAAA;AFvHN;;AE8HA;EACE,UAAA;EACA,kBAAA;AF3HF;;AEgIA;EACE,gBAAA;AF7HF;;AEuIA;EACE,YAAA;EACA,UAAA;EACA,SAAA;EACA,SAAA;AFpIF;;AE4IA;EACE,WAAA;EACA,WAAA;EACA,UAAA;EACA,qBCG4B;EClNtB,iCAAA;EFkNN,oBAAA;AF1IF;AI1OI;EF6WJ;IEpMQ,iBAAA;EJqEN;AACF;AEuIE;EACE,WAAA;AFrIJ;;AE4IA;;;;;;;EAOE,UAAA;AFzIF;;AE4IA;EACE,YAAA;AFzIF;;AEkJA;EACE,oBAAA;EACA,6BAAA;AF/IF;;AEuJA;;;;;;;CAAA;AAWA;EACE,wBAAA;AFvJF;;AE4JA;EACE,UAAA;AFzJF;;AE+JA;EACE,aAAA;AF5JF;;AE2JA;EACE,aAAA;AF5JF;;AE2JA;EACE,aAAA;AF5JF;;AEkKA;EACE,aAAA;EACA,0BAAA;AF/JF;;AEoKA;EACE,qBAAA;AFjKF;;AEsKA;EACE,SAAA;AFnKF;;AE0KA;EACE,kBAAA;EACA,eAAA;AFvKF;;AE+KA;EACE,wBAAA;AF5KF;;AEoLA;EACE,wBAAA;AFjLF;;AM9ZA;EFyQM,kBALI;EElQR,gBHyc4B;AHxC9B;;AM5ZE;EFsQM,iCAAA;EEpQJ,gBH4bkB;EG3blB,gBH6a0B;AHd9B;AI9TI;EEpGF;IF6QM,eAAA;EJyJN;AACF;;AMvaE;EFsQM,iCAAA;EEpQJ,gBH4bkB;EG3blB,gBH6a0B;AHH9B;AIzUI;EEpGF;IF6QM,iBAAA;EJoKN;AACF;;AMlbE;EFsQM,iCAAA;EEpQJ,gBH4bkB;EG3blB,gBH6a0B;AHQ9B;AIpVI;EEpGF;IF6QM,eAAA;EJ+KN;AACF;;AM7bE;EFsQM,iCAAA;EEpQJ,gBH4bkB;EG3blB,gBH6a0B;AHmB9B;AI/VI;EEpGF;IF6QM,iBAAA;EJ0LN;AACF;;AMxcE;EFsQM,iCAAA;EEpQJ,gBH4bkB;EG3blB,gBH6a0B;AH8B9B;AI1WI;EEpGF;IF6QM,eAAA;EJqMN;AACF;;AMndE;EFsQM,iCAAA;EEpQJ,gBH4bkB;EG3blB,gBH6a0B;AHyC9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A;EAKE,kDhByiB0B;AH6iDhC;AmB/kEE;EAEE,aAAA;AnBglEJ;AmB5kEE;EACE,chB1CO;EgB4CP,UAAA;AnB6kEJ;AmBhlEE;EACE,chB1CO;EgB4CP,UAAA;AnB6kEJ;AmBhlEE;EACE,chB1CO;EgB4CP,UAAA;AnB6kEJ;AmBhlEE;EACE,chB1CO;EgB4CP,UAAA;AnB6kEJ;AmBhlEE;EACE,chB1CO;EgB4CP,UAAA;AnB6kEJ;AmBrkEE;EAEE,yBhB1DO;EgB6DP,UAAA;AnBokEJ;AmBhkEE;EACE,yBAAA;EACA,0BAAA;EACA,2BhB4f0B;UgB5f1B,0BhB4f0B;EgB3f1B,chB9DO;EkBbT,yBlBMS;EgBuEP,oBAAA;EACA,qBAAA;EACA,mBAAA;EACA,eAAA;EACA,4BhBmR0B;EgBlR1B,gBAAA;ECtEE,6IDuEF;ECvEE,qIDuEF;AnBkkEJ;AmB9kEE;EACE,yBAAA;EACA,0BAAA;EACA,2BhB4f0B;KgB5f1B,wBhB4f0B;UgB5f1B,0BhB4f0B;EgB3f1B,chB9DO;EkBbT,yBlBMS;EgBuEP,oBAAA;EACA,qBAAA;EACA,mBAAA;EACA,eAAA;EACA,4BhBmR0B;EgBlR1B,gBAAA;ECtEE,qIDuEF;AnBkkEJ;AmB9kEE;EACE,yBAAA;EACA,0BAAA;EACA,2BhB4f0B;KgB5f1B,wBhB4f0B;UgB5f1B,0BhB4f0B;EgB3f1B,chB9DO;EkBbT,yBlBMS;EgBuEP,oBAAA;EACA,qBAAA;EACA,mBAAA;EACA,eAAA;EACA,4BhBmR0B;EgBlR1B,gBAAA;ECtEE,qIDuEF;AnBkkEJ;AoBroEM;EDuDJ;ICtDM,wBAAA;IAAA,gBAAA;EpBwoEN;EmBllEA;ICtDM,gBAAA;EpBwoEN;EmBllEA;ICtDM,gBAAA;EpBwoEN;AACF;AmBpkEE;EACE,yBhB6vB8B;AHy0ClC;AmBvkEE;EACE,yBhB6vB8B;AHy0ClC;AmBvkEE;EACE,yBhB6vB8B;AHy0ClC;AmBnkEE;EACE,yBAAA;EACA,0BAAA;EACA,2BhBye0B;UgBze1B,0BhBye0B;EgBxe1B,chBjFO;EkBbT,yBlBMS;EgB0FP,oBAAA;EACA,qBAAA;EACA,mBAAA;EACA,eAAA;EACA,4BhBgQ0B;EgB/P1B,gBAAA;ECzFE,6ID0FF;EC1FE,qID0FF;AnBqkEJ;AoB3pEM;ED0EJ;ICzEM,wBAAA;IAAA,gBAAA;EpB8pEN;AACF;AmBvkEE;EACE,yBhB0uB8B;AH+1ClC;;AmBhkEA;EACE,cAAA;EACA,WAAA;EACA,mBAAA;EACA,gBAAA;EACA,gBhB2T4B;EgB1T5B,chB5GS;EgB6GT,6BAAA;EACA,yBAAA;EACA,mBAAA;AnBmkEF;AmBjkEE;EAEE,gBAAA;EACA,eAAA;AnBkkEJ;;AmBvjEA;EACE,wChBkkBsC;EgBjkBtC,uBAAA;EfmJI,mBALI;EC7QN,qBAAA;AL2rEJ;AmBxjEE;EACE,uBAAA;EACA,wBAAA;EACA,0BhB6b0B;UgB7b1B,yBhB6b0B;AH6nD9B;AmB7jEE;EACE,uBAAA;EACA,wBAAA;EACA,0BhB6b0B;KgB7b1B,uBhB6b0B;UgB7b1B,yBhB6b0B;AH6nD9B;AmB7jEE;EACE,uBAAA;EACA,wBAAA;EACA,0BhB6b0B;KgB7b1B,uBhB6b0B;UgB7b1B,yBhB6b0B;AH6nD9B;AmBvjEE;EACE,uBAAA;EACA,wBAAA;EACA,0BhBub0B;UgBvb1B,yBhBub0B;AHkoD9B;;AmBrjEA;EACE,sChBgjBsC;EgB/iBtC,oBAAA;EfgII,kBALI;EC7QN,qBAAA;AL4sEJ;AmBtjEE;EACE,oBAAA;EACA,qBAAA;EACA,wBhB8a0B;UgB9a1B,uBhB8a0B;AH0oD9B;AmB3jEE;EACE,oBAAA;EACA,qBAAA;EACA,wBhB8a0B;KgB9a1B,qBhB8a0B;UgB9a1B,uBhB8a0B;AH0oD9B;AmB3jEE;EACE,oBAAA;EACA,qBAAA;EACA,wBhB8a0B;KgB9a1B,qBhB8a0B;UgB9a1B,uBhB8a0B;AH0oD9B;AmBrjEE;EACE,oBAAA;EACA,qBAAA;EACA,wBhBwa0B;UgBxa1B,uBhBwa0B;AH+oD9B;;AmB/iEE;EACE,yChBuhBoC;AH2hDxC;AmB/iEE;EACE,wChBohBoC;AH6hDxC;AmB9iEE;EACE,sChBihBoC;AH+hDxC;;AmB3iEA;EACE,eAAA;EACA,YAAA;EACA,iBhB8X4B;AHgrD9B;AmB5iEE;EACE,eAAA;AnB8iEJ;AmB3iEE;EACE,aAAA;Ed/LA,sBAAA;AL6uEJ;AmB1iEE;EACE,aAAA;EdpMA,sBAAA;ALivEJ;;AsB/vEA;EACE,cAAA;EACA,WAAA;EACA,0CAAA;EAEA,uCAAA;ElB2RI,eALI;EkBnRR,gBnBoa4B;EmBna5B,gBnBya4B;EmBxa5B,cnBES;EmBDT,sBnBRS;EmBST,iPAAA;EACA,4BAAA;EACA,yCnBgxBkC;EmB/wBlC,0BnBgxBkC;EmB/wBlC,yBAAA;EjBFE,sBAAA;EeHE,wEEQJ;EACA,wBAAA;KAAA,qBAAA;UAAA,gBAAA;AtB+vEF;AoBpwEM;EEfN;IFgBQ,gBAAA;EpBuwEN;AACF;AsBlwEE;EACE,qBnBwqBoC;EmBvqBpC,UAAA;EAKE,kDnBixB4B;AH++ClC;AsB5vEE;EAEE,sBnBkiB0B;EmBjiB1B,sBAAA;AtB6vEJ;AsB1vEE;EAEE,yBnBpCO;AH+xEX;AsBtvEE;EACE,kBAAA;EACA,0BAAA;AtBwvEJ;;AsBpvEA;EACE,oBnB2hB4B;EmB1hB5B,uBnB0hB4B;EmBzhB5B,oBnB0hB4B;ECjTxB,mBALI;AJohEV;;AsBpvEA;EACE,mBnBwhB4B;EmBvhB5B,sBnBuhB4B;EmBthB5B,kBnBuhB4B;ECrTxB,kBALI;AJ2hEV;;AuBvzEA;EACE,cAAA;EACA,kBpBqtBwC;EoBptBxC,mBpBqtBwC;EoBptBxC,uBpBqtBwC;AHqmD1C;AuBxzEE;EACE,WAAA;EACA,mBAAA;AvB0zEJ;;AuBtzEA;EACE,UpBysBwC;EoBxsBxC,WpBwsBwC;EoBvsBxC,kBAAA;EACA,mBAAA;EACA,sBpBbS;EoBcT,4BAAA;EACA,2BAAA;EACA,wBAAA;EACA,qCpB4sBwC;EoB3sBxC,wBAAA;KAAA,qBAAA;UAAA,gBAAA;EACA,iCAAA;UAAA,mBAAA;AvByzEF;AuBtzEE;ElBXE,qBAAA;ALo0EJ;AuBrzEE;EAEE,kBpBmsBsC;AHmnD1C;AuBnzEE;EACE,+BpB0rBsC;UoB1rBtC,uBpB0rBsC;AH2nD1C;AuBlzEE;EACE,qBpBwpBoC;EoBvpBpC,UAAA;EACA,kDpBqiB4B;AH+wDhC;AuBjzEE;EACE,yBpBZM;EoBaN,qBpBbM;AHg0EV;AuBjzEI;EAII,+OAAA;AvBgzER;AuB5yEI;EAII,uJAAA;AvB2yER;AuBtyEE;EACE,yBpBjCM;EoBkCN,qBpBlCM;EoBuCJ,yOAAA;AvBoyEN;AuBhyEE;EACE,oBAAA;EACA,oBAAA;UAAA,YAAA;EACA,YpBkqBuC;AHgoD3C;AuB3xEI;EACE,YpB0pBqC;AHmoD3C;;AuB/wEA;EACE,mBpBqpBgC;AH6nDlC;AuBhxEE;EACE,UpBipB8B;EoBhpB9B,mBAAA;EACA,wKAAA;EACA,gCAAA;ElB9FA,kBAAA;EeHE,iDGmGF;AvBkxEJ;AoBj3EM;EGyFJ;IHxFM,gBAAA;EpBo3EN;AACF;AuBrxEI;EACE,0JAAA;AvBuxEN;AuBpxEI;EACE,iCpBgpB4B;EoB3oB1B,uJAAA;AvBkxER;;AuB5wEA;EACE,qBAAA;EACA,kBpBmnBgC;AH4pDlC;;AuB5wEA;EACE,kBAAA;EACA,sBAAA;EACA,oBAAA;AvB+wEF;AuB3wEI;EACE,oBAAA;EACA,oBAAA;UAAA,YAAA;EACA,apBuewB;AHsyD9B;;AwB35EA;EACE,WAAA;EACA,cAAA;EACA,UAAA;EACA,6BAAA;EACA,wBAAA;KAAA,qBAAA;UAAA,gBAAA;AxB85EF;AwB55EE;EACE,UAAA;AxB85EJ;AwB15EI;EAA0B,kErB4zBa;AHimD3C;AwB55EI;EAA0B,kErB2zBa;AHomD3C;AwB55EE;EACE,SAAA;AxB85EJ;AwB35EE;EACE,WrB6yBuC;EqB5yBvC,YrB4yBuC;EqB3yBvC,oBAAA;EHzBF,yBlBkCQ;EqBPN,SrB4yBuC;EExzBvC,mBAAA;EeHE,oHIkBF;EJlBE,4GIkBF;EACA,wBAAA;UAAA,gBAAA;AxB45EJ;AoB36EM;EIMJ;IJLM,wBAAA;IAAA,gBAAA;EpB86EN;AACF;AwB/5EI;EHjCF,yBlB40ByC;AHunD3C;AwB75EE;EACE,WrBsxB8B;EqBrxB9B,crBsxB8B;EqBrxB9B,kBAAA;EACA,erBqxB8B;EqBpxB9B,yBrBpCO;EqBqCP,yBAAA;EnB7BA,mBAAA;AL67EJ;AwB35EE;EACE,WrBkxBuC;EqBjxBvC,YrBixBuC;EkBp0BzC,yBlBkCQ;EqBmBN,SrBkxBuC;EExzBvC,mBAAA;EeHE,iHI4CF;EJ5CE,4GI4CF;EACA,qBAAA;OAAA,gBAAA;AxB45EJ;AoBr8EM;EIiCJ;IJhCM,qBAAA;IAAA,gBAAA;EpBw8EN;AACF;AwB/5EI;EH3DF,yBlB40ByC;AHipD3C;AwB75EE;EACE,WrB4vB8B;EqB3vB9B,crB4vB8B;EqB3vB9B,kBAAA;EACA,erB2vB8B;EqB1vB9B,yBrB9DO;EqB+DP,yBAAA;EnBvDA,mBAAA;ALu9EJ;AwB35EE;EACE,oBAAA;AxB65EJ;AwB35EI;EACE,yBrBtEK;AHm+EX;AwB15EI;EACE,yBrB1EK;AHs+EX;;AyBn/EA;EACE,kBAAA;AzBs/EF;AyBp/EE;;EAEE,0BtBu1B8B;EsBt1B9B,iBtBu1B8B;AH+pDlC;AyBn/EE;EACE,kBAAA;EACA,MAAA;EACA,OAAA;EACA,YAAA;EACA,qBAAA;EACA,oBAAA;EACA,6BAAA;EACA,6BAAA;UAAA,qBAAA;ELDE,wEKEF;ELFE,gEKEF;ELFE,oGKEF;AzBq/EJ;AoBn/EM;EKXJ;ILYM,gBAAA;EpBs/EN;AACF;AyBt/EE;EACE,qBAAA;AzBw/EJ;AyBt/EI;EACE,kBAAA;AzBw/EN;AyBz/EI;EACE,kBAAA;AzBw/EN;AyBz/EI;EACE,kBAAA;AzBw/EN;AyBz/EI;EACE,kBAAA;AzBw/EN;AyBz/EI;EACE,kBAAA;AzBw/EN;AyBr/EI;EAEE,qBtBi0B4B;EsBh0B5B,wBtBi0B4B;AHqrDlC;AyBz/EI;EAEE,qBtBi0B4B;EsBh0B5B,wBtBi0B4B;AHqrDlC;AyBz/EI;EAEE,qBtBi0B4B;EsBh0B5B,wBtBi0B4B;AHqrDlC;AyBn/EI;EACE,qBtB4zB4B;EsB3zB5B,wBtB4zB4B;AHyrDlC;AyBj/EE;EACE,qBtBszB8B;EsBrzB9B,wBtBszB8B;AH6rDlC;AyB7+EI;EACE,atBgzB4B;EsB/yB5B,8DtBgzB4B;AHisDlC;AyBn/EI;EACE,atBgzB4B;EsB/yB5B,8DtBgzB4B;AHisDlC;AyBn/EI;;;EACE,atBgzB4B;EsB/yB5B,sEtBgzB4B;UsBhzB5B,8DtBgzB4B;AHisDlC;AyB5+EI;EACE,atByyB4B;EsBxyB5B,sEtByyB4B;UsBzyB5B,8DtByyB4B;AHqsDlC;;A0BpiFA;EACE,kBAAA;EACA,oBAAA;EAAA,aAAA;EACA,mBAAA;MAAA,eAAA;EACA,uBAAA;MAAA,oBAAA;EACA,WAAA;A1BuiFF;A0BriFE;;EAEE,kBAAA;EACA,kBAAA;MAAA,cAAA;EACA,SAAA;EACA,YAAA;A1BuiFJ;A0BniFE;;EAEE,UAAA;A1BqiFJ;A0B/hFE;EACE,kBAAA;EACA,UAAA;A1BiiFJ;A0B/hFI;EACE,UAAA;A1BiiFN;;A0BthFA;EACE,oBAAA;EAAA,aAAA;EACA,sBAAA;MAAA,mBAAA;EACA,yBAAA;EtBsPI,eALI;EsB/OR,gBvBgY4B;EuB/X5B,gBvBqY4B;EuBpY5B,cvBlCS;EuBmCT,kBAAA;EACA,mBAAA;EACA,yBvB5CS;EuB6CT,yBAAA;ErBpCE,sBAAA;AL8jFJ;;A0BhhFA;;;;EAIE,oBAAA;EtBgOI,kBALI;EC7QN,qBAAA;ALukFJ;;A0BhhFA;;;;EAIE,uBAAA;EtBuNI,mBALI;EC7QN,qBAAA;ALglFJ;;A0BhhFA;;EAEE,mBAAA;A1BmhFF;;A0BtgFI;;ErB/DA,0BAAA;EACA,6BAAA;AL0kFJ;A0BrgFI;;ErBtEA,0BAAA;EACA,6BAAA;AL+kFJ;A0B//EE;EACE,iBAAA;ErBpEA,yBAAA;EACA,4BAAA;ALskFJ;;A2B/lFE;EACE,aAAA;EACA,WAAA;EACA,mBxB2nBoC;EClXlC,kBALI;EuBjQN,cxBw1BqB;AHywDzB;;A2B9lFE;EACE,kBAAA;EACA,SAAA;EACA,UAAA;EACA,aAAA;EACA,eAAA;EACA,uBAAA;EACA,kBAAA;EvB4PE,mBALI;EuBpPN,WAvBc;EAwBd,wCAvBiB;EtBHjB,sBAAA;AL2nFJ;;A2B5lFI;;;;EAEE,cAAA;A3BimFN;;A2B/oFI;EAoDE,qBxB6zBmB;EwB1zBjB,oCxBipBgC;EwBhpBhC,4PAAA;EACA,4BAAA;EACA,2DAAA;EACA,gEAAA;A3B6lFR;A2B1lFM;EACE,qBxBkzBiB;EwBjzBjB,iDA/Ca;A3B2oFrB;;A2B5pFI;EAyEI,oCxB+nBgC;EwB9nBhC,kFAAA;A3BulFR;;A2BjqFI;EAiFE,qBxBgyBmB;AHozDzB;A2BjlFQ;EAEE,uBxB4sB8B;EwB3sB9B,6dAAA;EACA,+DAAA;EACA,2EAAA;A3BklFV;A2B9kFM;EACE,qBxBmxBiB;EwBlxBjB,iDA9Ea;A3B8pFrB;;A2B/qFI;EAsGE,qBxB2wBmB;AHk0DzB;A2B3kFM;EACE,yBxBwwBiB;AHq0DzB;A2B1kFM;EACE,iDA5Fa;A3BwqFrB;A2BzkFM;EACE,cxBgwBiB;AH20DzB;;A2BtkFI;EACE,kBAAA;A3BykFN;;A2BhsFI;;;EA+HI,UAAA;A3BukFR;A2BnkFM;;;EACE,UAAA;A3BukFR;;A2BxrFE;EACE,aAAA;EACA,WAAA;EACA,mBxB2nBoC;EClXlC,kBALI;EuBjQN,cxBw1BqB;AHk2DzB;;A2BvrFE;EACE,kBAAA;EACA,SAAA;EACA,UAAA;EACA,aAAA;EACA,eAAA;EACA,uBAAA;EACA,kBAAA;EvB4PE,mBALI;EuBpPN,WAvBc;EAwBd,wCAvBiB;EtBHjB,sBAAA;ALotFJ;;A2BrrFI;;;;EAEE,cAAA;A3B0rFN;;A2BxuFI;EAoDE,qBxB6zBmB;EwB1zBjB,oCxBipBgC;EwBhpBhC,4UAAA;EACA,4BAAA;EACA,2DAAA;EACA,gEAAA;A3BsrFR;A2BnrFM;EACE,qBxBkzBiB;EwBjzBjB,iDA/Ca;A3BouFrB;;A2BrvFI;EAyEI,oCxB+nBgC;EwB9nBhC,kFAAA;A3BgrFR;;A2B1vFI;EAiFE,qBxBgyBmB;AH64DzB;A2B1qFQ;EAEE,uBxB4sB8B;EwB3sB9B,6iBAAA;EACA,+DAAA;EACA,2EAAA;A3B2qFV;A2BvqFM;EACE,qBxBmxBiB;EwBlxBjB,iDA9Ea;A3BuvFrB;;A2BxwFI;EAsGE,qBxB2wBmB;AH25DzB;A2BpqFM;EACE,yBxBwwBiB;AH85DzB;A2BnqFM;EACE,iDA5Fa;A3BiwFrB;A2BlqFM;EACE,cxBgwBiB;AHo6DzB;;A2B/pFI;EACE,kBAAA;A3BkqFN;;A2BzxFI;;;EAiII,UAAA;A3B8pFR;A2B5pFM;;;EACE,UAAA;A3BgqFR;;A4BtyFA;EACE,qBAAA;EAEA,gBzB0a4B;EyBza5B,gBzB+a4B;EyB9a5B,czBQS;EyBPT,kBAAA;EACA,qBAAA;EAEA,sBAAA;EACA,eAAA;EACA,yBAAA;KAAA,sBAAA;MAAA,qBAAA;UAAA,iBAAA;EACA,6BAAA;EACA,6BAAA;EC8GA,yBAAA;EzBsKI,eALI;EC7QN,sBAAA;EeHE,qIQGJ;A5ByyFF;AoBxyFM;EQhBN;IRiBQ,gBAAA;EpB2yFN;AACF;A4B5yFE;EACE,czBLO;AHmzFX;A4B1yFE;EAEE,UAAA;EACA,kDzBsjB4B;AHqvEhC;A4B7xFE;EAGE,oBAAA;EACA,azB4kB0B;AHitE9B;;A4BjxFE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AHkwFf;A6BzzFE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7B40FjB;A6BxzFE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,iDAAA;A7BqzFN;A6BjzFE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7Bo1FlB;A6B3yFI;EAKI,iDAAA;A7ByyFR;A6BpyFE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AH0xFf;;A4B/yFE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AHgyFf;A6Bv1FE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7B02FjB;A6Bt1FE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,kDAAA;A7Bm1FN;A6B/0FE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7Bk3FlB;A6Bz0FI;EAKI,kDAAA;A7Bu0FR;A6Bl0FE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AHwzFf;;A4B70FE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AH8zFf;A6Br3FE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7Bw4FjB;A6Bp3FE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,iDAAA;A7Bi3FN;A6B72FE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7Bg5FlB;A6Bv2FI;EAKI,iDAAA;A7Bq2FR;A6Bh2FE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AHs1Ff;;A4B32FE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AH41Ff;A6Bn5FE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7Bs6FjB;A6Bl5FE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,iDAAA;A7B+4FN;A6B34FE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7B86FlB;A6Br4FI;EAKI,iDAAA;A7Bm4FR;A6B93FE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AHo3Ff;;A4Bz4FE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AH03Ff;A6Bj7FE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7Bo8FjB;A6Bh7FE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,gDAAA;A7B66FN;A6Bz6FE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7B48FlB;A6Bn6FI;EAKI,gDAAA;A7Bi6FR;A6B55FE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AHk5Ff;;A4Bv6FE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AHw5Ff;A6B/8FE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7Bk+FjB;A6B98FE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,gDAAA;A7B28FN;A6Bv8FE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7B0+FlB;A6Bj8FI;EAKI,gDAAA;A7B+7FR;A6B17FE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AHg7Ff;;A4Br8FE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AHs7Ff;A6B7+FE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7BggGjB;A6B5+FE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,kDAAA;A7By+FN;A6Br+FE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7BwgGlB;A6B/9FI;EAKI,kDAAA;A7B69FR;A6Bx9FE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AH88Ff;;A4Bn+FE;ECvCA,WAXQ;ERLR,yBlB4Ea;E0B1Db,qB1B0Da;AHo9Ff;A6B3gGE;EACE,WAdY;ERRd,yBQMmB;EAkBjB,qBAjBa;A7B8hGjB;A6B1gGE;EAEE,WArBY;ERRd,yBQMmB;EAyBjB,qBAxBa;EA6BX,+CAAA;A7BugGN;A6BngGE;EAKE,WAlCa;EAmCb,yBArCkB;EAwClB,qBAvCc;A7BsiGlB;A6B7/FI;EAKI,+CAAA;A7B2/FR;A6Bt/FE;EAEE,WAjDe;EAkDf,yB1BYW;E0BTX,qB1BSW;AH4+Ff;;A4B3/FE;ECmBA,c1BJa;E0BKb,qB1BLa;AHi/Ff;A6B1+FE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AHs/Ff;A6Bz+FE;EAEE,iDAAA;A7B0+FJ;A6Bv+FE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AH8/Ff;A6Bn+FI;EAKI,iDAAA;A7Bi+FR;A6B59FE;EAEE,c1BvCW;E0BwCX,6BAAA;A7B69FJ;;A4BphGE;ECmBA,c1BJa;E0BKb,qB1BLa;AH0gGf;A6BngGE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AH+gGf;A6BlgGE;EAEE,kDAAA;A7BmgGJ;A6BhgGE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AHuhGf;A6B5/FI;EAKI,kDAAA;A7B0/FR;A6Br/FE;EAEE,c1BvCW;E0BwCX,6BAAA;A7Bs/FJ;;A4B7iGE;ECmBA,c1BJa;E0BKb,qB1BLa;AHmiGf;A6B5hGE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AHwiGf;A6B3hGE;EAEE,gDAAA;A7B4hGJ;A6BzhGE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AHgjGf;A6BrhGI;EAKI,gDAAA;A7BmhGR;A6B9gGE;EAEE,c1BvCW;E0BwCX,6BAAA;A7B+gGJ;;A4BtkGE;ECmBA,c1BJa;E0BKb,qB1BLa;AH4jGf;A6BrjGE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AHikGf;A6BpjGE;EAEE,iDAAA;A7BqjGJ;A6BljGE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AHykGf;A6B9iGI;EAKI,iDAAA;A7B4iGR;A6BviGE;EAEE,c1BvCW;E0BwCX,6BAAA;A7BwiGJ;;A4B/lGE;ECmBA,c1BJa;E0BKb,qB1BLa;AHqlGf;A6B9kGE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AH0lGf;A6B7kGE;EAEE,gDAAA;A7B8kGJ;A6B3kGE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AHkmGf;A6BvkGI;EAKI,gDAAA;A7BqkGR;A6BhkGE;EAEE,c1BvCW;E0BwCX,6BAAA;A7BikGJ;;A4BxnGE;ECmBA,c1BJa;E0BKb,qB1BLa;AH8mGf;A6BvmGE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AHmnGf;A6BtmGE;EAEE,gDAAA;A7BumGJ;A6BpmGE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AH2nGf;A6BhmGI;EAKI,gDAAA;A7B8lGR;A6BzlGE;EAEE,c1BvCW;E0BwCX,6BAAA;A7B0lGJ;;A4BjpGE;ECmBA,c1BJa;E0BKb,qB1BLa;AHuoGf;A6BhoGE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AH4oGf;A6B/nGE;EAEE,kDAAA;A7BgoGJ;A6B7nGE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AHopGf;A6BznGI;EAKI,kDAAA;A7BunGR;A6BlnGE;EAEE,c1BvCW;E0BwCX,6BAAA;A7BmnGJ;;A4B1qGE;ECmBA,c1BJa;E0BKb,qB1BLa;AHgqGf;A6BzpGE;EACE,WATY;EAUZ,yB1BTW;E0BUX,qB1BVW;AHqqGf;A6BxpGE;EAEE,+CAAA;A7BypGJ;A6BtpGE;EAKE,WArBa;EAsBb,yB1BxBW;E0ByBX,qB1BzBW;AH6qGf;A6BlpGI;EAKI,+CAAA;A7BgpGR;A6B3oGE;EAEE,c1BvCW;E0BwCX,6BAAA;A7B4oGJ;;A4BvrGA;EACE,gBzBmW4B;EyBlW5B,czBzCQ;EyB0CR,0BzBgNwC;AH0+F1C;A4BxrGE;EACE,czB+MsC;AH2+F1C;A4BlrGE;EAEE,czB/EO;AHkwGX;;A4BxqGA;ECuBE,oBAAA;EzBsKI,kBALI;EC7QN,qBAAA;ALmwGJ;;A4B1qGA;ECmBE,uBAAA;EzBsKI,mBALI;EC7QN,qBAAA;ALywGJ;;A8B5xGA;EVgBM,gCUfJ;A9B+xGF;AoB5wGM;EUpBN;IVqBQ,gBAAA;EpB+wGN;AACF;A8BlyGE;EACE,UAAA;A9BoyGJ;;A8B9xGE;EACE,aAAA;A9BiyGJ;;A8B7xGA;EACE,SAAA;EACA,gBAAA;EVDI,6BUEJ;A9BgyGF;AoB9xGM;EULN;IVMQ,gBAAA;EpBiyGN;AACF;;A+BtzGA;;;;EAIE,kBAAA;A/ByzGF;;A+BtzGA;EACE,mBAAA;A/ByzGF;AgCpyGI;EACE,qBAAA;EACA,oB7BwWwB;E6BvWxB,uB7BsWwB;E6BrWxB,WAAA;EAhCJ,uBAAA;EACA,qCAAA;EACA,gBAAA;EACA,oCAAA;AhCu0GF;AgClxGI;EACE,cAAA;AhCoxGN;;A+B/zGA;EACE,kBAAA;EACA,a5Bu3BkC;E4Bt3BlC,aAAA;EACA,gB5B48BkC;E4B38BlC,iBAAA;EACA,SAAA;E3B+QI,eALI;E2BxQR,c5BPS;E4BQT,gBAAA;EACA,gBAAA;EACA,sB5BnBS;E4BoBT,4BAAA;EACA,qCAAA;E1BVE,sBAAA;AL60GJ;A+B/zGE;EACE,SAAA;EACA,OAAA;EACA,oB5B+7BgC;AHk4EpC;;A+BrzGI;EACE,oBAAA;A/BwzGN;A+BtzGM;EACE,WAAA;EACA,OAAA;A/BwzGR;;A+BpzGI;EACE,kBAAA;A/BuzGN;A+BrzGM;EACE,QAAA;EACA,UAAA;A/BuzGR;;AYtzGI;EmBfA;IACE,oBAAA;E/By0GJ;E+Bv0GI;IACE,WAAA;IACA,OAAA;E/By0GN;;E+Br0GE;IACE,kBAAA;E/Bw0GJ;E+Bt0GI;IACE,QAAA;IACA,UA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AAA,iBAAA;IACA,oBAAA;QAAA,2BAAA;EnC40HN;EmC10HM;IACE,uBAAA;QAAA,mBAAA;EnC40HR;EmC10HQ;IACE,kBAAA;EnC40HV;EmCz0HQ;IACE,qBhCkwBwB;IgCjwBxB,oBhCiwBwB;EH0kGlC;EmCv0HM;IACE,iBAAA;EnCy0HR;EmCt0HM;IACE,+BAAA;IAAA,wBAAA;IACA,6BAAA;QAAA,gBAAA;EnCw0HR;EmCr0HM;IACE,aAAA;EnCu0HR;AACF;AmCp2HI;EAEI,qBAAA;MAAA,iBAAA;EACA,oBAAA;MAAA,2BAAA;AnCq2HR;AmCn2HQ;EACE,uBAAA;MAAA,mBAAA;AnCq2HV;AmCn2HU;EACE,kBAAA;AnCq2HZ;AmCl2HU;EACE,qBhCkwBwB;EgCjwBxB,oBhCiwBwB;AHmmGpC;AmCh2HQ;EACE,iBAAA;AnCk2HV;AmC/1HQ;EACE,+BAAA;EAAA,wBAAA;EACA,6BAAA;MAAA,gBAAA;AnCi2HV;AmC91HQ;EACE,aAAA;AnCg2HV;;AmCj1HE;EACE,yBhC8vBgC;AHslGpC;AmCl1HI;EAEE,yBhC0vB8B;AHylGpC;AmC90HI;EACE,0BhCkvB8B;AH8lGpC;AmC90HM;EAEE,yBhC+uB4B;AHgmGpC;AmC50HM;EACE,yBhC6uB4B;AHimGpC;AmC10HI;;EAEE,yBhCsuB8B;AHsmGpC;AmCx0HE;EACE,0BhC+tBgC;EgC9tBhC,gChCmuBgC;AHumGpC;AmCv0HE;EACE,6PAAA;AnCy0HJ;AmCt0HE;EACE,0BhCstBgC;AHknGpC;AmCt0HI;;;EAGE,yBhCmtB8B;AHqnGpC;;AmCj0HE;EACE,WhC5PO;AHgkIX;AmCl0HI;EAEE,WhChQK;AHmkIX;AmC9zHI;EACE,gChCwrB8B;AHwoGpC;AmC9zHM;EAEE,gChCqrB4B;AH0oGpC;AmC5zHM;EACE,gChCmrB4B;AH2oGpC;AmC1zHI;;EAEE,WhCpRK;AHglIX;AmCxzHE;EACE,gChCqqBgC;EgCpqBhC,sChCyqBgC;AHipGpC;AmCvzHE;EACE,mQAAA;AnCyzHJ;AmCtzHE;EACE,gChC4pBgC;AH4pGpC;AmCvzHI;;;EAGE,WhCtSK;AH+lIX;;AoCnmIA;EACE,kBAAA;EACA,oBAAA;EAAA,aAAA;EACA,0BAAA;MAAA,sBAAA;EACA,YAAA;EAEA,qBAAA;EACA,sBjCHS;EiCIT,2BAAA;EACA,sCAAA;E/BME,sBAAA;ALgmIJ;AoCnmIE;EACE,eAAA;EACA,cAAA;ApCqmIJ;AoClmIE;EACE,mBAAA;EACA,sBAAA;ApComIJ;AoClmII;EACE,mBAAA;E/BEF,2CAAA;EACA,4CAAA;ALmmIJ;AoClmII;EACE,sBAAA;E/BWF,+CAAA;EACA,8CAAA;AL0lIJ;AoC/lIE;;EAEE,aAAA;ApCimIJ;;AoC7lIA;EAGE,kBAAA;MAAA,cAAA;EACA,kBAAA;ApC8lIF;;AoC1lIA;EACE,qBjCwgCkC;AHqlGpC;;AoC1lIA;EACE,oBAAA;EACA,gBAAA;ApC6lIF;;AoC1lIA;EACE,gBAAA;ApC6lIF;;AoCzlIE;EACE,qBAAA;ApC4lIJ;AoCzlIE;EACE,iBjCkLK;AHy6HT;;AoCnlIA;EACE,oBAAA;EACA,gBAAA;EAEA,qCjCi/BkC;EiCh/BlC,6CAAA;ApCqlIF;AoCnlIE;E/BnEE,0DAAA;ALypIJ;;AoCjlIA;EACE,oBAAA;EAEA,qCjCs+BkC;EiCr+BlC,0CAAA;ApCmlIF;AoCjlIE;E/B9EE,0DAAA;ALkqIJ;;AoC1kIA;EACE,qBAAA;EACA,sBAAA;EACA,oBAAA;EACA,gBAAA;ApC6kIF;;AoCnkIA;EACE,qBAAA;EACA,oBAAA;ApCskIF;;AoClkIA;EACE,kBAAA;EACA,MAAA;EACA,QAAA;EACA,SAAA;EACA,OAAA;EACA,ajCoHO;EEtOL,kCAAA;ALwrIJ;;AoClkIA;;;EAGE,WAAA;ApCqkIF;;AoClkIA;;E/BnHI,2CAAA;EACA,4CAAA;AL0rIJ;;AoCnkIA;;E/B1GI,+CAAA;EACA,8CAAA;ALkrIJ;;AoC5jIE;EACE,sBjCw6BgC;AHupGpC;AYlqII;EwB+FJ;IAQI,oBAAA;IAAA,aAAA;IACA,uBAAA;QAAA,mBAAA;EpC+jIF;EoC5jIE;IAEE,gBAAA;QAAA,YAAA;IACA,gBAAA;EpC6jIJ;EoC3jII;IACE,cAAA;IACA,cAAA;EpC6jIN;EoCxjIM;I/BnJJ,0BAAA;IACA,6BAAA;EL8sIF;EoCzjIQ;;IAGE,0BAAA;EpC0jIV;EoCxjIQ;;IAGE,6BAAA;EpCyjIV;EoCrjIM;I/BpJJ,yBAAA;IACA,4BAAA;EL4sIF;EoCtjIQ;;IAGE,yBAAA;EpCujIV;EoCrjIQ;;IAGE,4BAAA;EpCsjIV;AACF;;AqCnwIA;EACE,kBAAA;EACA,oBAAA;EAAA,aAAA;EACA,sBAAA;MAAA,mBAAA;EACA,WAAA;EACA,qBAAA;EjC4RI,eALI;EiCrRR,clCMS;EkCLT,gBAAA;EACA,sBlCLS;EkCMT,SAAA;EhCKE,gBAAA;EgCHF,qBAAA;EjBAI,+JiBCJ;ArCswIF;AoBnwIM;EiBhBN;IjBiBQ,gBAAA;EpBswIN;AACF;AqCzwIE;EACE,clC8kCsC;EkC7kCtC,yBlC4kCsC;EkC3kCtC,+CAAA;ArC2wIJ;AqCzwII;EACE,iSAAA;EACA,kClCilCoC;UkCjlCpC,0BlCilCoC;AH0rG1C;AqCtwIE;EACE,oBAAA;MAAA,cAAA;EACA,clCskCsC;EkCrkCtC,elCqkCsC;EkCpkCtC,iBAAA;EACA,WAAA;EACA,iSAAA;EACA,4BAAA;EACA,wBlCgkCsC;EiBvlCpC,8CiBwBF;EjBxBE,sCiBwBF;EjBxBE,0EiBwBF;ArCwwIJ;AoB5xIM;EiBWJ;IjBVM,gBAAA;EpB+xIN;AACF;AqC1wIE;EACE,UAAA;ArC4wIJ;AqCzwIE;EACE,UAAA;EACA,qBlCmpBoC;EkClpBpC,UAAA;EACA,kDlCgiB4B;AH2uHhC;;AqCvwIA;EACE,gBAAA;ArC0wIF;;AqCvwIA;EACE,sBlCpDS;EkCqDT,sCAAA;ArC0wIF;AqCxwIE;EhCnCE,+BAAA;EACA,gCAAA;AL8yIJ;AqCzwII;EhCtCA,2CAAA;EACA,4CAAA;ALkzIJ;AqCxwIE;EACE,aAAA;ArC0wIJ;AqCtwIE;EhClCE,mCAAA;EACA,kCAAA;AL2yIJ;AqCtwIM;EhCtCF,+CAAA;EACA,8CAAA;AL+yIJ;AqCrwII;EhC3CA,mCAAA;EACA,kCAAA;ALmzIJ;;AqCnwIA;EACE,qBAAA;ArCswIF;;AqC7vIE;EACE,eAAA;ArCgwIJ;AqC7vIE;EACE,eAAA;EACA,cAAA;EhCxFA,gBAAA;ALw1IJ;AqC7vII;EAAgB,aAAA;ArCgwIpB;AqC/vII;EAAe,gBAAA;ArCkwInB;AqChwII;EhC9FA,gBAAA;ALi2IJ;;AsCp3IA;EACE,oBAAA;EAAA,aAAA;EACA,mBAAA;MAAA,eAAA;EACA,YAAA;EACA,mBnC60CkC;EmC30ClC,gBAAA;AtCs3IF;;AsC/2IE;EACE,oBnCk0CgC;AHgjGpC;AsCh3II;EACE,WAAA;EACA,qBnC8zC8B;EmC7zC9B,cnCLK;EmCML,uFAAA;AtCk3IN;AsC92IE;EACE,cnCXO;AH23IX;;AuCz4IA;EACE,oBAAA;EAAA,aAAA;EhCGA,eAAA;EACA,gBAAA;AP04IF;;AuC14IA;EACE,kBAAA;EACA,cAAA;EACA,cpC8BQ;EoC7BR,qBAAA;EACA,sBpCFS;EoCGT,yBAAA;EnBKI,qImBJJ;AvC64IF;AoBr4IM;EmBfN;InBgBQ,gBAAA;EpBw4IN;AACF;AuCh5IE;EACE,UAAA;EACA,cpCkRsC;EoChRtC,yBpCRO;EoCSP,qBpCRO;AHy5IX;AuC94IE;EACE,UAAA;EACA,cpC0QsC;EoCzQtC,yBpCfO;EoCgBP,UpCygCgC;EoCxgChC,kDpCwjB4B;AHw1HhC;;AuC34IE;EACE,iBpC4/BgC;AHk5GpC;AuC34IE;EACE,UAAA;EACA,WpC9BO;EkBJT,yBlBkCQ;EoCEN,qBpCFM;AH+4IV;AuC14IE;EACE,cpC9BO;EoC+BP,oBAAA;EACA,sBpCtCO;EoCuCP,qBpCpCO;AHg7IX;;AwCv7IE;EACE,yBAAA;AxC07IJ;;AwCn7IQ;EnCqCJ,+BAAA;EACA,kCAAA;ALk5IJ;AwCl7IQ;EnCiBJ,gCAAA;EACA,mCAAA;ALo6IJ;;AwCp8IE;EACE,uBAAA;EpCgSE,kBALI;AJ6qIV;AwCj8IQ;EnCqCJ,8BAAA;EACA,iCAAA;AL+5IJ;AwC/7IQ;EnCiBJ,+BAAA;EACA,kCAAA;ALi7IJ;;AwCj9IE;EACE,uBAAA;EpCgSE,mBALI;AJ0rIV;AwC98IQ;EnCqCJ,8BAAA;EACA,iCAAA;AL46IJ;AwC58IQ;EnCiBJ,+BAAA;EACA,kCAAA;AL87IJ;;AyC79IA;EACE,qBAAA;EACA,sBAAA;ErC8RI,iBALI;EqCvRR,gBtCya4B;EsCxa5B,cAAA;EACA,WtCHS;EsCIT,kBAAA;EACA,mBAAA;EACA,wBAAA;EpCKE,sBAAA;AL49IJ;AyC59IE;EACE,aAAA;AzC89IJ;;AyCz9IA;EACE,kBAAA;EACA,SAAA;AzC49IF;;A0Cn/IA;EACE,kBAAA;EACA,kBAAA;EACA,mBvCuvC8B;EuCtvC9B,6BAAA;ErCWE,sBAAA;AL4+IJ;;A0Cl/IA;EAEE,cAAA;A1Co/IF;;A0Ch/IA;EACE,gBvC8Z4B;AHqlI9B;;A0C3+IA;EACE,mBvCwuC8B;AHswGhC;A0C3+IE;EACE,kBAAA;EACA,MAAA;EACA,QAAA;EACA,UAAA;EACA,qBAAA;A1C6+IJ;;A0C99IE;EClDA,cD8Cc;ErB5Cd,yBqB0CmB;EC1CnB,qBD2Ce;A1Cy+IjB;A2ClhJE;EACE,cAAA;A3CohJJ;;A0Cv+IE;EClDA,cD8Cc;ErB5Cd,yBqB0CmB;EC1CnB,qBD2Ce;A1Ck/IjB;A2C3hJE;EACE,cAAA;A3C6hJJ;;A0Ch/IE;EClDA,cD8Cc;ErB5Cd,yBqB0CmB;EC1CnB,qBD2Ce;A1C2/IjB;A2CpiJE;EACE,cAAA;A3CsiJJ;;A0Cz/IE;EClDA,cDgDgB;ErB9ChB,yBqB0CmB;EC1CnB,qBD2Ce;A1CogJjB;A2C7iJE;EACE,cAAA;A3C+iJJ;;A0ClgJE;EClDA,cDgDgB;ErB9ChB,yBqB0CmB;EC1CnB,qBD2Ce;A1C6gJjB;A2CtjJE;EACE,cAAA;A3CwjJJ;;A0C3gJE;EClDA,cD8Cc;ErB5Cd,yBqB0CmB;EC1CnB,qBD2Ce;A1CshJjB;A2C/jJE;EACE,cAAA;A3CikJJ;;A0CphJE;EClDA,cDgDgB;ErB9ChB,yBqB0CmB;EC1CnB,qBD2Ce;A1C+hJjB;A2CxkJE;EACE,cAAA;A3C0kJJ;;A0C7hJE;EClDA,cD8Cc;ErB5Cd,yBqB0CmB;EC1CnB,qBD2Ce;A1CwiJjB;A2CjlJE;EACE,cAAA;A3CmlJJ;;A4CtlJE;EACE;IAAK,2BzCuwC2B;EHm1GlC;AACF;;A4C5lJE;EACE;IAAK,2BzCuwC2B;EHm1GlC;AACF;A4CtlJA;EACE,oBAAA;EAAA,aAAA;EACA,YzCgwCkC;EyC/vClC,gBAAA;ExCwRI,kBALI;EwCjRR,yBzCLS;EESP,sBAAA;ALqlJJ;;A4CplJA;EACE,oBAAA;EAAA,aAAA;EACA,0BAAA;MAAA,sBAAA;EACA,qBAAA;MAAA,uBAAA;EACA,gBAAA;EACA,WzCjBS;EyCkBT,kBAAA;EACA,mBAAA;EACA,yBzCUQ;EiBtBJ,2BwBaJ;A5CulJF;AoBhmJM;EwBAN;IxBCQ,gBAAA;EpBmmJN;AACF;;A4CzlJA;EvBYE,qMAAA;EuBVA,0BAAA;A5C4lJF;;A4CxlJE;EACE,0DAAA;UAAA,kDAAA;A5C2lJJ;A4CxlJM;EAJJ;IAKM,uBAAA;YAAA,eAAA;E5C2lJN;AACF;;A6CnoJA;EACE,oBAAA;EAAA,aAAA;EACA,0BAAA;MAAA,sBAAA;EAGA,eAAA;EACA,gBAAA;ExCSE,sBAAA;AL4nJJ;;A6CjoJA;EACE,qBAAA;EACA,sBAAA;A7CooJF;A6CloJE;EAEE,oCAAA;EACA,0BAAA;A7CmoJJ;;A6CznJA;EACE,WAAA;EACA,c1ClBS;E0CmBT,mBAAA;A7C4nJF;A6CznJE;EAEE,UAAA;EACA,c1CzBO;E0C0BP,qBAAA;EACA,yB1CjCO;AH2pJX;A6CvnJE;EACE,c1C7BO;E0C8BP,yB1CrCO;AH8pJX;;A6ChnJA;EACE,kBAAA;EACA,cAAA;EACA,oBAAA;EACA,c1C3CS;E0C4CT,qBAAA;EACA,sB1CtDS;E0CuDT,sCAAA;A7CmnJF;A6CjnJE;ExCrCE,+BAAA;EACA,gCAAA;ALypJJ;A6CjnJE;ExC3BE,mCAAA;EACA,kCAAA;AL+oJJ;A6CjnJE;EAEE,c1C7DO;E0C8DP,oBAAA;EACA,sB1CrEO;AHurJX;A6C9mJE;EACE,UAAA;EACA,W1C3EO;E0C4EP,yB1C9CM;E0C+CN,qB1C/CM;AH+pJV;A6C7mJE;EACE,mBAAA;A7C+mJJ;A6C7mJI;EACE,gBAAA;EACA,qB1C2QwB;AHo2I9B;;A6CjmJI;EACE,uBAAA;MAAA,mBAAA;A7ComJN;A6CjmJQ;ExCrCJ,kCAAA;EAZA,0BAAA;ALspJJ;A6ChmJQ;ExCtDJ,gCAAA;EAYA,4BAAA;AL8oJJ;A6C/lJQ;EACE,aAAA;A7CimJV;A6C9lJQ;EACE,qB1C0OoB;E0CzOpB,oBAAA;A7CgmJV;A6C9lJU;EACE,iBAAA;EACA,sB1CqOkB;AH23I9B;;AYpqJI;EiC4CA;IACE,uBAAA;QAAA,mBAAA;E7C4nJJ;E6CznJM;IxCrCJ,kCAAA;IAZA,0BAAA;EL8qJF;E6CxnJM;IxCtDJ,gCAAA;IAYA,4BAAA;ELsqJF;E6CvnJM;IACE,aAAA;E7CynJR;E6CtnJM;IACE,qB1C0OoB;I0CzOpB,oBAAA;E7CwnJR;E6CtnJQ;IACE,iBAAA;IACA,sB1CqOkB;EHm5I5B;AACF;AY7rJI;EiC4CA;IACE,uBAAA;QAAA,mBAAA;E7CopJJ;E6CjpJM;IxCrCJ,kCAAA;IAZA,0BAAA;ELssJF;E6ChpJM;IxCtDJ,gCAAA;IAYA,4BAAA;EL8rJF;E6C/oJM;IACE,aAAA;E7CipJR;E6C9oJM;IACE,qB1C0OoB;I0CzOpB,oBAAA;E7CgpJR;E6C9oJQ;IACE,iBAAA;IACA,sB1CqOkB;EH26I5B;AACF;AYrtJI;EiC4CA;IACE,uBAAA;QAAA,mBAAA;E7C4qJJ;E6CzqJM;IxCrCJ,kCAAA;IAZA,0BAAA;EL8tJF;E6CxqJM;IxCtDJ,gCAAA;IAYA,4BAAA;ELstJF;E6CvqJM;IACE,aAAA;E7CyqJR;E6CtqJM;IACE,qB1C0OoB;I0CzOpB,oBAAA;E7CwqJR;E6CtqJQ;IACE,iBAAA;IACA,sB1CqOkB;EHm8I5B;AACF;AY7uJI;EiC4CA;IACE,uBAAA;QAAA,mBAAA;E7CosJJ;E6CjsJM;IxCrCJ,kCAAA;IAZA,0BAAA;ELsvJF;E6ChsJM;IxCtDJ,gCAAA;IAYA,4BAAA;EL8uJF;E6C/rJM;IACE,aAAA;E7CisJR;E6C9rJM;IACE,qB1C0OoB;I0CzOpB,oBAAA;E7CgsJR;E6C9rJQ;IACE,iBAAA;IACA,sB1CqOkB;EH29I5B;AACF;AYrwJI;EiC4CA;IACE,uBAAA;QAAA,mBAAA;E7C4tJJ;E6CztJM;IxCrCJ,kCAAA;IAZA,0BAAA;EL8wJF;E6CxtJM;IxCtDJ,gCAAA;IAYA,4BAAA;ELswJF;E6CvtJM;IACE,aAAA;E7CytJR;E6CttJM;IACE,qB1C0OoB;I0CzOpB,oBAAA;E7CwtJR;E6CttJQ;IACE,iBAAA;IACA,sB1CqOkB;EHm/I5B;AACF;A6C3sJA;ExC9HI,gBAAA;AL40JJ;A6C3sJE;EACE,qBAAA;A7C6sJJ;A6C3sJI;EACE,sBAAA;A7C6sJN;;A8Cj2JE;EACE,cDiKyB;EChKzB,yBD+JsB;A7CqsJ1B;A8Cj2JM;EAEE,cD2JqB;EC1JrB,yBAAA;A9Ck2JR;A8C/1JM;EACE,W3CRG;E2CSH,yBDqJqB;ECpJrB,qBDoJqB;A7C6sJ7B;;A8C/2JE;EACE,cDiKyB;EChKzB,yBD+JsB;A7CmtJ1B;A8C/2JM;EAEE,cD2JqB;EC1JrB,yBAAA;A9Cg3JR;A8C72JM;EACE,W3CRG;E2CSH,yBDqJqB;ECpJrB,qBDoJqB;A7C2tJ7B;;A8C73JE;EACE,cDiKyB;EChKzB,yBD+JsB;A7CiuJ1B;A8C73JM;EAEE,cD2JqB;EC1JrB,yBAAA;A9C83JR;A8C33JM;EACE,W3CRG;E2CSH,yBDqJqB;ECpJrB,qBDoJqB;A7CyuJ7B;;A8C34JE;EACE,cDmK2B;EClK3B,yBD+JsB;A7C+uJ1B;A8C34JM;EAEE,cD6JuB;EC5JvB,yBAAA;A9C44JR;A8Cz4JM;EACE,W3CRG;E2CSH,yBDuJuB;ECtJvB,qBDsJuB;A7CqvJ/B;;A8Cz5JE;EACE,cDmK2B;EClK3B,yBD+JsB;A7C6vJ1B;A8Cz5JM;EAEE,cD6JuB;EC5JvB,yBAAA;A9C05JR;A8Cv5JM;EACE,W3CRG;E2CSH,yBDuJuB;ECtJvB,qBDsJuB;A7CmwJ/B;;A8Cv6JE;EACE,cDiKyB;EChKzB,yBD+JsB;A7C2wJ1B;A8Cv6JM;EAEE,cD2JqB;EC1JrB,yBAAA;A9Cw6JR;A8Cr6JM;EACE,W3CRG;E2CSH,yBDqJqB;ECpJrB,qBDoJqB;A7CmxJ7B;;A8Cr7JE;EACE,cDmK2B;EClK3B,yBD+JsB;A7CyxJ1B;A8Cr7JM;EAEE,cD6JuB;EC5Jv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A;AjEi0NV;;AiEn0NM;EAEI,yBAAA;AjEq0NV;;AiEv0NM;EAEI,+BAAA;AjEy0NV;;AiE30NM;EAEI,8BAAA;AjE60NV;;AiE/0NM;EAEI,4BAAA;AjEi1NV;;AiEn1NM;EAEI,8BAAA;AjEq1NV;;AiEv1NM;EAEI,4BAAA;AjEy1NV;;AiE31NM;EAEI,2BAAA;AjE61NV;;AiE/1NM;EAEI,iCAAA;AjEi2NV;;AiEn2NM;EAEI,gCAAA;AjEq2NV;;AiEv2NM;EAEI,8BAAA;AjEy2NV;;AiE32NM;EAEI,gCAAA;AjE62NV;;AiE/2NM;EAEI,8BAAA;AjEi3NV;;AiEn3NM;EAEI,4BAAA;AjEq3NV;;AiEv3NM;EAEI,kCAAA;AjEy3NV;;AiE33NM;EAEI,iCAAA;AjE63NV;;AiE/3NM;EAEI,+BAAA;AjEi4NV;;AiEn4NM;EAEI,iCAAA;AjEq4NV;;AiEv4NM;EAEI,+BAAA;AjEy4NV;;AiE34NM;EAEI,0BAAA;AjE64NV;;AiE/4NM;EAEI,gCAAA;AjEi5NV;;AiEn5NM;EAEI,+BAAA;AjEq5NV;;AiEv5NM;EAEI,6BAAA;AjEy5NV;;AiE35NM;EAEI,+BAAA;AjE65NV;;AiE/5NM;EAEI,6BAAA;AjEi6NV;;AiEn6NM;EAEI,gDAAA;AjEq6NV;;AiEv6NM;EAEI,4CAAA;AjEy6NV;;AiE36NM;EAEI,4CAAA;AjE66NV;;AiE/6NM;EAEI,0CAAA;AjEi7NV;;AiEn7NM;EAEI,4CAAA;AjEq7NV;;AiEv7NM;EAEI,6BAAA;AjEy7NV;;AiE37NM;EAEI,0BAAA;AjE67NV;;AiE/7NM;EAEI,6BAAA;AjEi8NV;;AiEn8NM;EAEI,6BAAA;AjEq8NV;;AiEv8NM;EAEI,2BAAA;AjEy8NV;;AiE38NM;EAEI,+BAAA;AjE68NV;;AiE/8NM;EAEI,2BAAA;AjEi9NV;;AiEn9NM;EAEI,2BAAA;AjEq9NV;;AiEv9NM;EAEI,8BAAA;AjEy9NV;;AiE39NM;EAEI,yBAAA;AjE69NV;;AiE/9NM;EAEI,4BAAA;AjEi+NV;;AiEn+NM;EAEI,2BAAA;AjEq+NV;;AiEv+NM;EAEI,yBAAA;AjEy+NV;;AiE3+NM;EAEI,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","file":"oe-bcl-default.css"} \ No newline at end of file diff --git a/assets/css/oe-bcl-default.min.css b/assets/css/oe-bcl-default.min.css deleted file mode 100644 index 232592a7..00000000 --- a/assets/css/oe-bcl-default.min.css +++ /dev/null @@ -1,2 +0,0 @@ -@charset "UTF-8";:root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--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,hsla(0,0%,100%,0.15),hsla(0,0%,100%,0))}*,:after,:before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0);background-color:#fff;color:#212529;font-family:var(--bs-font-sans-serif);font-size:1rem;font-weight:400;line-height:1.5;margin:0}hr{background-color:currentColor;border:0;color:inherit;margin:1rem 0;opacity:.25}hr:not([size]){height:1px}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-weight:500;line-height:1.2;margin-bottom:.5rem;margin-top:0}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-bottom:1rem;margin-top:0}abbr[data-bs-original-title],abbr[title]{cursor:help;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{font-style:normal;line-height:inherit;margin-bottom:1rem}ol,ul{padding-left:2rem}dl,ol,ul{margin-bottom:1rem;margin-top:0}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}.small,small{font-size:.875em}.mark,mark{background-color:#fcf8e3;padding:.2em}sub,sup{font-size:.75em;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0d6efd;text-decoration:underline}a:hover{color:#0a58ca}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{direction:ltr;font-family:var(--bs-font-monospace);font-size:1em;unicode-bidi:bidi-override}pre{display:block;font-size:.875em;margin-bottom:1rem;margin-top:0;overflow:auto}pre code{color:inherit;font-size:inherit;word-break:normal}code{word-wrap:break-word;color:#d63384;font-size:.875em}a>code{color:inherit}kbd{background-color:#212529;border-radius:.2rem;color:#fff;font-size:.875em;padding:.2rem .4rem}kbd kbd{font-size:1em;font-weight:700;padding:0}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{border-collapse:collapse;caption-side:bottom}caption{color:#6c757d;padding-bottom:.5rem;padding-top:.5rem;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border:0 solid;border-color:inherit}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit;margin:0}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]::-webkit-calendar-picker-indicator{display:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{border-style:none;padding:0}textarea{resize:vertical}fieldset{border:0;margin:0;min-width:0;padding:0}legend{float:left;font-size:calc(1.275rem + .3vw);line-height:inherit;margin-bottom:.5rem;padding:0;width:100%}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}output{display:inline-block}iframe{border:0}summary{cursor:pointer;display:list-item}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-inline,.list-unstyled{list-style:none;padding-left:0}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{font-size:1.25rem;margin-bottom:1rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{color:#6c757d;font-size:.875em;margin-bottom:1rem;margin-top:-1rem}.blockquote-footer:before{content:"— "}.img-fluid,.img-thumbnail{height:auto;max-width:100%}.img-thumbnail{background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;padding:.25rem}.figure{display:inline-block}.figure-img{line-height:1;margin-bottom:.5rem}.figure-caption{color:#6c757d;font-size:.875em}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{margin-left:auto;margin-right:auto;padding-left:var(--bs-gutter-x,.75rem);padding-right:var(--bs-gutter-x,.75rem);width:100%}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}@media (min-width:1400px){.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{max-width:1320px}}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:calc(var(--bs-gutter-x)*-.5);margin-right:calc(var(--bs-gutter-x)*-.5);margin-top:calc(var(--bs-gutter-y)*-1)}.row>*{-ms-flex-negative:0;flex-shrink:0;margin-top:var(--bs-gutter-y);max-width:100%;padding-left:calc(var(--bs-gutter-x)*.5);padding-right:calc(var(--bs-gutter-x)*.5);width:100%}.col{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-auto>*{width:auto}.row-cols-1>*,.row-cols-auto>*{-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-1>*{width:100%}.row-cols-2>*{width:50%}.row-cols-2>*,.row-cols-3>*{-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-3>*{width:33.3333333333%}.row-cols-4>*{width:25%}.row-cols-4>*,.row-cols-5>*{-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-5>*{width:20%}.row-cols-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}@media (min-width:576px){.col-sm{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-sm-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-sm-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-sm-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-sm-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-sm-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-sm-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-sm-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}}@media (min-width:768px){.col-md{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-md-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-md-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-md-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-md-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-md-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-md-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}}@media (min-width:992px){.col-lg{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-lg-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-lg-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-lg-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-lg-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-lg-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-lg-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}}@media (min-width:1200px){.col-xl{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-xl-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-xl-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-xl-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-xl-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-xl-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-xl-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}}@media (min-width:1400px){.col-xxl{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-xxl-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-xxl-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-xxl-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-xxl-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-xxl-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-xxl-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-xxl-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}}.col-auto{width:auto}.col-1,.col-auto{-ms-flex:0 0 auto;flex:0 0 auto}.col-1{width:8.33333333%}.col-2{width:16.66666667%}.col-2,.col-3{-ms-flex:0 0 auto;flex:0 0 auto}.col-3{width:25%}.col-4{width:33.33333333%}.col-4,.col-5{-ms-flex:0 0 auto;flex:0 0 auto}.col-5{width:41.66666667%}.col-6{width:50%}.col-6,.col-7{-ms-flex:0 0 auto;flex:0 0 auto}.col-7{width:58.33333333%}.col-8{width:66.66666667%}.col-8,.col-9{-ms-flex:0 0 auto;flex:0 0 auto}.col-9{width:75%}.col-10{width:83.33333333%}.col-10,.col-11{-ms-flex:0 0 auto;flex:0 0 auto}.col-11{width:91.66666667%}.col-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:0.25rem}.g-1,.gy-1{--bs-gutter-y:0.25rem}.g-2,.gx-2{--bs-gutter-x:0.5rem}.g-2,.gy-2{--bs-gutter-y:0.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}@media (min-width:576px){.col-sm-auto{width:auto}.col-sm-1,.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-1{width:8.33333333%}.col-sm-2{width:16.66666667%}.col-sm-2,.col-sm-3{-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-3{width:25%}.col-sm-4{width:33.33333333%}.col-sm-4,.col-sm-5{-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-5{width:41.66666667%}.col-sm-6{width:50%}.col-sm-6,.col-sm-7{-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-7{width:58.33333333%}.col-sm-8{width:66.66666667%}.col-sm-8,.col-sm-9{-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-9{width:75%}.col-sm-10{width:83.33333333%}.col-sm-10,.col-sm-11{-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-11{width:91.66666667%}.col-sm-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x:0}.g-sm-0,.gy-sm-0{--bs-gutter-y:0}.g-sm-1,.gx-sm-1{--bs-gutter-x:0.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y:0.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x:0.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y:0.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y:1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y:1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y:3rem}}@media (min-width:768px){.col-md-auto{width:auto}.col-md-1,.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto}.col-md-1{width:8.33333333%}.col-md-2{width:16.66666667%}.col-md-2,.col-md-3{-ms-flex:0 0 auto;flex:0 0 auto}.col-md-3{width:25%}.col-md-4{width:33.33333333%}.col-md-4,.col-md-5{-ms-flex:0 0 auto;flex:0 0 auto}.col-md-5{width:41.66666667%}.col-md-6{width:50%}.col-md-6,.col-md-7{-ms-flex:0 0 auto;flex:0 0 auto}.col-md-7{width:58.33333333%}.col-md-8{width:66.66666667%}.col-md-8,.col-md-9{-ms-flex:0 0 auto;flex:0 0 auto}.col-md-9{width:75%}.col-md-10{width:83.33333333%}.col-md-10,.col-md-11{-ms-flex:0 0 auto;flex:0 0 auto}.col-md-11{width:91.66666667%}.col-md-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x:0}.g-md-0,.gy-md-0{--bs-gutter-y:0}.g-md-1,.gx-md-1{--bs-gutter-x:0.25rem}.g-md-1,.gy-md-1{--bs-gutter-y:0.25rem}.g-md-2,.gx-md-2{--bs-gutter-x:0.5rem}.g-md-2,.gy-md-2{--bs-gutter-y:0.5rem}.g-md-3,.gx-md-3{--bs-gutter-x:1rem}.g-md-3,.gy-md-3{--bs-gutter-y:1rem}.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y:1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x:3rem}.g-md-5,.gy-md-5{--bs-gutter-y:3rem}}@media (min-width:992px){.col-lg-auto{width:auto}.col-lg-1,.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-1{width:8.33333333%}.col-lg-2{width:16.66666667%}.col-lg-2,.col-lg-3{-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-3{width:25%}.col-lg-4{width:33.33333333%}.col-lg-4,.col-lg-5{-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-5{width:41.66666667%}.col-lg-6{width:50%}.col-lg-6,.col-lg-7{-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-7{width:58.33333333%}.col-lg-8{width:66.66666667%}.col-lg-8,.col-lg-9{-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-9{width:75%}.col-lg-10{width:83.33333333%}.col-lg-10,.col-lg-11{-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-11{width:91.66666667%}.col-lg-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x:0}.g-lg-0,.gy-lg-0{--bs-gutter-y:0}.g-lg-1,.gx-lg-1{--bs-gutter-x:0.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y:0.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x:0.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y:0.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y:1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y:1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y:3rem}}@media (min-width:1200px){.col-xl-auto{width:auto}.col-xl-1,.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-1{width:8.33333333%}.col-xl-2{width:16.66666667%}.col-xl-2,.col-xl-3{-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-3{width:25%}.col-xl-4{width:33.33333333%}.col-xl-4,.col-xl-5{-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-5{width:41.66666667%}.col-xl-6{width:50%}.col-xl-6,.col-xl-7{-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-7{width:58.33333333%}.col-xl-8{width:66.66666667%}.col-xl-8,.col-xl-9{-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-9{width:75%}.col-xl-10{width:83.33333333%}.col-xl-10,.col-xl-11{-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-11{width:91.66666667%}.col-xl-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x:0}.g-xl-0,.gy-xl-0{--bs-gutter-y:0}.g-xl-1,.gx-xl-1{--bs-gutter-x:0.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y:0.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x:0.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y:0.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y:1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y:1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y:3rem}}@media (min-width:1400px){.col-xxl-auto{width:auto}.col-xxl-1,.col-xxl-auto{-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-1{width:8.33333333%}.col-xxl-2{width:16.66666667%}.col-xxl-2,.col-xxl-3{-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-3{width:25%}.col-xxl-4{width:33.33333333%}.col-xxl-4,.col-xxl-5{-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-5{width:41.66666667%}.col-xxl-6{width:50%}.col-xxl-6,.col-xxl-7{-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-7{width:58.33333333%}.col-xxl-8{width:66.66666667%}.col-xxl-8,.col-xxl-9{-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-9{width:75%}.col-xxl-10{width:83.33333333%}.col-xxl-10,.col-xxl-11{-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-11{width:91.66666667%}.col-xxl-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y:0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x:0.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y:0.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x:0.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y:0.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y:1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y:1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y:3rem}}.table{--bs-table-bg:transparent;--bs-table-accent-bg:transparent;--bs-table-striped-color:#212529;--bs-table-striped-bg:rgba(0,0,0,0.05);--bs-table-active-color:#212529;--bs-table-active-bg:rgba(0,0,0,0.1);--bs-table-hover-color:#212529;--bs-table-hover-bg:rgba(0,0,0,0.075);border-color:#dee2e6;color:#212529;margin-bottom:1rem;vertical-align:top;width:100%}.table>:not(caption)>*>*{background-color:var(--bs-table-bg);border-bottom-width:1px;box-shadow:inset 0 0 0 9999px var(--bs-table-accent-bg);padding:.5rem}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table>:not(:last-child)>:last-child>*{border-bottom-color:currentColor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.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-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:#cfe2ff;--bs-table-striped-bg:#c5d7f2;--bs-table-striped-color:#000;--bs-table-active-bg:#bacbe6;--bs-table-active-color:#000;--bs-table-hover-bg:#bfd1ec;--bs-table-hover-color:#000;border-color:#bacbe6;color:#000}.table-secondary{--bs-table-bg:#e2e3e5;--bs-table-striped-bg:#d7d8da;--bs-table-striped-color:#000;--bs-table-active-bg:#cbccce;--bs-table-active-color:#000;--bs-table-hover-bg:#d1d2d4;--bs-table-hover-color:#000;border-color:#cbccce;color:#000}.table-success{--bs-table-bg:#d1e7dd;--bs-table-striped-bg:#c7dbd2;--bs-table-striped-color:#000;--bs-table-active-bg:#bcd0c7;--bs-table-active-color:#000;--bs-table-hover-bg:#c1d6cc;--bs-table-hover-color:#000;border-color:#bcd0c7;color:#000}.table-info{--bs-table-bg:#cff4fc;--bs-table-striped-bg:#c5e8ef;--bs-table-striped-color:#000;--bs-table-active-bg:#badce3;--bs-table-active-color:#000;--bs-table-hover-bg:#bfe2e9;--bs-table-hover-color:#000;border-color:#badce3;color:#000}.table-warning{--bs-table-bg:#fff3cd;--bs-table-striped-bg:#f2e7c3;--bs-table-striped-color:#000;--bs-table-active-bg:#e6dbb9;--bs-table-active-color:#000;--bs-table-hover-bg:#ece1be;--bs-table-hover-color:#000;border-color:#e6dbb9;color:#000}.table-danger{--bs-table-bg:#f8d7da;--bs-table-striped-bg:#eccccf;--bs-table-striped-color:#000;--bs-table-active-bg:#dfc2c4;--bs-table-active-color:#000;--bs-table-hover-bg:#e5c7ca;--bs-table-hover-color:#000;border-color:#dfc2c4;color:#000}.table-light{--bs-table-bg:#f8f9fa;--bs-table-striped-bg:#ecedee;--bs-table-striped-color:#000;--bs-table-active-bg:#dfe0e1;--bs-table-active-color:#000;--bs-table-hover-bg:#e5e6e7;--bs-table-hover-color:#000;border-color:#dfe0e1;color:#000}.table-dark{--bs-table-bg:#212529;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff;border-color:#373b3e;color:#fff}.table-responsive{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (max-width:575.98px){.table-responsive-sm{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:767.98px){.table-responsive-md{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:991.98px){.table-responsive-lg{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:1199.98px){.table-responsive-xl{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:1399.98px){.table-responsive-xxl{-webkit-overflow-scrolling:touch;overflow-x:auto}}.form-label{margin-bottom:.5rem}.col-form-label{font-size:inherit;line-height:1.5;margin-bottom:0;padding-bottom:calc(.375rem + 1px);padding-top:calc(.375rem + 1px)}.col-form-label-lg{font-size:1.25rem;padding-bottom:calc(.5rem + 1px);padding-top:calc(.5rem + 1px)}.col-form-label-sm{font-size:.875rem;padding-bottom:calc(.25rem + 1px);padding-top:calc(.25rem + 1px)}.form-text{color:#6c757d;font-size:.875em;margin-top:.25rem}.form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-clip:padding-box;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem;color:#212529;display:block;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem .75rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:100%}@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{background-color:#fff;border-color:#86b7fe;box-shadow:0 0 0 .25rem rgba(13,110,253,.25);color:#212529;outline:0}.form-control::-webkit-date-and-time-value{height:1.5em}.form-control::-webkit-input-placeholder{color:#6c757d;opacity:1}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control:-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}.form-control::file-selector-button{-webkit-margin-end:.75rem;-moz-margin-end:.75rem;background-color:#e9ecef;border:0 solid;border-color:inherit;border-inline-end-width:1px;border-radius:0;color:#212529;margin:-.375rem -.75rem;margin-inline-end:.75rem;padding:.375rem .75rem;pointer-events: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}@media (prefers-reduced-motion:reduce){.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:#dde0e3}.form-control::-webkit-file-upload-button{-webkit-margin-end:.75rem;background-color:#e9ecef;border:0 solid;border-color:inherit;border-inline-end-width:1px;border-radius:0;color:#212529;margin:-.375rem -.75rem;margin-inline-end:.75rem;padding:.375rem .75rem;pointer-events:none;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;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{-webkit-transition:none;transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:#dde0e3}.form-control-plaintext{background-color:transparent;border:solid transparent;border-width:1px 0;color:#212529;display:block;line-height:1.5;margin-bottom:0;padding:.375rem 0;width:100%}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-left:0;padding-right:0}.form-control-sm{border-radius:.2rem;font-size:.875rem;min-height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem}.form-control-sm::file-selector-button{-webkit-margin-end:.5rem;-moz-margin-end:.5rem;margin:-.25rem -.5rem;margin-inline-end:.5rem;padding:.25rem .5rem}.form-control-sm::-webkit-file-upload-button{-webkit-margin-end:.5rem;margin:-.25rem -.5rem;margin-inline-end:.5rem;padding:.25rem .5rem}.form-control-lg{border-radius:.3rem;font-size:1.25rem;min-height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem}.form-control-lg::file-selector-button{-webkit-margin-end:1rem;-moz-margin-end:1rem;margin:-.5rem -1rem;margin-inline-end:1rem;padding:.5rem 1rem}.form-control-lg::-webkit-file-upload-button{-webkit-margin-end:1rem;margin:-.5rem -1rem;margin-inline-end:1rem;padding:.5rem 1rem}textarea.form-control{min-height:calc(1.5em + .75rem + 2px)}textarea.form-control-sm{min-height:calc(1.5em + .5rem + 2px)}textarea.form-control-lg{min-height:calc(1.5em + 1rem + 2px)}.form-control-color{height:auto;max-width:3rem;padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border-radius:.25rem;height:1.5em}.form-control-color::-webkit-color-swatch{border-radius:.25rem;height:1.5em}.form-select{-moz-padding-start:calc(.75rem - 3px);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%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 5 6 6 6-6'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:16px 12px;border:1px solid #ced4da;border-radius:.25rem;color:#212529;display:block;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem 2.25rem .375rem .75rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:100%}@media (prefers-reduced-motion:reduce){.form-select{transition:none}}.form-select:focus{border-color:#86b7fe;box-shadow:0 0 0 .25rem rgba(13,110,253,.25);outline:0}.form-select[multiple],.form-select[size]:not([size="1"]){background-image:none;padding-right:.75rem}.form-select:disabled{background-color:#e9ecef}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #212529}.form-select-sm{font-size:.875rem;padding-bottom:.25rem;padding-left:.5rem;padding-top:.25rem}.form-select-lg{font-size:1.25rem;padding-bottom:.5rem;padding-left:1rem;padding-top:.5rem}.form-check{display:block;margin-bottom:.125rem;min-height:1.5rem;padding-left:1.5em}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-input{-webkit-print-color-adjust:exact;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-position:50%;background-repeat:no-repeat;background-size:contain;border:1px solid rgba(0,0,0,.25);color-adjust:exact;height:1em;margin-top:.25em;vertical-align:top;width:1em}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{-webkit-filter:brightness(90%);filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;box-shadow:0 0 0 .25rem rgba(13,110,253,.25);outline:0}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{background-image:url("data:image/svg+xml;charset=utf-8,%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 10 3 3 6-6'/%3E%3C/svg%3E")}.form-check-input:checked[type=radio]{background-image:url("data:image/svg+xml;charset=utf-8,%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{background-color:#0d6efd;background-image:url("data:image/svg+xml;charset=utf-8,%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");border-color:#0d6efd}.form-check-input:disabled{-webkit-filter:none;filter:none;opacity:.5;pointer-events:none}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(0, 0, 0, 0.25)'/%3E%3C/svg%3E");background-position:0;border-radius:2em;margin-left:-2.5em;transition:background-position .15s ease-in-out;width:2em}@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;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%2386b7fe'/%3E%3C/svg%3E")}.form-switch .form-check-input:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E");background-position:100%}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{clip:rect(0,0,0,0);pointer-events:none;position:absolute}.btn-check:disabled+.btn,.btn-check[disabled]+.btn{-webkit-filter:none;filter:none;opacity:.65;pointer-events:none}.form-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;height:1.5rem;padding:0;width:100%}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background-color:#0d6efd;border:0;border-radius:1rem;height:1rem;margin-top:-.25rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:1rem}@media (prefers-reduced-motion:reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{background-color:#dee2e6;border-color:transparent;border-radius:1rem;color:transparent;cursor:pointer;height:.5rem;width:100%}.form-range::-moz-range-thumb{-moz-appearance:none;appearance:none;background-color:#0d6efd;border:0;border-radius:1rem;height:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:1rem}@media (prefers-reduced-motion:reduce){.form-range::-moz-range-thumb{-moz-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{background-color:#dee2e6;border-color:transparent;border-radius:1rem;color:transparent;cursor:pointer;height:.5rem;width:100%}.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{border:1px solid transparent;height:100%;left:0;padding:1rem .75rem;pointer-events:none;position:absolute;top:0;-webkit-transform-origin:0 0;transform-origin:0 0;transition:opacity .1s ease-in-out,-webkit-transform .1s ease-in-out;transition:opacity .1s ease-in-out,transform .1s ease-in-out;transition:opacity .1s ease-in-out,transform .1s ease-in-out,-webkit-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::-webkit-input-placeholder{color:transparent}.form-floating>.form-control::-moz-placeholder{color:transparent}.form-floating>.form-control:-ms-input-placeholder{color:transparent}.form-floating>.form-control::-ms-input-placeholder{color:transparent}.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control:not(:-moz-placeholder-shown){padding-bottom:.625rem;padding-top:1.625rem}.form-floating>.form-control:not(:-ms-input-placeholder){padding-bottom:.625rem;padding-top:1.625rem}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-bottom:.625rem;padding-top:1.625rem}.form-floating>.form-control:-webkit-autofill{padding-bottom:.625rem;padding-top:1.625rem}.form-floating>.form-select{padding-bottom:.625rem;padding-top:1.625rem}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:not(:-ms-input-placeholder)~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{opacity:.65;-webkit-transform:scale(.85) translateY(-.5rem) translateX(.15rem);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:-webkit-autofill~label{opacity:.65;-webkit-transform:scale(.85) translateY(-.5rem) translateX(.15rem);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.input-group{-ms-flex-align:stretch;align-items:stretch;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;position:relative;width:100%}.input-group>.form-control,.input-group>.form-select{-ms-flex:1 1 auto;flex:1 1 auto;min-width:0;position:relative;width:1%}.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{-ms-flex-align:center;align-items:center;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem;color:#212529;display:-ms-flexbox;display:flex;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem .75rem;text-align:center;white-space:nowrap}.input-group-lg>.btn,.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text{border-radius:.3rem;font-size:1.25rem;padding:.5rem 1rem}.input-group-sm>.btn,.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text{border-radius:.2rem;font-size:.875rem;padding:.25rem .5rem}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu){border-bottom-right-radius:0;border-top-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){border-bottom-left-radius:0;border-top-left-radius:0;margin-left:-1px}.valid-feedback{color:#198754;display:none;font-size:.875em;margin-top:.25rem;width:100%}.valid-tooltip{background-color:rgba(25,135,84,.9);border-radius:.25rem;color:#fff;display:none;font-size:.875rem;margin-top:.1rem;max-width:100%;padding:.25rem .5rem;position:absolute;top:100%;z-index:5}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23198754' d='M2.3 6.73.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 calc(.375em + .1875rem) center;background-repeat:no-repeat;background-size:calc(.75em + .375rem) calc(.75em + .375rem);border-color:#198754;padding-right:calc(1.5em + .75rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem);padding-right:calc(1.5em + .75rem)}.form-select.is-valid,.was-validated .form-select:valid{border-color:#198754}.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"],.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"]{background-image:url("data:image/svg+xml;charset=utf-8,%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 5 6 6 6-6'/%3E%3C/svg%3E"),url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23198754' d='M2.3 6.73.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(.75em + .375rem) calc(.75em + .375rem);padding-right:4.125rem}.form-select.is-valid:focus,.was-validated .form-select:valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.form-check-input.is-valid,.was-validated .form-check-input:valid{border-color:#198754}.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked{background-color:#198754}.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#198754}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.input-group .form-control.is-valid,.input-group .form-select.is-valid,.was-validated .input-group .form-control:valid,.was-validated .input-group .form-select:valid{z-index:1}.input-group .form-control.is-valid:focus,.input-group .form-select.is-valid:focus,.was-validated .input-group .form-control:valid:focus,.was-validated .input-group .form-select:valid:focus{z-index:3}.invalid-feedback{color:#dc3545;display:none;font-size:.875em;margin-top:.25rem;width:100%}.invalid-tooltip{background-color:rgba(220,53,69,.9);border-radius:.25rem;color:#fff;display:none;font-size:.875rem;margin-top:.1rem;max-width:100%;padding:.25rem .5rem;position:absolute;top:100%;z-index:5}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%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='%23dc3545' stroke='none'/%3E%3C/svg%3E");background-position:right calc(.375em + .1875rem) center;background-repeat:no-repeat;background-size:calc(.75em + .375rem) calc(.75em + .375rem);border-color:#dc3545;padding-right:calc(1.5em + .75rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem);padding-right:calc(1.5em + .75rem)}.form-select.is-invalid,.was-validated .form-select:invalid{border-color:#dc3545}.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"],.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"]{background-image:url("data:image/svg+xml;charset=utf-8,%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 5 6 6 6-6'/%3E%3C/svg%3E"),url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%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='%23dc3545' stroke='none'/%3E%3C/svg%3E");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem);padding-right:4.125rem}.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.form-check-input.is-invalid,.was-validated .form-check-input:invalid{border-color:#dc3545}.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked{background-color:#dc3545}.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.input-group .form-control.is-invalid,.input-group .form-select.is-invalid,.was-validated .input-group .form-control:invalid,.was-validated .input-group .form-select:invalid{z-index:2}.input-group .form-control.is-invalid:focus,.input-group .form-select.is-invalid:focus,.was-validated .input-group .form-control:invalid:focus,.was-validated .input-group .form-select:invalid:focus{z-index:3}.btn{background-color:transparent;border:1px solid transparent;border-radius:.25rem;color:#212529;cursor:pointer;display:inline-block;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem .75rem;text-align:center;text-decoration: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;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529}.btn-check:focus+.btn,.btn:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.25);outline:0}.btn.disabled,.btn:disabled,fieldset:disabled .btn{opacity:.65;pointer-events:none}.btn-primary{background-color:#0d6efd;border-color:#0d6efd;color:#fff}.btn-check:focus+.btn-primary,.btn-primary:focus,.btn-primary:hover{background-color:#0b5ed7;border-color:#0a58ca;color:#fff}.btn-check:focus+.btn-primary,.btn-primary:focus{box-shadow:0 0 0 .25rem rgba(49,132,253,.5)}.btn-check:active+.btn-primary,.btn-check:checked+.btn-primary,.btn-primary.active,.btn-primary:active,.show>.btn-primary.dropdown-toggle{background-color:#0a58ca;border-color:#0a53be;color:#fff}.btn-check:active+.btn-primary:focus,.btn-check:checked+.btn-primary:focus,.btn-primary.active:focus,.btn-primary:active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(49,132,253,.5)}.btn-primary.disabled,.btn-primary:disabled{background-color:#0d6efd;border-color:#0d6efd;color:#fff}.btn-secondary{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-check:focus+.btn-secondary,.btn-secondary:focus,.btn-secondary:hover{background-color:#5c636a;border-color:#565e64;color:#fff}.btn-check:focus+.btn-secondary,.btn-secondary:focus{box-shadow:0 0 0 .25rem hsla(208,6%,54%,.5)}.btn-check:active+.btn-secondary,.btn-check:checked+.btn-secondary,.btn-secondary.active,.btn-secondary:active,.show>.btn-secondary.dropdown-toggle{background-color:#565e64;border-color:#51585e;color:#fff}.btn-check:active+.btn-secondary:focus,.btn-check:checked+.btn-secondary:focus,.btn-secondary.active:focus,.btn-secondary:active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem hsla(208,6%,54%,.5)}.btn-secondary.disabled,.btn-secondary:disabled{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-success{background-color:#198754;border-color:#198754;color:#fff}.btn-check:focus+.btn-success,.btn-success:focus,.btn-success:hover{background-color:#157347;border-color:#146c43;color:#fff}.btn-check:focus+.btn-success,.btn-success:focus{box-shadow:0 0 0 .25rem rgba(60,153,110,.5)}.btn-check:active+.btn-success,.btn-check:checked+.btn-success,.btn-success.active,.btn-success:active,.show>.btn-success.dropdown-toggle{background-color:#146c43;border-color:#13653f;color:#fff}.btn-check:active+.btn-success:focus,.btn-check:checked+.btn-success:focus,.btn-success.active:focus,.btn-success:active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(60,153,110,.5)}.btn-success.disabled,.btn-success:disabled{background-color:#198754;border-color:#198754;color:#fff}.btn-info{background-color:#0dcaf0;border-color:#0dcaf0;color:#000}.btn-check:focus+.btn-info,.btn-info:focus,.btn-info:hover{background-color:#31d2f2;border-color:#25cff2;color:#000}.btn-check:focus+.btn-info,.btn-info:focus{box-shadow:0 0 0 .25rem rgba(11,172,204,.5)}.btn-check:active+.btn-info,.btn-check:checked+.btn-info,.btn-info.active,.btn-info:active,.show>.btn-info.dropdown-toggle{background-color:#3dd5f3;border-color:#25cff2;color:#000}.btn-check:active+.btn-info:focus,.btn-check:checked+.btn-info:focus,.btn-info.active:focus,.btn-info:active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(11,172,204,.5)}.btn-info.disabled,.btn-info:disabled{background-color:#0dcaf0;border-color:#0dcaf0;color:#000}.btn-warning{background-color:#ffc107;border-color:#ffc107;color:#000}.btn-check:focus+.btn-warning,.btn-warning:focus,.btn-warning:hover{background-color:#ffca2c;border-color:#ffc720;color:#000}.btn-check:focus+.btn-warning,.btn-warning:focus{box-shadow:0 0 0 .25rem rgba(217,164,6,.5)}.btn-check:active+.btn-warning,.btn-check:checked+.btn-warning,.btn-warning.active,.btn-warning:active,.show>.btn-warning.dropdown-toggle{background-color:#ffcd39;border-color:#ffc720;color:#000}.btn-check:active+.btn-warning:focus,.btn-check:checked+.btn-warning:focus,.btn-warning.active:focus,.btn-warning:active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(217,164,6,.5)}.btn-warning.disabled,.btn-warning:disabled{background-color:#ffc107;border-color:#ffc107;color:#000}.btn-danger{background-color:#dc3545;border-color:#dc3545;color:#fff}.btn-check:focus+.btn-danger,.btn-danger:focus,.btn-danger:hover{background-color:#bb2d3b;border-color:#b02a37;color:#fff}.btn-check:focus+.btn-danger,.btn-danger:focus{box-shadow:0 0 0 .25rem rgba(225,83,97,.5)}.btn-check:active+.btn-danger,.btn-check:checked+.btn-danger,.btn-danger.active,.btn-danger:active,.show>.btn-danger.dropdown-toggle{background-color:#b02a37;border-color:#a52834;color:#fff}.btn-check:active+.btn-danger:focus,.btn-check:checked+.btn-danger:focus,.btn-danger.active:focus,.btn-danger:active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{background-color:#dc3545;border-color:#dc3545;color:#fff}.btn-light{background-color:#f8f9fa;border-color:#f8f9fa;color:#000}.btn-check:focus+.btn-light,.btn-light:focus,.btn-light:hover{background-color:#f9fafb;border-color:#f9fafb;color:#000}.btn-check:focus+.btn-light,.btn-light:focus{box-shadow:0 0 0 .25rem hsla(210,2%,83%,.5)}.btn-check:active+.btn-light,.btn-check:checked+.btn-light,.btn-light.active,.btn-light:active,.show>.btn-light.dropdown-toggle{background-color:#f9fafb;border-color:#f9fafb;color:#000}.btn-check:active+.btn-light:focus,.btn-check:checked+.btn-light:focus,.btn-light.active:focus,.btn-light:active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .25rem hsla(210,2%,83%,.5)}.btn-light.disabled,.btn-light:disabled{background-color:#f8f9fa;border-color:#f8f9fa;color:#000}.btn-dark{background-color:#212529;border-color:#212529;color:#fff}.btn-check:focus+.btn-dark,.btn-dark:focus,.btn-dark:hover{background-color:#1c1f23;border-color:#1a1e21;color:#fff}.btn-check:focus+.btn-dark,.btn-dark:focus{box-shadow:0 0 0 .25rem rgba(66,70,73,.5)}.btn-check:active+.btn-dark,.btn-check:checked+.btn-dark,.btn-dark.active,.btn-dark:active,.show>.btn-dark.dropdown-toggle{background-color:#1a1e21;border-color:#191c1f;color:#fff}.btn-check:active+.btn-dark:focus,.btn-check:checked+.btn-dark:focus,.btn-dark.active:focus,.btn-dark:active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(66,70,73,.5)}.btn-dark.disabled,.btn-dark:disabled{background-color:#212529;border-color:#212529;color:#fff}.btn-outline-primary{border-color:#0d6efd;color:#0d6efd}.btn-outline-primary:hover{background-color:#0d6efd;border-color:#0d6efd;color:#fff}.btn-check:focus+.btn-outline-primary,.btn-outline-primary:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.5)}.btn-check:active+.btn-outline-primary,.btn-check:checked+.btn-outline-primary,.btn-outline-primary.active,.btn-outline-primary.dropdown-toggle.show,.btn-outline-primary:active{background-color:#0d6efd;border-color:#0d6efd;color:#fff}.btn-check:active+.btn-outline-primary:focus,.btn-check:checked+.btn-outline-primary:focus,.btn-outline-primary.active:focus,.btn-outline-primary.dropdown-toggle.show:focus,.btn-outline-primary:active:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{background-color:transparent;color:#0d6efd}.btn-outline-secondary{border-color:#6c757d;color:#6c757d}.btn-outline-secondary:hover{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-check:focus+.btn-outline-secondary,.btn-outline-secondary:focus{box-shadow:0 0 0 .25rem hsla(208,7%,46%,.5)}.btn-check:active+.btn-outline-secondary,.btn-check:checked+.btn-outline-secondary,.btn-outline-secondary.active,.btn-outline-secondary.dropdown-toggle.show,.btn-outline-secondary:active{background-color:#6c757d;border-color:#6c757d;color:#fff}.btn-check:active+.btn-outline-secondary:focus,.btn-check:checked+.btn-outline-secondary:focus,.btn-outline-secondary.active:focus,.btn-outline-secondary.dropdown-toggle.show:focus,.btn-outline-secondary:active:focus{box-shadow:0 0 0 .25rem hsla(208,7%,46%,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{background-color:transparent;color:#6c757d}.btn-outline-success{border-color:#198754;color:#198754}.btn-outline-success:hover{background-color:#198754;border-color:#198754;color:#fff}.btn-check:focus+.btn-outline-success,.btn-outline-success:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}.btn-check:active+.btn-outline-success,.btn-check:checked+.btn-outline-success,.btn-outline-success.active,.btn-outline-success.dropdown-toggle.show,.btn-outline-success:active{background-color:#198754;border-color:#198754;color:#fff}.btn-check:active+.btn-outline-success:focus,.btn-check:checked+.btn-outline-success:focus,.btn-outline-success.active:focus,.btn-outline-success.dropdown-toggle.show:focus,.btn-outline-success:active:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{background-color:transparent;color:#198754}.btn-outline-info{border-color:#0dcaf0;color:#0dcaf0}.btn-outline-info:hover{background-color:#0dcaf0;border-color:#0dcaf0;color:#000}.btn-check:focus+.btn-outline-info,.btn-outline-info:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}.btn-check:active+.btn-outline-info,.btn-check:checked+.btn-outline-info,.btn-outline-info.active,.btn-outline-info.dropdown-toggle.show,.btn-outline-info:active{background-color:#0dcaf0;border-color:#0dcaf0;color:#000}.btn-check:active+.btn-outline-info:focus,.btn-check:checked+.btn-outline-info:focus,.btn-outline-info.active:focus,.btn-outline-info.dropdown-toggle.show:focus,.btn-outline-info:active:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{background-color:transparent;color:#0dcaf0}.btn-outline-warning{border-color:#ffc107;color:#ffc107}.btn-outline-warning:hover{background-color:#ffc107;border-color:#ffc107;color:#000}.btn-check:focus+.btn-outline-warning,.btn-outline-warning:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}.btn-check:active+.btn-outline-warning,.btn-check:checked+.btn-outline-warning,.btn-outline-warning.active,.btn-outline-warning.dropdown-toggle.show,.btn-outline-warning:active{background-color:#ffc107;border-color:#ffc107;color:#000}.btn-check:active+.btn-outline-warning:focus,.btn-check:checked+.btn-outline-warning:focus,.btn-outline-warning.active:focus,.btn-outline-warning.dropdown-toggle.show:focus,.btn-outline-warning:active:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{background-color:transparent;color:#ffc107}.btn-outline-danger{border-color:#dc3545;color:#dc3545}.btn-outline-danger:hover{background-color:#dc3545;border-color:#dc3545;color:#fff}.btn-check:focus+.btn-outline-danger,.btn-outline-danger:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}.btn-check:active+.btn-outline-danger,.btn-check:checked+.btn-outline-danger,.btn-outline-danger.active,.btn-outline-danger.dropdown-toggle.show,.btn-outline-danger:active{background-color:#dc3545;border-color:#dc3545;color:#fff}.btn-check:active+.btn-outline-danger:focus,.btn-check:checked+.btn-outline-danger:focus,.btn-outline-danger.active:focus,.btn-outline-danger.dropdown-toggle.show:focus,.btn-outline-danger:active:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{background-color:transparent;color:#dc3545}.btn-outline-light{border-color:#f8f9fa;color:#f8f9fa}.btn-outline-light:hover{background-color:#f8f9fa;border-color:#f8f9fa;color:#000}.btn-check:focus+.btn-outline-light,.btn-outline-light:focus{box-shadow:0 0 0 .25rem rgba(248,249,250,.5)}.btn-check:active+.btn-outline-light,.btn-check:checked+.btn-outline-light,.btn-outline-light.active,.btn-outline-light.dropdown-toggle.show,.btn-outline-light:active{background-color:#f8f9fa;border-color:#f8f9fa;color:#000}.btn-check:active+.btn-outline-light:focus,.btn-check:checked+.btn-outline-light:focus,.btn-outline-light.active:focus,.btn-outline-light.dropdown-toggle.show:focus,.btn-outline-light:active:focus{box-shadow:0 0 0 .25rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{background-color:transparent;color:#f8f9fa}.btn-outline-dark{border-color:#212529;color:#212529}.btn-outline-dark:hover{background-color:#212529;border-color:#212529;color:#fff}.btn-check:focus+.btn-outline-dark,.btn-outline-dark:focus{box-shadow:0 0 0 .25rem rgba(33,37,41,.5)}.btn-check:active+.btn-outline-dark,.btn-check:checked+.btn-outline-dark,.btn-outline-dark.active,.btn-outline-dark.dropdown-toggle.show,.btn-outline-dark:active{background-color:#212529;border-color:#212529;color:#fff}.btn-check:active+.btn-outline-dark:focus,.btn-check:checked+.btn-outline-dark:focus,.btn-outline-dark.active:focus,.btn-outline-dark.dropdown-toggle.show:focus,.btn-outline-dark:active:focus{box-shadow:0 0 0 .25rem rgba(33,37,41,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{background-color:transparent;color:#212529}.btn-link{color:#0d6efd;font-weight:400;text-decoration:underline}.btn-link:hover{color:#0a58ca}.btn-link.disabled,.btn-link:disabled{color:#6c757d}.btn-group-lg>.btn,.btn-lg{border-radius:.3rem;font-size:1.25rem;padding:.5rem 1rem}.btn-group-sm>.btn,.btn-sm{border-radius:.2rem;font-size:.875rem;padding:.25rem .5rem}.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 .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropend,.dropstart,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{border-bottom:0;border-left:.3em solid transparent;border-right:.3em solid transparent;border-top:.3em solid;content:"";display:inline-block;margin-left:.255em;vertical-align:.255em}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{background-clip:padding-box;background-color:#fff;border:1px solid rgba(0,0,0,.15);border-radius:.25rem;color:#212529;display:none;font-size:1rem;list-style:none;margin:0;min-width:10rem;padding:.5rem 0;position:absolute;text-align:left;z-index:1000}.dropdown-menu[data-bs-popper]{left:0;margin-top:.125rem;top:100%}.dropdown-menu-start{--bs-position:start}.dropdown-menu-start[data-bs-popper]{left:0;right:auto}.dropdown-menu-end{--bs-position:end}.dropdown-menu-end[data-bs-popper]{left:auto;right:0}@media (min-width:576px){.dropdown-menu-sm-start{--bs-position:start}.dropdown-menu-sm-start[data-bs-popper]{left:0;right:auto}.dropdown-menu-sm-end{--bs-position:end}.dropdown-menu-sm-end[data-bs-popper]{left:auto;right:0}}@media (min-width:768px){.dropdown-menu-md-start{--bs-position:start}.dropdown-menu-md-start[data-bs-popper]{left:0;right:auto}.dropdown-menu-md-end{--bs-position:end}.dropdown-menu-md-end[data-bs-popper]{left:auto;right:0}}@media (min-width:992px){.dropdown-menu-lg-start{--bs-position:start}.dropdown-menu-lg-start[data-bs-popper]{left:0;right:auto}.dropdown-menu-lg-end{--bs-position:end}.dropdown-menu-lg-end[data-bs-popper]{left:auto;right:0}}@media (min-width:1200px){.dropdown-menu-xl-start{--bs-position:start}.dropdown-menu-xl-start[data-bs-popper]{left:0;right:auto}.dropdown-menu-xl-end{--bs-position:end}.dropdown-menu-xl-end[data-bs-popper]{left:auto;right:0}}@media (min-width:1400px){.dropdown-menu-xxl-start{--bs-position:start}.dropdown-menu-xxl-start[data-bs-popper]{left:0;right:auto}.dropdown-menu-xxl-end{--bs-position:end}.dropdown-menu-xxl-end[data-bs-popper]{left:auto;right:0}}.dropup .dropdown-menu[data-bs-popper]{bottom:100%;margin-bottom:.125rem;margin-top:0;top:auto}.dropup .dropdown-toggle:after{border-bottom:.3em solid;border-left:.3em solid transparent;border-right:.3em solid transparent;border-top:0;content:"";display:inline-block;margin-left:.255em;vertical-align:.255em}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{left:100%;margin-left:.125rem;margin-top:0;right:auto;top:0}.dropend .dropdown-toggle:after{border-bottom:.3em solid transparent;border-left:.3em solid;border-right:0;border-top:.3em solid transparent;content:"";display:inline-block;margin-left:.255em;vertical-align:.255em}.dropend .dropdown-toggle:empty:after{margin-left:0}.dropend .dropdown-toggle:after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{left:auto;margin-right:.125rem;margin-top:0;right:100%;top:0}.dropstart .dropdown-toggle:after{content:"";display:inline-block;display:none;margin-left:.255em;vertical-align:.255em}.dropstart .dropdown-toggle:before{border-bottom:.3em solid transparent;border-right:.3em solid;border-top:.3em solid transparent;content:"";display:inline-block;margin-right:.255em;vertical-align:.255em}.dropstart .dropdown-toggle:empty:after{margin-left:0}.dropstart .dropdown-toggle:before{vertical-align:0}.dropdown-divider{border-top:1px solid rgba(0,0,0,.15);height:0;margin:.5rem 0;overflow:hidden}.dropdown-item{background-color:transparent;border:0;clear:both;color:#212529;display:block;font-weight:400;padding:.25rem 1rem;text-align:inherit;text-decoration:none;white-space:nowrap;width:100%}.dropdown-item:focus,.dropdown-item:hover{background-color:#e9ecef;color:#1e2125}.dropdown-item.active,.dropdown-item:active{background-color:#0d6efd;color:#fff;text-decoration:none}.dropdown-item.disabled,.dropdown-item:disabled{background-color:transparent;color:#adb5bd;pointer-events:none}.dropdown-menu.show{display:block}.dropdown-header{color:#6c757d;display:block;font-size:.875rem;margin-bottom:0;padding:.5rem 1rem;white-space:nowrap}.dropdown-item-text{color:#212529;display:block;padding:.25rem 1rem}.dropdown-menu-dark{background-color:#343a40;border-color:rgba(0,0,0,.15);color:#dee2e6}.dropdown-menu-dark .dropdown-item{color:#dee2e6}.dropdown-menu-dark .dropdown-item:focus,.dropdown-menu-dark .dropdown-item:hover{background-color:hsla(0,0%,100%,.15);color:#fff}.dropdown-menu-dark .dropdown-item.active,.dropdown-menu-dark .dropdown-item:active{background-color:#0d6efd;color:#fff}.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{display:-ms-inline-flexbox;display:inline-flex;position:relative;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{-ms-flex:1 1 auto;flex:1 1 auto;position:relative}.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{-ms-flex-pack:start;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn{border-bottom-left-radius:0;border-top-left-radius:0}.dropdown-toggle-split{padding-left:.5625rem;padding-right:.5625rem}.dropdown-toggle-split:after,.dropend .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropstart .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-left:.375rem;padding-right:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-left:.75rem;padding-right:.75rem}.btn-group-vertical{-ms-flex-align:start;-ms-flex-pack:center;align-items:flex-start;-ms-flex-direction:column;flex-direction:column;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-left-radius:0;border-bottom-right-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn~.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;list-style:none;margin-bottom:0;padding-left:0}.nav-link{color:#0d6efd;display:block;padding:.5rem 1rem;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:focus,.nav-link:hover{color:#0a58ca}.nav-link.disabled{color:#6c757d;cursor:default;pointer-events:none}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-link{background:none;border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem;margin-bottom:-1px}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6;isolation:isolate}.nav-tabs .nav-link.disabled{background-color:transparent;border-color:transparent;color:#6c757d}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{background-color:#fff;border-color:#dee2e6 #dee2e6 #fff;color:#495057}.nav-tabs .dropdown-menu{border-top-left-radius:0;border-top-right-radius:0;margin-top:-1px}.nav-pills .nav-link{background:none;border:0;border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{background-color:#0d6efd;color:#fff}.nav-fill .nav-item,.nav-fill>.nav-link{-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{-ms-flex-preferred-size:0;-ms-flex-positive:1;flex-basis:0;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{-ms-flex-align:center;-ms-flex-pack:justify;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;justify-content:space-between;padding-bottom:.5rem;padding-top:.5rem;position:relative}.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container-xl,.navbar>.container-xxl{-ms-flex-align:center;-ms-flex-pack:justify;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:inherit;flex-wrap:inherit;justify-content:space-between}.navbar-brand{font-size:1.25rem;margin-right:1rem;padding-bottom:.3125rem;padding-top:.3125rem;text-decoration:none;white-space:nowrap}.navbar-nav{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;list-style:none;margin-bottom:0;padding-left:0}.navbar-nav .nav-link{padding-left:0;padding-right:0}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-bottom:.5rem;padding-top:.5rem}.navbar-collapse{-ms-flex-preferred-size:100%;-ms-flex-positive:1;-ms-flex-align:center;align-items:center;flex-basis:100%;flex-grow:1}.navbar-toggler{background-color:transparent;border:1px solid transparent;border-radius:.25rem;font-size:1.25rem;line-height:1;padding:.25rem .75rem;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{box-shadow:0 0 0 .25rem;outline:0;text-decoration:none}.navbar-toggler-icon{background-position:50%;background-repeat:no-repeat;background-size:100%;display:inline-block;height:1.5em;vertical-align:middle;width:1.5em}.navbar-nav-scroll{max-height:var(--bs-scroll-height,75vh);overflow-y:auto}@media (min-width:576px){.navbar-expand-sm{-ms-flex-pack:start;-ms-flex-wrap:nowrap;flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{-ms-flex-preferred-size:auto;display:-ms-flexbox!important;display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (min-width:768px){.navbar-expand-md{-ms-flex-pack:start;-ms-flex-wrap:nowrap;flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{-ms-flex-preferred-size:auto;display:-ms-flexbox!important;display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (min-width:992px){.navbar-expand-lg{-ms-flex-pack:start;-ms-flex-wrap:nowrap;flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{-ms-flex-preferred-size:auto;display:-ms-flexbox!important;display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (min-width:1200px){.navbar-expand-xl{-ms-flex-pack:start;-ms-flex-wrap:nowrap;flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{-ms-flex-preferred-size:auto;display:-ms-flexbox!important;display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}@media (min-width:1400px){.navbar-expand-xxl{-ms-flex-pack:start;-ms-flex-wrap:nowrap;flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{-ms-flex-preferred-size:auto;display:-ms-flexbox!important;display:flex!important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}}.navbar-expand{-ms-flex-pack:start;-ms-flex-wrap:nowrap;flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-left:.5rem;padding-right:.5rem}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{-ms-flex-preferred-size:auto;display:-ms-flexbox!important;display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand,.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.55)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{border-color:rgba(0,0,0,.1);color:rgba(0,0,0,.55)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(0, 0, 0, 0.55)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-light .navbar-text{color:rgba(0,0,0,.55)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand,.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:hsla(0,0%,100%,.55)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:hsla(0,0%,100%,.25)}.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{border-color:hsla(0,0%,100%,.1);color:hsla(0,0%,100%,.55)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(255, 255, 255, 0.55)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.navbar-dark .navbar-text{color:hsla(0,0%,100%,.55)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{word-wrap:break-word;background-clip:border-box;background-color:#fff;border:1px solid rgba(0,0,0,.125);border-radius:.25rem;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:0;position:relative}.card>hr{margin-left:0;margin-right:0}.card>.list-group{border-bottom:inherit;border-top:inherit}.card>.list-group:first-child{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px);border-top-width:0}.card>.list-group:last-child{border-bottom-left-radius:calc(.25rem - 1px);border-bottom-right-radius:calc(.25rem - 1px);border-bottom-width:0}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem}.card-title{margin-bottom:.5rem}.card-subtitle{margin-top:-.25rem}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1rem}.card-header{background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125);margin-bottom:0;padding:.5rem 1rem}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-footer{background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125);padding:.5rem 1rem}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{border-bottom:0;margin-bottom:-.5rem}.card-header-pills,.card-header-tabs{margin-left:-.5rem;margin-right:-.5rem}.card-img-overlay{border-radius:calc(.25rem - 1px);bottom:0;left:0;padding:1rem;position:absolute;right:0;top:0}.card-img,.card-img-bottom,.card-img-top{width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-left-radius:calc(.25rem - 1px);border-bottom-right-radius:calc(.25rem - 1px)}.card-group>.card{margin-bottom:.75rem}@media (min-width:576px){.card-group{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-ms-flex:1 0 0%;flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{border-left:0;margin-left:0}.card-group>.card:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.accordion-button{-ms-flex-align:center;align-items:center;background-color:#fff;border:0;border-radius:0;color:#212529;display:-ms-flexbox;display:flex;font-size:1rem;overflow-anchor:none;padding:1rem 1.25rem;position:relative;text-align:left;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;width:100%}@media (prefers-reduced-motion:reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){background-color:#e7f1ff;box-shadow:inset 0 -1px 0 rgba(0,0,0,.125);color:#0c63e4}.accordion-button:not(.collapsed):after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%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");-webkit-transform:rotate(-180deg);transform:rotate(-180deg)}.accordion-button:after{-ms-flex-negative:0;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%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;content:"";flex-shrink:0;height:1.25rem;margin-left:auto;transition:-webkit-transform .2s ease-in-out;transition:transform .2s ease-in-out;transition:transform .2s ease-in-out,-webkit-transform .2s ease-in-out;width:1.25rem}@media (prefers-reduced-motion:reduce){.accordion-button:after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{border-color:#86b7fe;box-shadow:0 0 0 .25rem rgba(13,110,253,.25);outline:0;z-index:3}.accordion-header{margin-bottom:0}.accordion-item{background-color:#fff;border:1px solid rgba(0,0,0,.125)}.accordion-item:first-of-type{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.accordion-item:first-of-type .accordion-button{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-left-radius:calc(.25rem - 1px);border-bottom-right-radius:calc(.25rem - 1px)}.accordion-item:last-of-type .accordion-collapse{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.accordion-body{padding:1rem 1.25rem}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-left:0;border-radius:0;border-right:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button{border-radius:0}.breadcrumb{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;list-style:none;margin-bottom:1rem;padding:0}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item:before{color:#6c757d;content:var(--bs-breadcrumb-divider,"/");float:left;padding-right:.5rem}.breadcrumb-item.active{color:#6c757d}.pagination{display:-ms-flexbox;display:flex;list-style:none;padding-left:0}.page-link{background-color:#fff;border:1px solid #dee2e6;color:#0d6efd;display:block;position:relative;text-decoration: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}@media (prefers-reduced-motion:reduce){.page-link{transition:none}}.page-link:hover{border-color:#dee2e6;z-index:2}.page-link:focus,.page-link:hover{background-color:#e9ecef;color:#0a58ca}.page-link:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.25);outline:0;z-index:3}.page-item:not(:first-child) .page-link{margin-left:-1px}.page-item.active .page-link{background-color:#0d6efd;border-color:#0d6efd;color:#fff;z-index:3}.page-item.disabled .page-link{background-color:#fff;border-color:#dee2e6;color:#6c757d;pointer-events:none}.page-link{padding:.375rem .75rem}.page-item:first-child .page-link{border-bottom-left-radius:.25rem;border-top-left-radius:.25rem}.page-item:last-child .page-link{border-bottom-right-radius:.25rem;border-top-right-radius:.25rem}.pagination-lg .page-link{font-size:1.25rem;padding:.75rem 1.5rem}.pagination-lg .page-item:first-child .page-link{border-bottom-left-radius:.3rem;border-top-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-bottom-right-radius:.3rem;border-top-right-radius:.3rem}.pagination-sm .page-link{font-size:.875rem;padding:.25rem .5rem}.pagination-sm .page-item:first-child .page-link{border-bottom-left-radius:.2rem;border-top-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-bottom-right-radius:.2rem;border-top-right-radius:.2rem}.badge{border-radius:.25rem;color:#fff;display:inline-block;font-size:.75em;font-weight:700;line-height:1;padding:.35em .65em;text-align:center;vertical-align:baseline;white-space:nowrap}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{border:1px solid transparent;border-radius:.25rem;margin-bottom:1rem;padding:1rem;position:relative}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{padding:1.25rem 1rem;position:absolute;right:0;top:0;z-index:2}.alert-primary{background-color:#cfe2ff;border-color:#b6d4fe;color:#084298}.alert-primary .alert-link{color:#06357a}.alert-secondary{background-color:#e2e3e5;border-color:#d3d6d8;color:#41464b}.alert-secondary .alert-link{color:#34383c}.alert-success{background-color:#d1e7dd;border-color:#badbcc;color:#0f5132}.alert-success .alert-link{color:#0c4128}.alert-info{background-color:#cff4fc;border-color:#b6effb;color:#055160}.alert-info .alert-link{color:#04414d}.alert-warning{background-color:#fff3cd;border-color:#ffecb5;color:#664d03}.alert-warning .alert-link{color:#523e02}.alert-danger{background-color:#f8d7da;border-color:#f5c2c7;color:#842029}.alert-danger .alert-link{color:#6a1a21}.alert-light{background-color:#fefefe;border-color:#fdfdfe;color:#636464}.alert-light .alert-link{color:#4f5050}.alert-dark{background-color:#d3d3d4;border-color:#bcbebf;color:#141619}.alert-dark .alert-link{color:#101214}@-webkit-keyframes progress-bar-stripes{0%{background-position-x:1rem}}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress{background-color:#e9ecef;border-radius:.25rem;font-size:.75rem;height:1rem}.progress,.progress-bar{display:-ms-flexbox;display:flex;overflow:hidden}.progress-bar{-ms-flex-pack:center;background-color:#0d6efd;color:#fff;-ms-flex-direction:column;flex-direction:column;justify-content:center;text-align:center;transition:width .6s ease;white-space:nowrap}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.list-group{border-radius:.25rem;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin-bottom:0;padding-left:0}.list-group-numbered{counter-reset:section;list-style-type:none}.list-group-numbered>li:before{content:counters(section,".") ". ";counter-increment:section}.list-group-item-action{color:#495057;text-align:inherit;width:100%}.list-group-item-action:focus,.list-group-item-action:hover{background-color:#f8f9fa;color:#495057;text-decoration:none;z-index:1}.list-group-item-action:active{background-color:#e9ecef;color:#212529}.list-group-item{background-color:#fff;border:1px solid rgba(0,0,0,.125);color:#212529;display:block;padding:.5rem 1rem;position:relative;text-decoration:none}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{background-color:#fff;color:#6c757d;pointer-events:none}.list-group-item.active{background-color:#0d6efd;border-color:#0d6efd;color:#fff;z-index:2}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{border-top-width:1px;margin-top:-1px}.list-group-horizontal{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}@media (min-width:576px){.list-group-horizontal-sm{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:768px){.list-group-horizontal-md{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-md>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:992px){.list-group-horizontal-lg{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:1200px){.list-group-horizontal-xl{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}@media (min-width:1400px){.list-group-horizontal-xxl{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child{border-bottom-left-radius:0;border-top-right-radius:.25rem}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-left-width:0;border-top-width:1px}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{border-left-width:1px;margin-left:-1px}}.list-group-flush{border-radius:0}.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-primary{background-color:#cfe2ff;color:#084298}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{background-color:#bacbe6;color:#084298}.list-group-item-primary.list-group-item-action.active{background-color:#084298;border-color:#084298;color:#fff}.list-group-item-secondary{background-color:#e2e3e5;color:#41464b}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{background-color:#cbccce;color:#41464b}.list-group-item-secondary.list-group-item-action.active{background-color:#41464b;border-color:#41464b;color:#fff}.list-group-item-success{background-color:#d1e7dd;color:#0f5132}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{background-color:#bcd0c7;color:#0f5132}.list-group-item-success.list-group-item-action.active{background-color:#0f5132;border-color:#0f5132;color:#fff}.list-group-item-info{background-color:#cff4fc;color:#055160}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{background-color:#badce3;color:#055160}.list-group-item-info.list-group-item-action.active{background-color:#055160;border-color:#055160;color:#fff}.list-group-item-warning{background-color:#fff3cd;color:#664d03}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{background-color:#e6dbb9;color:#664d03}.list-group-item-warning.list-group-item-action.active{background-color:#664d03;border-color:#664d03;color:#fff}.list-group-item-danger{background-color:#f8d7da;color:#842029}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{background-color:#dfc2c4;color:#842029}.list-group-item-danger.list-group-item-action.active{background-color:#842029;border-color:#842029;color:#fff}.list-group-item-light{background-color:#fefefe;color:#636464}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{background-color:#e5e5e5;color:#636464}.list-group-item-light.list-group-item-action.active{background-color:#636464;border-color:#636464;color:#fff}.list-group-item-dark{background-color:#d3d3d4;color:#141619}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{background-color:#bebebf;color:#141619}.list-group-item-dark.list-group-item-action.active{background-color:#141619;border-color:#141619;color:#fff}.btn-close{background:transparent url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3E%3C/svg%3E") 50%/1em auto no-repeat;border:0;border-radius:.25rem;box-sizing:content-box;color:#000;height:1em;opacity:.5;padding:.25em;width:1em}.btn-close:hover{color:#000;opacity:.75;text-decoration:none}.btn-close:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.25);opacity:1;outline:0}.btn-close.disabled,.btn-close:disabled{opacity:.25;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn-close-white{-webkit-filter:invert(1) grayscale(100%) brightness(200%);filter:invert(1) grayscale(100%) brightness(200%)}.toast{background-clip:padding-box;background-color:hsla(0,0%,100%,.85);border:1px solid rgba(0,0,0,.1);border-radius:.25rem;box-shadow:0 .5rem 1rem rgba(0,0,0,.15);font-size:.875rem;max-width:100%;pointer-events:auto;width:350px}.toast:not(.showing):not(.show){opacity:0}.toast.hide{display:none}.toast-container{max-width:100%;pointer-events:none;width:-webkit-max-content;width:-moz-max-content;width:max-content}.toast-container>:not(:last-child){margin-bottom:.75rem}.toast-header{-ms-flex-align:center;align-items:center;background-clip:padding-box;background-color:hsla(0,0%,100%,.85);border-bottom:1px solid rgba(0,0,0,.05);border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px);color:#6c757d;display:-ms-flexbox;display:flex;padding:.5rem .75rem}.toast-header .btn-close{margin-left:.75rem;margin-right:-.375rem}.toast-body{word-wrap:break-word;padding:.75rem}.modal{display:none;height:100%;left:0;outline:0;overflow-x:hidden;overflow-y:auto;position:fixed;top:0;width:100%;z-index:1060}.modal-dialog{margin:.5rem;pointer-events:none;position:relative;width:auto}.modal.fade .modal-dialog{-webkit-transform:translateY(-50px);transform:translateY(-50px);transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{-webkit-transform:none;transform:none}.modal.modal-static .modal-dialog{-webkit-transform:scale(1.02);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{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;min-height:calc(100% - 1rem)}.modal-content{background-clip:padding-box;background-color:#fff;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;outline:0;pointer-events:auto;position:relative;width:100%}.modal-backdrop{background-color:#000;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:1040}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{-ms-flex-negative:0;-ms-flex-align:center;-ms-flex-pack:justify;align-items:center;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px);display:-ms-flexbox;display:flex;flex-shrink:0;justify-content:space-between;padding:1rem}.modal-header .btn-close{margin:-.5rem -.5rem -.5rem auto;padding:.5rem}.modal-title{line-height:1.5;margin-bottom:0}.modal-body{-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem;position:relative}.modal-footer{-ms-flex-negative:0;-ms-flex-align:center;-ms-flex-pack:end;align-items:center;border-bottom-left-radius:calc(.3rem - 1px);border-bottom-right-radius:calc(.3rem - 1px);border-top:1px solid #dee2e6;display:-ms-flexbox;display:flex;flex-shrink:0;-ms-flex-wrap:wrap;flex-wrap:wrap;justify-content:flex-end;padding:.75rem}.modal-footer>*{margin:.25rem}@media (min-width:576px){.modal-dialog{margin:1.75rem auto;max-width:500px}.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{height:100%;margin:0;max-width:none;width:100vw}.modal-fullscreen .modal-content{border:0;border-radius:0;height:100%}.modal-fullscreen .modal-header{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}.modal-fullscreen .modal-footer{border-radius:0}@media (max-width:575.98px){.modal-fullscreen-sm-down{height:100%;margin:0;max-width:none;width:100vw}.modal-fullscreen-sm-down .modal-content{border:0;border-radius:0;height:100%}.modal-fullscreen-sm-down .modal-header{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}.modal-fullscreen-sm-down .modal-footer{border-radius:0}}@media (max-width:767.98px){.modal-fullscreen-md-down{height:100%;margin:0;max-width:none;width:100vw}.modal-fullscreen-md-down .modal-content{border:0;border-radius:0;height:100%}.modal-fullscreen-md-down .modal-header{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}.modal-fullscreen-md-down .modal-footer{border-radius:0}}@media (max-width:991.98px){.modal-fullscreen-lg-down{height:100%;margin:0;max-width:none;width:100vw}.modal-fullscreen-lg-down .modal-content{border:0;border-radius:0;height:100%}.modal-fullscreen-lg-down .modal-header{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}.modal-fullscreen-lg-down .modal-footer{border-radius:0}}@media (max-width:1199.98px){.modal-fullscreen-xl-down{height:100%;margin:0;max-width:none;width:100vw}.modal-fullscreen-xl-down .modal-content{border:0;border-radius:0;height:100%}.modal-fullscreen-xl-down .modal-header{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}.modal-fullscreen-xl-down .modal-footer{border-radius:0}}@media (max-width:1399.98px){.modal-fullscreen-xxl-down{height:100%;margin:0;max-width:none;width:100vw}.modal-fullscreen-xxl-down .modal-content{border:0;border-radius:0;height:100%}.modal-fullscreen-xxl-down .modal-header{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}.modal-fullscreen-xxl-down .modal-footer{border-radius:0}}.tooltip{word-wrap:break-word;display:block;font-family:var(--bs-font-sans-serif);font-size:.875rem;font-style:normal;font-weight:400;letter-spacing:normal;line-break:auto;line-height:1.5;margin:0;opacity:0;position:absolute;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;z-index:1080}.tooltip.show{opacity:.9}.tooltip .tooltip-arrow{display:block;height:.4rem;position:absolute;width:.8rem}.tooltip .tooltip-arrow:before{border-color:transparent;border-style:solid;content:"";position:absolute}.bs-tooltip-auto[data-popper-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow,.bs-tooltip-top .tooltip-arrow{bottom:0}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before,.bs-tooltip-top .tooltip-arrow:before{border-top-color:#000;border-width:.4rem .4rem 0;top:-1px}.bs-tooltip-auto[data-popper-placement^=right],.bs-tooltip-end{padding:0 .4rem}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow,.bs-tooltip-end .tooltip-arrow{height:.8rem;left:0;width:.4rem}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before,.bs-tooltip-end .tooltip-arrow:before{border-right-color:#000;border-width:.4rem .4rem .4rem 0;right:-1px}.bs-tooltip-auto[data-popper-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow,.bs-tooltip-bottom .tooltip-arrow{top:0}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before,.bs-tooltip-bottom .tooltip-arrow:before{border-bottom-color:#000;border-width:0 .4rem .4rem;bottom:-1px}.bs-tooltip-auto[data-popper-placement^=left],.bs-tooltip-start{padding:0 .4rem}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow,.bs-tooltip-start .tooltip-arrow{height:.8rem;right:0;width:.4rem}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before,.bs-tooltip-start .tooltip-arrow:before{border-left-color:#000;border-width:.4rem 0 .4rem .4rem;left:-1px}.tooltip-inner{background-color:#000;border-radius:.25rem;color:#fff;max-width:200px;padding:.25rem .5rem;text-align:center}.popover{word-wrap:break-word;background-clip:padding-box;background-color:#fff;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;display:block;font-family:var(--bs-font-sans-serif);font-size:.875rem;font-style:normal;font-weight:400;left:0;letter-spacing:normal;line-break:auto;line-height:1.5;max-width:276px;position:absolute;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;top:0;white-space:normal;word-break:normal;word-spacing:normal;z-index:1070}.popover .popover-arrow{display:block;height:.5rem;position:absolute;width:1rem}.popover .popover-arrow:after,.popover .popover-arrow:before{border-color:transparent;border-style:solid;content:"";display:block;position:absolute}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow,.bs-popover-top>.popover-arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:before,.bs-popover-top>.popover-arrow:before{border-top-color:rgba(0,0,0,.25);border-width:.5rem .5rem 0;bottom:0}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:after,.bs-popover-top>.popover-arrow:after{border-top-color:#fff;border-width:.5rem .5rem 0;bottom:1px}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow,.bs-popover-end>.popover-arrow{height:1rem;left:calc(-.5rem - 1px);width:.5rem}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:before,.bs-popover-end>.popover-arrow:before{border-right-color:rgba(0,0,0,.25);border-width:.5rem .5rem .5rem 0;left:0}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:after,.bs-popover-end>.popover-arrow:after{border-right-color:#fff;border-width:.5rem .5rem .5rem 0;left:1px}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow,.bs-popover-bottom>.popover-arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:before,.bs-popover-bottom>.popover-arrow:before{border-bottom-color:rgba(0,0,0,.25);border-width:0 .5rem .5rem;top:0}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:after,.bs-popover-bottom>.popover-arrow:after{border-bottom-color:#fff;border-width:0 .5rem .5rem;top:1px}.bs-popover-auto[data-popper-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{border-bottom:1px solid #f0f0f0;content:"";display:block;left:50%;margin-left:-.5rem;position:absolute;top:0;width:1rem}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow,.bs-popover-start>.popover-arrow{height:1rem;right:calc(-.5rem - 1px);width:.5rem}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:before,.bs-popover-start>.popover-arrow:before{border-left-color:rgba(0,0,0,.25);border-width:.5rem 0 .5rem .5rem;right:0}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:after,.bs-popover-start>.popover-arrow:after{border-left-color:#fff;border-width:.5rem 0 .5rem .5rem;right:1px}.popover-header{background-color:#f0f0f0;border-bottom:1px solid rgba(0,0,0,.2);border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px);font-size:1rem;margin-bottom:0;padding:.5rem 1rem}.popover-header:empty{display:none}.popover-body{color:#212529;padding:1rem}.carousel{position:relative}.carousel.pointer-event{-ms-touch-action:pan-y;touch-action:pan-y}.carousel-inner{overflow:hidden;position:relative;width:100%}.carousel-inner:after{clear:both;content:"";display:block}.carousel-item{-webkit-backface-visibility:hidden;backface-visibility:hidden;display:none;float:left;margin-right:-100%;position:relative;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out;width:100%}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start){-webkit-transform:translateX(100%);transform:translateX(100%)}.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end){-webkit-transform:translateX(-100%);transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;-webkit-transform:none;transform:none;transition-property:opacity}.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end,.carousel-fade .carousel-item.active{opacity:1;z-index:1}.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{opacity:0;transition:opacity 0s .6s;z-index:0}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{transition:none}}.carousel-control-next,.carousel-control-prev{-ms-flex-align:center;-ms-flex-pack:center;align-items:center;background:none;border:0;bottom:0;color:#fff;display:-ms-flexbox;display:flex;justify-content:center;opacity:.5;padding:0;position:absolute;text-align:center;top:0;transition:opacity .15s ease;width:15%;z-index:1}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;opacity:.9;outline:0;text-decoration:none}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{background-position:50%;background-repeat:no-repeat;background-size:100% 100%;display:inline-block;height:2rem;width:2rem}.carousel-control-prev-icon{background-image:url("data:image/svg+xml;charset=utf-8,%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;charset=utf-8,%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{-ms-flex-pack:center;bottom:0;display:-ms-flexbox;display:flex;justify-content:center;left:0;list-style:none;margin-bottom:1rem;margin-left:15%;margin-right:15%;padding:0;position:absolute;right:0;z-index:2}.carousel-indicators [data-bs-target]{background-clip:padding-box;background-color:#fff;border:0;border-bottom:10px solid transparent;border-top:10px solid transparent;box-sizing:content-box;cursor:pointer;-ms-flex:0 1 auto;flex:0 1 auto;height:3px;margin-left:3px;margin-right:3px;opacity:.5;padding:0;text-indent:-999px;transition:opacity .6s ease;width:30px}@media (prefers-reduced-motion:reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{bottom:1.25rem;color:#fff;left:15%;padding-bottom:1.25rem;padding-top:1.25rem;position:absolute;right:15%;text-align:center}.carousel-dark .carousel-control-next-icon,.carousel-dark .carousel-control-prev-icon{-webkit-filter:invert(1) grayscale(100);filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}@-webkit-keyframes spinner-border{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spinner-border{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.spinner-border{-webkit-animation:spinner-border .75s linear infinite;animation:spinner-border .75s linear infinite;border:.25em solid;border-radius:50%;border-right:.25em solid transparent;display:inline-block;height:2rem;vertical-align:-.125em;width:2rem}.spinner-border-sm{border-width:.2em;height:1rem;width:1rem}@-webkit-keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}@keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}.spinner-grow{-webkit-animation:spinner-grow .75s linear infinite;animation:spinner-grow .75s linear infinite;background-color:currentColor;border-radius:50%;display:inline-block;height:2rem;opacity:0;vertical-align:-.125em;width:2rem}.spinner-grow-sm{height:1rem;width:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{-webkit-animation-duration:1.5s;animation-duration:1.5s}}.offcanvas{background-clip:padding-box;background-color:#fff;bottom:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;max-width:100%;outline:0;position:fixed;transition:-webkit-transform .3s ease-in-out;transition:transform .3s ease-in-out;transition:transform .3s ease-in-out,-webkit-transform .3s ease-in-out;visibility:hidden;z-index:1050}@media (prefers-reduced-motion:reduce){.offcanvas{transition:none}}.offcanvas-header{-ms-flex-align:center;-ms-flex-pack:justify;align-items:center;display:-ms-flexbox;display:flex;justify-content:space-between;padding:1rem}.offcanvas-header .btn-close{margin-bottom:-.5rem;margin-right:-.5rem;margin-top:-.5rem;padding:.5rem}.offcanvas-title{line-height:1.5;margin-bottom:0}.offcanvas-body{-ms-flex-positive:1;flex-grow:1;overflow-y:auto;padding:1rem}.offcanvas-start{border-right:1px solid rgba(0,0,0,.2);left:0;top:0;-webkit-transform:translateX(-100%);transform:translateX(-100%);width:400px}.offcanvas-end{border-left:1px solid rgba(0,0,0,.2);right:0;top:0;-webkit-transform:translateX(100%);transform:translateX(100%);width:400px}.offcanvas-top{border-bottom:1px solid rgba(0,0,0,.2);top:0;-webkit-transform:translateY(-100%);transform:translateY(-100%)}.offcanvas-bottom,.offcanvas-top{height:30vh;left:0;max-height:100%;right:0}.offcanvas-bottom{border-top:1px solid rgba(0,0,0,.2);-webkit-transform:translateY(100%);transform:translateY(100%)}.offcanvas.show{-webkit-transform:none;transform:none}.clearfix:after{clear:both;content:"";display:block}.link-primary{color:#0d6efd}.link-primary:focus,.link-primary:hover{color:#0a58ca}.link-secondary{color:#6c757d}.link-secondary:focus,.link-secondary:hover{color:#565e64}.link-success{color:#198754}.link-success:focus,.link-success:hover{color:#146c43}.link-info{color:#0dcaf0}.link-info:focus,.link-info:hover{color:#3dd5f3}.link-warning{color:#ffc107}.link-warning:focus,.link-warning:hover{color:#ffcd39}.link-danger{color:#dc3545}.link-danger:focus,.link-danger:hover{color:#b02a37}.link-light{color:#f8f9fa}.link-light:focus,.link-light:hover{color:#f9fafb}.link-dark{color:#212529}.link-dark:focus,.link-dark:hover{color:#1a1e21}.ratio{position:relative;width:100%}.ratio:before{content:"";display:block;padding-top:var(--bs-aspect-ratio)}.ratio>*{height:100%;left:0;position:absolute;top:0;width:100%}.ratio-1x1{--bs-aspect-ratio:100%}.ratio-4x3{--bs-aspect-ratio:75%}.ratio-16x9{--bs-aspect-ratio:56.25%}.ratio-21x9{--bs-aspect-ratio:42.85714%}.fixed-top{top:0}.fixed-bottom,.fixed-top{left:0;position:fixed;right:0;z-index:1030}.fixed-bottom{bottom:0}.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}@media (min-width:576px){.sticky-sm-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:768px){.sticky-md-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:992px){.sticky-lg-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:1200px){.sticky-xl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:1400px){.sticky-xxl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}.stretched-link:after{bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.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}.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:-ms-grid!important;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:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-ms-inline-flexbox!important;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:-webkit-sticky!important;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{-webkit-transform:translate(-50%,-50%)!important;transform:translate(-50%,-50%)!important}.translate-middle-x{-webkit-transform:translateX(-50%)!important;transform:translateX(-50%)!important}.translate-middle-y{-webkit-transform:translateY(-50%)!important;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-primary{border-color:#0d6efd!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#198754!important}.border-info{border-color:#0dcaf0!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#212529!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{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;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{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-evenly{-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;-ms-grid-row-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;-ms-grid-row-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;-ms-grid-row-align:stretch!important;align-self:stretch!important}.order-first{-ms-flex-order:-1!important;order:-1!important}.order-0{-ms-flex-order:0!important;order:0!important}.order-1{-ms-flex-order:1!important;order:1!important}.order-2{-ms-flex-order:2!important;order:2!important}.order-3{-ms-flex-order:3!important;order:3!important}.order-4{-ms-flex-order:4!important;order:4!important}.order-5{-ms-flex-order:5!important;order:5!important}.order-last{-ms-flex-order:6!important;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-left:0!important;margin-right:0!important}.mx-1{margin-left:.25rem!important;margin-right:.25rem!important}.mx-2{margin-left:.5rem!important;margin-right:.5rem!important}.mx-3{margin-left:1rem!important;margin-right:1rem!important}.mx-4{margin-left:1.5rem!important;margin-right:1.5rem!important}.mx-5{margin-left:3rem!important;margin-right:3rem!important}.mx-auto{margin-left:auto!important;margin-right:auto!important}.my-0{margin-bottom:0!important;margin-top:0!important}.my-1{margin-bottom:.25rem!important;margin-top:.25rem!important}.my-2{margin-bottom:.5rem!important;margin-top:.5rem!important}.my-3{margin-bottom:1rem!important;margin-top:1rem!important}.my-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}.my-5{margin-bottom:3rem!important;margin-top:3rem!important}.my-auto{margin-bottom:auto!important;margin-top: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-left:0!important;padding-right:0!important}.px-1{padding-left:.25rem!important;padding-right:.25rem!important}.px-2{padding-left:.5rem!important;padding-right:.5rem!important}.px-3{padding-left:1rem!important;padding-right:1rem!important}.px-4{padding-left:1.5rem!important;padding-right:1.5rem!important}.px-5{padding-left:3rem!important;padding-right:3rem!important}.py-0{padding-bottom:0!important;padding-top:0!important}.py-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.py-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.py-3{padding-bottom:1rem!important;padding-top:1rem!important}.py-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}.py-5{padding-bottom:3rem!important;padding-top: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.375rem + 1.5vw)!important}.fs-2{font-size:calc(1.325rem + .9vw)!important}.fs-3{font-size:calc(1.3rem + .6vw)!important}.fs-4{font-size:calc(1.275rem + .3vw)!important}.fs-5{font-size:1.25rem!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-primary{color:#0d6efd!important}.text-secondary{color:#6c757d!important}.text-success{color:#198754!important}.text-info{color:#0dcaf0!important}.text-warning{color:#ffc107!important}.text-danger{color:#dc3545!important}.text-light{color:#f8f9fa!important}.text-dark{color:#212529!important}.text-white{color:#fff!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:hsla(0,0%,100%,.5)!important}.text-reset{color:inherit!important}.bg-primary{background-color:#0d6efd!important}.bg-secondary{background-color:#6c757d!important}.bg-success{background-color:#198754!important}.bg-info{background-color:#0dcaf0!important}.bg-warning{background-color:#ffc107!important}.bg-danger{background-color:#dc3545!important}.bg-light{background-color:#f8f9fa!important}.bg-dark{background-color:#212529!important}.bg-body,.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;-ms-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;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:.2rem!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}.rounded-end,.rounded-top{border-top-right-radius:.25rem!important}.rounded-bottom,.rounded-end{border-bottom-right-radius:.25rem!important}.rounded-bottom,.rounded-start{border-bottom-left-radius:.25rem!important}.rounded-start{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:-ms-grid!important;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:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}.d-sm-none{display:none!important}.flex-sm-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;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{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-sm-evenly{-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-sm-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;-ms-grid-row-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;-ms-grid-row-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;-ms-grid-row-align:stretch!important;align-self:stretch!important}.order-sm-first{-ms-flex-order:-1!important;order:-1!important}.order-sm-0{-ms-flex-order:0!important;order:0!important}.order-sm-1{-ms-flex-order:1!important;order:1!important}.order-sm-2{-ms-flex-order:2!important;order:2!important}.order-sm-3{-ms-flex-order:3!important;order:3!important}.order-sm-4{-ms-flex-order:4!important;order:4!important}.order-sm-5{-ms-flex-order:5!important;order:5!important}.order-sm-last{-ms-flex-order:6!important;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-left:0!important;margin-right:0!important}.mx-sm-1{margin-left:.25rem!important;margin-right:.25rem!important}.mx-sm-2{margin-left:.5rem!important;margin-right:.5rem!important}.mx-sm-3{margin-left:1rem!important;margin-right:1rem!important}.mx-sm-4{margin-left:1.5rem!important;margin-right:1.5rem!important}.mx-sm-5{margin-left:3rem!important;margin-right:3rem!important}.mx-sm-auto{margin-left:auto!important;margin-right:auto!important}.my-sm-0{margin-bottom:0!important;margin-top:0!important}.my-sm-1{margin-bottom:.25rem!important;margin-top:.25rem!important}.my-sm-2{margin-bottom:.5rem!important;margin-top:.5rem!important}.my-sm-3{margin-bottom:1rem!important;margin-top:1rem!important}.my-sm-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}.my-sm-5{margin-bottom:3rem!important;margin-top:3rem!important}.my-sm-auto{margin-bottom:auto!important;margin-top: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-left:0!important;padding-right:0!important}.px-sm-1{padding-left:.25rem!important;padding-right:.25rem!important}.px-sm-2{padding-left:.5rem!important;padding-right:.5rem!important}.px-sm-3{padding-left:1rem!important;padding-right:1rem!important}.px-sm-4{padding-left:1.5rem!important;padding-right:1.5rem!important}.px-sm-5{padding-left:3rem!important;padding-right:3rem!important}.py-sm-0{padding-bottom:0!important;padding-top:0!important}.py-sm-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.py-sm-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.py-sm-3{padding-bottom:1rem!important;padding-top:1rem!important}.py-sm-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}.py-sm-5{padding-bottom:3rem!important;padding-top: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:-ms-grid!important;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:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}.d-md-none{display:none!important}.flex-md-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;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{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-md-evenly{-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-md-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;-ms-grid-row-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;-ms-grid-row-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;-ms-grid-row-align:stretch!important;align-self:stretch!important}.order-md-first{-ms-flex-order:-1!important;order:-1!important}.order-md-0{-ms-flex-order:0!important;order:0!important}.order-md-1{-ms-flex-order:1!important;order:1!important}.order-md-2{-ms-flex-order:2!important;order:2!important}.order-md-3{-ms-flex-order:3!important;order:3!important}.order-md-4{-ms-flex-order:4!important;order:4!important}.order-md-5{-ms-flex-order:5!important;order:5!important}.order-md-last{-ms-flex-order:6!important;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-left:0!important;margin-right:0!important}.mx-md-1{margin-left:.25rem!important;margin-right:.25rem!important}.mx-md-2{margin-left:.5rem!important;margin-right:.5rem!important}.mx-md-3{margin-left:1rem!important;margin-right:1rem!important}.mx-md-4{margin-left:1.5rem!important;margin-right:1.5rem!important}.mx-md-5{margin-left:3rem!important;margin-right:3rem!important}.mx-md-auto{margin-left:auto!important;margin-right:auto!important}.my-md-0{margin-bottom:0!important;margin-top:0!important}.my-md-1{margin-bottom:.25rem!important;margin-top:.25rem!important}.my-md-2{margin-bottom:.5rem!important;margin-top:.5rem!important}.my-md-3{margin-bottom:1rem!important;margin-top:1rem!important}.my-md-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}.my-md-5{margin-bottom:3rem!important;margin-top:3rem!important}.my-md-auto{margin-bottom:auto!important;margin-top: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-left:0!important;padding-right:0!important}.px-md-1{padding-left:.25rem!important;padding-right:.25rem!important}.px-md-2{padding-left:.5rem!important;padding-right:.5rem!important}.px-md-3{padding-left:1rem!important;padding-right:1rem!important}.px-md-4{padding-left:1.5rem!important;padding-right:1.5rem!important}.px-md-5{padding-left:3rem!important;padding-right:3rem!important}.py-md-0{padding-bottom:0!important;padding-top:0!important}.py-md-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.py-md-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.py-md-3{padding-bottom:1rem!important;padding-top:1rem!important}.py-md-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}.py-md-5{padding-bottom:3rem!important;padding-top: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:-ms-grid!important;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:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}.d-lg-none{display:none!important}.flex-lg-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;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{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-lg-evenly{-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-lg-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;-ms-grid-row-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;-ms-grid-row-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;-ms-grid-row-align:stretch!important;align-self:stretch!important}.order-lg-first{-ms-flex-order:-1!important;order:-1!important}.order-lg-0{-ms-flex-order:0!important;order:0!important}.order-lg-1{-ms-flex-order:1!important;order:1!important}.order-lg-2{-ms-flex-order:2!important;order:2!important}.order-lg-3{-ms-flex-order:3!important;order:3!important}.order-lg-4{-ms-flex-order:4!important;order:4!important}.order-lg-5{-ms-flex-order:5!important;order:5!important}.order-lg-last{-ms-flex-order:6!important;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-left:0!important;margin-right:0!important}.mx-lg-1{margin-left:.25rem!important;margin-right:.25rem!important}.mx-lg-2{margin-left:.5rem!important;margin-right:.5rem!important}.mx-lg-3{margin-left:1rem!important;margin-right:1rem!important}.mx-lg-4{margin-left:1.5rem!important;margin-right:1.5rem!important}.mx-lg-5{margin-left:3rem!important;margin-right:3rem!important}.mx-lg-auto{margin-left:auto!important;margin-right:auto!important}.my-lg-0{margin-bottom:0!important;margin-top:0!important}.my-lg-1{margin-bottom:.25rem!important;margin-top:.25rem!important}.my-lg-2{margin-bottom:.5rem!important;margin-top:.5rem!important}.my-lg-3{margin-bottom:1rem!important;margin-top:1rem!important}.my-lg-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}.my-lg-5{margin-bottom:3rem!important;margin-top:3rem!important}.my-lg-auto{margin-bottom:auto!important;margin-top: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-left:0!important;padding-right:0!important}.px-lg-1{padding-left:.25rem!important;padding-right:.25rem!important}.px-lg-2{padding-left:.5rem!important;padding-right:.5rem!important}.px-lg-3{padding-left:1rem!important;padding-right:1rem!important}.px-lg-4{padding-left:1.5rem!important;padding-right:1.5rem!important}.px-lg-5{padding-left:3rem!important;padding-right:3rem!important}.py-lg-0{padding-bottom:0!important;padding-top:0!important}.py-lg-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.py-lg-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.py-lg-3{padding-bottom:1rem!important;padding-top:1rem!important}.py-lg-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}.py-lg-5{padding-bottom:3rem!important;padding-top: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:-ms-grid!important;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:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}.d-xl-none{display:none!important}.flex-xl-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;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{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-xl-evenly{-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-xl-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;-ms-grid-row-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;-ms-grid-row-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;-ms-grid-row-align:stretch!important;align-self:stretch!important}.order-xl-first{-ms-flex-order:-1!important;order:-1!important}.order-xl-0{-ms-flex-order:0!important;order:0!important}.order-xl-1{-ms-flex-order:1!important;order:1!important}.order-xl-2{-ms-flex-order:2!important;order:2!important}.order-xl-3{-ms-flex-order:3!important;order:3!important}.order-xl-4{-ms-flex-order:4!important;order:4!important}.order-xl-5{-ms-flex-order:5!important;order:5!important}.order-xl-last{-ms-flex-order:6!important;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-left:0!important;margin-right:0!important}.mx-xl-1{margin-left:.25rem!important;margin-right:.25rem!important}.mx-xl-2{margin-left:.5rem!important;margin-right:.5rem!important}.mx-xl-3{margin-left:1rem!important;margin-right:1rem!important}.mx-xl-4{margin-left:1.5rem!important;margin-right:1.5rem!important}.mx-xl-5{margin-left:3rem!important;margin-right:3rem!important}.mx-xl-auto{margin-left:auto!important;margin-right:auto!important}.my-xl-0{margin-bottom:0!important;margin-top:0!important}.my-xl-1{margin-bottom:.25rem!important;margin-top:.25rem!important}.my-xl-2{margin-bottom:.5rem!important;margin-top:.5rem!important}.my-xl-3{margin-bottom:1rem!important;margin-top:1rem!important}.my-xl-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}.my-xl-5{margin-bottom:3rem!important;margin-top:3rem!important}.my-xl-auto{margin-bottom:auto!important;margin-top: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-left:0!important;padding-right:0!important}.px-xl-1{padding-left:.25rem!important;padding-right:.25rem!important}.px-xl-2{padding-left:.5rem!important;padding-right:.5rem!important}.px-xl-3{padding-left:1rem!important;padding-right:1rem!important}.px-xl-4{padding-left:1.5rem!important;padding-right:1.5rem!important}.px-xl-5{padding-left:3rem!important;padding-right:3rem!important}.py-xl-0{padding-bottom:0!important;padding-top:0!important}.py-xl-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.py-xl-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.py-xl-3{padding-bottom:1rem!important;padding-top:1rem!important}.py-xl-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}.py-xl-5{padding-bottom:3rem!important;padding-top: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:-ms-grid!important;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:-ms-flexbox!important;display:flex!important}.d-xxl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}.d-xxl-none{display:none!important}.flex-xxl-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xxl-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-xxl-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-xxl-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xxl-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xxl-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-xxl-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-xxl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xxl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-xxl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xxl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;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{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xxl-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xxl-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xxl-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xxl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-xxl-evenly{-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-xxl-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xxl-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xxl-center{-ms-flex-align:center!important;align-items:center!important}.align-items-xxl-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xxl-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xxl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xxl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xxl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xxl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xxl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xxl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xxl-auto{-ms-flex-item-align:auto!important;-ms-grid-row-align:auto!important;align-self:auto!important}.align-self-xxl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xxl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xxl-center{-ms-flex-item-align:center!important;-ms-grid-row-align:center!important;align-self:center!important}.align-self-xxl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xxl-stretch{-ms-flex-item-align:stretch!important;-ms-grid-row-align:stretch!important;align-self:stretch!important}.order-xxl-first{-ms-flex-order:-1!important;order:-1!important}.order-xxl-0{-ms-flex-order:0!important;order:0!important}.order-xxl-1{-ms-flex-order:1!important;order:1!important}.order-xxl-2{-ms-flex-order:2!important;order:2!important}.order-xxl-3{-ms-flex-order:3!important;order:3!important}.order-xxl-4{-ms-flex-order:4!important;order:4!important}.order-xxl-5{-ms-flex-order:5!important;order:5!important}.order-xxl-last{-ms-flex-order:6!important;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-left:0!important;margin-right:0!important}.mx-xxl-1{margin-left:.25rem!important;margin-right:.25rem!important}.mx-xxl-2{margin-left:.5rem!important;margin-right:.5rem!important}.mx-xxl-3{margin-left:1rem!important;margin-right:1rem!important}.mx-xxl-4{margin-left:1.5rem!important;margin-right:1.5rem!important}.mx-xxl-5{margin-left:3rem!important;margin-right:3rem!important}.mx-xxl-auto{margin-left:auto!important;margin-right:auto!important}.my-xxl-0{margin-bottom:0!important;margin-top:0!important}.my-xxl-1{margin-bottom:.25rem!important;margin-top:.25rem!important}.my-xxl-2{margin-bottom:.5rem!important;margin-top:.5rem!important}.my-xxl-3{margin-bottom:1rem!important;margin-top:1rem!important}.my-xxl-4{margin-bottom:1.5rem!important;margin-top:1.5rem!important}.my-xxl-5{margin-bottom:3rem!important;margin-top:3rem!important}.my-xxl-auto{margin-bottom:auto!important;margin-top: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-left:0!important;padding-right:0!important}.px-xxl-1{padding-left:.25rem!important;padding-right:.25rem!important}.px-xxl-2{padding-left:.5rem!important;padding-right:.5rem!important}.px-xxl-3{padding-left:1rem!important;padding-right:1rem!important}.px-xxl-4{padding-left:1.5rem!important;padding-right:1.5rem!important}.px-xxl-5{padding-left:3rem!important;padding-right:3rem!important}.py-xxl-0{padding-bottom:0!important;padding-top:0!important}.py-xxl-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.py-xxl-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.py-xxl-3{padding-bottom:1rem!important;padding-top:1rem!important}.py-xxl-4{padding-bottom:1.5rem!important;padding-top:1.5rem!important}.py-xxl-5{padding-bottom:3rem!important;padding-top: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}}@media (min-width:1200px){.fs-1{font-size:2.5rem!important}.fs-2{font-size:2rem!important}.fs-3{font-size:1.75rem!important}.fs-4{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:-ms-grid!important;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:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}.d-print-none{display:none!important}}.oe-header{-ms-flex-align:center;-ms-flex-pack:justify;align-items:center;display:-ms-flexbox;display:flex;justify-content:space-between;margin:.5rem}.oe-language .modal-content{background-color:#f8f9fa;color:#212529}.oe-language__list{display:-ms-grid;display:grid;gap:1rem;margin-bottom:1rem}.oe-language__item{background-color:transparent;color:#0d6efd}.oe-language__item:focus,.oe-language__item:hover{background-color:transparent;color:#0a58ca}.oe-header__navbar,.oe-header__navbar .nav-link.active{background-color:transparent}.icon--2xs{height:.75rem;width:.75rem}.icon--xs{height:1rem;width:1rem}.icon--s{height:1.25rem;width:1.25rem}.icon--m{height:1.5rem;width:1.5rem}.icon--l{height:2rem;width:2rem}.icon--xl{height:2.5rem;width:2.5rem}.icon--2xl{height:3rem;width:3rem}.icon--fluid{height:1em;width:1em}.icon--rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.icon--rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.icon--rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.icon--flip-horizontal{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.icon--flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.btn .bi,a .bi{margin:0 .2rem;vertical-align:middle} -/*# sourceMappingURL=oe-bcl-default.min.css.map */ \ No newline at end of file diff --git a/assets/css/oe-bcl-default.min.css.map b/assets/css/oe-bcl-default.min.css.map deleted file mode 100644 index a3edf21d..00000000 --- a/assets/css/oe-bcl-default.min.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_type.scss","../oe-bcl-default.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_root.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_reboot.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_variables.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/vendor/_rfs.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_border-radius.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_lists.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_images.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_image.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_containers.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_container.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_breakpoints.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_grid.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_grid.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_tables.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_table-variants.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_labels.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-text.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-control.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_transition.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_gradients.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-select.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-check.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_form-range.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_floating-labels.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/forms/_input-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_forms.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_buttons.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_buttons.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_transitions.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_dropdown.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_caret.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_button-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_nav.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_navbar.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_card.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_accordion.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_breadcrumb.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_pagination.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_pagination.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_badge.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_alert.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_alert.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_progress.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_list-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_list-group.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_close.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_toasts.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_modal.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_tooltip.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_reset-text.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_popover.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_carousel.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_clearfix.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_spinners.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/_offcanvas.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_colored-links.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_ratio.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_position.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_visually-hidden.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_visually-hidden.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_stretched-link.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/helpers/_text-truncation.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_text-truncate.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/mixins/_utilities.scss","../../../../../node_modules/@openeuropa/bcl-bootstrap/scss/utilities/_api.scss","../../../../../node_modules/@openeuropa/bcl-theme-default/scss/_header.scss","../../../../../node_modules/@openeuropa/bcl-theme-default/scss/_icon.scss"],"names":[],"mappings":"AAoGE,gBCqcF,CCziBA,MAGI,iBAAA,CAAA,mBAAA,CAAA,mBAAA,CAAA,iBAAA,CAAA,gBAAA,CAAA,mBAAA,CAAA,mBAAA,CAAA,kBAAA,CAAA,iBAAA,CAAA,iBAAA,CAAA,eAAA,CAAA,iBAAA,CAAA,sBAAA,CAIA,oBAAA,CAAA,sBAAA,CAAA,oBAAA,CAAA,iBAAA,CAAA,oBAAA,CAAA,mBAAA,CAAA,kBAAA,CAAA,iBAAA,CAKF,wMAAA,CACA,kGAAA,CACA,4EDYF,CEXA,iBAGE,qBFcF,CEDI,8CAJJ,MAKM,sBFKJ,CACF,CEOA,KASE,6BAAA,CACA,yCAAA,CAFA,qBC7CS,CD2CT,aClCS,CD8BT,qCCsX4B,CChIxB,cALI,CF/OR,eCgY4B,CD/X5B,eCqY4B,CDzY5B,QFIF,CEcA,GAGE,6BAAA,CACA,QAAA,CAFA,aCqb4B,CDtb5B,aAAA,CAIA,WFXF,CEcA,eACE,UFXF,CEqBA,0CAKE,eC0X4B,CDzX5B,eC0X4B,CD9X5B,mBC0X4B,CD3X5B,YFfF,CEwBA,OE4MQ,gCJhOR,CI8DI,0BF1CJ,OEmNQ,gBJnON,CACF,CEoBA,OEuMQ,+BJvNR,CIqDI,0BFrCJ,OE8MQ,cJ1NN,CACF,CEgBA,OEkMQ,6BJ9MR,CI4CI,0BFhCJ,OEyMQ,iBJjNN,CACF,CEYA,OE6LQ,+BJrMR,CImCI,0BF3BJ,OEoMQ,gBJxMN,CACF,CEQA,OEoLM,iBJxLN,CESA,OE+KM,cJpLN,CEgBA,EAEE,kBCyK0B,CD1K1B,YFZF,CEwBA,yCAGE,WAAA,CADA,wCAAA,CAAA,gCAAA,CAEA,qCAAA,CAAA,6BFrBF,CE2BA,QAEE,iBAAA,CACA,mBAAA,CAFA,kBFtBF,CE8BA,MAEE,iBF3BF,CE8BA,SAIE,kBAAA,CADA,YF1BF,CE8BA,wBAIE,eF3BF,CE8BA,GACE,eF3BF,CEgCA,GACE,mBAAA,CACA,aF7BF,CEmCA,WACE,eFhCF,CEwCA,SAEE,kBFrCF,CE6CA,aEgFM,gBJzHN,CEgDA,WAEE,wBCyS4B,CD1S5B,YF5CF,CEsDA,QE8DM,eALI,CFrDR,aAAA,CAFA,iBAAA,CAGA,uBFnDF,CEsDA,IAAM,aFlDN,CEmDA,IAAM,SF/CN,CEoDA,EACE,aChNQ,CDiNR,yBFjDF,CEmDE,QACE,aFjDJ,CE4DE,4DAEE,aAAA,CACA,oBF1DJ,CEiEA,kBAME,aAAA,CAFA,oCCmJ4B,CCjIxB,aALI,CFVR,0BF9DF,CEqEA,IACE,aAAA,CEOI,gBALI,CFAR,kBAAA,CADA,YAAA,CAEA,aFjEF,CEsEE,SAEE,aAAA,CEHE,iBALI,CFSN,iBFpEJ,CEwEA,KAGE,oBAAA,CADA,aCtQQ,CC4PJ,gBJ1DN,CEwEE,OACE,aFtEJ,CE0EA,IAIE,wBC3SS,CEEP,mBAAA,CHwSF,UCnTS,CC6RL,gBALI,CFyBR,mBFnEF,CEyEE,QE1BI,aALI,CFkCN,eCgH0B,CDlH1B,SFrEJ,CEgFA,OACE,eF7EF,CEmFA,QAEE,qBFhFF,CEwFA,MAEE,wBAAA,CADA,mBFpFF,CEwFA,QAGE,aCtVS,CDqVT,oBC6K4B,CD9K5B,iBC8K4B,CD3K5B,eFrFF,CE4FA,GAEE,kBAAA,CACA,+BF1FF,CE6FA,2BAQE,cAAA,CAFA,oBFxFF,CEkGA,MACE,oBF/FF,CEqGA,OAEE,eFnGF,CE2GA,iCACE,SFxGF,CE6GA,sCAME,mBAAA,CE1HI,iBALI,CFiIR,mBAAA,CAHA,QFvGF,CE8GA,cAEE,mBF3GF,CEgHA,cACE,cF7GF,CEgHA,OAGE,gBF/GF,CEkHE,gBACE,SFhHJ,CEuHA,0CACE,YFpHF,CE4HA,gDAIE,yBFzHF,CE4HI,4GACE,cFvHN,CE8HA,mBAEE,iBAAA,CADA,SF1HF,CEgIA,SACE,eF7HF,CEuIA,SAIE,QAAA,CADA,QAAA,CAFA,WAAA,CACA,SFlIF,CE4IA,OACE,UAAA,CE5MM,+BAAA,CFkNN,mBAAA,CAHA,mBCG4B,CDJ5B,SAAA,CADA,UFrIF,CI1OI,0BF6WJ,OEpMQ,gBJqEN,CACF,CEuIE,SACE,UFrIJ,CE4IA,+OAOE,SFzIF,CE4IA,4BACE,WFzIF,CEkJA,cAEE,4BAAA,CADA,mBF9IF,CEkKA,4BACE,uBFvJF,CE4JA,+BACE,SFzJF,CE+JA,uBACE,YF5JF,CEkKA,6BAEE,yBAAA,CADA,YF9JF,CEoKA,OACE,oBFjKF,CEsKA,OACE,QFnKF,CE0KA,QAEE,cAAA,CADA,iBFtKF,CE+KA,SACE,uBF5KF,CEoLA,SACE,sBFjLF,CD9ZA,MKyQM,iBALI,CLlQR,eCiaF,CD5ZE,WKsQM,gCAAA,CLpQJ,eI4bkB,CJ3blB,eC+ZJ,CI9TI,0BLpGF,WK6QM,cJyJN,CACF,CDvaE,WKsQM,gCAAA,CLpQJ,eI4bkB,CJ3blB,eC0aJ,CIzUI,0BLpGF,WK6QM,gBJoKN,CACF,CDlbE,WKsQM,gCAAA,CLpQJ,eI4bkB,CJ3blB,eCqbJ,CIpVI,0BLpGF,WK6QM,cJ+KN,CACF,CD7bE,WKsQM,gCAAA,CLpQJ,eI4bkB,CJ3blB,eCgcJ,CI/VI,0BLpGF,WK6QM,gBJ0LN,CACF,CDxcE,WKsQM,gCAAA,CLpQJ,eI4bkB,CJ3blB,eC2cJ,CI1WI,0BLpGF,WK6QM,cJqMN,CACF,CDndE,WKsQM,gCAAA,CLpQJ,eI4bkB,CJ3blB,eCsdJ,CIrXI,0BLpGF,WK6QM,gBJgNN,CACF,CDncA,4BOzDE,eAAA,CADA,cNugBF,CD1cA,kBACE,oBC6cF,CD3cE,mCACE,kBC6cJ,CDncA,YKsNM,gBALI,CL/MR,wBCscF,CDlcA,YKgNM,iBALI,CL1MR,kBCscF,CDncE,wBACE,eCqcJ,CDjcA,mBAIE,aIpFS,CCuRL,gBALI,CLhMR,kBIyJO,CJ1JP,gBCucF,CDlcE,0BACE,YCocJ,CO5hBA,0BCCE,WAAA,CAHA,cR4iBF,CO1iBA,eAEE,qBJPS,CIQT,wBAAA,CFGE,oBAAA,CELF,cPyiBF,CO3hBA,QAEE,oBP6hBF,CO1hBA,YAEE,aAAA,CADA,mBP8hBF,CO1hBA,gBAEE,aJ1BS,CCuRL,gBJgSN,CS/jBE,mGCCA,gBAAA,CADA,iBAAA,CADA,sCAAA,CADA,uCAAA,CADA,UVglBF,CWphBI,yBF5CE,yBACE,eTokBN,CACF,CW1hBI,yBF5CE,uCACE,eTykBN,CACF,CW/hBI,yBF5CE,qDACE,eT8kBN,CACF,CWpiBI,0BF5CE,mEACE,gBTmlBN,CACF,CWziBI,0BF5CE,kFACE,gBTwlBN,CACF,CYxmBE,KCAA,oBAA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ArEN,kBb23BJ,CatzBU,cAtEN,iBAAA,CAAA,abi4BJ,Ca3zBU,OArEN,Sbg4BJ,Ca3zBU,QArEN,kBbq4BJ,Cah0BU,gBAtEN,iBAAA,CAAA,ab24BJ,Car0BU,QArEN,kBb04BJ,Car0BU,QAtEN,iBAAA,CAAA,aAAA,CACA,Ub+4BJ,Cal0BY,UA9DV,uBbo4BF,Cat0BY,UA9DV,wBbw4BF,Ca10BY,UA9DV,eb44BF,Ca90BY,UA9DV,wBbg5BF,Cal1BY,UA9DV,wBbo5BF,Cat1BY,UA9DV,ebw5BF,Ca11BY,UA9DV,wBb45BF,Ca91BY,UA9DV,wBbg6BF,Cal2BY,UA9DV,ebo6BF,Cat2BY,WA9DV,wBbw6BF,Ca12BY,WA9DV,wBb46BF,Can2BQ,WAEE,ebs2BV,Can2BQ,WAEE,ebs2BV,Ca72BQ,WAEE,qBbg3BV,Ca72BQ,WAEE,qBbg3BV,Cav3BQ,WAEE,oBb03BV,Cav3BQ,WAEE,oBb03BV,Caj4BQ,WAEE,kBbo4BV,Caj4BQ,WAEE,kBbo4BV,Ca34BQ,WAEE,oBb84BV,Ca34BQ,WAEE,oBb84BV,Car5BQ,WAEE,kBbw5BV,Car5BQ,WAEE,kBbw5BV,CWv9BI,yBE+BE,aArDJ,Ubm/BA,Cax7BQ,uBA5DR,iBAAA,CAAA,aby/BA,Ca77BQ,UArEN,iBbkgCF,Ca77BQ,UArEN,kBbugCF,Cal8BQ,oBAtEN,iBAAA,CAAA,ab6gCF,Cav8BQ,UArEN,Sb4gCF,Cav8BQ,UArEN,kBbihCF,Ca58BQ,oBAtEN,iBAAA,CAAA,abuhCF,Caj9BQ,UArEN,kBbshCF,Caj9BQ,UArEN,Sb2hCF,Cat9BQ,oBAtEN,iBAAA,CAAA,abiiCF,Ca39BQ,UArEN,kBbgiCF,Ca39BQ,UArEN,kBbqiCF,Cah+BQ,oBAtEN,iBAAA,CAAA,ab2iCF,Car+BQ,UArEN,Sb0iCF,Car+BQ,WArEN,kBb+iCF,Ca1+BQ,sBAtEN,iBAAA,CAAA,abqjCF,Ca/+BQ,WArEN,kBbojCF,Ca/+BQ,WAtEN,iBAAA,CAAA,aAAA,CACA,UbyjCF,Ca5+BU,aA9DV,ab8iCA,Cah/BU,aA9DV,uBbkjCA,Cap/BU,aA9DV,wBbsjCA,Cax/BU,aA9DV,eb0jCA,Ca5/BU,aA9DV,wBb8jCA,CahgCU,aA9DV,wBbkkCA,CapgCU,aA9DV,ebskCA,CaxgCU,aA9DV,wBb0kCA,Ca5gCU,aA9DV,wBb8kCA,CahhCU,aA9DV,ebklCA,CaphCU,cA9DV,wBbslCA,CaxhCU,cA9DV,wBb0lCA,CajhCM,iBAEE,ebohCR,CajhCM,iBAEE,ebohCR,Ca3hCM,iBAEE,qBb8hCR,Ca3hCM,iBAEE,qBb8hCR,CariCM,iBAEE,oBbwiCR,CariCM,iBAEE,oBbwiCR,Ca/iCM,iBAEE,kBbkjCR,Ca/iCM,iBAEE,kBbkjCR,CazjCM,iBAEE,oBb4jCR,CazjCM,iBAEE,oBb4jCR,CankCM,iBAEE,kBbskCR,CankCM,iBAEE,kBbskCR,CACF,CWtoCI,yBE+BE,aArDJ,UbiqCA,CatmCQ,uBA5DR,iBAAA,CAAA,abuqCA,Ca3mCQ,UArEN,iBbgrCF,Ca3mCQ,UArEN,kBbqrCF,CahnCQ,oBAtEN,iBAAA,CAAA,ab2rCF,CarnCQ,UArEN,Sb0rCF,CarnCQ,UArEN,kBb+rCF,Ca1nCQ,oBAtEN,iBAAA,CAAA,abqsCF,Ca/nCQ,UArEN,kBbosCF,Ca/nCQ,UArEN,SbysCF,CapoCQ,oBAtEN,iBAAA,CAAA,ab+sCF,CazoCQ,UArEN,kBb8sCF,CazoCQ,UArEN,kBbmtCF,Ca9oCQ,oBAtEN,iBAAA,CAAA,abytCF,CanpCQ,UArEN,SbwtCF,CanpCQ,WArEN,kBb6tCF,CaxpCQ,sBAtEN,iBAAA,CAAA,abmuCF,Ca7pCQ,WArEN,kBbkuCF,Ca7pCQ,WAtEN,iBAAA,CAAA,aAAA,CACA,UbuuCF,Ca1pCU,aA9DV,ab4tCA,Ca9pCU,aA9DV,uBbguCA,CalqCU,aA9DV,wBbouCA,CatqCU,aA9DV,ebwuCA,Ca1qCU,aA9DV,wBb4uCA,Ca9qCU,aA9DV,wBbgvCA,CalrCU,aA9DV,ebovCA,CatrCU,aA9DV,wBbwvCA,Ca1rCU,aA9DV,wBb4vCA,Ca9rCU,aA9DV,ebgwCA,CalsCU,cA9DV,wBbowCA,CatsCU,cA9DV,wBbwwCA,Ca/rCM,iBAEE,ebksCR,Ca/rCM,iBAEE,ebksCR,CazsCM,iBAEE,qBb4sCR,CazsCM,iBAEE,qBb4sCR,CantCM,iBAEE,oBbstCR,CantCM,iBAEE,oBbstCR,Ca7tCM,iBAEE,kBbguCR,Ca7tCM,iBAEE,kBbguCR,CavuCM,iBAEE,oBb0uCR,CavuCM,iBAEE,oBb0uCR,CajvCM,iBAEE,kBbovCR,CajvCM,iBAEE,kBbovCR,CACF,CWpzCI,yBE+BE,aArDJ,Ub+0CA,CapxCQ,uBA5DR,iBAAA,CAAA,abq1CA,CazxCQ,UArEN,iBb81CF,CazxCQ,UArEN,kBbm2CF,Ca9xCQ,oBAtEN,iBAAA,CAAA,aby2CF,CanyCQ,UArEN,Sbw2CF,CanyCQ,UArEN,kBb62CF,CaxyCQ,oBAtEN,iBAAA,CAAA,abm3CF,Ca7yCQ,UArEN,kBbk3CF,Ca7yCQ,UArEN,Sbu3CF,CalzCQ,oBAtEN,iBAAA,CAAA,ab63CF,CavzCQ,UArEN,kBb43CF,CavzCQ,UArEN,kBbi4CF,Ca5zCQ,oBAtEN,iBAAA,CAAA,abu4CF,Caj0CQ,UArEN,Sbs4CF,Caj0CQ,WArEN,kBb24CF,Cat0CQ,sBAtEN,iBAAA,CAAA,abi5CF,Ca30CQ,WArEN,kBbg5CF,Ca30CQ,WAtEN,iBAAA,CAAA,aAAA,CACA,Ubq5CF,Cax0CU,aA9DV,ab04CA,Ca50CU,aA9DV,uBb84CA,Cah1CU,aA9DV,wBbk5CA,Cap1CU,aA9DV,ebs5CA,Cax1CU,aA9DV,wBb05CA,Ca51CU,aA9DV,wBb85CA,Cah2CU,aA9DV,ebk6CA,Cap2CU,aA9DV,wBbs6CA,Cax2CU,aA9DV,wBb06CA,Ca52CU,aA9DV,eb86CA,Cah3CU,cA9DV,wBbk7CA,Cap3CU,cA9DV,wBbs7CA,Ca72CM,iBAEE,ebg3CR,Ca72CM,iBAEE,ebg3CR,Cav3CM,iBAEE,qBb03CR,Cav3CM,iBAEE,qBb03CR,Caj4CM,iBAEE,oBbo4CR,Caj4CM,iBAEE,oBbo4CR,Ca34CM,iBAEE,kBb84CR,Ca34CM,iBAEE,kBb84CR,Car5CM,iBAEE,oBbw5CR,Car5CM,iBAEE,oBbw5CR,Ca/5CM,iBAEE,kBbk6CR,Ca/5CM,iBAEE,kBbk6CR,CACF,CWl+CI,0BE+BE,aArDJ,Ub6/CA,Cal8CQ,uBA5DR,iBAAA,CAAA,abmgDA,Cav8CQ,UArEN,iBb4gDF,Cav8CQ,UArEN,kBbihDF,Ca58CQ,oBAtEN,iBAAA,CAAA,abuhDF,Caj9CQ,UArEN,SbshDF,Caj9CQ,UArEN,kBb2hDF,Cat9CQ,oBAtEN,iBAAA,CAAA,abiiDF,Ca39CQ,UArEN,kBbgiDF,Ca39CQ,UArEN,SbqiDF,Cah+CQ,oBAtEN,iBAAA,CAAA,ab2iDF,Car+CQ,UArEN,kBb0iDF,Car+CQ,UArEN,kBb+iDF,Ca1+CQ,oBAtEN,iBAAA,CAAA,abqjDF,Ca/+CQ,UArEN,SbojDF,Ca/+CQ,WArEN,kBbyjDF,Cap/CQ,sBAtEN,iBAAA,CAAA,ab+jDF,Caz/CQ,WArEN,kBb8jDF,Caz/CQ,WAtEN,iBAAA,CAAA,aAAA,CACA,UbmkDF,Cat/CU,aA9DV,abwjDA,Ca1/CU,aA9DV,uBb4jDA,Ca9/CU,aA9DV,wBbgkDA,CalgDU,aA9DV,ebokDA,CatgDU,aA9DV,wBbwkDA,Ca1gDU,aA9DV,wBb4kDA,Ca9gDU,aA9DV,ebglDA,CalhDU,aA9DV,wBbolDA,CathDU,aA9DV,wBbwlDA,Ca1hDU,aA9DV,eb4lDA,Ca9hDU,cA9DV,wBbgmDA,CaliDU,cA9DV,wBbomDA,Ca3hDM,iBAEE,eb8hDR,Ca3hDM,iBAEE,eb8hDR,CariDM,iBAEE,qBbwiDR,CariDM,iBAEE,qBbwiDR,Ca/iDM,iBAEE,oBbkjDR,Ca/iDM,iBAEE,oBbkjDR,CazjDM,iBAEE,kBb4jDR,CazjDM,iBAEE,kBb4jDR,CankDM,iBAEE,oBbskDR,CankDM,iBAEE,oBbskDR,Ca7kDM,iBAEE,kBbglDR,Ca7kDM,iBAEE,kBbglDR,CACF,CWhpDI,0BE+BE,cArDJ,Ub2qDA,CahnDQ,yBA5DR,iBAAA,CAAA,abirDA,CarnDQ,WArEN,iBb0rDF,CarnDQ,WArEN,kBb+rDF,Ca1nDQ,sBAtEN,iBAAA,CAAA,abqsDF,Ca/nDQ,WArEN,SbosDF,Ca/nDQ,WArEN,kBbysDF,CapoDQ,sBAtEN,iBAAA,CAAA,ab+sDF,CazoDQ,WArEN,kBb8sDF,CazoDQ,WArEN,SbmtDF,Ca9oDQ,sBAtEN,iBAAA,CAAA,abytDF,CanpDQ,WArEN,kBbwtDF,CanpDQ,WArEN,kBb6tDF,CaxpDQ,sBAtEN,iBAAA,CAAA,abmuDF,Ca7pDQ,WArEN,SbkuDF,Ca7pDQ,YArEN,kBbuuDF,CalqDQ,wBAtEN,iBAAA,CAAA,ab6uDF,CavqDQ,YArEN,kBb4uDF,CavqDQ,YAtEN,iBAAA,CAAA,aAAA,CACA,UbivDF,CapqDU,cA9DV,absuDA,CaxqDU,cA9DV,uBb0uDA,Ca5qDU,cA9DV,wBb8uDA,CahrDU,cA9DV,ebkvDA,CaprDU,cA9DV,wBbsvDA,CaxrDU,cA9DV,wBb0vDA,Ca5rDU,cA9DV,eb8vDA,CahsDU,cA9DV,wBbkwDA,CapsDU,cA9DV,wBbswDA,CaxsDU,cA9DV,eb0wDA,Ca5sDU,eA9DV,wBb8wDA,CahtDU,eA9DV,wBbkxDA,CazsDM,mBAEE,eb4sDR,CazsDM,mBAEE,eb4sDR,CantDM,mBAEE,qBbstDR,CantDM,mBAEE,qBbstDR,Ca7tDM,mBAEE,oBbguDR,Ca7tDM,mBAEE,oBbguDR,CavuDM,mBAEE,kBb0uDR,CavuDM,mBAEE,kBb0uDR,CajvDM,mBAEE,oBbovDR,CajvDM,mBAEE,oBbovDR,Ca3vDM,mBAEE,kBb8vDR,Ca3vDM,mBAEE,kBb8vDR,CACF,Ccz3DA,OACE,yBAAA,CACA,gCAAA,CACA,gCAAA,CACA,sCAAA,CACA,+BAAA,CACA,oCAAA,CACA,8BAAA,CACA,qCAAA,CAMA,oBXPS,CWKT,aXCS,CWFT,kBX0OO,CWxOP,kBXogB4B,CWvgB5B,Ud83DF,Ccn3DE,yBAEE,mCAAA,CACA,uBX4U0B,CW3U1B,uDAAA,CAHA,adw3DJ,Ccl3DE,aACE,sBdo3DJ,Ccj3DE,aACE,qBdm3DJ,Cc/2DE,uCACE,gCdi3DJ,Ccx2DA,aACE,gBd22DF,Ccj2DE,4BACE,cdo2DJ,Ccr1DE,gCACE,kBdw1DJ,Ccr1DI,kCACE,kBdu1DN,Cch1DE,oCACE,qBdm1DJ,Cc10DE,yCACE,+CAAA,CACA,mCd60DJ,Ccr0DA,cACE,8CAAA,CACA,kCdw0DF,Cch0DE,4BACE,6CAAA,CACA,iCdm0DJ,Ce37DE,eAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,Ufy7DJ,Cev8DE,iBAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,Ufq8DJ,Cen9DE,eAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,Ufi9DJ,Ce/9DE,YAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,Uf69DJ,Ce3+DE,eAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,Ufy+DJ,Cev/DE,cAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,Ufq/DJ,CengEE,aAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,UfigEJ,Ce/gEE,YAME,qBAAA,CACA,6BAAA,CACA,6BAAA,CACA,4BAAA,CACA,4BAAA,CACA,2BAAA,CACA,2BAAA,CAGA,oBAAA,CADA,Uf6gEJ,Cc54DI,kBAEE,gCAAA,CADA,edg5DN,CWt9DI,4BGqEA,qBAEE,gCAAA,CADA,eds5DJ,CACF,CW79DI,4BGqEA,qBAEE,gCAAA,CADA,ed45DJ,CACF,CWn+DI,4BGqEA,qBAEE,gCAAA,CADA,edk6DJ,CACF,CWz+DI,6BGqEA,qBAEE,gCAAA,CADA,edw6DJ,CACF,CW/+DI,6BGqEA,sBAEE,gCAAA,CADA,ed86DJ,CACF,CgB7jEA,YACE,mBhB+jEF,CgBtjEA,gBZuRM,iBALI,CY3QR,ebka4B,Cata5B,eAAA,CADA,kCAAA,CADA,+BhB6jEF,CgBnjEA,mBZ4QM,iBALI,CYrQR,gCAAA,CADA,6BhBwjEF,CgBnjEA,mBZsQM,iBALI,CY/PR,iCAAA,CADA,8BhBwjEF,CiBplEA,WAKE,adKS,CCuRL,gBALI,Ca3RR,iBjBylEF,CkB1lEA,cAYE,uBAAA,CAAA,oBAAA,CAAA,eAAA,CAFA,2BAAA,CADA,qBfLS,CeOT,wBAAA,CbIE,oBAAA,CaPF,afKS,CeZT,aAAA,CdgSI,cALI,CctRR,efua4B,Ceta5B,ef4a4B,Cehb5B,sBAAA,CCSI,oEDMJ,CAhBA,UlBwmEF,CmB1lEM,uCDhBN,cCiBQ,enB6lEN,CACF,CkB3lEE,yBACE,elB6lEJ,CkB3lEI,wDACE,clB6lEN,CkBxlEE,oBAEE,qBf3BO,Ce4BP,oBfgqBoC,Ce1pBlC,4CfyiB0B,CejjB5B,afjBO,CeoBP,SlB2lEJ,CkB/kEE,2CAEE,YlBglEJ,CkB5kEE,yCACE,af1CO,Ce4CP,SlB6kEJ,CkBhlEE,gCACE,af1CO,Ce4CP,SlB6kEJ,CkBhlEE,oCACE,af1CO,Ce4CP,SlB6kEJ,CkBhlEE,qCACE,af1CO,Ce4CP,SlB6kEJ,CkBhlEE,2BACE,af1CO,Ce4CP,SlB6kEJ,CkBrkEE,+CAEE,wBf1DO,Ce6DP,SlBokEJ,CkBhkEE,oCAGE,yBf4f0B,Ce5f1B,sBf4f0B,CiBtkB5B,wBjBMS,Ce0EP,cAAA,CAFA,oBAAA,CAGA,2BfmR0B,CelR1B,eAAA,CAPA,af9DO,Ce4DP,uBAAA,CACA,wBf4f0B,Ce9f1B,sBAAA,CAKA,mBAAA,CCjEE,6HnByoEN,CmBroEM,uCDuDJ,0CCtDM,uBAAA,CAAA,enBwoEN,CkBllEA,oCCtDM,enBwoEN,CACF,CkBpkEE,yEACE,wBlBskEJ,CkBnkEE,0CAGE,yBfye0B,CiBtkB5B,wBjBMS,Ce6FP,cAAA,CAFA,oBAAA,CAGA,2BfgQ0B,Ce/P1B,eAAA,CAPA,afjFO,Ce+EP,uBAAA,CACA,wBfye0B,Ce3e1B,sBAAA,CAKA,mBAAA,CCpFE,qID0FF,CC1FE,6HnB+pEN,CmB3pEM,uCD0EJ,0CCzEM,uBAAA,CAAA,enB8pEN,CACF,CkBvkEE,+EACE,wBlBykEJ,CkBhkEA,wBAOE,4BAAA,CAEA,wBAAA,CAAA,kBAAA,CAHA,af5GS,CeuGT,aAAA,CAIA,ef2T4B,Ce5T5B,eAAA,CADA,iBAAA,CADA,UlB0kEF,CkBjkEE,gFAGE,cAAA,CADA,elBmkEJ,CkBvjEA,iBb7HI,mBAAA,CDkRE,iBALI,Cc/IR,oCfkkBsC,CejkBtC,oBlB4jEF,CkBxjEE,uCAGE,wBf6b0B,Ce7b1B,qBf6b0B,Ce9b1B,qBAAA,CACA,uBf6b0B,Ce/b1B,oBlB4jEJ,CkBvjEE,6CAGE,wBfub0B,Cexb1B,qBAAA,CACA,uBfub0B,Cezb1B,oBlB2jEJ,CkBrjEA,iBbhJI,mBAAA,CDkRE,iBALI,Cc5HR,mCfgjBsC,Ce/iBtC,kBlB0jEF,CkBtjEE,uCAGE,uBf8a0B,Ce9a1B,oBf8a0B,Ce/a1B,mBAAA,CACA,sBf8a0B,Cehb1B,kBlB0jEJ,CkBrjEE,6CAGE,uBfwa0B,Ceza1B,mBAAA,CACA,sBfwa0B,Ce1a1B,kBlByjEJ,CkB/iEE,sBACE,qClBkjEJ,CkB/iEE,yBACE,oClBijEJ,CkB9iEE,yBACE,mClBgjEJ,CkB3iEA,oBAEE,WAAA,CADA,cAAA,CAEA,elB8iEF,CkB5iEE,mDACE,clB8iEJ,CkB3iEE,uCb9LE,oBAAA,Ca+LA,YlB8iEJ,CkB1iEE,0CbnME,oBAAA,CaoMA,YlB6iEJ,CqB/vEA,aAKE,qCAAA,CAeA,uBAAA,CAAA,oBAAA,CAAA,eAAA,CATA,qBlBRS,CkBST,8PAAA,CAEA,uClBgxBkC,CkBjxBlC,2BAAA,CAEA,yBlBgxBkC,CkB/wBlC,wBAAA,ChBFE,oBAAA,CgBJF,alBES,CkBXT,aAAA,CjB+RI,cALI,CiBnRR,elBoa4B,CkBna5B,elBya4B,CkB/a5B,sCAAA,CFQI,oEEQJ,CAjBA,UrBixEF,CmBpwEM,uCEfN,aFgBQ,enBuwEN,CACF,CqBlwEE,mBACE,oBlBwqBoC,CkBlqBlC,4ClBixB4B,CkBtxB9B,SrBqwEJ,CqB5vEE,0DAGE,qBAAA,CADA,oBrB8vEJ,CqB1vEE,sBAEE,wBrB2vEJ,CqBtvEE,4BACE,iBAAA,CACA,yBrBwvEJ,CqBpvEA,gBjB4OM,iBALI,CiBrOR,qBlB0hB4B,CkBzhB5B,kBlB0hB4B,CkB5hB5B,kBrB0vEF,CqBpvEA,gBjBqOM,iBALI,CiB9NR,oBlBuhB4B,CkBthB5B,iBlBuhB4B,CkBzhB5B,iBrB0vEF,CsBvzEA,YACE,aAAA,CAGA,qBnBqtBwC,CmBvtBxC,iBnBqtBwC,CmBptBxC,kBtB2zEF,CsBxzEE,8BACE,UAAA,CACA,kBtB0zEJ,CsBtzEA,kBAWE,gCAAA,CADA,uBAAA,CAAA,oBAAA,CAAA,eAAA,CALA,qBnBbS,CmBeT,uBAAA,CADA,2BAAA,CAEA,uBAAA,CACA,gCnB4sBwC,CmB1sBxC,kBAAA,CATA,UnBwsBwC,CmBvsBxC,gBAAA,CACA,kBAAA,CAHA,StBm0EF,CsBtzEE,iCjBXE,mBLo0EJ,CsBrzEE,8BAEE,iBtBszEJ,CsBnzEE,yBACE,8BnB0rBsC,CmB1rBtC,sBtBqzEJ,CsBlzEE,wBACE,oBnBwpBoC,CmBtpBpC,4CnBqiB4B,CmBtiB5B,StBqzEJ,CsBjzEE,0BACE,wBnBZM,CmBaN,oBtBmzEJ,CsBjzEI,yCAII,4PtBgzER,CsB5yEI,sCAII,oKtB2yER,CsBtyEE,+CACE,wBnBjCM,CmBuCJ,sPAAA,CALF,oBtByyEJ,CsBhyEE,2BAEE,mBAAA,CAAA,WAAA,CACA,UnBkqBuC,CmBpqBvC,mBtBoyEJ,CsB3xEI,2FACE,UtB6xEN,CsB/wEA,aACE,kBtBkxEF,CsBhxEE,+BAGE,iLAAA,CACA,qBAAA,CjB9FA,iBAAA,CiB4FA,kBAAA,CH/FE,+CGmGF,CALA,StBuxEJ,CmBj3EM,uCGyFJ,+BHxFM,enBo3EN,CACF,CsBrxEI,qCACE,uKtBuxEN,CsBpxEI,uCAMI,oKAAA,CALF,wBtBuxEN,CsB5wEA,mBACE,oBAAA,CACA,iBtB+wEF,CsB5wEA,WAEE,kBAAA,CACA,mBAAA,CAFA,iBtBixEF,CsB3wEI,mDAEE,mBAAA,CAAA,WAAA,CACA,WnBuewB,CmBzexB,mBtB+wEN,CuB35EA,YAKE,uBAAA,CAAA,oBAAA,CAAA,eAAA,CADA,4BAAA,CAFA,aAAA,CACA,SAAA,CAFA,UvBk6EF,CuB55EE,kBACE,SvB85EJ,CuB15EI,wCAA0B,2DvB65E9B,CuB55EI,oCAA0B,2DvB+5E9B,CuB55EE,8BACE,QvB85EJ,CuB35EE,kCASE,uBAAA,CAAA,eAAA,CH/BF,wBjBkCQ,CoBPN,QpB4yBuC,CExzBvC,kBAAA,CkBSA,WpB4yBuC,CoB3yBvC,kBAAA,CJbE,8GIkBF,CJlBE,sGIkBF,CAPA,UvBo6EJ,CmB36EM,uCIMJ,kCJLM,uBAAA,CAAA,enB86EN,CACF,CuB/5EI,yCHjCF,wBpBm8EF,CuB75EE,2CAKE,wBpBpCO,CoBqCP,wBAAA,ClB7BA,kBAAA,CkB0BA,iBAAA,CACA,cpBqxB8B,CoBvxB9B,YpBsxB8B,CoBvxB9B,UvBq6EJ,CuB35EE,8BAQE,oBAAA,CAAA,eAAA,CHzDF,wBjBkCQ,CoBmBN,QpBkxBuC,CExzBvC,kBAAA,CkBoCA,WpBixBuC,CgBxzBrC,2GI4CF,CJ5CE,sGI4CF,CANA,UvBm6EJ,CmBr8EM,uCIiCJ,8BJhCM,oBAAA,CAAA,enBw8EN,CACF,CuB/5EI,qCH3DF,wBpB69EF,CuB75EE,8BAKE,wBpB9DO,CoB+DP,wBAAA,ClBvDA,kBAAA,CkBoDA,iBAAA,CACA,cpB2vB8B,CoB7vB9B,YpB4vB8B,CoB7vB9B,UvBq6EJ,CuB35EE,qBACE,mBvB65EJ,CuB35EI,2CACE,wBvB65EN,CuB15EI,uCACE,wBvB45EN,CwBn/EA,eACE,iBxBs/EF,CwBp/EE,yDAEE,yBrBu1B8B,CqBt1B9B,gBxBs/EJ,CwBn/EE,qBAOE,4BAAA,CAHA,WAAA,CADA,MAAA,CAEA,mBAAA,CACA,mBAAA,CALA,iBAAA,CACA,KAAA,CAMA,4BAAA,CAAA,oBAAA,CLDE,oEKEF,CLFE,4DKEF,CLFE,8FnBu/EN,CmBn/EM,uCKXJ,qBLYM,enBs/EN,CACF,CwBt/EE,6BACE,mBxBw/EJ,CwBt/EI,wDACE,iBxBw/EN,CwBz/EI,+CACE,iBxBw/EN,CwBz/EI,mDACE,iBxBw/EN,CwBz/EI,oDACE,iBxBw/EN,CwBz/EI,0CACE,iBxBw/EN,CwBr/EI,0DAGE,sBrBi0B4B,CqBl0B5B,oBxBu/EN,CwBz/EI,yDAGE,sBrBi0B4B,CqBl0B5B,oBxBu/EN,CwBz/EI,wFAGE,sBrBi0B4B,CqBl0B5B,oBxBu/EN,CwBn/EI,8CAEE,sBrB4zB4B,CqB7zB5B,oBxBs/EN,CwBj/EE,4BAEE,sBrBszB8B,CqBvzB9B,oBxBo/EJ,CwB7+EI,gEACE,WrBgzB4B,CqB/yB5B,0DxBi/EN,CwBn/EI,+DACE,WrBgzB4B,CqB/yB5B,0DxBi/EN,CwBn/EI,sIACE,WrBgzB4B,CqB/yB5B,kErBgzB4B,CqBhzB5B,0DxBi/EN,CwB5+EI,oDACE,WrByyB4B,CqBxyB5B,kErByyB4B,CqBzyB5B,0DxB8+EN,CyBpiFA,aAIE,sBAAA,CAAA,mBAAA,CAFA,mBAAA,CAAA,YAAA,CACA,kBAAA,CAAA,cAAA,CAFA,iBAAA,CAIA,UzBuiFF,CyBriFE,qDAGE,iBAAA,CAAA,aAAA,CAEA,WAAA,CAHA,iBAAA,CAEA,QzBwiFJ,CyBniFE,iEAEE,SzBqiFJ,CyB/hFE,kBACE,iBAAA,CACA,SzBiiFJ,CyB/hFI,wBACE,SzBiiFN,CyBthFA,kBAEE,qBAAA,CAAA,kBAAA,CAQA,wBtB5CS,CsB6CT,wBAAA,CpBpCE,oBAAA,CoBgCF,atBlCS,CsB4BT,mBAAA,CAAA,YAAA,CrBwPI,cALI,CqB/OR,etBgY4B,CsB/X5B,etBqY4B,CsBxY5B,sBAAA,CAKA,iBAAA,CACA,kBzB4hFF,CyBhhFA,kHpB9CI,mBAAA,CDkRE,iBALI,CqB3NR,kBzBqhFF,CyBhhFA,kHpBvDI,mBAAA,CDkRE,iBALI,CqBlNR,oBzBqhFF,CyBhhFA,0DAEE,kBzBmhFF,CyB//EI,iUpBrEA,4BAAA,CADA,yBLglFJ,CyB//EE,0IpBlEE,2BAAA,CADA,wBAAA,CoBoEA,gBzBmgFJ,C0B/lFE,gBAME,avBw1BqB,CuB71BrB,YAAA,CtB2QE,gBALI,CsBpQN,iBvB2nBoC,CuB5nBpC,U1BqmFJ,C0B9lFE,eAWE,mCAvBiB,CrBHjB,oBAAA,CqByBA,UAvBc,CAiBd,YAAA,CtB+PE,iBALI,CsBvPN,gBAAA,CAFA,cAAA,CACA,oBAAA,CALA,iBAAA,CACA,QAAA,CACA,S1BymFJ,C0B5lFI,8HAEE,a1BimFN,C0B/oFI,0DAwDI,wQAAA,CAEA,wDAAA,CADA,2BAAA,CAEA,2DAAA,CAPF,oBvB6zBmB,CuB1zBjB,kC1BimFR,C0B1lFM,sEACE,oBvBkzBiB,CuBjzBjB,2C1B4lFR,C0B5pFI,0EA0EI,6EAAA,CADA,kC1BwlFR,C0BjqFI,wDAiFE,oB1BolFN,C0BjlFQ,4NAGE,sfAAA,CACA,4DAAA,CACA,qEAAA,CAHA,sB1BqlFV,C0B9kFM,oEACE,oBvBmxBiB,CuBlxBjB,2C1BglFR,C0B/qFI,kEAsGE,oB1B6kFN,C0B3kFM,kFACE,wB1B6kFR,C0B1kFM,8EACE,2C1B4kFR,C0BzkFM,sGACE,a1B2kFR,C0BtkFI,qDACE,gB1BykFN,C0BhsFI,sKA+HI,S1BukFR,C0BnkFM,8LACE,S1BukFR,C0BxrFE,kBAME,avBw1BqB,CuB71BrB,YAAA,CtB2QE,gBALI,CsBpQN,iBvB2nBoC,CuB5nBpC,U1B8rFJ,C0BvrFE,iBAWE,mCAvBiB,CrBHjB,oBAAA,CqByBA,UAvBc,CAiBd,YAAA,CtB+PE,iBALI,CsBvPN,gBAAA,CAFA,cAAA,CACA,oBAAA,CALA,iBAAA,CACA,QAAA,CACA,S1BksFJ,C0BrrFI,8IAEE,a1B0rFN,C0BxuFI,8DAwDI,qUAAA,CAEA,wDAAA,CADA,2BAAA,CAEA,2DAAA,CAPF,oBvB6zBmB,CuB1zBjB,kC1B0rFR,C0BnrFM,0EACE,oBvBkzBiB,CuBjzBjB,2C1BqrFR,C0BrvFI,8EA0EI,6EAAA,CADA,kC1BirFR,C0B1vFI,4DAiFE,oB1B6qFN,C0B1qFQ,oOAGE,mjBAAA,CACA,4DAAA,CACA,qEAAA,CAHA,sB1B8qFV,C0BvqFM,wEACE,oBvBmxBiB,CuBlxBjB,2C1ByqFR,C0BxwFI,sEAsGE,oB1BsqFN,C0BpqFM,sFACE,wB1BsqFR,C0BnqFM,kFACE,2C1BqqFR,C0BlqFM,0GACE,a1BoqFR,C0B/pFI,uDACE,gB1BkqFN,C0BzxFI,8KAiII,S1B8pFR,C0B5pFM,sMACE,S1BgqFR,C2BtyFA,KAYE,4BAAA,CACA,4BAAA,CtBEE,oBAAA,CsBVF,axBQS,CwBHT,cAAA,CATA,oBAAA,CvBgSI,cALI,CuBzRR,exB0a4B,CwBza5B,exB+a4B,CyBxT5B,sBAAA,CDrHA,iBAAA,CACA,oBAAA,CRKI,6HQGJ,CAJA,wBAAA,CAAA,qBAAA,CAAA,oBAAA,CAAA,gBAAA,CAFA,qB3B+yFF,CmBxyFM,uCQhBN,KRiBQ,enB2yFN,CACF,C2B5yFE,WACE,a3B8yFJ,C2B1yFE,iCAGE,4CxBsjB4B,CwBvjB5B,S3B4yFJ,C2B7xFE,mDAIE,WxB4kB0B,CwB7kB1B,mB3B8xFJ,C2BjxFE,aPvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5B8zFF,C4BnzFE,oER3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5Bm0FJ,C4B9zFE,iDASI,2C5BqzFN,C4BjzFE,0IAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5BizFJ,C4B3yFI,wKAKI,2C5ByyFR,C4BpyFE,4CAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5BuyFJ,C2B/yFE,ePvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5B41FF,C4Bj1FE,0ER3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5Bi2FJ,C4B51FE,qDASI,2C5Bm1FN,C4B/0FE,oJAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5B+0FJ,C4Bz0FI,kLAKI,2C5Bu0FR,C4Bl0FE,gDAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5Bq0FJ,C2B70FE,aPvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5B03FF,C4B/2FE,oER3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5B+3FJ,C4B13FE,iDASI,2C5Bi3FN,C4B72FE,0IAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5B62FJ,C4Bv2FI,wKAKI,2C5Bq2FR,C4Bh2FE,4CAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5Bm2FJ,C2B32FE,UPvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5Bw5FF,C4B74FE,2DR3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5B65FJ,C4Bx5FE,2CASI,2C5B+4FN,C4B34FE,2HAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5B24FJ,C4Br4FI,yJAKI,2C5Bm4FR,C4B93FE,sCAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5Bi4FJ,C2Bz4FE,aPvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5Bs7FF,C4B36FE,oER3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5B27FJ,C4Bt7FE,iDASI,0C5B66FN,C4Bz6FE,0IAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5By6FJ,C4Bn6FI,wKAKI,0C5Bi6FR,C4B55FE,4CAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5B+5FJ,C2Bv6FE,YPvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5Bo9FF,C4Bz8FE,iER3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5By9FJ,C4Bp9FE,+CASI,0C5B28FN,C4Bv8FE,qIAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5Bu8FJ,C4Bj8FI,mKAKI,0C5B+7FR,C4B17FE,0CAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5B67FJ,C2Br8FE,WPvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5Bk/FF,C4Bv+FE,8DR3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5Bu/FJ,C4Bl/FE,6CASI,2C5By+FN,C4Br+FE,gIAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5Bq+FJ,C4B/9FI,8JAKI,2C5B69FR,C4Bx9FE,wCAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5B29FJ,C2Bn+FE,UPvDA,wBjB4Ea,CyB1Db,oBzB0Da,CyB5Db,U5BghGF,C4BrgGE,2DR3BA,wBQMmB,CAkBjB,oBAjBa,CAeb,U5BqhGJ,C4BhhGE,2CASI,yC5BugGN,C4BngGE,2HAME,wBArCkB,CAwClB,oBAvCc,CAmCd,U5BmgGJ,C4B7/FI,yJAKI,yC5B2/FR,C4Bt/FE,sCAGE,wBzBYW,CyBTX,oBzBSW,CyBbX,U5By/FJ,C2B3/FE,qBCoBA,oBzBLa,CyBIb,a5B6+FF,C4B1+FE,2BAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5B8+FJ,C4Bz+FE,iEAEE,2C5B0+FJ,C4Bv+FE,iLAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5Bu+FJ,C4Bn+FI,+MAKI,2C5Bi+FR,C4B59FE,4DAGE,4BAAA,CADA,a5B89FJ,C2BphGE,uBCoBA,oBzBLa,CyBIb,a5BsgGF,C4BngGE,6BAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5BugGJ,C4BlgGE,qEAEE,2C5BmgGJ,C4BhgGE,2LAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5BggGJ,C4B5/FI,yNAKI,2C5B0/FR,C4Br/FE,gEAGE,4BAAA,CADA,a5Bu/FJ,C2B7iGE,qBCoBA,oBzBLa,CyBIb,a5B+hGF,C4B5hGE,2BAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5BgiGJ,C4B3hGE,iEAEE,0C5B4hGJ,C4BzhGE,iLAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5ByhGJ,C4BrhGI,+MAKI,0C5BmhGR,C4B9gGE,4DAGE,4BAAA,CADA,a5BghGJ,C2BtkGE,kBCoBA,oBzBLa,CyBIb,a5BwjGF,C4BrjGE,wBAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5ByjGJ,C4BpjGE,2DAEE,2C5BqjGJ,C4BljGE,kKAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5BkjGJ,C4B9iGI,gMAKI,2C5B4iGR,C4BviGE,sDAGE,4BAAA,CADA,a5ByiGJ,C2B/lGE,qBCoBA,oBzBLa,CyBIb,a5BilGF,C4B9kGE,2BAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5BklGJ,C4B7kGE,iEAEE,0C5B8kGJ,C4B3kGE,iLAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5B2kGJ,C4BvkGI,+MAKI,0C5BqkGR,C4BhkGE,4DAGE,4BAAA,CADA,a5BkkGJ,C2BxnGE,oBCoBA,oBzBLa,CyBIb,a5B0mGF,C4BvmGE,0BAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5B2mGJ,C4BtmGE,+DAEE,0C5BumGJ,C4BpmGE,4KAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5BomGJ,C4BhmGI,0MAKI,0C5B8lGR,C4BzlGE,0DAGE,4BAAA,CADA,a5B2lGJ,C2BjpGE,mBCoBA,oBzBLa,CyBIb,a5BmoGF,C4BhoGE,yBAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5BooGJ,C4B/nGE,6DAEE,4C5BgoGJ,C4B7nGE,uKAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5B6nGJ,C4BznGI,qMAKI,4C5BunGR,C4BlnGE,wDAGE,4BAAA,CADA,a5BonGJ,C2B1qGE,kBCoBA,oBzBLa,CyBIb,a5B4pGF,C4BzpGE,wBAEE,wBzBTW,CyBUX,oBzBVW,CyBQX,U5B6pGJ,C4BxpGE,2DAEE,yC5BypGJ,C4BtpGE,kKAME,wBzBxBW,CyByBX,oBzBzBW,CyBuBX,U5BspGJ,C4BlpGI,gMAKI,yC5BgpGR,C4B3oGE,sDAGE,4BAAA,CADA,a5B6oGJ,C2BvrGA,UAEE,axBzCQ,CwBwCR,exBmW4B,CwBjW5B,yB3B0rGF,C2BxrGE,gBACE,a3B0rGJ,C2BlrGE,sCAEE,a3BmrGJ,C2BxqGA,2BtBrFI,mBAAA,CDkRE,iBALI,CwBjKR,kB5BupGF,C2B1qGA,2BtBzFI,mBAAA,CDkRE,iBALI,CwBjKR,oB5B6pGF,C6B5xGA,MVgBM,8BnBgxGN,CmB5wGM,uCUpBN,MVqBQ,enB+wGN,CACF,C6BlyGE,iBACE,S7BoyGJ,C6B9xGE,qBACE,Y7BiyGJ,C6B7xGA,YACE,QAAA,CACA,eAAA,CVDI,2BnBkyGN,CmB9xGM,uCULN,YVMQ,enBiyGN,CACF,C8BtzGA,sCAIE,iB9ByzGF,C8BtzGA,iBACE,kB9ByzGF,C+BpyGI,uBA1BF,eAAA,CACA,kCAAA,CAFA,mCAAA,CADA,qBAAA,CAgCI,UAAA,CAHA,oBAAA,CACA,kB5BwWwB,C4BvWxB,qB/B2yGN,C+BlxGI,6BACE,a/BoxGN,C8B/zGA,eAYE,2BAAA,CADA,qB3BnBS,C2BqBT,gCAAA,CzBVE,oBAAA,CyBKF,a3BPS,C2BET,YAAA,C1BkRI,cALI,C0BtQR,eAAA,CAJA,QAAA,CAFA,e3B48BkC,C2B38BlC,eAAA,CAJA,iBAAA,CAQA,eAAA,CAPA,Y9B80GF,C8B/zGE,+BAEE,MAAA,CACA,kB3B+7BgC,C2Bj8BhC,Q9Bm0GJ,C8BrzGI,qBACE,mB9BwzGN,C8BtzGM,qCAEE,MAAA,CADA,U9ByzGR,C8BpzGI,mBACE,iB9BuzGN,C8BrzGM,mCAEE,SAAA,CADA,O9BwzGR,CWtzGI,yBmBfA,wBACE,mB9By0GJ,C8Bv0GI,wCAEE,MAAA,CADA,U9B00GN,C8Br0GE,sBACE,iB9Bw0GJ,C8Bt0GI,sCAEE,SAAA,CADA,O9By0GN,CACF,CWx0GI,yBmBfA,wBACE,mB9B01GJ,C8Bx1GI,wCAEE,MAAA,CADA,U9B21GN,C8Bt1GE,sBACE,iB9By1GJ,C8Bv1GI,sCAEE,SAAA,CADA,O9B01GN,CACF,CWz1GI,yBmBfA,wBACE,mB9B22GJ,C8Bz2GI,wCAEE,MAAA,CADA,U9B42GN,C8Bv2GE,sBACE,iB9B02GJ,C8Bx2GI,sCAEE,SAAA,CADA,O9B22GN,CACF,CW12GI,0BmBfA,wBACE,mB9B43GJ,C8B13GI,wCAEE,MAAA,CADA,U9B63GN,C8Bx3GE,sBACE,iB9B23GJ,C8Bz3GI,sCAEE,SAAA,CADA,O9B43GN,CACF,CW33GI,0BmBfA,yBACE,mB9B64GJ,C8B34GI,yCAEE,MAAA,CADA,U9B84GN,C8Bz4GE,uBACE,iB9B44GJ,C8B14GI,uCAEE,SAAA,CADA,O9B64GN,CACF,C8Bn4GE,uCAEE,WAAA,CAEA,qB3Bu5BgC,C2Bx5BhC,YAAA,CAFA,Q9Bw4GJ,C+Bn7GI,+BAnBF,wBAAA,CACA,kCAAA,CAFA,mCAAA,CADA,YAAA,CAyBI,UAAA,CAHA,oBAAA,CACA,kB5BwWwB,C4BvWxB,qB/B07GN,C+Bj6GI,qCACE,a/Bm6GN,C8Bz4GE,wCAGE,SAAA,CAEA,mB3By4BgC,C2B14BhC,YAAA,CAFA,UAAA,CADA,K9Bg5GJ,C+Bx8GI,gCAZF,oCAAA,CACA,sBAAA,CAFA,cAAA,CADA,iCAAA,CAkBI,UAAA,CAHA,oBAAA,CACA,kB5BwWwB,C4BvWxB,qB/B+8GN,C+Bt7GI,sCACE,a/Bw7GN,C8Bp5GI,gCACE,gB9Bs5GN,C8Bh5GE,0CAGE,SAAA,CAEA,oB3Bw3BgC,C2Bz3BhC,YAAA,CAFA,UAAA,CADA,K9Bu5GJ,C+Bh+GI,kCAIE,UAAA,CAHA,oBAAA,CAeE,YAAA,CAdF,kB5BwWwB,C4BvWxB,qB/Bm+GN,C+Bn9GM,mCAxBJ,oCAAA,CADA,uBAAA,CADA,iCAAA,CA8BM,UAAA,CAHA,oBAAA,CACA,mB5BqVsB,C4BpVtB,qB/B49GR,C+Bt9GI,wCACE,a/Bw9GN,C8Bn6GI,mCACE,gB9Bq6GN,C8B95GA,kBAIE,oCAAA,CAHA,QAAA,CACA,cAAA,CACA,e9Bk6GF,C8B35GA,eAUE,4BAAA,CACA,QAAA,CAPA,UAAA,CAEA,a3BvHS,C2BkHT,aAAA,CAIA,e3B0S4B,C2B5S5B,mBAAA,CAIA,kBAAA,CACA,oBAAA,CACA,kBAAA,CAPA,U9Bu6GF,C8Bh5GE,0CVvJA,wBjBMS,C2BmJP,a9Bk5GJ,C8B74GE,4CV9JA,wBjBkCQ,C2B8HN,U3B5JO,C2B6JP,oB9B+4GJ,C8B34GE,gDAIE,4BAAA,CAFA,a3B9JO,C2B+JP,mB9B64GJ,C8Bt4GA,oBACE,a9By4GF,C8Br4GA,iBAKE,a3B/KS,C2B2KT,aAAA,C1B4GI,iBALI,C0BrGR,eAAA,CADA,kB3Bk0BkC,C2B9zBlC,kB9Bw4GF,C8Bp4GA,oBAGE,a3BpLS,C2BkLT,aAAA,CACA,mB9Bw4GF,C8Bn4GA,oBAEE,wB3B3LS,C2B4LT,4B3B2xBkC,C2B7xBlC,a9Bw4GF,C8Bn4GE,mCACE,a9Bq4GJ,C8Bn4GI,kFV9MF,oCjBmgCkC,C2BnzB9B,U9Bq4GN,C8Bj4GI,oFVpNF,wBjBkCQ,C2BoLJ,U9Bm4GN,C8B/3GI,wFAEE,a9Bg4GN,C8B53GE,sCACE,4B9B83GJ,C8B33GE,wCACE,a9B63GJ,C8B13GE,qCACE,a9B43GJ,CgCxmHA,+BAGE,0BAAA,CAAA,mBAAA,CADA,iBAAA,CAEA,qBhC2mHF,CgCzmHE,yCAEE,iBAAA,CAAA,aAAA,CADA,iBhC6mHJ,CgCvmHE,kXAME,ShC+mHJ,CgC1mHA,aAGE,mBAAA,CAF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q2HR,CkCn2HQ,2BACE,sBAAA,CAAA,kBlCq2HV,CkCn2HU,0CACE,iBlCq2HZ,CkCl2HU,qCAEE,kB/BiwBwB,C+BlwBxB,mBlCq2HZ,CkCh2HQ,kCACE,gBlCk2HV,CkC/1HQ,gCAEE,4BAAA,CADA,6BAAA,CAAA,sBAAA,CACA,elCi2HV,CkC91HQ,+BACE,YlCg2HV,CkC90HI,gGAEE,oBlCm1HN,CkC90HI,oCACE,qBlCg1HN,CkC90HM,oFAEE,oBlC+0HR,CkC50HM,6CACE,oBlC80HR,CkC10HI,qFAEE,oBlC40HN,CkCx0HE,8BAEE,2B/BmuBgC,C+BpuBhC,qBlC20HJ,CkCv0HE,mCACE,sQlCy0HJ,CkCt0HE,2BACE,qBlCw0HJ,CkCt0HI,mGAGE,oBlCw0HN,CkC9zHI,6FAEE,UlCm0HN,CkC9zHI,mCACE,yBlCg0HN,CkC9zHM,kFAEE,yBlC+zHR,CkC5zHM,4CACE,yBlC8zHR,CkC1zHI,mFAEE,UlC4zHN,CkCxzHE,6BAEE,+B/ByqBgC,C+B1qBhC,yBlC2zHJ,CkCvzHE,kCACE,4QlCyzHJ,CkCtzHE,0BACE,yBlCwzHJ,CkCvzHI,gGAGE,UlCyzHN,CmCnmIA,MAME,oBAAA,CAEA,0BAAA,CADA,qBhCHS,CgCKT,iCAAA,C9BME,oBAAA,C8BbF,mBAAA,CAAA,YAAA,CACA,yBAAA,CAAA,qBAAA,CACA,WAAA,CAHA,iBnC8mIF,CmCnmIE,SAEE,aAAA,CADA,cnCsmIJ,CmClmIE,kBAEE,qBAAA,CADA,kBnCqmIJ,CmClmII,8B9BGA,yCAAA,CACA,0CAAA,C8BHE,kBnCsmIN,CmClmII,6B9BaA,4CAAA,CADA,6CAAA,C8BXE,qBnCsmIN,CmC/lIE,8DAEE,YnCimIJ,CmC7lIA,WAGE,iBAAA,CAAA,aAAA,CACA,YnC8lIF,CmC1lIA,YACE,mBnC6lIF,CmC1lIA,eACE,kBnC8lIF,CmC1lIA,qCAHE,enCimIF,CmCzlIE,iBACE,oBnC4lIJ,CmCzlIE,sBACE,gBnC2lIJ,CmCnlIA,aAIE,gChCi/BkC,CgCh/BlC,wCAAA,CAHA,eAAA,CADA,kBnCylIF,CmCnlIE,yB9BnEE,uDLypIJ,CmCjlIA,aAGE,gChCs+BkC,CgCr+BlC,qCAAA,CAHA,kBnCslIF,CmCjlIE,wB9B9EE,uDLkqIJ,CmC1kIA,kBAIE,eAAA,CAFA,oBnC+kIF,CmCnkIA,qCAXE,kBAAA,CAFA,mBnCqlIF,CmClkIA,kB9B5GI,gCAAA,C8BgHF,QAAA,CACA,MAAA,CACA,YhCoHO,CgCzHP,iBAAA,CAEA,OAAA,CADA,KnC0kIF,CmClkIA,yCAGE,UnCqkIF,CmClkIA,wB9BnHI,yCAAA,CACA,0CL0rIJ,CmCnkIA,2B9BzGI,4CAAA,CADA,6CLmrIJ,CmC5jIE,kBACE,oBnC+jIJ,CWlqII,yBwB+FJ,YAQI,mBAAA,CAAA,YAAA,CACA,sBAAA,CAAA,kBnC+jIF,CmC5jIE,kBAEE,eAAA,CAAA,WAAA,CACA,enC6jIJ,CmC3jII,wBAEE,aAAA,CADA,anC8jIN,CmCxjIM,mC9BlJJ,4BAAA,CADA,yBL+sIF,CmCzjIQ,iGAGE,yBnC0jIV,CmCxjIQ,oGAGE,4BnCyjIV,CmCrjIM,oC9BnJJ,2BAAA,CADA,wBL6sIF,CmCtjIQ,mGAGE,wBnCujIV,CmCrjIQ,sGAGE,2BnCsjIV,CACF,CoCnwIA,kBAGE,qBAAA,CAAA,kBAAA,CAMA,qBjCLS,CiCMT,QAAA,C/BKE,eAAA,C+BRF,ajCMS,CiCXT,mBAAA,CAAA,YAAA,ChC+RI,cALI,CgChRR,oBAAA,CAPA,oBAAA,CAJA,iBAAA,CAOA,eAAA,CjBII,qJiBCJ,CATA,UpC+wIF,CmBnwIM,uCiBhBN,kBjBiBQ,enBswIN,CACF,CoCzwIE,kCAEE,wBjC4kCsC,CiC3kCtC,0CAAA,CAFA,apC6wIJ,CoCzwII,wCACE,8SAAA,CACA,iCjCilCoC,CiCjlCpC,yBpC2wIN,CoCtwIE,wBACE,mBAAA,CAKA,8SAAA,CACA,2BAAA,CACA,uBjCgkCsC,CiCnkCtC,UAAA,CAJA,aAAA,CAEA,cjCqkCsC,CiCpkCtC,gBAAA,CjBnBE,4CiBwBF,CjBxBE,oCiBwBF,CjBxBE,sEiBwBF,CAPA,apC+wIJ,CmB5xIM,uCiBWJ,wBjBVM,enB+xIN,CACF,CoC1wIE,wBACE,SpC4wIJ,CoCzwIE,wBAEE,oBjCmpBoC,CiCjpBpC,4CjCgiB4B,CiCjiB5B,SAAA,CAFA,SpC8wIJ,CoCvwIA,kBACE,epC0wIF,CoCvwIA,gBACE,qBjCpDS,CiCqDT,iCpC0wIF,CoCxwIE,8B/BnCE,6BAAA,CACA,8BL8yIJ,CoCzwII,gD/BtCA,yCAAA,CACA,0CLkzIJ,CoCxwIE,oCACE,YpC0wIJ,CoCtwIE,6B/BjCE,gCAAA,CADA,iCL4yIJ,CoCtwIM,yD/BrCF,4CAAA,CADA,6CLgzIJ,CoCrwII,iD/B1CA,gCAAA,CADA,iCLozIJ,CoCnwIA,gBACE,oBpCswIF,CoC7vIE,qCACE,cpCgwIJ,CoC7vIE,iCAEE,aAAA,C/BxFA,eAAA,C+BuFA,cpCiwIJ,CoC7vII,6CAAgB,YpCgwIpB,CoC/vII,4CAAe,epCkwInB,CoChwII,mD/B9FA,eLi2IJ,CqCp3IA,YACE,mBAAA,CAAA,YAAA,CACA,kBAAA,CAAA,cAAA,CAIA,eAAA,CAFA,kBlC60CkC,CkC90ClC,SrCy3IF,CqC/2IE,kCACE,kBrCk3IJ,CqCh3II,yCAGE,alCLK,CkCML,wCAAA,CAHA,UAAA,CACA,mBrCo3IN,CqC92IE,wBACE,arCg3IJ,CsCz4IA,YACE,mBAAA,CAAA,YAAA,ChCIA,eAAA,CADA,cN24IF,CsC14IA,WAKE,qBnCFS,CmCGT,wBAAA,CAHA,anC8BQ,CmC/BR,aAAA,CADA,iBAAA,CAGA,oBAAA,CnBOI,6HnBy4IN,CmBr4IM,uCmBfN,WnBgBQ,enBw4IN,CACF,CsCh5IE,iBAKE,oBnCRO,CmCIP,StCq5IJ,CsC94IE,kCAJE,wBnCRO,CmCMP,atC25IJ,CsCr5IE,iBAKE,4CnCwjB4B,CmCzjB5B,SnCygCgC,CmC5gChC,StCo5IJ,CsC34IE,wCACE,gBtC84IJ,CsC34IE,6BlBhCA,wBjBkCQ,CmCEN,oBnCFM,CmCAN,UnC9BO,CmC6BP,StCg5IJ,CsC14IE,+BAGE,qBnCtCO,CmCuCP,oBnCpCO,CmCiCP,anC9BO,CmC+BP,mBtC84IJ,CuCv7IE,WACE,sBvC07IJ,CuCn7IQ,kClCsCJ,gCAAA,CADA,6BLm5IJ,CuCl7IQ,iClCkBJ,iCAAA,CADA,8BLq6IJ,CuCp8IE,0BnCiSI,iBALI,CmC3RN,qBvCw8IJ,CuCj8IQ,iDlCsCJ,+BAAA,CADA,4BLg6IJ,CuC/7IQ,gDlCkBJ,gCAAA,CADA,6BLk7IJ,CuCj9IE,0BnCiSI,iBALI,CmC3RN,oBvCq9IJ,CuC98IQ,iDlCsCJ,+BAAA,CADA,4BL66IJ,CuC58IQ,gDlCkBJ,gCAAA,CADA,6BL+7IJ,CwC79IA,OnCcI,oBAAA,CmCRF,UrCHS,CqCFT,oBAAA,CpC+RI,eALI,CoCvRR,erCya4B,CqCxa5B,aAAA,CAHA,mBAAA,CAKA,iBAAA,CAEA,uBAAA,CADA,kBxCk+IF,CwC59IE,aACE,YxC89IJ,CwCz9IA,YACE,iBAAA,CACA,QxC49IF,CyCn/IA,OAIE,4BAAA,CpCWE,oBAAA,CoCZF,kBtCuvC8B,CsCxvC9B,YAAA,CADA,iBzC0/IF,CyCl/IA,eAEE,azCo/IF,CyCh/IA,YACE,ezCm/IF,CyC3+IA,mBACE,kBzC8+IF,CyC3+IE,8BAKE,oBAAA,CAJA,iBAAA,CAEA,OAAA,CADA,KAAA,CAEA,SzC8+IJ,CyC99IE,erBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1CshJF,C0ClhJE,2BACE,a1CohJJ,CyCv+IE,iBrBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1C+hJF,C0C3hJE,6BACE,a1C6hJJ,CyCh/IE,erBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1CwiJF,C0CpiJE,2BACE,a1CsiJJ,CyCz/IE,YrBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1CijJF,C0C7iJE,wBACE,a1C+iJJ,CyClgJE,erBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1C0jJF,C0CtjJE,2BACE,a1CwjJJ,CyC3gJE,crBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1CmkJF,C0C/jJE,0BACE,a1CikJJ,CyCphJE,arBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1C4kJF,C0CxkJE,yBACE,a1C0kJJ,CyC7hJE,YrBhDA,wBqB0CmB,CC1CnB,oBD2Ce,CC7Cf,a1CqlJF,C0CjlJE,wBACE,a1CmlJJ,C2CtlJE,wCACE,GAAK,0B3C0lJP,CACF,C2C5lJE,gCACE,GAAK,0B3C0lJP,CACF,C2CtlJA,UAKE,wBxCLS,CESP,oBAAA,CDkRE,gBALI,CuCpRR,W3C4lJF,C2CplJA,wBATE,mBAAA,CAAA,YAAA,CAEA,e3CumJF,C2ChmJA,cAGE,oBAAA,CAKA,wBxCUQ,CwCbR,UxCjBS,CwCcT,yBAAA,CAAA,qBAAA,CACA,sBAAA,CAGA,iBAAA,CxBVI,yBwBaJ,CAFA,kB3CylJF,CmBhmJM,uCwBAN,cxBCQ,enBmmJN,CACF,C2CzlJA,sBvBYE,qKAAA,CuBVA,yB3C4lJF,C2CxlJE,uBACE,yDAAA,CAAA,iD3C2lJJ,C2CxlJM,uCAJJ,uBAKM,sBAAA,CAAA,c3C2lJN,CACF,C4CnoJA,YvCeI,oBAAA,CuCdF,mBAAA,CAAA,YAAA,CACA,yBAAA,CAAA,qBAAA,CAIA,eAAA,CADA,c5CsoJF,C4CjoJA,qBAEE,qBAAA,CADA,oB5CqoJF,C4CloJE,+BAEE,kCAAA,CACA,yB5CmoJJ,C4CznJA,wBAEE,azClBS,CyCmBT,kBAAA,CAFA,U5C8nJF,C4CznJE,4DAKE,wBzCjCO,CyC+BP,azCzBO,CyC0BP,oBAAA,CAFA,S5C6nJJ,C4CvnJE,+BAEE,wBzCrCO,CyCoCP,a5C0nJJ,C4ChnJA,iBAME,qBzCtDS,CyCuDT,iCAAA,CAHA,azC3CS,CyCyCT,aAAA,CACA,kBAAA,CAFA,iBAAA,CAIA,oB5CqnJF,C4CjnJE,6BvCrCE,8BAAA,CACA,+BLypJJ,C4CjnJE,4BvC1BE,iCAAA,CADA,kCLgpJJ,C4CjnJE,oDAIE,qBzCrEO,CyCmEP,azC7DO,CyC8DP,mB5CmnJJ,C4C9mJE,wBAGE,wBzC9CM,CyC+CN,oBzC/CM,CyC6CN,UzC3EO,CyC0EP,S5CmnJJ,C4C7mJE,kCACE,kB5C+mJJ,C4C7mJI,yCAEE,oBzC2QwB,CyC5QxB,e5CgnJN,C4CjmJI,uBACE,sBAAA,CAAA,kB5ComJN,C4CjmJQ,oDvCrCJ,gCAAA,CAZA,yBLspJJ,C4ChmJQ,mDvC1CJ,2BAAA,CAZA,8BL0pJJ,C4C/lJQ,+CACE,Y5CimJV,C4C9lJQ,yDAEE,mBAAA,CADA,oB5CimJV,C4C9lJU,gEAEE,qBzCqOkB,CyCtOlB,gB5CimJZ,CWpqJI,yBiC4CA,0BACE,sBAAA,CAAA,kB5C4nJJ,C4CznJM,uDvCrCJ,gCAAA,CAZA,yBL8qJF,C4CxnJM,sDvC1CJ,2BAAA,CAZA,8BLkrJF,C4CvnJM,kDACE,Y5CynJR,C4CtnJM,4DAEE,mBAAA,CADA,oB5CynJR,C4CtnJQ,mEAEE,qBzCqOkB,CyCtOlB,gB5CynJV,CACF,CW7rJI,yBiC4CA,0BACE,sBAAA,CAAA,kB5CopJJ,C4CjpJM,uDvCrCJ,gCAAA,CAZA,yBLssJF,C4ChpJM,sDvC1CJ,2BAAA,CAZA,8BL0sJF,C4C/oJM,kDACE,Y5CipJR,C4C9oJM,4DAEE,mBAAA,CADA,oB5CipJR,C4C9oJQ,mEAEE,qBzCqOkB,CyCtOlB,gB5CipJV,CACF,CWrtJI,yBiC4CA,0BACE,sBAAA,CAAA,kB5C4qJJ,C4CzqJM,uDvCrCJ,gCAAA,CAZA,yBL8tJF,C4CxqJM,sDvC1CJ,2BAAA,CAZA,8BLkuJF,C4CvqJM,kDACE,Y5CyqJR,C4CtqJM,4DAEE,mBAAA,CADA,oB5CyqJR,C4CtqJQ,mEAEE,qBzCqOkB,CyCtOlB,gB5CyqJV,CACF,CW7uJI,0BiC4CA,0BACE,sBAAA,CAAA,kB5CosJJ,C4CjsJM,uDvCrCJ,gCAAA,CAZA,yBLsvJF,C4ChsJM,sDvC1CJ,2BAAA,CAZA,8BL0vJF,C4C/rJM,kDACE,Y5CisJR,C4C9rJM,4DAEE,mBAAA,CADA,oB5CisJR,C4C9rJQ,mEAEE,qBzCqOkB,CyCtOlB,gB5CisJV,CACF,CWrwJI,0BiC4CA,2BACE,sBAAA,CAAA,kB5C4tJJ,C4CztJM,wDvCrCJ,gCAAA,CAZA,yBL8wJF,C4CxtJM,uDvC1CJ,2BAAA,CAZA,8BLkxJF,C4CvtJM,mDACE,Y5CytJR,C4CttJM,6DAEE,mBAAA,CADA,oB5CytJR,C4CttJQ,oEAEE,qBzCqOkB,CyCtOlB,gB5CytJV,CACF,C4C3sJA,kBvC9HI,eL40JJ,C4C3sJE,mCACE,oB5C6sJJ,C4C3sJI,8CACE,qB5C6sJN,C6Cj2JE,yBAEE,wBD+JsB,CChKtB,a7Cq2JJ,C6Cj2JM,4GAGE,wBAAA,CADA,a7Cm2JR,C6C/1JM,uDAEE,wBDqJqB,CCpJrB,oBDoJqB,CCtJrB,U7Cm2JR,C6C/2JE,2BAEE,wBD+JsB,CChKtB,a7Cm3JJ,C6C/2JM,gHAGE,wBAAA,CADA,a7Ci3JR,C6C72JM,yDAEE,wBDqJqB,CCpJrB,oBDoJqB,CCtJrB,U7Ci3JR,C6C73JE,yBAEE,wBD+JsB,CChKtB,a7Ci4JJ,C6C73JM,4GAGE,wBAAA,CADA,a7C+3JR,C6C33JM,uDAEE,wBDqJqB,CCpJrB,oBDoJqB,CCtJrB,U7C+3JR,C6C34JE,sBAEE,wBD+JsB,CChKtB,a7C+4JJ,C6C34JM,sGAGE,wBAAA,CADA,a7C64JR,C6Cz4JM,oDAEE,wBDuJuB,CCtJvB,oBDsJuB,CCxJvB,U7C64JR,C6Cz5JE,yBAEE,wBD+JsB,CChKtB,a7C65JJ,C6Cz5JM,4GAGE,wBAAA,CADA,a7C25JR,C6Cv5JM,uDAEE,wBDuJuB,CCtJvB,oBDsJuB,CCxJvB,U7C25JR,C6Cv6JE,wBAEE,wBD+JsB,CChKtB,a7C26JJ,C6Cv6JM,0GAGE,wBAAA,CADA,a7Cy6JR,C6Cr6JM,sDAEE,wBDqJqB,CCpJrB,oBDoJqB,CCtJrB,U7Cy6JR,C6Cr7JE,uBAEE,wBD+JsB,CChKtB,a7Cy7JJ,C6Cr7JM,wGAGE,wBAAA,CADA,a7Cu7JR,C6Cn7JM,qDAEE,wBDuJuB,CCtJvB,oBDsJuB,CCxJvB,U7Cu7JR,C6Cn8JE,sBAEE,wBD+JsB,CChKtB,a7Cu8JJ,C6Cn8JM,sGAGE,wBAAA,CADA,a7Cq8JR,C6Cj8JM,oDAEE,wBDqJqB,CCpJrB,oBDoJqB,CCtJrB,U7Cq8JR,C8Ch9JA,WAME,+WAAA,CACA,QAAA,CzCOE,oBAAA,CyCbF,sBAAA,CAIA,U3CQS,C2CVT,U3Cy4C2B,C2Cn4C3B,U3C04C2B,C2C/4C3B,aAAA,CAFA,S9C09JF,C8Ch9JE,iBACE,UAAA,CAEA,W3Cq4CyB,C2Ct4CzB,oB9Cm9JJ,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CiDv0KI,yGAGE,qB9CtBK,C8CqBL,0BAAA,CADA,QjD20KN,CiDp0KA,+DACE,ejDu0KF,CiDr0KE,6FAGE,Y9C2kCgC,C8C7kChC,MAAA,CACA,WjDw0KJ,CiDr0KI,2GAGE,uB9CtCK,C8CqCL,gCAAA,CADA,UjDy0KN,CiDl0KA,mEACE,ejDq0KF,CiDn0KE,iGACE,KjDq0KJ,CiDn0KI,+GAGE,wB9CpDK,C8CmDL,0BAAA,CADA,WjDu0KN,CiDh0KA,gEACE,ejDm0KF,CiDj0KE,8FAGE,Y9C6iCgC,C8C/iChC,OAAA,CACA,WjDo0KJ,CiDj0KI,4GAGE,sB9CpEK,C8CmEL,gCAAA,CADA,SjDq0KN,CiD9yKA,eAKE,qB9C9FS,CECP,oBAAA,C4C2FF,U9CtGS,C8CoGT,e9CygCkC,C8CxgClC,oBAAA,CAEA,iBjDmzKF,CmDl6KA,SAYE,oBAAA,CAEA,2BAAA,CADA,qBhDLS,CgDOT,+BAAA,C9CIE,mBAAA,C8CdF,aAAA,CDJA,qC/Coa4B,CChIxB,iBALI,C8C7RR,iBAAA,CACA,e/C6a4B,CgD9a5B,MAAA,CDQA,qBAAA,CAIA,eAAA,CAVA,e/Ckb4B,CgDjb5B,ehD6oCkC,CgDlpClC,iBAAA,CDKA,eAAA,CACA,gBAAA,CACA,oBAAA,CACA,gBAAA,CACA,mBAAA,CCRA,KAAA,CDYA,kBAAA,CAFA,iBAAA,CACA,mBAAA,CCTA,YnD27KF,CmD56KE,wBAEE,aAAA,CAEA,YhD6oCgC,CgDhpChC,iBAAA,CAEA,UnD+6KJ,CmD56KI,6DAKE,wBAAA,CACA,kBAAA,CAFA,UAAA,CADA,aAAA,CADA,iBnDi7KN,CmDv6KE,2FACE,yBnD06KJ,CmDx6KI,yGAGE,gChD4nC8B,CgD7nC9B,0BAAA,CADA,QnD46KN,CmDv6KI,uGAGE,qBhDzCK,CgDwCL,0BAAA,CADA,UnD26KN,CmDn6KE,6FAGE,WhDymCgC,CgD3mChC,uBAAA,CACA,WnDu6KJ,CmDp6KI,2GAGE,kChDwmC8B,CgDzmC9B,gCAAA,CADA,MnDw6KN,CmDn6KI,yGAGE,uBhD7DK,CgD4DL,gCAAA,CADA,QnDu6KN,CmD/5KE,iG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AAA,CANA,oBAAA,CAEA,qBAAA,CACA,yBAAA,CAFA,mBAAA,CAHA,2BAAA,CAOA,4BAAA,CANA,mB5DqhMF,C6DzhME,sBAIE,QAAA,CAGA,UAAA,CAFA,MAAA,CAJA,iBAAA,CAEA,OAAA,CADA,KAAA,CAIA,S7D6hMJ,C8DpiMA,eCAE,eAAA,CACA,sBAAA,CACA,kB/DwiMF,CgE7/LM,gBAEI,iChE+/LV,CgEjgMM,WAEI,4BhEmgMV,CgErgMM,cAEI,+BhEugMV,CgEzgMM,cAEI,+BhE2gMV,CgE7gMM,mBAEI,oChE+gMV,CgEjhMM,gBAEI,iChEmhMV,CgErhMM,aAEI,oBhEuhMV,CgEzhMM,WAEI,qBhE2hMV,CgE7hMM,YAEI,oBhE+hMV,CgEjiMM,eAEI,uBhEmiMV,CgEriMM,iBAEI,yBhEuiMV,CgEziMM,kBAEI,0BhE2iMV,CgE7iMM,iBAEI,yBhE+iMV,CgEjjMM,UAEI,wBhEmjMV,CgErjMM,gBAEI,8BhEujMV,CgEzjMM,SAEI,uBhE2jMV,CgE7jMM,QAEI,0BAAA,CAAA,sBhE+jMV,CgEjkMM,SAEI,uBhEmkMV,CgErkMM,aAEI,2BhEukMV,CgEzkMM,cAEI,4BhE2kMV,CgE7kMM,QAEI,6BAAA,CAAA,sBhE+kMV,CgEjlMM,eAEI,oCAAA,CAAA,6BhEmlMV,CgErlMM,QAEI,sBhEulMV,CgEzlMM,QAEI,iDhE2lMV,CgE7lMM,WAEI,sDhE+lMV,CgEjmMM,WAEI,iDhEmmMV,CgErmMM,aAEI,yBhEumMV,CgEzmMM,iBAEI,yBhE2mMV,CgE7mMM,mBAEI,2BhE+mMV,CgEjnMM,mBAEI,2BhEmnMV,CgErnMM,gBAEI,wBhEunMV,CgEznMM,iBAEI,iCAAA,CAAA,yBhE2nMV,CgE7nMM,OAEI,ehE+nMV,CgEjoMM,QAEI,iBhEmoMV,CgEroMM,SAEI,kBhEuoMV,CgEzoMM,UAEI,kBhE2oMV,CgE7oMM,WAEI,oBhE+oMV,CgEjpMM,YAEI,qBhEmpMV,CgErpMM,SAEI,gBhEupMV,CgEzpMM,UAEI,kBhE2pMV,CgE7pMM,WAEI,mBhE+pMV,CgEjqMM,OAEI,iBhEmqMV,CgErqMM,QAEI,mBhEuqMV,CgEzqMM,SAEI,oBhE2qMV,CgE7qMM,kBAEI,gDAAA,CAAA,wChE+qMV,CgEjrMM,oBAEI,4CAAA,CAAA,oChEmrMV,CgErrMM,oBAEI,4CAAA,CAAA,oChEurMV,CgEzrMM,QAEI,kChE2rMV,CgE7rMM,UAEI,kBhE+rMV,CgEjsMM,YAEI,sChEmsMV,CgErsMM,cAEI,sBhEusMV,CgEzsMM,YAEI,wChE2sMV,CgE7sMM,cAEI,wBhE+sMV,CgEjtMM,eAEI,yChEmtMV,CgErtMM,iBAEI,yBhEutMV,CgEztMM,cAEI,uChE2tMV,CgE7tMM,gBAEI,uBhE+tMV,CgEjuMM,gBAEI,8BhEmuMV,CgEruMM,kBAEI,8BhEuuMV,CgEzuMM,gBAEI,8BhE2uMV,CgE7uMM,aAEI,8BhE+uMV,CgEjvMM,gBAEI,8BhEmvMV,CgErvMM,eAEI,8BhEuvMV,CgEzvMM,cAEI,8BhE2vMV,CgE7vMM,aAEI,8BhE+vMV,CgEjwMM,cAEI,2BhEmwMV,CgErwMM,UAEI,0BhEuwMV,CgEzwMM,UAEI,0BhE2wMV,CgE7wMM,UAEI,0BhE+wMV,CgEjxMM,UAEI,0BhEmxMV,CgErxMM,UAEI,0BhEuxMV,CgEzxMM,MAEI,mBhE2xMV,CgE7xMM,MAEI,mBhE+xMV,CgEjyMM,MAEI,mBhEmyMV,CgEryMM,OAEI,oBhEuyMV,CgEzyMM,QAEI,oBhE2yMV,CgE7yMM,QAEI,wBhE+yMV,CgEjzMM,QAEI,qBhEmzMV,CgErzMM,YAEI,yBhEuzMV,CgEzzMM,MAEI,oBhE2zMV,CgE7zMM,MAEI,oBhE+zMV,CgEj0MM,MAEI,oBhEm0MV,CgEr0MM,OAEI,qBhEu0MV,CgEz0MM,QAEI,qBhE20MV,CgE70MM,QAEI,yBhE+0MV,CgEj1MM,QAEI,sBhEm1MV,CgEr1MM,YAEI,0BhEu1MV,CgEz1MM,WAEI,2BAAA,CAAA,uBhE21MV,CgE71MM,UAEI,gCAAA,CAAA,4BhE+1MV,CgEj2MM,aAEI,mCAAA,CAAA,+BhEm2MV,CgEr2MM,kBAEI,wCAAA,CAAA,oChEu2MV,CgEz2MM,qBAEI,2CAAA,CAAA,uChE22MV,CgE72MM,aAEI,6BAAA,CAAA,qBhE+2MV,CgEj3MM,aAEI,6BAAA,CAAA,qBhEm3MV,CgEr3MM,eAEI,6BAAA,CAAA,uBhEu3MV,CgEz3MM,eAEI,6BAAA,CAAA,uBhE23MV,CgE73MM,WAEI,4BAAA,CAAA,wBhE+3MV,CgEj4MM,aAEI,8BAAA,CAAA,0BhEm4MV,CgEr4MM,mBAEI,oCAAA,CAAA,gChEu4MV,CgEz4MM,OAEI,ehE24MV,CgE74MM,OAEI,oBhE+4MV,CgEj5MM,OAEI,mBhEm5MV,CgEr5MM,OAEI,kBhEu5MV,CgEz5MM,OAEI,oBhE25MV,CgE75MM,OAEI,kBhE+5MV,CgEj6MM,uBAEI,6BAAA,CAAA,oChEm6MV,CgEr6MM,qBAEI,2BAAA,CAAA,kChEu6MV,CgEz6MM,wBAEI,8BAAA,CAAA,gChE26MV,CgE76MM,yBAEI,+BAAA,CAAA,uChE+6MV,CgEj7MM,wBAEI,kCAAA,CAAA,sChEm7MV,CgEr7MM,wBAEI,oCAAA,CAAA,sChEu7MV,CgEz7MM,mBAEI,8BAAA,CAAA,gChE27MV,CgE77MM,iBAEI,4BAAA,CAAA,8BhE+7MV,CgEj8MM,oBAEI,+BAAA,CAAA,4BhEm8MV,CgEr8MM,sBAEI,iCAAA,CAAA,8BhEu8MV,CgEz8MM,qBAEI,gCAAA,CAAA,6BhE28MV,CgE78MM,qBAEI,kCAAA,CAAA,kChE+8MV,CgEj9MM,mBAEI,gCAAA,CAAA,gChEm9MV,CgEr9MM,sBAEI,mCAAA,CAAA,8BhEu9MV,CgEz9MM,uBAEI,oCAAA,CAAA,qChE29MV,CgE79MM,sBAEI,uCAAA,CAAA,oChE+9MV,CgEj+MM,uBAEI,oCAAA,CAAA,+BhEm+MV,CgEr+MM,iBAEI,kCAAA,CAAA,iCAAA,CAAA,yBhEu+MV,CgEz+MM,kBAEI,mCAAA,CAAA,+BhE2+MV,CgE7+MM,gBAEI,iCAAA,CAAA,6BhE++MV,CgEj/MM,mBAEI,oCAAA,CAAA,mCAAA,CAAA,2BhEm/MV,CgEr/MM,qBAEI,sCAAA,CAAA,6BhEu/MV,CgEz/MM,oBAEI,qCAAA,CAAA,oCAAA,CAAA,4BhE2/MV,CgE7/MM,aAEI,2BAAA,CAAA,kBhE+/MV,CgEjgNM,SAEI,0BAAA,CAAA,iBhEmgNV,CgErgNM,SAEI,0BAAA,CAAA,iBhEugNV,CgEzgNM,SAEI,0BAAA,CAAA,iBhE2gNV,CgE7gNM,SAEI,0BAAA,CAAA,iBhE+gNV,CgEjhNM,SAEI,0BAAA,CAAA,iBhEmhNV,CgErhNM,SAEI,0BAAA,CAAA,iBhEuhNV,CgEzhNM,YAEI,0BAAA,CAAA,iBhE2hNV,CgE7hNM,KAEI,kBhE+hNV,CgEjiNM,KAEI,uBhEmiNV,CgEriNM,KAEI,sBhEuiNV,CgEziNM,KAEI,qBhE2iNV,CgE7iNM,KAEI,uBhE+iNV,CgEjjNM,KAEI,qBhEmjNV,CgErjNM,QAEI,qBhEujNV,CgEzjNM,MAEI,uBAAA,CAAA,wBhE4jNV,CgE9jNM,MAEI,4BAAA,CAAA,6BhEikNV,CgEnkNM,MAEI,2BAAA,CAAA,4BhEskNV,CgExkNM,MAEI,0BAAA,CAAA,2BhE2kNV,CgE7kNM,MAEI,4BAAA,CAAA,6BhEglNV,CgEllNM,MAEI,0BAAA,CAAA,2BhEqlNV,CgEvlNM,SAEI,0BAAA,CAAA,2BhE0lNV,CgE5lNM,MAEI,yBAAA,CAAA,sBhE+lNV,CgEjmNM,MAEI,8BAAA,CAAA,2BhEomNV,CgEtmNM,MAEI,6BAAA,CAAA,0BhEymNV,CgE3mNM,MAEI,4BAAA,CAAA,yBhE8mNV,CgEhnNM,MAEI,8BAAA,CAAA,2BhEmnNV,CgErnNM,MAEI,4BAAA,CAAA,yBhEwnNV,CgE1nNM,SAEI,4BAAA,CAAA,yBhE6nNV,CgE/nNM,MAEI,sBhEioNV,CgEnoNM,MAEI,2BhEqoNV,CgEvoNM,MAEI,0BhEyoNV,CgE3oNM,MAEI,yBhE6oNV,CgE/oNM,MAEI,2BhEipNV,CgEnpNM,MAEI,yBhEqpNV,CgEvpNM,SAEI,yBhEypNV,CgE3pNM,MAEI,wBhE6pNV,CgE/pNM,MAEI,6BhEiqNV,CgEnqNM,MAEI,4BhEqqNV,CgEvqNM,MAEI,2BhEyqNV,CgE3qNM,MAEI,6BhE6qNV,CgE/qNM,MAEI,2BhEirNV,CgEnrNM,SAEI,2BhEqrNV,CgEvrNM,MAEI,yBhEyrNV,CgE3rNM,MAEI,8BhE6rNV,CgE/rNM,MAEI,6BhEisNV,CgEnsNM,MAEI,4BhEqsNV,CgEvsNM,MAEI,8BhEysNV,CgE3sNM,MAEI,4BhE6sNV,CgE/sNM,SAEI,4BhEitNV,CgEntNM,MAEI,uBhEqtNV,CgEvtNM,MAEI,4BhEytNV,CgE3tNM,MAEI,2BhE6tNV,CgE/tNM,MAEI,0BhEiuNV,CgEnuNM,MAEI,4BhEquNV,CgEvuNM,MAEI,0BhEyuNV,CgE3uNM,SAEI,0BhE6uNV,CgE/uNM,KAEI,mBhEivNV,CgEnvNM,KAEI,wBhEqvNV,CgEvvNM,KAEI,uBhEyvNV,CgE3vNM,KAEI,sBhE6vNV,CgE/vNM,KAEI,wBhEiwNV,CgEnwNM,KAEI,sBhEqwNV,CgEvwNM,MAEI,wBAAA,CAAA,yBhE0wNV,CgE5wNM,MAEI,6BAAA,CAAA,8BhE+wNV,CgEjxNM,MAEI,4BAAA,CAAA,6BhEoxNV,CgEtxNM,MAEI,2BAAA,CAAA,4BhEyxNV,CgE3xNM,MAEI,6BAAA,CAAA,8BhE8xNV,CgEhyNM,MAEI,2BAAA,CAAA,4BhEmyNV,CgEryNM,MAEI,0BAAA,CAAA,uBhEwyNV,CgE1yNM,MAEI,+BAAA,CAAA,4BhE6yNV,CgE/yNM,MAEI,8BAAA,CAAA,2BhEkzNV,CgEpzNM,MAEI,6BAAA,CAAA,0BhEuzNV,CgEzzNM,MAEI,+BAAA,CAAA,4BhE4zNV,CgE9zNM,MAEI,6BAAA,CAAA,0BhEi0NV,CgEn0NM,MAEI,uBhEq0NV,CgEv0NM,MAEI,4BhEy0NV,CgE30NM,MAEI,2BhE60NV,CgE/0NM,MAEI,0BhEi1NV,CgEn1NM,MAEI,4BhEq1NV,CgEv1NM,MAEI,0BhEy1NV,CgE31NM,MAEI,yBhE61NV,CgE/1NM,MAEI,8BhEi2NV,CgEn2NM,MAEI,6BhEq2NV,CgEv2NM,MAEI,4BhEy2NV,CgE32NM,MAEI,8BhE62NV,CgE/2NM,MAEI,4BhEi3NV,CgEn3NM,MAEI,0BhEq3NV,CgEv3NM,MAEI,+BhEy3NV,CgE33NM,MAEI,8BhE63NV,CgE/3NM,MAEI,6BhEi4NV,CgEn4NM,MAEI,+BhEq4NV,CgEv4NM,MAEI,6BhEy4NV,CgE34NM,MAEI,wBhE64NV,CgE/4NM,MAEI,6BhEi5NV,CgEn5NM,MAEI,4BhEq5NV,CgEv5NM,MAEI,2BhEy5NV,CgE35NM,MAEI,6BhE65NV,CgE/5NM,MAEI,2BhEi6NV,CgEn6NM,gBAEI,8ChEq6NV,CgEv6NM,MAEI,0ChEy6NV,CgE36NM,MAEI,yChE66NV,CgE/6NM,MAEI,uChEi7NV,CgEn7NM,MAEI,yChEq7NV,CgEv7NM,MAEI,2BhEy7NV,CgE37NM,MAEI,wBhE67NV,CgE/7NM,YAEI,2BhEi8NV,CgEn8NM,YAEI,2BhEq8NV,CgEv8NM,UAEI,yBhEy8NV,CgE38NM,YAEI,6BhE68NV,CgE/8NM,WAEI,yBhEi9NV,CgEn9NM,SAEI,yBhEq9NV,CgEv9NM,WAEI,4BhEy9NV,CgE39NM,MAEI,uBhE69NV,CgE/9NM,OAEI,0BhEi+NV,CgEn+NM,SAEI,yBhEq+NV,CgEv+NM,OAEI,uBhEy+NV,CgE3+NM,YAEI,yBhE6+NV,CgE/+NM,UAEI,0BhEi/NV,CgEn/NM,aAEI,2BhEq/NV,CgEv/NM,sBAEI,8BhEy/NV,CgE3/NM,2BAEI,mChE6/NV,CgE//NM,8BAEI,sChEigOV,CgEngOM,gBAEI,kChEqgOV,CgEvgOM,gBAEI,kChEygOV,CgE3gOM,iBAEI,mChE6gOV,CgE/gOM,WAEI,4BhEihOV,CgEnhOM,aAEI,4BhEqhOV,CgEvhOM,YAEI,8BAAA,CAAA,+BhE2hOV,CgE7hOM,cAEI,uBhEgiOV,CgEliOM,gBAEI,uBhEoiOV,CgEtiOM,cAEI,uBhEwiOV,CgE1iOM,WAEI,uBhE4iOV,CgE9iOM,cAEI,uBhEgjOV,CgEljOM,aAEI,uBhEojOV,CgEtjOM,YAEI,uBhEwjOV,CgE1jOM,WAEI,uBhE4jOV,CgE9jOM,YAEI,oBhEgkOV,CgElkOM,WAEI,uBhEokOV,CgEtkOM,YAEI,uBhEwkOV,CgE1kOM,eAEI,8BhE4kOV,CgE9kOM,eAEI,kChEglOV,CgEllOM,YAEI,uBhEolOV,CgEtlOM,YAEI,kChEwlOV,CgE1lOM,cAEI,kChE4lOV,CgE9lOM,YAEI,kChEgmOV,CgElmOM,SAEI,kChEomOV,CgEtmOM,YAEI,kChEwmOV,CgE1mOM,WAEI,kChE4mOV,CgE9mOM,UAEI,kChEgnOV,CgElnOM,SAEI,kChEonOV,CgEtnOM,mBAEI,+BhE4nOV,CgE9nOM,gBAEI,sChEgoOV,CgEloOM,aAEI,6ChEooOV,CgEtoOM,iBAEI,iCAAA,CAAA,8BAAA,CAAA,yBhEwoOV,CgE1oOM,kBAEI,kCAAA,CAAA,+BAAA,CAAA,8BAAA,CAAA,0BhE4oOV,CgE9oOM,kBAEI,kCAAA,CAAA,+BAAA,CAAA,8BAAA,CAAA,0BhEgpOV,CgElpOM,SAEI,6BhEopOV,CgEtpOM,SAEI,6BhEwpOV,CgE1pOM,SAEI,8BhE4pOV,CgE9pOM,WAEI,yBhEgqOV,CgElqOM,WAEI,6BhEoqOV,CgEtqOM,WAEI,8BhEwqOV,CgE1qOM,WAEI,6BhE4qOV,CgE9qOM,gBAEI,2BhEgrOV,CgElrOM,cAEI,6BhEorOV,CgEtrOM,aAEI,uChEyrOV,CgE3rOM,0BAEI,wChE8rOV,CgEhsOM,6BAEI,2ChEmsOV,CgErsOM,+BAEI,0ChEwsOV,CgE1sOM,eAEI,uChEwsOV,CgE1sOM,SAEI,4BhE4sOV,CgE9sOM,WAEI,2BhEgtOV,CWpsOI,yBqDdE,gBAEI,oBhEqtOR,CgEvtOI,cAEI,qBhEytOR,CgE3tOI,eAEI,oBhE6tOR,CgE/tOI,aAEI,wBhEiuOR,CgEnuOI,mBAEI,8BhEquOR,CgEvuOI,YAEI,uBhEyuOR,CgE3uOI,WAEI,0BAAA,CAAA,sBhE6uOR,CgE/uOI,YAEI,uBhEivOR,CgEnvOI,gBAEI,2BhEqvOR,CgEvvOI,iBAEI,4BhEyvOR,CgE3vOI,WAEI,6BAAA,CAAA,sBhE6vOR,CgE/vOI,kBAEI,oCAAA,CAAA,6BhEiwOR,CgEnwOI,WAEI,sBhEqwOR,CgEvwOI,cAEI,2BAAA,CAAA,uBhEywOR,CgE3wOI,aAEI,gCAAA,CAAA,4BhE6wOR,CgE/wOI,gBAEI,mCAAA,CAAA,+BhEixOR,CgEnxOI,qBAEI,wCAAA,CAAA,oChEqxOR,CgEvxOI,wBAEI,2CAAA,CAAA,uChEyxOR,CgE3xOI,gBAEI,6BAAA,CAAA,qBhE6xOR,CgE/xOI,gBAEI,6BAAA,CAAA,qBhEiyOR,CgEnyOI,kBAEI,6BAAA,CAAA,uBhEqyOR,CgEvyOI,kBAEI,6BAAA,CAAA,uBhEyyOR,CgE3yOI,cAEI,4BAAA,CAAA,wBhE6yOR,CgE/yOI,gBAEI,8BAAA,CAAA,0BhEizOR,CgEnzOI,sBAEI,oCAAA,CAAA,gChEqzOR,CgEvzOI,UAEI,ehEyzOR,CgE3zOI,UAEI,oBhE6zOR,CgE/zOI,UAEI,mBhEi0OR,CgEn0OI,UAEI,kBhEq0OR,CgEv0OI,UAEI,oBhEy0OR,CgE30OI,UAEI,kBhE60OR,CgE/0OI,0BAEI,6BAAA,CAAA,oChEi1OR,CgEn1OI,wBAEI,2BAAA,CAAA,kChEq1OR,CgEv1OI,2BAEI,8BAAA,CAAA,gChEy1OR,CgE31OI,4BAEI,+BAAA,CAAA,uChE61OR,CgE/1OI,2BAEI,kCAAA,CAAA,sChEi2OR,CgEn2OI,2BAEI,oCAAA,CAAA,sChEq2OR,CgEv2OI,sBAEI,8BAAA,CAAA,gChEy2OR,CgE32OI,oBAEI,4BAAA,CAAA,8BhE62OR,CgE/2OI,uBAEI,+BAAA,CAAA,4BhEi3OR,CgEn3OI,yBAEI,iCAAA,CAAA,8BhEq3OR,CgEv3OI,wBAEI,gCAAA,CAAA,6BhEy3OR,CgE33OI,wBAEI,kCAAA,CAAA,kChE63OR,CgE/3OI,sBAEI,gCAAA,CAAA,gChEi4OR,CgEn4OI,yBAEI,mCAAA,CAAA,8BhEq4OR,CgEv4OI,0BAEI,oCAAA,CAAA,qChEy4OR,CgE34OI,yBAEI,uCAAA,CAAA,oChE64OR,CgE/4OI,0BAEI,oCAAA,CAAA,+BhEi5OR,CgEn5OI,oBAEI,kCAAA,CAAA,iCAAA,CAAA,yBhEq5OR,CgEv5OI,qBAEI,mCAAA,CAAA,+BhEy5OR,CgE35OI,mBAEI,iCAAA,CAAA,6BhE65OR,CgE/5OI,sBAEI,oCAAA,CAAA,mCAAA,CAAA,2BhEi6OR,CgEn6OI,wBAEI,sCAAA,CAAA,6BhEq6OR,CgEv6OI,uBAEI,qCAAA,CAAA,oCAAA,CAAA,4BhEy6OR,CgE36OI,gBAEI,2BAAA,CAAA,kBhE66OR,CgE/6OI,YAEI,0BAAA,CAAA,iBhEi7OR,CgEn7OI,YAEI,0BAAA,CAAA,iBhEq7OR,CgEv7OI,YAEI,0BAAA,CAAA,iBhEy7OR,CgE37OI,YAEI,0BAAA,CAAA,iBhE67OR,CgE/7OI,YAEI,0BAAA,CAAA,iBhEi8OR,CgEn8OI,YAEI,0BAAA,CAAA,iBhEq8OR,CgEv8OI,eAEI,0BAAA,CAAA,iBhEy8OR,CgE38OI,QAEI,kBhE68OR,CgE/8OI,QAEI,uBhEi9OR,CgEn9OI,QAEI,sBhEq9OR,CgEv9OI,QAEI,qBhEy9OR,CgE39OI,QAEI,uBhE69OR,CgE/9OI,QAEI,qBhEi+OR,CgEn+OI,WAEI,qBhEq+OR,CgEv+OI,SAEI,uBAAA,CAAA,wBhE0+OR,CgE5+OI,SAEI,4BAAA,CAAA,6BhE++OR,CgEj/OI,SAEI,2BAAA,CAAA,4BhEo/OR,CgEt/OI,SAEI,0BAAA,CAAA,2BhEy/OR,CgE3/OI,SAEI,4BAAA,CAAA,6BhE8/OR,CgEhgPI,SAEI,0BAAA,CAAA,2BhEmgPR,CgErgPI,YAEI,0BAAA,CAAA,2BhEwgPR,CgE1gPI,SAEI,yBAAA,CAAA,sBhE6gPR,CgE/gPI,SAEI,8BAAA,CAAA,2BhEkhPR,CgEphPI,SAEI,6BAAA,CAAA,0BhEuhPR,CgEzhPI,SAEI,4BAAA,CAAA,yBhE4hPR,CgE9hPI,SAEI,8BAAA,CAAA,2BhEiiPR,CgEniPI,SAEI,4BAAA,CAAA,yBhEsiPR,CgExiPI,YAEI,4BAAA,CAAA,yBhE2iPR,CgE7iPI,SAEI,sBhE+iPR,CgEjjPI,SAEI,2BhEmjPR,CgErjPI,SAEI,0BhEujPR,CgEzjPI,SAEI,yBhE2jPR,CgE7jPI,SAEI,2BhE+jPR,CgEjkPI,SAEI,yBhEmkPR,CgErkPI,YAEI,yBhEukPR,CgEzkPI,SAEI,wBhE2kPR,CgE7kPI,SAEI,6BhE+kPR,CgEjlPI,SAEI,4BhEmlPR,CgErlPI,SAEI,2BhEulPR,CgEzlPI,SAEI,6BhE2lPR,CgE7lPI,SAEI,2BhE+lPR,CgEjmPI,YAEI,2BhEmmPR,CgErmPI,SAEI,yBhEumPR,CgEzmPI,SAEI,8BhE2mPR,CgE7mPI,SAEI,6BhE+mPR,CgEjnPI,SAEI,4BhEmnPR,CgErnPI,SAEI,8BhEunPR,CgEznPI,SAEI,4BhE2nPR,CgE7nPI,YAEI,4BhE+nPR,CgEjoPI,SAEI,uBhEmoPR,CgEroPI,SAEI,4BhEuoPR,CgEzoPI,SAEI,2BhE2oPR,CgE7oPI,SAEI,0BhE+oPR,CgEjpPI,SAEI,4BhEmpPR,CgErpPI,SAEI,0BhEupPR,CgEzpPI,YAEI,0BhE2pPR,CgE7pPI,QAEI,mBhE+pPR,CgEjqPI,QAEI,wBhEmqPR,CgErqPI,QAEI,uBhEuqPR,CgEzqPI,QAEI,sBhE2qPR,CgE7qPI,QAEI,wBhE+qPR,CgEjrPI,QAEI,sBhEmrPR,CgErrPI,SAEI,wBAAA,CAAA,yBhEwrPR,CgE1rPI,SAEI,6BAAA,CAAA,8BhE6rPR,CgE/rPI,SAEI,4BAAA,CAAA,6BhEksPR,CgEpsPI,SAEI,2BAAA,CAAA,4BhEusPR,CgEzsPI,SAEI,6BAAA,CAAA,8BhE4sPR,CgE9sPI,SAEI,2BAAA,CAAA,4BhEitPR,CgEntPI,SAEI,0BAAA,CAAA,uBhEstPR,CgExtPI,SAEI,+BAAA,CAAA,4BhE2tPR,CgE7tPI,SAEI,8BAAA,CAAA,2BhEguPR,CgEluPI,SAEI,6BAAA,CAAA,0BhEquPR,CgEvuPI,SAEI,+BAAA,CAAA,4BhE0uPR,CgE5uPI,SAEI,6BAAA,CAAA,0BhE+uPR,CgEjvPI,SAEI,uBhEmvPR,CgErvPI,SAEI,4BhEuvPR,CgEzvPI,SAEI,2BhE2vPR,CgE7vPI,SAEI,0BhE+vPR,CgEjwPI,SAEI,4BhEmwPR,CgErwPI,SAEI,0BhEuwPR,CgEzwPI,SAEI,yBhE2wPR,CgE7wPI,SAEI,8BhE+wPR,CgEjxPI,SAEI,6BhEmxPR,CgErxPI,SAEI,4BhEuxPR,CgEzxPI,SAEI,8BhE2xPR,CgE7xPI,SAEI,4BhE+xPR,CgEjyPI,SAEI,0BhEmyPR,CgEryPI,SAEI,+BhEuyPR,CgEzyPI,SAEI,8BhE2yPR,CgE7yPI,SAEI,6BhE+yPR,CgEjzPI,SAEI,+BhEmzPR,CgErzPI,SAEI,6BhEuzPR,CgEzzPI,SAEI,wBhE2zPR,CgE7zPI,SAEI,6BhE+zPR,CgEj0PI,SAEI,4BhEm0PR,CgEr0PI,SAEI,2BhEu0PR,CgEz0PI,SAEI,6BhE20PR,CgE70PI,SAEI,2BhE+0PR,CgEj1PI,eAEI,yBhEm1PR,CgEr1PI,aAEI,0BhEu1PR,CgEz1PI,gBAEI,2BhE21PR,CACF,CWh1PI,yBqDdE,gBAEI,oBhEg2PR,CgEl2PI,cAEI,qBhEo2PR,CgEt2PI,eAEI,oBhEw2PR,CgE12PI,aAEI,wBhE42PR,CgE92PI,mBAEI,8BhEg3PR,CgEl3PI,YAEI,uBhEo3PR,CgEt3PI,WAEI,0BAAA,CAAA,sBhEw3PR,CgE13PI,YAEI,uBhE43PR,CgE93PI,gBAEI,2BhEg4PR,CgEl4PI,iBAEI,4BhEo4PR,CgEt4PI,WAEI,6BAAA,CAAA,sBhEw4PR,CgE14PI,kBAEI,oCAAA,CAAA,6BhE44PR,CgE94PI,WAEI,sBhEg5PR,CgEl5PI,cAEI,2BAAA,CAAA,uBhEo5PR,CgEt5PI,aAEI,gCAAA,CAAA,4BhEw5PR,CgE15PI,gBAEI,mCAAA,CAAA,+BhE45PR,CgE95PI,qBAEI,wCAAA,CAAA,oChEg6PR,CgEl6PI,wBAEI,2CAAA,CAAA,uChEo6PR,CgEt6PI,gBAEI,6BAAA,CAAA,qBhEw6PR,CgE16PI,gBAEI,6BAAA,CAAA,qBhE46PR,CgE96PI,kBAEI,6BAAA,CAAA,uBhEg7PR,CgEl7PI,kBAEI,6BAAA,CAAA,uBhEo7PR,CgEt7PI,cAEI,4BAAA,CAAA,wBhEw7PR,CgE17PI,gBAEI,8BAAA,CAAA,0BhE47PR,CgE97PI,sBAEI,oCAAA,CAAA,gChEg8PR,CgEl8PI,UAEI,ehEo8PR,CgEt8PI,UAEI,oBhEw8PR,CgE18PI,UAEI,mBhE48PR,CgE98PI,UAEI,kBhEg9PR,CgEl9PI,UAEI,oBhEo9PR,CgEt9PI,UAEI,kBhEw9PR,CgE19PI,0BAEI,6BAAA,CAAA,oChE49PR,CgE99PI,wBAEI,2BAAA,CAAA,kChEg+PR,CgEl+PI,2BAEI,8BAAA,CAAA,gChEo+PR,CgEt+PI,4BAEI,+BAAA,CAAA,uChEw+PR,CgE1+PI,2BAEI,kCAAA,CAAA,sChE4+PR,CgE9+PI,2BAEI,oCAAA,CAAA,sChEg/PR,CgEl/PI,sBAEI,8BAAA,CAAA,gChEo/PR,CgEt/PI,oBAEI,4BAAA,CAAA,8BhEw/PR,CgE1/PI,uBAEI,+BAAA,CAAA,4BhE4/PR,CgE9/PI,yBAEI,iCAAA,CAAA,8BhEggQR,CgElgQI,wBAEI,gCAAA,CAAA,6BhEogQR,CgEtgQI,wBAEI,kCAAA,CAAA,kChEwgQR,CgE1gQI,sBAEI,gCAAA,CAAA,gChE4gQR,CgE9gQI,yBAEI,mCAAA,CAAA,8BhEghQR,CgElhQI,0BAEI,oCAAA,CAAA,qChEohQR,CgEthQI,yBAEI,uCAAA,CAAA,oChEwhQR,CgE1hQI,0BAEI,oCAAA,CAAA,+BhE4hQR,CgE9hQI,oBAEI,kCAAA,CAAA,iCAAA,CAAA,yBhEgiQR,CgEliQI,qBAEI,mCAAA,CAAA,+BhEoiQR,CgEtiQI,mBAEI,iCAAA,CAAA,6BhEwiQR,CgE1iQI,sBAEI,oCAAA,CAAA,mCAAA,CAAA,2BhE4iQR,CgE9iQI,wBAEI,sCAAA,CAAA,6BhEgjQR,CgEljQI,uBAEI,qCAAA,CAAA,oCAAA,CAAA,4BhEojQR,CgEtjQI,gBAEI,2BAAA,CAAA,kBhEwjQR,CgE1jQI,YAEI,0BAAA,CAAA,iBhE4jQR,CgE9jQI,YAEI,0BAAA,CAAA,iBhEgkQR,CgElkQI,YAEI,0BAAA,CAAA,iBhEokQR,CgEtkQI,YAEI,0BAAA,CAAA,iBhEwkQR,CgE1kQI,YAEI,0BAAA,CAAA,iBhE4kQR,CgE9kQI,YAEI,0BAAA,CAAA,iBhEglQR,CgEllQI,eAEI,0BAAA,CAAA,iBhEolQR,CgEtlQI,QAEI,kBhEwlQR,CgE1lQI,QAEI,uBhE4lQR,CgE9lQI,QAEI,sBhEgmQR,CgElmQI,QAEI,qBhEomQR,CgEtmQI,QAEI,uBhEwmQR,CgE1mQI,QAEI,qBhE4mQR,CgE9mQI,WAEI,qBhEgnQR,CgElnQI,SAEI,uBAAA,CAAA,wBhEqnQR,CgEvnQI,SAEI,4BAAA,CAAA,6BhE0nQR,CgE5nQI,SAEI,2BAAA,CAAA,4BhE+nQR,CgEjoQI,SAEI,0BAAA,CAAA,2BhEooQR,CgEtoQI,SAEI,4BAAA,CAAA,6BhEyoQR,CgE3oQI,SAEI,0BAAA,CAAA,2BhE8oQR,CgEhpQI,YAEI,0BAAA,CAAA,2BhEmpQR,CgErpQI,SAEI,yBAAA,CAAA,sBhEwpQR,CgE1pQI,SAEI,8BAAA,CAAA,2BhE6pQR,CgE/pQI,SAEI,6BAAA,CAAA,0BhEkqQR,CgEpqQI,SAEI,4BAAA,CAAA,yBhEuqQR,CgEzqQI,SAEI,8BAAA,CAAA,2BhE4qQR,CgE9qQI,SAEI,4BAAA,CAAA,yBhEirQR,CgEnrQI,YAEI,4BAAA,CAAA,yBhEsrQR,CgExrQI,SAEI,sBhE0rQR,CgE5rQI,SAEI,2BhE8rQR,CgEhsQI,SAEI,0BhEksQR,CgEpsQI,SAEI,yBhEssQR,CgExsQI,SAEI,2BhE0sQR,CgE5sQI,SAEI,yBhE8sQR,CgEhtQI,YAEI,yBhEktQR,CgEptQI,SAEI,wBhEstQR,CgExtQI,SAEI,6BhE0tQR,CgE5tQI,SAEI,4BhE8tQR,CgEhuQI,SAEI,2BhEkuQR,CgEpuQI,SAEI,6BhEsuQR,CgExuQI,SAEI,2BhE0uQR,CgE5uQI,YAEI,2BhE8uQR,CgEhvQI,SAEI,yBhEkvQR,CgEpvQI,SAEI,8BhEsvQR,CgExvQI,SAEI,6BhE0vQR,CgE5vQI,SAEI,4BhE8vQR,CgEhwQI,SAEI,8BhEkwQR,CgEpwQI,SAEI,4BhEswQR,CgExwQI,YAEI,4BhE0wQR,CgE5wQI,SAEI,uBhE8wQR,CgEhxQI,SAEI,4BhEkxQR,CgEpxQI,SAEI,2BhEsxQR,CgExxQI,SAEI,0BhE0xQR,CgE5xQI,SAEI,4BhE8xQR,CgEhyQI,SAEI,0BhEkyQR,CgEpyQI,YAEI,0BhEsyQR,CgExyQI,QAEI,mBhE0yQR,CgE5yQI,QAEI,wBhE8yQR,CgEhzQI,QAEI,uBhEkzQR,CgEpzQI,QAEI,sBhEszQR,CgExzQI,QAEI,wBhE0zQR,CgE5zQI,QAEI,sBhE8zQR,CgEh0QI,SAEI,wBAAA,CAAA,yBhEm0QR,CgEr0QI,SAEI,6BAAA,CAAA,8BhEw0QR,CgE10QI,SAEI,4BAAA,CAAA,6BhE60QR,CgE/0QI,SAEI,2BAAA,CAAA,4BhEk1QR,CgEp1QI,SAEI,6BAAA,CAAA,8BhEu1QR,CgEz1QI,SAEI,2BAAA,CAAA,4BhE41QR,CgE91QI,SAEI,0BAAA,CAAA,uBhEi2QR,CgEn2QI,SAEI,+BAAA,CAAA,4BhEs2QR,CgEx2QI,SAEI,8BAAA,CAAA,2BhE22QR,CgE72QI,SAEI,6BAAA,CAAA,0BhEg3QR,CgEl3QI,SAEI,+BAAA,CAAA,4BhEq3QR,CgEv3QI,SAEI,6BAAA,CAAA,0BhE03QR,CgE53QI,SAEI,uBhE83QR,CgEh4QI,SAEI,4BhEk4QR,CgEp4QI,SAEI,2BhEs4QR,CgEx4QI,SAEI,0BhE04QR,CgE54QI,SAEI,4BhE84QR,CgEh5QI,SAEI,0BhEk5QR,CgEp5QI,SAEI,yBhEs5QR,CgEx5QI,SAEI,8BhE05QR,CgE55QI,SAEI,6BhE85QR,CgEh6QI,SAEI,4BhEk6QR,CgEp6QI,SAEI,8BhEs6QR,CgEx6QI,SAEI,4BhE06QR,CgE56QI,SAEI,0BhE86QR,CgEh7QI,SAEI,+BhEk7QR,CgEp7QI,SAEI,8BhEs7QR,CgEx7QI,SAEI,6BhE07QR,CgE57QI,SAEI,+BhE87QR,CgEh8QI,SAEI,6BhEk8QR,CgEp8QI,SAEI,wBhEs8QR,CgEx8QI,SAEI,6BhE08QR,CgE58QI,SAEI,4BhE88QR,CgEh9QI,SAEI,2BhEk9QR,CgEp9QI,SAEI,6BhEs9QR,CgEx9QI,SAEI,2BhE09QR,CgE59QI,eAEI,yBhE89QR,CgEh+QI,aAEI,0BhEk+QR,CgEp+QI,gBAEI,2BhEs+QR,CACF,CW39QI,yBqDdE,gBAEI,oBhE2+QR,CgE7+QI,cAEI,qBhE++QR,CgEj/QI,eAEI,oBhEm/QR,CgEr/QI,aAEI,wBhEu/QR,CgEz/QI,mBAEI,8BhE2/QR,CgE7/QI,YAEI,uBhE+/QR,CgEjgRI,WAEI,0BAAA,CAAA,sBhEmgRR,CgErgRI,YAEI,uBhEugRR,CgEzgRI,gBAEI,2BhE2gRR,CgE7gRI,iBAEI,4BhE+gRR,CgEjhRI,WAEI,6BAAA,CAAA,sBhEmhRR,CgErhRI,kBAEI,oCAAA,CAAA,6BhEuhRR,CgEzhRI,WAEI,sBhE2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EI,wBhEi2RR,CgEn2RI,SAEI,6BhEq2RR,CgEv2RI,SAEI,4BhEy2RR,CgE32RI,SAEI,2BhE62RR,CgE/2RI,SAEI,6BhEi3RR,CgEn3RI,SAEI,2BhEq3RR,CgEv3RI,YAEI,2BhEy3RR,CgE33RI,SAEI,yBhE63RR,CgE/3RI,SAEI,8BhEi4RR,CgEn4RI,SAEI,6BhEq4RR,CgEv4RI,SAEI,4BhEy4RR,CgE34RI,SAEI,8BhE64RR,CgE/4RI,SAEI,4BhEi5RR,CgEn5RI,YAEI,4BhEq5RR,CgEv5RI,SAEI,uBhEy5RR,CgE35RI,SAEI,4BhE65RR,CgE/5RI,SAEI,2BhEi6RR,CgEn6RI,SAEI,0BhEq6RR,CgEv6RI,SAEI,4BhEy6RR,CgE36RI,SAEI,0BhE66RR,CgE/6RI,YAEI,0BhEi7RR,CgEn7RI,QAEI,mBhEq7RR,CgEv7RI,QAEI,wBhEy7RR,CgE37RI,QAEI,uBhE67RR,CgE/7RI,QAEI,sBhEi8RR,CgEn8RI,QAEI,wBhEq8RR,CgEv8RI,QAEI,sBhEy8RR,CgE38RI,SAEI,wBAAA,CAAA,yBhE88RR,CgEh9RI,SAEI,6BAAA,CAAA,8BhEm9RR,CgEr9RI,SAEI,4BAAA,CAAA,6BhEw9RR,CgE19RI,SAEI,2BAAA,CAAA,4BhE69RR,CgE/9RI,SAEI,6BAAA,CAAA,8BhEk+RR,CgEp+RI,SAEI,2BAAA,CAAA,4BhEu+RR,CgEz+RI,SAEI,0BAAA,CAAA,uBhE4+RR,CgE9+RI,SAEI,+BAAA,CAAA,4BhEi/RR,CgEn/RI,SAEI,8BAAA,CAAA,2BhEs/RR,CgEx/RI,SAEI,6BAAA,CAAA,0BhE2/RR,CgE7/RI,SAEI,+BAAA,CAAA,4BhEggSR,CgElgSI,SAEI,6BAAA,CAAA,0BhEqgSR,CgEvgSI,SAEI,uBhEygSR,CgE3gSI,SAEI,4BhE6gSR,CgE/gSI,SAEI,2BhEihSR,CgEnhSI,SAEI,0BhEqhSR,CgEvhSI,SAEI,4BhEyhSR,CgE3hSI,SAEI,0BhE6hSR,CgE/hSI,SAEI,yBhEiiSR,CgEniSI,SAEI,8BhEqiSR,CgEviSI,SAEI,6BhEyiSR,CgE3iSI,SAEI,4BhE6iSR,CgE/iSI,SAEI,8BhEijSR,CgEnjSI,SAEI,4BhEqjSR,CgEvjSI,SAEI,0BhEyjSR,CgE3jSI,SAEI,+BhE6jSR,CgE/jSI,SAEI,8BhEikSR,CgEnkSI,SAEI,6BhEqkSR,CgEvkSI,SAEI,+BhEykSR,CgE3kSI,SAEI,6BhE6kSR,CgE/kSI,SAEI,wBhEilSR,CgEnlSI,SAEI,6BhEqlSR,CgEvlSI,SAEI,4BhEylSR,CgE3lSI,SAEI,2BhE6lSR,CgE/lSI,SAEI,6BhEimSR,CgEnmSI,SAEI,2BhEqmSR,CgEvmSI,eAEI,yBhEymSR,CgE3mSI,aAEI,0BhE6mSR,CgE/mSI,gBAEI,2BhEinSR,CACF,CWtmSI,0BqDdE,gBAEI,oBhEsnSR,CgExnSI,cAEI,qBhE0nSR,CgE5nSI,eAEI,oBhE8nSR,CgEhoSI,aAEI,wBhEkoSR,CgEpoSI,mBAEI,8BhEsoSR,CgExoSI,YAEI,uBhE0oSR,CgE5oSI,WAEI,0BAAA,CAAA,sBhE8oSR,CgEhpSI,YAEI,uBhEkpSR,CgEppSI,gBAEI,2BhEspSR,CgExpSI,iBAEI,4BhE0pSR,CgE5pSI,WAEI,6BAAA,CAAA,sBhE8pSR,CgEhqSI,kBAEI,oCAAA,CAAA,6BhEkqSR,CgEpqSI,WAEI,sBhEsqSR,CgExqSI,cAEI,2BAAA,CAAA,uBhE0qSR,CgE5qSI,aAEI,gCAAA,CAAA,4BhE8qSR,CgEhrSI,gBAEI,mCAAA,CAAA,+BhEkrSR,CgEprSI,qBAEI,wCAAA,CAAA,oChEsrSR,CgExrSI,wBAEI,2CAAA,CAAA,uChE0rSR,CgE5rSI,gBAEI,6BAAA,CAAA,qBhE8rSR,CgEhsSI,gBAEI,6BAAA,CAAA,qBhEksSR,CgEpsSI,kBAEI,6BAAA,CAAA,uBhEssSR,CgExsSI,kBAEI,6BAAA,CAAA,uBhE0sSR,CgE5sSI,cAEI,4BAAA,CAAA,wBhE8sSR,CgEhtSI,gBAEI,8BAAA,CAAA,0BhEktSR,CgEptSI,sBAEI,oCAAA,CAAA,gChEstSR,CgExtSI,UAEI,ehE0tSR,CgE5tSI,UAEI,oBhE8tSR,CgEhuSI,UAEI,mBhEkuSR,CgEpuSI,UAEI,kBhEsuSR,CgExuSI,UAEI,oBhE0uSR,CgE5uSI,UAEI,kBhE8uSR,CgEhvSI,0BAEI,6BAAA,CAAA,oChEkvSR,CgEpvSI,wBAEI,2BAAA,CAAA,kChEsvSR,CgExvSI,2BAEI,8BAAA,CAAA,gChE0vSR,CgE5vSI,4BAEI,+BAAA,CAAA,uChE8vSR,CgEhwSI,2BAEI,kCAAA,CAAA,sChEkwSR,CgEpwSI,2BAEI,oCAAA,CAAA,sChEswSR,CgExwSI,sBAEI,8BAAA,CAAA,gChE0wSR,CgE5wSI,oBAEI,4BAAA,CAAA,8BhE8wSR,CgEhxSI,uBAEI,+BAAA,CAAA,4BhEkxSR,CgEpxSI,yBAEI,iCAAA,CAAA,8BhEsxSR,CgExxSI,wBAEI,gCAAA,CAAA,6BhE0xSR,CgE5xSI,wBAEI,kCAAA,CAAA,kChE8xSR,CgEhySI,sBAEI,gCAAA,CAAA,gChEkySR,CgEpySI,yBAEI,mCAAA,CAAA,8BhEsySR,CgExySI,0BAEI,oCAAA,CAAA,qChE0ySR,CgE5ySI,yBAEI,uCAAA,CAAA,oChE8ySR,CgEhzSI,0BAEI,oCAAA,CAAA,+BhEkzSR,CgEpzSI,oBAEI,kCAAA,CAAA,iCAAA,CAAA,yBhEszSR,CgExzSI,qBAEI,mCAAA,CAAA,+BhE0zSR,CgE5zSI,mBAEI,iCAAA,CAAA,6BhE8zSR,CgEh0SI,sBAEI,oCAAA,CAAA,mCAAA,CAAA,2BhEk0SR,CgEp0SI,wBAEI,sCAAA,CAAA,6BhEs0SR,CgEx0SI,uBAEI,qCAAA,CAAA,oCAAA,CAAA,4BhE00SR,CgE50SI,gBAEI,2BAAA,CAAA,kBhE80SR,CgEh1SI,YAEI,0BAAA,CAAA,iBhEk1SR,CgEp1SI,YAEI,0BAAA,CAAA,iBhEs1SR,CgEx1SI,YAEI,0BAAA,CAAA,iBhE01SR,CgE51SI,YAEI,0BAAA,CAAA,iBhE81SR,CgEh2SI,YAEI,0BAAA,CAAA,iBhEk2SR,CgEp2SI,YAEI,0BAAA,CAAA,iBhEs2SR,CgEx2SI,eAEI,0BAAA,CAAA,iBhE02SR,CgE52SI,QAEI,kBhE82SR,CgEh3SI,QAEI,uBhEk3SR,CgEp3SI,QAEI,sBhEs3SR,CgEx3SI,QAEI,qBhE03SR,CgE53SI,QAEI,uBhE83SR,CgEh4SI,QAEI,qBhEk4SR,CgEp4SI,WAEI,qBhEs4SR,CgEx4SI,SAEI,uBAAA,CAAA,wBhE24SR,CgE74SI,SAEI,4BAAA,CAAA,6BhEg5SR,CgEl5SI,SAEI,2BAAA,CAAA,4BhEq5SR,CgEv5SI,SAEI,0BAAA,CAAA,2BhE05SR,CgE55SI,SAEI,4BAAA,CAAA,6BhE+5SR,CgEj6SI,SAEI,0BAAA,CAAA,2BhEo6SR,CgEt6SI,YAEI,0BAAA,CAAA,2BhEy6SR,CgE36SI,SAEI,yBAAA,CAAA,sBhE86SR,CgEh7SI,SAEI,8BAAA,CAAA,2BhEm7SR,CgEr7SI,SAEI,6BAAA,CAAA,0BhEw7SR,CgE17SI,SAEI,4BAAA,CAAA,yBhE67SR,CgE/7SI,SAEI,8BAAA,CAAA,2BhEk8SR,CgEp8SI,SAEI,4BAAA,CAAA,yBhEu8SR,CgEz8SI,YAEI,4BAAA,CAAA,yBhE48SR,CgE98SI,SAEI,sBhEg9SR,CgEl9SI,SAEI,2BhEo9SR,CgEt9SI,SAEI,0BhEw9SR,CgE19SI,SAEI,yBhE49SR,CgE99SI,SAEI,2BhEg+SR,CgEl+SI,SAEI,yBhEo+SR,CgEt+SI,YAEI,yBhEw+SR,CgE1+SI,SAEI,wBhE4+SR,CgE9+SI,SAEI,6BhEg/SR,CgEl/SI,SAEI,4BhEo/SR,CgEt/SI,SAEI,2BhEw/SR,CgE1/SI,SAEI,6BhE4/SR,CgE9/SI,SAEI,2BhEggTR,CgElgTI,YAEI,2BhEogTR,CgEtgTI,SAEI,yBhEwgTR,CgE1gTI,SAEI,8BhE4gTR,CgE9gTI,SAEI,6BhEghTR,CgElhTI,SAEI,4BhEohTR,CgEthTI,SAEI,8BhEwhTR,CgE1hTI,SAEI,4BhE4hTR,CgE9hTI,YAEI,4BhEgiTR,CgEliTI,SAEI,uBhEoiTR,CgEtiTI,SAEI,4BhEwiTR,CgE1iTI,SAEI,2BhE4iTR,CgE9iTI,SAEI,0BhEgjTR,CgEljTI,SAEI,4BhEojTR,CgEtjTI,SAEI,0BhEwjTR,CgE1jTI,YAEI,0BhE4jTR,CgE9jTI,QAEI,mBhEgkTR,CgElkTI,QAEI,wBhEokTR,CgEtkTI,QAEI,uBhEwkTR,CgE1kTI,QAEI,sBhE4kTR,CgE9kTI,QAEI,wBhEglTR,CgEllTI,QAEI,sBhEolTR,CgEtlTI,SAEI,wBAAA,CAAA,yBhEylTR,CgE3lTI,SAEI,6BAAA,CAAA,8BhE8lTR,CgEhmTI,SAEI,4BAAA,CAAA,6BhEmmTR,CgErmTI,SAEI,2BAAA,CAAA,4BhEwmTR,CgE1mTI,SAEI,6BAAA,CAAA,8BhE6mTR,CgE/mTI,SAEI,2BAAA,CAAA,4BhEknTR,CgEpnTI,SAEI,0BAAA,CAAA,uBhEunTR,CgEznTI,SAEI,+BAAA,CAAA,4BhE4nTR,CgE9nTI,SAEI,8BAAA,CAAA,2BhEioTR,CgEnoTI,SAEI,6BAAA,CAAA,0BhEsoTR,CgExoTI,SAEI,+BAAA,CAAA,4BhE2oTR,CgE7oTI,SAEI,6BAAA,CAAA,0BhEgpTR,CgElpTI,SAEI,uBhEopTR,CgEtpTI,SAEI,4BhEwpTR,CgE1pTI,SAEI,2BhE4pTR,CgE9pTI,SAEI,0BhEgqTR,CgElqTI,SAEI,4BhEoqTR,CgEtqTI,SAEI,0BhEwqTR,CgE1qTI,SAEI,yBhE4qTR,CgE9qTI,SAEI,8BhEgrTR,CgElrTI,SAEI,6BhEorTR,CgEtrTI,SAEI,4BhEwrTR,CgE1rTI,SAEI,8BhE4rTR,CgE9rTI,SAEI,4BhEgsTR,CgElsTI,SAEI,0BhEosTR,CgEtsTI,SAEI,+BhEwsTR,CgE1sTI,SAEI,8BhE4sTR,CgE9sTI,SAEI,6BhEgtTR,CgEltTI,SAEI,+BhEotTR,CgEttTI,SAEI,6BhEwtTR,CgE1tTI,SAEI,wBhE4tTR,CgE9tTI,SAEI,6BhEguTR,CgEluTI,SAEI,4BhEouTR,CgEtuTI,SAEI,2BhEwuTR,CgE1uTI,SAEI,6BhE4uTR,CgE9uTI,SAEI,2BhEgvTR,CgElvTI,eAEI,yBhEovTR,CgEtvTI,aAEI,0BhEwvTR,CgE1vTI,gBAEI,2BhE4vTR,CACF,CWjvTI,0BqDdE,iBAEI,oBhEiwTR,CgEnwTI,eAEI,qBhEqwTR,CgEvwTI,gBAEI,oBhEywTR,CgE3wTI,cAEI,wBhE6wTR,CgE/wTI,oBAEI,8BhEixTR,CgEnxTI,aAEI,uBhEqxTR,CgEvxTI,YAEI,0BAAA,CAAA,sBhEyxTR,CgE3xTI,aAEI,uBhE6xTR,CgE/xTI,iBAEI,2BhEiyTR,CgEnyTI,kBAEI,4BhEqyTR,CgEvyTI,YAEI,6BAAA,CAAA,sBhEyyTR,CgE3yTI,mBAEI,oCAAA,CAAA,6BhE6yTR,CgE/yTI,YAEI,sBhEizTR,CgEnzTI,eAEI,2BAAA,CAAA,uBhEqzTR,CgEvzTI,cAEI,gCAAA,CAAA,4BhEyzTR,CgE3zTI,iBAEI,mCAAA,CAAA,+BhE6zTR,CgE/zTI,sBAEI,wCAAA,CAAA,oChEi0TR,CgEn0TI,yBAEI,2CAAA,CAAA,uChEq0TR,CgEv0TI,iBAEI,6BAAA,CAAA,qBhEy0TR,CgE30TI,iBAEI,6BAAA,CAAA,qBhE60TR,CgE/0TI,mBAEI,6BAAA,CAAA,uBhEi1TR,CgEn1TI,mBAEI,6BAAA,CAAA,uBhEq1TR,CgEv1TI,eAEI,4BAAA,CAAA,wBhEy1TR,CgE31TI,iBAEI,8BAAA,CAAA,0BhE61TR,CgE/1TI,uBAEI,oCAAA,CAAA,gChEi2TR,CgEn2TI,WAEI,ehEq2TR,CgEv2TI,WAEI,oBhEy2TR,CgE32TI,WAEI,mBhE62TR,CgE/2TI,WAEI,kBhEi3TR,CgEn3TI,WAEI,oBhEq3TR,CgEv3TI,WAEI,kBhEy3TR,CgE33TI,2BAEI,6BAAA,CAAA,oChE63TR,CgE/3TI,yBAEI,2BAAA,CAAA,kChEi4TR,CgEn4TI,4BAEI,8BAAA,CAAA,gChEq4TR,CgEv4TI,6BAEI,+BAAA,CAAA,uChEy4TR,CgE34TI,4BAEI,kCAAA,CAAA,sChE64TR,CgE/4TI,4BAEI,oCAAA,CAAA,sChEi5TR,CgEn5TI,uBAEI,8BAAA,CAAA,gChEq5TR,CgEv5TI,qBAEI,4BAAA,CAAA,8BhEy5TR,CgE35TI,wBAEI,+BAAA,CAAA,4BhE65TR,CgE/5TI,0BAEI,iCAAA,CAAA,8BhEi6TR,CgEn6TI,yBAEI,gCAAA,CAAA,6BhEq6TR,CgEv6TI,yBAEI,kCAAA,CAAA,kChEy6TR,CgE36TI,uBAEI,gCAAA,CAAA,gChE66TR,CgE/6TI,0BAEI,mCAAA,CAAA,8BhEi7TR,CgEn7TI,2BAEI,oCAAA,CAAA,qChEq7TR,CgEv7TI,0BAEI,uCAAA,CAAA,oChEy7TR,CgE37TI,2BAEI,oCAAA,CAAA,+BhE67TR,CgE/7TI,qBAEI,kCAAA,CAAA,iCAAA,CAAA,yBhEi8TR,CgEn8TI,sBAEI,mCAAA,CAAA,+BhEq8TR,CgEv8TI,oBAEI,iCAAA,CAAA,6BhEy8TR,CgE38TI,uBAEI,oCAAA,CAAA,mCAAA,CAAA,2BhE68TR,CgE/8TI,yBAEI,sCAAA,CAAA,6BhEi9TR,CgEn9TI,wBAEI,qCAAA,CAAA,oCAAA,CAAA,4BhEq9TR,CgEv9TI,iBAEI,2BAAA,CAAA,kBhEy9TR,CgE39TI,aAEI,0BAAA,CAAA,iBhE69TR,CgE/9TI,aAEI,0BAAA,CAAA,iBhEi+TR,CgEn+TI,aAEI,0BAAA,CAAA,iBhEq+TR,CgEv+TI,aAEI,0BAAA,CAAA,iBhEy+TR,CgE3+TI,aAEI,0BAAA,CAAA,iBhE6+TR,CgE/+TI,aAEI,0BAAA,CAAA,iBhEi/TR,CgEn/TI,gBAEI,0BAAA,CAAA,iBhEq/TR,CgEv/TI,SAEI,kBhEy/TR,CgE3/TI,SAEI,uBhE6/TR,CgE//TI,SAEI,sBhEigUR,CgEngUI,SAEI,qBhEqgUR,CgEvgUI,SAEI,uBhEygUR,CgE3gUI,SAEI,qBhE6gUR,CgE/gUI,YAEI,qBhEihUR,CgEnhUI,UAEI,uBAAA,CAAA,wBhEshUR,CgExhUI,UAEI,4BAAA,CAAA,6BhE2hUR,CgE7hUI,UAEI,2BAAA,CAAA,4BhEgiUR,CgEliUI,UAEI,0BAAA,CAAA,2BhEqiUR,CgEviUI,UAEI,4BAAA,CAAA,6BhE0iUR,CgE5iUI,UAEI,0BAAA,CAAA,2BhE+iUR,CgEjjUI,aAEI,0BAAA,CAAA,2BhEojUR,CgEtjUI,UAEI,yBAAA,CAAA,sBhEyjUR,CgE3jUI,UAEI,8BAAA,CAAA,2BhE8jUR,CgEhkUI,UAEI,6BAAA,CAAA,0BhEmkUR,CgErkUI,UAEI,4BAAA,CAAA,yBhEwkUR,CgE1kUI,UAEI,8BAAA,CAAA,2BhE6kUR,CgE/kUI,UAEI,4BAAA,CAAA,yBhEklUR,CgEplUI,aAEI,4BAAA,CAAA,yBhEulUR,CgEzlUI,UAEI,sBhE2lUR,CgE7lUI,UAEI,2BhE+lUR,CgEjmUI,UAEI,0BhEmmUR,CgErmUI,UAEI,yBhEumUR,CgEzmUI,UAEI,2BhE2mUR,CgE7mUI,UAEI,yBhE+mUR,CgEjnUI,aAEI,yBhEmnUR,CgErnUI,UAEI,wBhEunUR,CgEznUI,UAEI,6BhE2nUR,CgE7nUI,UAEI,4BhE+nUR,CgEjoUI,UAEI,2BhEmoUR,CgEroUI,UAEI,6BhEuoUR,CgEzoUI,UAEI,2BhE2oUR,CgE7oUI,aAEI,2BhE+oUR,CgEjpUI,UAEI,yBhEmpUR,CgErpUI,UAEI,8BhEupUR,CgEzpUI,UAEI,6BhE2pUR,CgE7pUI,UAEI,4BhE+pUR,CgEjqUI,UAEI,8BhEmqUR,CgErqUI,UAEI,4BhEuqUR,CgEzqUI,aAEI,4BhE2qUR,CgE7qUI,UAEI,uBhE+qUR,CgEjrUI,UAEI,4BhEmrUR,CgErrUI,UAEI,2BhEurUR,CgEzrUI,UAEI,0BhE2rUR,CgE7rUI,UAEI,4BhE+rUR,CgEjsUI,UAEI,0BhEmsUR,CgErsUI,aAEI,0BhEusUR,CgEzsUI,SAEI,mBhE2sUR,CgE7sUI,SAEI,wBhE+sUR,CgEjtUI,SAEI,uBhEmtUR,CgErtUI,SAEI,sBhEutUR,CgEztUI,SAEI,wBhE2tUR,CgE7tUI,SAEI,sBhE+tUR,CgEjuUI,UAEI,wBAAA,CAAA,yBhEouUR,CgEtuUI,UAEI,6BAAA,CAAA,8BhEyuUR,CgE3uUI,UAEI,4BAAA,CAAA,6BhE8uUR,CgEhvUI,UAEI,2BAAA,CAAA,4BhEmvUR,CgErvUI,UAEI,6BAAA,CAAA,8BhEwvUR,CgE1vUI,UAEI,2BAAA,CAAA,4BhE6vUR,CgE/vUI,UAEI,0BAAA,CAAA,uBhEkwUR,CgEpwUI,UAEI,+BAAA,CAAA,4BhEuwUR,CgEzwUI,UAEI,8BAAA,CAAA,2BhE4wUR,CgE9wUI,UAEI,6BAAA,CAAA,0BhEixUR,CgEnxUI,UAEI,+BAAA,CAAA,4BhEsxUR,CgExxUI,UAEI,6BAAA,CAAA,0BhE2xUR,CgE7xUI,UAEI,uBhE+xUR,CgEjyUI,UAEI,4BhEmyUR,CgEryUI,UAEI,2BhEuyUR,CgEzyUI,UAEI,0BhE2yUR,CgE7yUI,UAEI,4BhE+yUR,CgEjzUI,UAEI,0BhEmzUR,CgErzUI,UAEI,yBhEuzUR,CgEzzUI,UAEI,8BhE2zUR,CgE7zUI,UAEI,6BhE+zUR,CgEj0UI,UAEI,4BhEm0UR,CgEr0UI,UAEI,8BhEu0UR,CgEz0UI,UAEI,4BhE20UR,CgE70UI,UAEI,0BhE+0UR,CgEj1UI,UAEI,+BhEm1UR,CgEr1UI,UAEI,8BhEu1UR,CgEz1UI,UAEI,6BhE21UR,CgE71UI,UAEI,+BhE+1UR,CgEj2UI,UAEI,6BhEm2UR,CgEr2UI,UAEI,wBhEu2UR,CgEz2UI,UAEI,6BhE22UR,CgE72UI,UAEI,4BhE+2UR,CgEj3UI,UAEI,2BhEm3UR,CgEr3UI,UAEI,6BhEu3UR,CgEz3UI,UAEI,2BhE23UR,CgE73UI,gBAEI,yBhE+3UR,CgEj4UI,cAEI,0BhEm4UR,CgEr4UI,iBAEI,2BhEu4UR,CACF,CiEx6UA,0BD8BM,MAEI,0BhE44UR,CgE94UI,MAEI,wBhEg5UR,CgEl5UI,MAEI,2BhEo5UR,CgEt5UI,MAEI,0BhEw5UR,CACF,CiEt6UA,aDWM,gBAEI,wBhE65UR,CgE/5UI,sBAEI,8BhEi6UR,CgEn6UI,eAEI,uBhEq6UR,CgEv6UI,cAEI,0BAAA,CAAA,sBhEy6UR,CgE36UI,eAEI,uBhE66UR,CgE/6UI,mBAEI,2BhEi7UR,CgEn7UI,oBAEI,4BhEq7UR,CgEv7UI,cAEI,6BAAA,CAAA,sBhEy7UR,CgE37UI,qBAEI,oCAAA,CAAA,6BhE67UR,CgE/7UI,cAEI,sBhEi8UR,CACF,CkEl/UA,WAEE,qBAAA,CACA,qBAAA,CADA,kBAAA,CADA,mBAAA,CAAA,YAAA,CAEA,6BAAA,CACA,YlEo/UF,CkEx+UA,4BAEE,wB/DZS,C+DWT,alE4+UF,CkEx+UA,mBACE,gBAAA,CAAA,YAAA,CACA,Q/D+NO,C+D9NP,kBlE2+UF,CkEx+UA,mBAEE,4BAlByB,CAiBzB,alE4+UF,CkEz+UE,kDAGE,4BArB6B,CAoB7B,alE2+UJ,CkE/9UA,uDACE,4BlEs+UF,CmE1gVA,WAEE,aAAA,CADA,YnE8gVF,CmE1gVA,UAEE,WAAA,CADA,UnE8gVF,CmE1gVA,SAEE,cAAA,CADA,anE8gVF,CmE1gVA,SAEE,aAAA,CADA,YnE8gVF,CmE1gVA,SAEE,WAAA,CADA,UnE8gVF,CmE1gVA,UAEE,aAAA,CADA,YnE8gVF,CmE1gVA,WAEE,WAAA,CADA,UnE8gVF,CmE1gVA,aAEE,UAAA,CADA,SnE8gVF,CmE1gVA,iBACE,+BAAA,CAAA,uBnE6gVF,CmE1gVA,kBACE,gCAAA,CAAA,wBnE6gVF,CmE1gVA,kBACE,gCAAA,CAAA,wBnE6gVF,CmE1gVA,uBACE,4BAAA,CAAA,oBnE6gVF,CmE1gVA,qBACE,4BAAA,CAAA,oBnE6gVF,CmExgVE,eACE,cAAA,CACA,qBnE4gVJ","file":"oe-bcl-default.min.css"} \ No newline at end of file diff --git a/assets/css/oe_bootstrap_theme.style.min.css b/assets/css/oe_bootstrap_theme.style.min.css deleted file mode 100644 index fd414def..00000000 --- a/assets/css/oe_bootstrap_theme.style.min.css +++ /dev/null @@ -1,2 +0,0 @@ - -/*# sourceMappingURL=oe_bootstrap_theme.style.min.css.map */ \ No newline at end of file diff --git a/assets/css/oe_bootstrap_theme.style.min.css.map b/assets/css/oe_bootstrap_theme.style.min.css.map deleted file mode 100644 index ce62a1e6..00000000 --- a/assets/css/oe_bootstrap_theme.style.min.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":[],"names":[],"mappings":"","file":"oe_bootstrap_theme.style.min.css"} \ No newline at end of file diff --git a/assets/icons/bootstrap-icons.svg b/assets/icons/bootstrap-icons.svg deleted file mode 100644 index 7e2d6429..00000000 --- a/assets/icons/bootstrap-icons.svg +++ /dev/null @@ -1 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><symbol fill="currentColor" class="bi bi-alarm" viewBox="0 0 16 16" id="alarm" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 5.5a.5.5 0 00-1 0v3.362l-1.429 2.38a.5.5 0 10.858.515l1.5-2.5A.5.5 0 008.5 9V5.5z"/><path d="M6.5 0a.5.5 0 000 1H7v1.07a7.001 7.001 0 00-3.273 12.474l-.602.602a.5.5 0 00.707.708l.746-.746A6.97 6.97 0 008 16a6.97 6.97 0 003.422-.892l.746.746a.5.5 0 00.707-.708l-.601-.602A7.001 7.001 0 009 2.07V1h.5a.5.5 0 000-1h-3zm1.038 3.018a6.093 6.093 0 01.924 0 6 6 0 11-.924 0zM0 3.5c0 .753.333 1.429.86 1.887A8.035 8.035 0 014.387 1.86 2.5 2.5 0 000 3.5zM13.5 1c-.753 0-1.429.333-1.887.86a8.035 8.035 0 013.527 3.527A2.5 2.5 0 0013.5 1z"/></symbol><symbol fill="currentColor" class="bi bi-alarm-fill" viewBox="0 0 16 16" id="alarm-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 .5a.5.5 0 01.5-.5h3a.5.5 0 010 1H9v1.07a7.001 7.001 0 013.274 12.474l.601.602a.5.5 0 01-.707.708l-.746-.746A6.97 6.97 0 018 16a6.97 6.97 0 01-3.422-.892l-.746.746a.5.5 0 01-.707-.708l.602-.602A7.001 7.001 0 017 2.07V1h-.5A.5.5 0 016 .5zm2.5 5a.5.5 0 00-1 0v3.362l-1.429 2.38a.5.5 0 10.858.515l1.5-2.5A.5.5 0 008.5 9V5.5zM.86 5.387A2.5 2.5 0 114.387 1.86 8.035 8.035 0 00.86 5.387zM11.613 1.86a2.5 2.5 0 113.527 3.527 8.035 8.035 0 00-3.527-3.527z"/></symbol><symbol fill="currentColor" class="bi bi-align-bottom" viewBox="0 0 16 16" id="align-bottom" xmlns="http://www.w3.org/2000/svg"><rect width="4" height="12" x="6" y="1" rx="1"/><path d="M1.5 14a.5.5 0 000 1v-1zm13 1a.5.5 0 000-1v1zm-13 0h13v-1h-13v1z"/></symbol><symbol fill="currentColor" class="bi bi-align-center" viewBox="0 0 16 16" id="align-center" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a.5.5 0 01.5.5V6h-1V1.5A.5.5 0 018 1zm0 14a.5.5 0 01-.5-.5V10h1v4.5a.5.5 0 01-.5.5zM2 7a1 1 0 011-1h10a1 1 0 011 1v2a1 1 0 01-1 1H3a1 1 0 01-1-1V7z"/></symbol><symbol fill="currentColor" class="bi bi-align-end" viewBox="0 0 16 16" id="align-end" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M14.5 1a.5.5 0 00-.5.5v13a.5.5 0 001 0v-13a.5.5 0 00-.5-.5z"/><path d="M13 7a1 1 0 00-1-1H2a1 1 0 00-1 1v2a1 1 0 001 1h10a1 1 0 001-1V7z"/></symbol><symbol fill="currentColor" class="bi bi-align-middle" viewBox="0 0 16 16" id="align-middle" xmlns="http://www.w3.org/2000/svg"><path d="M6 13a1 1 0 001 1h2a1 1 0 001-1V3a1 1 0 00-1-1H7a1 1 0 00-1 1v10zM1 8a.5.5 0 00.5.5H6v-1H1.5A.5.5 0 001 8zm14 0a.5.5 0 01-.5.5H10v-1h4.5a.5.5 0 01.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-align-start" viewBox="0 0 16 16" id="align-start" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.5 1a.5.5 0 01.5.5v13a.5.5 0 01-1 0v-13a.5.5 0 01.5-.5z"/><path d="M3 7a1 1 0 011-1h10a1 1 0 011 1v2a1 1 0 01-1 1H4a1 1 0 01-1-1V7z"/></symbol><symbol fill="currentColor" class="bi bi-align-top" viewBox="0 0 16 16" id="align-top" xmlns="http://www.w3.org/2000/svg"><rect width="4" height="12" rx="1" transform="matrix(1 0 0 -1 6 15)"/><path d="M1.5 2a.5.5 0 010-1v1zm13-1a.5.5 0 010 1V1zm-13 0h13v1h-13V1z"/></symbol><symbol fill="currentColor" class="bi bi-alt" viewBox="0 0 16 16" id="alt" xmlns="http://www.w3.org/2000/svg"><path d="M1 13.5a.5.5 0 00.5.5h3.797a.5.5 0 00.439-.26L11 3h3.5a.5.5 0 000-1h-3.797a.5.5 0 00-.439.26L5 13H1.5a.5.5 0 00-.5.5zm10 0a.5.5 0 00.5.5h3a.5.5 0 000-1h-3a.5.5 0 00-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-app" viewBox="0 0 16 16" id="app" xmlns="http://www.w3.org/2000/svg"><path d="M11 2a3 3 0 013 3v6a3 3 0 01-3 3H5a3 3 0 01-3-3V5a3 3 0 013-3h6zM5 1a4 4 0 00-4 4v6a4 4 0 004 4h6a4 4 0 004-4V5a4 4 0 00-4-4H5z"/></symbol><symbol fill="currentColor" class="bi bi-app-indicator" viewBox="0 0 16 16" id="app-indicator" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 2A3.5 3.5 0 002 5.5v5A3.5 3.5 0 005.5 14h5a3.5 3.5 0 003.5-3.5V8a.5.5 0 011 0v2.5a4.5 4.5 0 01-4.5 4.5h-5A4.5 4.5 0 011 10.5v-5A4.5 4.5 0 015.5 1H8a.5.5 0 010 1H5.5z"/><path d="M16 3a3 3 0 11-6 0 3 3 0 016 0z"/></symbol><symbol fill="currentColor" class="bi bi-archive" viewBox="0 0 16 16" id="archive" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a1 1 0 011-1h14a1 1 0 011 1v2a1 1 0 01-1 1v7.5a2.5 2.5 0 01-2.5 2.5h-9A2.5 2.5 0 011 12.5V5a1 1 0 01-1-1V2zm2 3v7.5A1.5 1.5 0 003.5 14h9a1.5 1.5 0 001.5-1.5V5H2zm13-3H1v2h14V2zM5 7.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-archive-fill" viewBox="0 0 16 16" id="archive-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12.643 15C13.979 15 15 13.845 15 12.5V5H1v7.5C1 13.845 2.021 15 3.357 15h9.286zM5.5 7h5a.5.5 0 010 1h-5a.5.5 0 010-1zM.8 1a.8.8 0 00-.8.8V3a.8.8 0 00.8.8h14.4A.8.8 0 0016 3V1.8a.8.8 0 00-.8-.8H.8z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-90deg-down" viewBox="0 0 16 16" id="arrow-90deg-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.854 14.854a.5.5 0 01-.708 0l-4-4a.5.5 0 01.708-.708L4 13.293V3.5A2.5 2.5 0 016.5 1h8a.5.5 0 010 1h-8A1.5 1.5 0 005 3.5v9.793l3.146-3.147a.5.5 0 01.708.708l-4 4z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-90deg-left" viewBox="0 0 16 16" id="arrow-90deg-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.146 4.854a.5.5 0 010-.708l4-4a.5.5 0 11.708.708L2.707 4H12.5A2.5 2.5 0 0115 6.5v8a.5.5 0 01-1 0v-8A1.5 1.5 0 0012.5 5H2.707l3.147 3.146a.5.5 0 11-.708.708l-4-4z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-90deg-right" viewBox="0 0 16 16" id="arrow-90deg-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M14.854 4.854a.5.5 0 000-.708l-4-4a.5.5 0 00-.708.708L13.293 4H3.5A2.5 2.5 0 001 6.5v8a.5.5 0 001 0v-8A1.5 1.5 0 013.5 5h9.793l-3.147 3.146a.5.5 0 00.708.708l4-4z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-90deg-up" viewBox="0 0 16 16" id="arrow-90deg-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.854 1.146a.5.5 0 00-.708 0l-4 4a.5.5 0 10.708.708L4 2.707V12.5A2.5 2.5 0 006.5 15h8a.5.5 0 000-1h-8A1.5 1.5 0 015 12.5V2.707l3.146 3.147a.5.5 0 10.708-.708l-4-4z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-bar-down" viewBox="0 0 16 16" id="arrow-bar-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 3.5a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13a.5.5 0 01-.5-.5zM8 6a.5.5 0 01.5.5v5.793l2.146-2.147a.5.5 0 01.708.708l-3 3a.5.5 0 01-.708 0l-3-3a.5.5 0 01.708-.708L7.5 12.293V6.5A.5.5 0 018 6z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-bar-left" viewBox="0 0 16 16" id="arrow-bar-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M12.5 15a.5.5 0 01-.5-.5v-13a.5.5 0 011 0v13a.5.5 0 01-.5.5zM10 8a.5.5 0 01-.5.5H3.707l2.147 2.146a.5.5 0 01-.708.708l-3-3a.5.5 0 010-.708l3-3a.5.5 0 11.708.708L3.707 7.5H9.5a.5.5 0 01.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-bar-right" viewBox="0 0 16 16" id="arrow-bar-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 8a.5.5 0 00.5.5h5.793l-2.147 2.146a.5.5 0 00.708.708l3-3a.5.5 0 000-.708l-3-3a.5.5 0 00-.708.708L12.293 7.5H6.5A.5.5 0 006 8zm-2.5 7a.5.5 0 01-.5-.5v-13a.5.5 0 011 0v13a.5.5 0 01-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-bar-up" viewBox="0 0 16 16" id="arrow-bar-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 10a.5.5 0 00.5-.5V3.707l2.146 2.147a.5.5 0 00.708-.708l-3-3a.5.5 0 00-.708 0l-3 3a.5.5 0 10.708.708L7.5 3.707V9.5a.5.5 0 00.5.5zm-7 2.5a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-clockwise" viewBox="0 0 16 16" id="arrow-clockwise" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 3a5 5 0 104.546 2.914.5.5 0 01.908-.417A6 6 0 118 2v1z"/><path d="M8 4.466V.534a.25.25 0 01.41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 018 4.466z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-counterclockwise" viewBox="0 0 16 16" id="arrow-counterclockwise" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 3a5 5 0 11-4.546 2.914.5.5 0 00-.908-.417A6 6 0 108 2v1z"/><path d="M8 4.466V.534a.25.25 0 00-.41-.192L5.23 2.308a.25.25 0 000 .384l2.36 1.966A.25.25 0 008 4.466z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down" viewBox="0 0 16 16" id="arrow-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 1a.5.5 0 01.5.5v11.793l3.146-3.147a.5.5 0 01.708.708l-4 4a.5.5 0 01-.708 0l-4-4a.5.5 0 01.708-.708L7.5 13.293V1.5A.5.5 0 018 1z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-circle" viewBox="0 0 16 16" id="arrow-down-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zM8.5 4.5a.5.5 0 00-1 0v5.793L5.354 8.146a.5.5 0 10-.708.708l3 3a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 10.293V4.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-circle-fill" viewBox="0 0 16 16" id="arrow-down-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM8.5 4.5a.5.5 0 00-1 0v5.793L5.354 8.146a.5.5 0 10-.708.708l3 3a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 10.293V4.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-left" viewBox="0 0 16 16" id="arrow-down-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 13.5a.5.5 0 00.5.5h6a.5.5 0 000-1H3.707L13.854 2.854a.5.5 0 00-.708-.708L3 12.293V7.5a.5.5 0 00-1 0v6z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-left-circle" viewBox="0 0 16 16" id="arrow-down-left-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zm-5.904-2.854a.5.5 0 11.707.708L6.707 9.95h2.768a.5.5 0 110 1H5.5a.5.5 0 01-.5-.5V6.475a.5.5 0 111 0v2.768l4.096-4.097z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-left-circle-fill" viewBox="0 0 16 16" id="arrow-down-left-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 100 8a8 8 0 0016 0zm-5.904-2.803a.5.5 0 11.707.707L6.707 10h2.768a.5.5 0 010 1H5.5a.5.5 0 01-.5-.5V6.525a.5.5 0 011 0v2.768l4.096-4.096z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-left-square" viewBox="0 0 16 16" id="arrow-down-left-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm10.096 3.146a.5.5 0 11.707.708L6.707 9.95h2.768a.5.5 0 110 1H5.5a.5.5 0 01-.5-.5V6.475a.5.5 0 111 0v2.768l4.096-4.097z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-left-square-fill" viewBox="0 0 16 16" id="arrow-down-left-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 16a2 2 0 01-2-2V2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2zm8.096-10.803L6 9.293V6.525a.5.5 0 00-1 0V10.5a.5.5 0 00.5.5h3.975a.5.5 0 000-1H6.707l4.096-4.096a.5.5 0 10-.707-.707z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-right" viewBox="0 0 16 16" id="arrow-down-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M14 13.5a.5.5 0 01-.5.5h-6a.5.5 0 010-1h4.793L2.146 2.854a.5.5 0 11.708-.708L13 12.293V7.5a.5.5 0 011 0v6z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-right-circle" viewBox="0 0 16 16" id="arrow-down-right-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zM5.854 5.146a.5.5 0 10-.708.708L9.243 9.95H6.475a.5.5 0 100 1h3.975a.5.5 0 00.5-.5V6.475a.5.5 0 10-1 0v2.768L5.854 5.146z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-right-circle-fill" viewBox="0 0 16 16" id="arrow-down-right-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 8a8 8 0 1116 0A8 8 0 010 8zm5.904-2.803a.5.5 0 10-.707.707L9.293 10H6.525a.5.5 0 000 1H10.5a.5.5 0 00.5-.5V6.525a.5.5 0 00-1 0v2.768L5.904 5.197z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-right-square" viewBox="0 0 16 16" id="arrow-down-right-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm5.854 3.146a.5.5 0 10-.708.708L9.243 9.95H6.475a.5.5 0 100 1h3.975a.5.5 0 00.5-.5V6.475a.5.5 0 10-1 0v2.768L5.854 5.146z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-right-square-fill" viewBox="0 0 16 16" id="arrow-down-right-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M14 16a2 2 0 002-2V2a2 2 0 00-2-2H2a2 2 0 00-2 2v12a2 2 0 002 2h12zM5.904 5.197L10 9.293V6.525a.5.5 0 011 0V10.5a.5.5 0 01-.5.5H6.525a.5.5 0 010-1h2.768L5.197 5.904a.5.5 0 01.707-.707z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-short" viewBox="0 0 16 16" id="arrow-down-short" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 4a.5.5 0 01.5.5v5.793l2.146-2.147a.5.5 0 01.708.708l-3 3a.5.5 0 01-.708 0l-3-3a.5.5 0 11.708-.708L7.5 10.293V4.5A.5.5 0 018 4z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-square" viewBox="0 0 16 16" id="arrow-down-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm8.5 2.5a.5.5 0 00-1 0v5.793L5.354 8.146a.5.5 0 10-.708.708l3 3a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 10.293V4.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-square-fill" viewBox="0 0 16 16" id="arrow-down-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm6.5 4.5v5.793l2.146-2.147a.5.5 0 01.708.708l-3 3a.5.5 0 01-.708 0l-3-3a.5.5 0 11.708-.708L7.5 10.293V4.5a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-down-up" viewBox="0 0 16 16" id="arrow-down-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11.5 15a.5.5 0 00.5-.5V2.707l3.146 3.147a.5.5 0 00.708-.708l-4-4a.5.5 0 00-.708 0l-4 4a.5.5 0 10.708.708L11 2.707V14.5a.5.5 0 00.5.5zm-7-14a.5.5 0 01.5.5v11.793l3.146-3.147a.5.5 0 01.708.708l-4 4a.5.5 0 01-.708 0l-4-4a.5.5 0 01.708-.708L4 13.293V1.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-left" viewBox="0 0 16 16" id="arrow-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 8a.5.5 0 00-.5-.5H2.707l3.147-3.146a.5.5 0 10-.708-.708l-4 4a.5.5 0 000 .708l4 4a.5.5 0 00.708-.708L2.707 8.5H14.5A.5.5 0 0015 8z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-left-circle" viewBox="0 0 16 16" id="arrow-left-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zm-4.5-.5a.5.5 0 010 1H5.707l2.147 2.146a.5.5 0 01-.708.708l-3-3a.5.5 0 010-.708l3-3a.5.5 0 11.708.708L5.707 7.5H11.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-left-circle-fill" viewBox="0 0 16 16" id="arrow-left-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a8 8 0 100 16A8 8 0 008 0zm3.5 7.5a.5.5 0 010 1H5.707l2.147 2.146a.5.5 0 01-.708.708l-3-3a.5.5 0 010-.708l3-3a.5.5 0 11.708.708L5.707 7.5H11.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-left-right" viewBox="0 0 16 16" id="arrow-left-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 11.5a.5.5 0 00.5.5h11.793l-3.147 3.146a.5.5 0 00.708.708l4-4a.5.5 0 000-.708l-4-4a.5.5 0 00-.708.708L13.293 11H1.5a.5.5 0 00-.5.5zm14-7a.5.5 0 01-.5.5H2.707l3.147 3.146a.5.5 0 11-.708.708l-4-4a.5.5 0 010-.708l4-4a.5.5 0 11.708.708L2.707 4H14.5a.5.5 0 01.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-left-short" viewBox="0 0 16 16" id="arrow-left-short" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M12 8a.5.5 0 01-.5.5H5.707l2.147 2.146a.5.5 0 01-.708.708l-3-3a.5.5 0 010-.708l3-3a.5.5 0 11.708.708L5.707 7.5H11.5a.5.5 0 01.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-left-square" viewBox="0 0 16 16" id="arrow-left-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm11.5 5.5a.5.5 0 010 1H5.707l2.147 2.146a.5.5 0 01-.708.708l-3-3a.5.5 0 010-.708l3-3a.5.5 0 11.708.708L5.707 7.5H11.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-left-square-fill" viewBox="0 0 16 16" id="arrow-left-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 14a2 2 0 01-2 2H2a2 2 0 01-2-2V2a2 2 0 012-2h12a2 2 0 012 2v12zm-4.5-6.5H5.707l2.147-2.146a.5.5 0 10-.708-.708l-3 3a.5.5 0 000 .708l3 3a.5.5 0 00.708-.708L5.707 8.5H11.5a.5.5 0 000-1z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-repeat" viewBox="0 0 16 16" id="arrow-repeat" xmlns="http://www.w3.org/2000/svg"><path d="M11.534 7h3.932a.25.25 0 01.192.41l-1.966 2.36a.25.25 0 01-.384 0l-1.966-2.36a.25.25 0 01.192-.41zm-11 2h3.932a.25.25 0 00.192-.41L2.692 6.23a.25.25 0 00-.384 0L.342 8.59A.25.25 0 00.534 9z"/><path fill-rule="evenodd" d="M8 3c-1.552 0-2.94.707-3.857 1.818a.5.5 0 11-.771-.636A6.002 6.002 0 0113.917 7H12.9A5.002 5.002 0 008 3zM3.1 9a5.002 5.002 0 008.757 2.182.5.5 0 11.771.636A6.002 6.002 0 012.083 9H3.1z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-return-left" viewBox="0 0 16 16" id="arrow-return-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M14.5 1.5a.5.5 0 01.5.5v4.8a2.5 2.5 0 01-2.5 2.5H2.707l3.347 3.346a.5.5 0 01-.708.708l-4.2-4.2a.5.5 0 010-.708l4-4a.5.5 0 11.708.708L2.707 8.3H12.5A1.5 1.5 0 0014 6.8V2a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-return-right" viewBox="0 0 16 16" id="arrow-return-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.5 1.5A.5.5 0 001 2v4.8a2.5 2.5 0 002.5 2.5h9.793l-3.347 3.346a.5.5 0 00.708.708l4.2-4.2a.5.5 0 000-.708l-4-4a.5.5 0 00-.708.708L13.293 8.3H3.5A1.5 1.5 0 012 6.8V2a.5.5 0 00-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-right" viewBox="0 0 16 16" id="arrow-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a.5.5 0 01.5-.5h11.793l-3.147-3.146a.5.5 0 01.708-.708l4 4a.5.5 0 010 .708l-4 4a.5.5 0 01-.708-.708L13.293 8.5H1.5A.5.5 0 011 8z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-right-circle" viewBox="0 0 16 16" id="arrow-right-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zM4.5 7.5a.5.5 0 000 1h5.793l-2.147 2.146a.5.5 0 00.708.708l3-3a.5.5 0 000-.708l-3-3a.5.5 0 10-.708.708L10.293 7.5H4.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-right-circle-fill" viewBox="0 0 16 16" id="arrow-right-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a8 8 0 110 16A8 8 0 018 0zM4.5 7.5a.5.5 0 000 1h5.793l-2.147 2.146a.5.5 0 00.708.708l3-3a.5.5 0 000-.708l-3-3a.5.5 0 10-.708.708L10.293 7.5H4.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-right-short" viewBox="0 0 16 16" id="arrow-right-short" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4 8a.5.5 0 01.5-.5h5.793L8.146 5.354a.5.5 0 11.708-.708l3 3a.5.5 0 010 .708l-3 3a.5.5 0 01-.708-.708L10.293 8.5H4.5A.5.5 0 014 8z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-right-square" viewBox="0 0 16 16" id="arrow-right-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm4.5 5.5a.5.5 0 000 1h5.793l-2.147 2.146a.5.5 0 00.708.708l3-3a.5.5 0 000-.708l-3-3a.5.5 0 10-.708.708L10.293 7.5H4.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-right-square-fill" viewBox="0 0 16 16" id="arrow-right-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 14a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2a2 2 0 00-2 2v12zm4.5-6.5h5.793L8.146 5.354a.5.5 0 11.708-.708l3 3a.5.5 0 010 .708l-3 3a.5.5 0 01-.708-.708L10.293 8.5H4.5a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up" viewBox="0 0 16 16" id="arrow-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 15a.5.5 0 00.5-.5V2.707l3.146 3.147a.5.5 0 00.708-.708l-4-4a.5.5 0 00-.708 0l-4 4a.5.5 0 10.708.708L7.5 2.707V14.5a.5.5 0 00.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-circle" viewBox="0 0 16 16" id="arrow-up-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zm-7.5 3.5a.5.5 0 01-1 0V5.707L5.354 7.854a.5.5 0 11-.708-.708l3-3a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 5.707V11.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-circle-fill" viewBox="0 0 16 16" id="arrow-up-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 100 8a8 8 0 0016 0zm-7.5 3.5a.5.5 0 01-1 0V5.707L5.354 7.854a.5.5 0 11-.708-.708l3-3a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 5.707V11.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-left" viewBox="0 0 16 16" id="arrow-up-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 2.5a.5.5 0 01.5-.5h6a.5.5 0 010 1H3.707l10.147 10.146a.5.5 0 01-.708.708L3 3.707V8.5a.5.5 0 01-1 0v-6z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-left-circle" viewBox="0 0 16 16" id="arrow-up-left-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zm-5.904 2.803a.5.5 0 10.707-.707L6.707 6h2.768a.5.5 0 100-1H5.5a.5.5 0 00-.5.5v3.975a.5.5 0 001 0V6.707l4.096 4.096z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-left-circle-fill" viewBox="0 0 16 16" id="arrow-up-left-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-5.904 2.803a.5.5 0 10.707-.707L6.707 6h2.768a.5.5 0 100-1H5.5a.5.5 0 00-.5.5v3.975a.5.5 0 001 0V6.707l4.096 4.096z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-left-square" viewBox="0 0 16 16" id="arrow-up-left-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm10.096 8.803a.5.5 0 10.707-.707L6.707 6h2.768a.5.5 0 100-1H5.5a.5.5 0 00-.5.5v3.975a.5.5 0 001 0V6.707l4.096 4.096z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-left-square-fill" viewBox="0 0 16 16" id="arrow-up-left-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm8.096 10.803L6 6.707v2.768a.5.5 0 01-1 0V5.5a.5.5 0 01.5-.5h3.975a.5.5 0 110 1H6.707l4.096 4.096a.5.5 0 11-.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-right" viewBox="0 0 16 16" id="arrow-up-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M14 2.5a.5.5 0 00-.5-.5h-6a.5.5 0 000 1h4.793L2.146 13.146a.5.5 0 00.708.708L13 3.707V8.5a.5.5 0 001 0v-6z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-right-circle" viewBox="0 0 16 16" id="arrow-up-right-circle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a7 7 0 1014 0A7 7 0 001 8zm15 0A8 8 0 110 8a8 8 0 0116 0zM5.854 10.803a.5.5 0 11-.708-.707L9.243 6H6.475a.5.5 0 110-1h3.975a.5.5 0 01.5.5v3.975a.5.5 0 11-1 0V6.707l-4.096 4.096z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-right-circle-fill" viewBox="0 0 16 16" id="arrow-up-right-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 8a8 8 0 1016 0A8 8 0 000 8zm5.904 2.803a.5.5 0 11-.707-.707L9.293 6H6.525a.5.5 0 110-1H10.5a.5.5 0 01.5.5v3.975a.5.5 0 01-1 0V6.707l-4.096 4.096z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-right-square" viewBox="0 0 16 16" id="arrow-up-right-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm5.854 8.803a.5.5 0 11-.708-.707L9.243 6H6.475a.5.5 0 110-1h3.975a.5.5 0 01.5.5v3.975a.5.5 0 11-1 0V6.707l-4.096 4.096z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-right-square-fill" viewBox="0 0 16 16" id="arrow-up-right-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M14 0a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2a2 2 0 012-2h12zM5.904 10.803L10 6.707v2.768a.5.5 0 001 0V5.5a.5.5 0 00-.5-.5H6.525a.5.5 0 100 1h2.768l-4.096 4.096a.5.5 0 00.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-short" viewBox="0 0 16 16" id="arrow-up-short" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 12a.5.5 0 00.5-.5V5.707l2.146 2.147a.5.5 0 00.708-.708l-3-3a.5.5 0 00-.708 0l-3 3a.5.5 0 10.708.708L7.5 5.707V11.5a.5.5 0 00.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-square" viewBox="0 0 16 16" id="arrow-up-square" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 2a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2zM0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm8.5 9.5a.5.5 0 01-1 0V5.707L5.354 7.854a.5.5 0 11-.708-.708l3-3a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 5.707V11.5z"/></symbol><symbol fill="currentColor" class="bi bi-arrow-up-square-fill" viewBox="0 0 16 16" id="arrow-up-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 16a2 2 0 01-2-2V2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2zm6.5-4.5V5.707l2.146 2.147a.5.5 0 00.708-.708l-3-3a.5.5 0 00-.708 0l-3 3a.5.5 0 10.708.708L7.5 5.707V11.5a.5.5 0 001 0z"/></symbol><symbol fill="currentColor" class="bi bi-arrows-angle-contract" viewBox="0 0 16 16" id="arrows-angle-contract" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M.172 15.828a.5.5 0 00.707 0l4.096-4.096V14.5a.5.5 0 101 0v-3.975a.5.5 0 00-.5-.5H1.5a.5.5 0 000 1h2.768L.172 15.121a.5.5 0 000 .707zM15.828.172a.5.5 0 00-.707 0l-4.096 4.096V1.5a.5.5 0 10-1 0v3.975a.5.5 0 00.5.5H14.5a.5.5 0 000-1h-2.768L15.828.879a.5.5 0 000-.707z"/></symbol><symbol fill="currentColor" class="bi bi-arrows-angle-expand" viewBox="0 0 16 16" id="arrows-angle-expand" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.828 10.172a.5.5 0 00-.707 0l-4.096 4.096V11.5a.5.5 0 00-1 0v3.975a.5.5 0 00.5.5H4.5a.5.5 0 000-1H1.732l4.096-4.096a.5.5 0 000-.707zm4.344-4.344a.5.5 0 00.707 0l4.096-4.096V4.5a.5.5 0 101 0V.525a.5.5 0 00-.5-.5H11.5a.5.5 0 000 1h2.768l-4.096 4.096a.5.5 0 000 .707z"/></symbol><symbol fill="currentColor" class="bi bi-arrows-collapse" viewBox="0 0 16 16" id="arrows-collapse" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13A.5.5 0 011 8zm7-8a.5.5 0 01.5.5v3.793l1.146-1.147a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 11.708-.708L7.5 4.293V.5A.5.5 0 018 0zm-.5 11.707l-1.146 1.147a.5.5 0 01-.708-.708l2-2a.5.5 0 01.708 0l2 2a.5.5 0 01-.708.708L8.5 11.707V15.5a.5.5 0 01-1 0v-3.793z"/></symbol><symbol fill="currentColor" class="bi bi-arrows-expand" viewBox="0 0 16 16" id="arrows-expand" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 8a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13A.5.5 0 011 8zM7.646.146a.5.5 0 01.708 0l2 2a.5.5 0 01-.708.708L8.5 1.707V5.5a.5.5 0 01-1 0V1.707L6.354 2.854a.5.5 0 11-.708-.708l2-2zM8 10a.5.5 0 01.5.5v3.793l1.146-1.147a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 01.708-.708L7.5 14.293V10.5A.5.5 0 018 10z"/></symbol><symbol fill="currentColor" class="bi bi-arrows-fullscreen" viewBox="0 0 16 16" id="arrows-fullscreen" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.828 10.172a.5.5 0 00-.707 0l-4.096 4.096V11.5a.5.5 0 00-1 0v3.975a.5.5 0 00.5.5H4.5a.5.5 0 000-1H1.732l4.096-4.096a.5.5 0 000-.707zm4.344 0a.5.5 0 01.707 0l4.096 4.096V11.5a.5.5 0 111 0v3.975a.5.5 0 01-.5.5H11.5a.5.5 0 010-1h2.768l-4.096-4.096a.5.5 0 010-.707zm0-4.344a.5.5 0 00.707 0l4.096-4.096V4.5a.5.5 0 101 0V.525a.5.5 0 00-.5-.5H11.5a.5.5 0 000 1h2.768l-4.096 4.096a.5.5 0 000 .707zm-4.344 0a.5.5 0 01-.707 0L1.025 1.732V4.5a.5.5 0 01-1 0V.525a.5.5 0 01.5-.5H4.5a.5.5 0 010 1H1.732l4.096 4.096a.5.5 0 010 .707z"/></symbol><symbol fill="currentColor" class="bi bi-arrows-move" viewBox="0 0 16 16" id="arrows-move" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.646.146a.5.5 0 01.708 0l2 2a.5.5 0 01-.708.708L8.5 1.707V5.5a.5.5 0 01-1 0V1.707L6.354 2.854a.5.5 0 11-.708-.708l2-2zM8 10a.5.5 0 01.5.5v3.793l1.146-1.147a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 01.708-.708L7.5 14.293V10.5A.5.5 0 018 10zM.146 8.354a.5.5 0 010-.708l2-2a.5.5 0 11.708.708L1.707 7.5H5.5a.5.5 0 010 1H1.707l1.147 1.146a.5.5 0 01-.708.708l-2-2zM10 8a.5.5 0 01.5-.5h3.793l-1.147-1.146a.5.5 0 01.708-.708l2 2a.5.5 0 010 .708l-2 2a.5.5 0 01-.708-.708L14.293 8.5H10.5A.5.5 0 0110 8z"/></symbol><symbol fill="currentColor" class="bi bi-aspect-ratio" viewBox="0 0 16 16" id="aspect-ratio" xmlns="http://www.w3.org/2000/svg"><path d="M0 3.5A1.5 1.5 0 011.5 2h13A1.5 1.5 0 0116 3.5v9a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 12.5v-9zM1.5 3a.5.5 0 00-.5.5v9a.5.5 0 00.5.5h13a.5.5 0 00.5-.5v-9a.5.5 0 00-.5-.5h-13z"/><path d="M2 4.5a.5.5 0 01.5-.5h3a.5.5 0 010 1H3v2.5a.5.5 0 01-1 0v-3zm12 7a.5.5 0 01-.5.5h-3a.5.5 0 010-1H13V8.5a.5.5 0 011 0v3z"/></symbol><symbol fill="currentColor" class="bi bi-aspect-ratio-fill" viewBox="0 0 16 16" id="aspect-ratio-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12.5v-9A1.5 1.5 0 011.5 2h13A1.5 1.5 0 0116 3.5v9a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 12.5zM2.5 4a.5.5 0 00-.5.5v3a.5.5 0 001 0V5h2.5a.5.5 0 000-1h-3zm11 8a.5.5 0 00.5-.5v-3a.5.5 0 00-1 0V11h-2.5a.5.5 0 000 1h3z"/></symbol><symbol fill="currentColor" class="bi bi-asterisk" viewBox="0 0 16 16" id="asterisk" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a1 1 0 011 1v5.268l4.562-2.634a1 1 0 111 1.732L10 8l4.562 2.634a1 1 0 11-1 1.732L9 9.732V15a1 1 0 11-2 0V9.732l-4.562 2.634a1 1 0 11-1-1.732L6 8 1.438 5.366a1 1 0 011-1.732L7 6.268V1a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-at" viewBox="0 0 16 16" id="at" xmlns="http://www.w3.org/2000/svg"><path d="M13.106 7.222c0-2.967-2.249-5.032-5.482-5.032-3.35 0-5.646 2.318-5.646 5.702 0 3.493 2.235 5.708 5.762 5.708.862 0 1.689-.123 2.304-.335v-.862c-.43.199-1.354.328-2.29.328-2.926 0-4.813-1.88-4.813-4.798 0-2.844 1.921-4.881 4.594-4.881 2.735 0 4.608 1.688 4.608 4.156 0 1.682-.554 2.769-1.416 2.769-.492 0-.772-.28-.772-.76V5.206H8.923v.834h-.11c-.266-.595-.881-.964-1.6-.964-1.4 0-2.378 1.162-2.378 2.823 0 1.737.957 2.906 2.379 2.906.8 0 1.415-.39 1.709-1.087h.11c.081.67.703 1.148 1.503 1.148 1.572 0 2.57-1.415 2.57-3.643zm-7.177.704c0-1.197.54-1.907 1.456-1.907.93 0 1.524.738 1.524 1.907S8.308 9.84 7.371 9.84c-.895 0-1.442-.725-1.442-1.914z"/></symbol><symbol fill="currentColor" class="bi bi-award" viewBox="0 0 16 16" id="award" xmlns="http://www.w3.org/2000/svg"><path d="M9.669.864L8 0 6.331.864l-1.858.282-.842 1.68-1.337 1.32L2.6 6l-.306 1.854 1.337 1.32.842 1.68 1.858.282L8 12l1.669-.864 1.858-.282.842-1.68 1.337-1.32L13.4 6l.306-1.854-1.337-1.32-.842-1.68L9.669.864zm1.196 1.193l.684 1.365 1.086 1.072L12.387 6l.248 1.506-1.086 1.072-.684 1.365-1.51.229L8 10.874l-1.355-.702-1.51-.229-.684-1.365-1.086-1.072L3.614 6l-.25-1.506 1.087-1.072.684-1.365 1.51-.229L8 1.126l1.356.702 1.509.229z"/><path d="M4 11.794V16l4-1 4 1v-4.206l-2.018.306L8 13.126 6.018 12.1 4 11.794z"/></symbol><symbol fill="currentColor" class="bi bi-award-fill" viewBox="0 0 16 16" id="award-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 0l1.669.864 1.858.282.842 1.68 1.337 1.32L13.4 6l.306 1.854-1.337 1.32-.842 1.68-1.858.282L8 12l-1.669-.864-1.858-.282-.842-1.68-1.337-1.32L2.6 6l-.306-1.854 1.337-1.32.842-1.68L6.331.864 8 0z"/><path d="M4 11.794V16l4-1 4 1v-4.206l-2.018.306L8 13.126 6.018 12.1 4 11.794z"/></symbol><symbol fill="currentColor" class="bi bi-back" viewBox="0 0 16 16" id="back" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h8a2 2 0 012 2v2h2a2 2 0 012 2v8a2 2 0 01-2 2H6a2 2 0 01-2-2v-2H2a2 2 0 01-2-2V2zm2-1a1 1 0 00-1 1v8a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1H2z"/></symbol><symbol fill="currentColor" class="bi bi-backspace" viewBox="0 0 16 16" id="backspace" xmlns="http://www.w3.org/2000/svg"><path d="M5.83 5.146a.5.5 0 000 .708L7.975 8l-2.147 2.146a.5.5 0 00.707.708l2.147-2.147 2.146 2.147a.5.5 0 00.707-.708L9.39 8l2.146-2.146a.5.5 0 00-.707-.708L8.683 7.293 6.536 5.146a.5.5 0 00-.707 0z"/><path d="M13.683 1a2 2 0 012 2v10a2 2 0 01-2 2h-7.08a2 2 0 01-1.519-.698L.241 8.65a1 1 0 010-1.302L5.084 1.7A2 2 0 016.603 1h7.08zm-7.08 1a1 1 0 00-.76.35L1 8l4.844 5.65a1 1 0 00.759.35h7.08a1 1 0 001-1V3a1 1 0 00-1-1h-7.08z"/></symbol><symbol fill="currentColor" class="bi bi-backspace-fill" viewBox="0 0 16 16" id="backspace-fill" xmlns="http://www.w3.org/2000/svg"><path d="M15.683 3a2 2 0 00-2-2h-7.08a2 2 0 00-1.519.698L.241 7.35a1 1 0 000 1.302l4.843 5.65A2 2 0 006.603 15h7.08a2 2 0 002-2V3zM5.829 5.854a.5.5 0 11.707-.708l2.147 2.147 2.146-2.147a.5.5 0 11.707.708L9.39 8l2.146 2.146a.5.5 0 01-.707.708L8.683 8.707l-2.147 2.147a.5.5 0 01-.707-.708L7.976 8 5.829 5.854z"/></symbol><symbol fill="currentColor" class="bi bi-backspace-reverse" viewBox="0 0 16 16" id="backspace-reverse" xmlns="http://www.w3.org/2000/svg"><path d="M9.854 5.146a.5.5 0 010 .708L7.707 8l2.147 2.146a.5.5 0 01-.708.708L7 8.707l-2.146 2.147a.5.5 0 01-.708-.708L6.293 8 4.146 5.854a.5.5 0 11.708-.708L7 7.293l2.146-2.147a.5.5 0 01.708 0z"/><path d="M2 1a2 2 0 00-2 2v10a2 2 0 002 2h7.08a2 2 0 001.519-.698l4.843-5.651a1 1 0 000-1.302L10.6 1.7A2 2 0 009.08 1H2zm7.08 1a1 1 0 01.76.35L14.682 8l-4.844 5.65a1 1 0 01-.759.35H2a1 1 0 01-1-1V3a1 1 0 011-1h7.08z"/></symbol><symbol fill="currentColor" class="bi bi-backspace-reverse-fill" viewBox="0 0 16 16" id="backspace-reverse-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 3a2 2 0 012-2h7.08a2 2 0 011.519.698l4.843 5.651a1 1 0 010 1.302L10.6 14.3a2 2 0 01-1.52.7H2a2 2 0 01-2-2V3zm9.854 2.854a.5.5 0 00-.708-.708L7 7.293 4.854 5.146a.5.5 0 10-.708.708L6.293 8l-2.147 2.146a.5.5 0 00.708.708L7 8.707l2.146 2.147a.5.5 0 00.708-.708L7.707 8l2.147-2.146z"/></symbol><symbol fill="currentColor" class="bi bi-badge-3d" viewBox="0 0 16 16" id="badge-3d" xmlns="http://www.w3.org/2000/svg"><path d="M4.52 8.368h.664c.646 0 1.055.378 1.06.9.008.537-.427.919-1.086.919-.598-.004-1.037-.325-1.068-.756H3c.03.914.791 1.688 2.153 1.688 1.24 0 2.285-.66 2.272-1.798-.013-.953-.747-1.38-1.292-1.432v-.062c.44-.07 1.125-.527 1.108-1.375-.013-.906-.8-1.57-2.053-1.565-1.31.005-2.043.734-2.074 1.67h1.103c.022-.391.383-.751.936-.751.532 0 .928.33.928.813.004.479-.383.835-.928.835h-.632v.914zm3.606-3.367V11h2.189C12.125 11 13 9.893 13 7.985c0-1.894-.861-2.984-2.685-2.984H8.126zm1.187.967h.844c1.112 0 1.621.686 1.621 2.04 0 1.353-.505 2.02-1.621 2.02h-.844v-4.06z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-3d-fill" viewBox="0 0 16 16" id="badge-3d-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.157 5.968h-.844v4.06h.844c1.116 0 1.621-.667 1.621-2.02 0-1.354-.51-2.04-1.621-2.04z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm5.184 4.368c.646 0 1.055.378 1.06.9.008.537-.427.919-1.086.919-.598-.004-1.037-.325-1.068-.756H3c.03.914.791 1.688 2.153 1.688 1.24 0 2.285-.66 2.272-1.798-.013-.953-.747-1.38-1.292-1.432v-.062c.44-.07 1.125-.527 1.108-1.375-.013-.906-.8-1.57-2.053-1.565-1.31.005-2.043.734-2.074 1.67h1.103c.022-.391.383-.751.936-.751.532 0 .928.33.928.813.004.479-.383.835-.928.835h-.632v.914h.663zM8.126 11h2.189C12.125 11 13 9.893 13 7.985c0-1.894-.861-2.984-2.685-2.984H8.126V11z"/></symbol><symbol fill="currentColor" class="bi bi-badge-4k" viewBox="0 0 16 16" id="badge-4k" xmlns="http://www.w3.org/2000/svg"><path d="M4.807 5.001C4.021 6.298 3.203 7.6 2.5 8.917v.971h2.905V11h1.112V9.888h.733V8.93h-.733V5.001h-1.71zm-1.23 3.93v-.032a46.781 46.781 0 011.766-3.001h.062V8.93H3.577zm9.831-3.93h-1.306L9.835 7.687h-.057V5H8.59v6h1.187V9.075l.615-.699L12.072 11H13.5l-2.232-3.415 2.14-2.584z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-4k-fill" viewBox="0 0 16 16" id="badge-4k-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.577 8.9v.03h1.828V5.898h-.062a46.781 46.781 0 00-1.766 3.001z"/><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm2.372 3.715l.435-.714h1.71v3.93h.733v.957h-.733V11H5.405V9.888H2.5v-.971c.574-1.077 1.225-2.142 1.872-3.202zm7.73-.714h1.306l-2.14 2.584L13.5 11h-1.428l-1.679-2.624-.615.7V11H8.59V5.001h1.187v2.686h.057L12.102 5z"/></symbol><symbol fill="currentColor" class="bi bi-badge-8k" viewBox="0 0 16 16" id="badge-8k" xmlns="http://www.w3.org/2000/svg"><path d="M4.837 11.114c1.406 0 2.333-.725 2.333-1.766 0-.945-.712-1.38-1.256-1.49v-.053c.496-.15 1.02-.55 1.02-1.331 0-.914-.831-1.587-2.084-1.587-1.257 0-2.087.673-2.087 1.587 0 .773.51 1.177 1.02 1.331v.053c-.546.11-1.258.54-1.258 1.494 0 1.042.906 1.762 2.312 1.762zm.013-3.643c-.545 0-.95-.356-.95-.866s.405-.852.95-.852c.545 0 .945.343.945.852 0 .51-.4.866-.945.866zm0 2.786c-.65 0-1.142-.395-1.142-.984S4.2 8.28 4.85 8.28c.646 0 1.143.404 1.143.993s-.497.984-1.143.984zM13.408 5h-1.306L9.835 7.685h-.057V5H8.59v5.998h1.187V9.075l.615-.699 1.679 2.623H13.5l-2.232-3.414L13.408 5z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-8k-fill" viewBox="0 0 16 16" id="badge-8k-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.9 6.605c0 .51.405.866.95.866.545 0 .945-.356.945-.866s-.4-.852-.945-.852c-.545 0-.95.343-.95.852zm-.192 2.668c0 .589.492.984 1.142.984.646 0 1.143-.395 1.143-.984S5.496 8.28 4.85 8.28c-.65 0-1.142.404-1.142.993z"/><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm5.17 7.348c0 1.041-.927 1.766-2.333 1.766-1.406 0-2.312-.72-2.312-1.762 0-.954.712-1.384 1.257-1.494v-.053c-.51-.154-1.02-.558-1.02-1.331 0-.914.831-1.587 2.088-1.587 1.253 0 2.083.673 2.083 1.587 0 .782-.523 1.182-1.02 1.331v.053c.545.11 1.257.545 1.257 1.49zM12.102 5h1.306l-2.14 2.584 2.232 3.415h-1.428l-1.679-2.624-.615.699v1.925H8.59V5h1.187v2.685h.057L12.102 5z"/></symbol><symbol fill="currentColor" class="bi bi-badge-ad" viewBox="0 0 16 16" id="badge-ad" xmlns="http://www.w3.org/2000/svg"><path d="M3.7 11l.47-1.542h2.004L6.644 11h1.261L5.901 5.001H4.513L2.5 11h1.2zm1.503-4.852l.734 2.426H4.416l.734-2.426h.053zm4.759.128c-1.059 0-1.753.765-1.753 2.043v.695c0 1.279.685 2.043 1.74 2.043.677 0 1.222-.33 1.367-.804h.057V11h1.138V4.685h-1.16v2.36h-.053c-.18-.475-.68-.77-1.336-.77zm.387.923c.58 0 1.002.44 1.002 1.138v.602c0 .76-.396 1.2-.984 1.2-.598 0-.972-.449-.972-1.248v-.453c0-.795.37-1.24.954-1.24z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-ad-fill" viewBox="0 0 16 16" id="badge-ad-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.35 8.337c0-.699-.42-1.138-1.001-1.138-.584 0-.954.444-.954 1.239v.453c0 .8.374 1.248.972 1.248.588 0 .984-.44.984-1.2v-.602zm-5.413.237l-.734-2.426H5.15l-.734 2.426h1.52z"/><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm6.209 6.32c0-1.28.694-2.044 1.753-2.044.655 0 1.156.294 1.336.769h.053v-2.36h1.16V11h-1.138v-.747h-.057c-.145.474-.69.804-1.367.804-1.055 0-1.74-.764-1.74-2.043v-.695zm-4.04 1.138L3.7 11H2.5l2.013-5.999H5.9L7.905 11H6.644l-.47-1.542H4.17z"/></symbol><symbol fill="currentColor" class="bi bi-badge-ar" viewBox="0 0 16 16" id="badge-ar" xmlns="http://www.w3.org/2000/svg"><path d="M3.794 11l.47-1.542H6.27L6.739 11H8L5.996 5.001H4.607L2.595 11h1.2zm1.503-4.852l.734 2.426h-1.52l.734-2.426h.052zm5.598-1.147H8.5V11h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9zm-1.222 2.87V5.933h1.05c.63 0 1.05.347 1.05.989 0 .633-.408.95-1.067.95H9.673z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-ar-fill" viewBox="0 0 16 16" id="badge-ar-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.031 8.574l-.734-2.426h-.052L4.51 8.574h1.52zm3.642-2.641v1.938h1.033c.66 0 1.068-.316 1.068-.95 0-.64-.422-.988-1.05-.988h-1.05z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm4.265 5.458h2.004L6.739 11H8L5.996 5.001H4.607L2.595 11h1.2l.47-1.542zM8.5 5v6h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9H8.5z"/></symbol><symbol fill="currentColor" class="bi bi-badge-cc" viewBox="0 0 16 16" id="badge-cc" xmlns="http://www.w3.org/2000/svg"><path d="M3.708 7.755c0-1.111.488-1.753 1.319-1.753.681 0 1.138.47 1.186 1.107H7.36V7c-.052-1.186-1.024-2-2.342-2C3.414 5 2.5 6.05 2.5 7.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114H6.213c-.048.615-.496 1.05-1.186 1.05-.84 0-1.319-.62-1.319-1.727v-.743zm6.14 0c0-1.111.488-1.753 1.318-1.753.682 0 1.139.47 1.187 1.107H13.5V7c-.053-1.186-1.024-2-2.342-2C9.554 5 8.64 6.05 8.64 7.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114h-1.147c-.048.615-.497 1.05-1.187 1.05-.839 0-1.318-.62-1.318-1.727v-.743z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-cc-fill" viewBox="0 0 16 16" id="badge-cc-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm3.027 4.002c-.83 0-1.319.642-1.319 1.753v.743c0 1.107.48 1.727 1.319 1.727.69 0 1.138-.435 1.186-1.05H7.36v.114c-.057 1.147-1.028 1.938-2.342 1.938-1.613 0-2.518-1.028-2.518-2.729v-.747C2.5 6.051 3.414 5 5.018 5c1.318 0 2.29.813 2.342 2v.11H6.213c-.048-.638-.505-1.108-1.186-1.108zm6.14 0c-.831 0-1.319.642-1.319 1.753v.743c0 1.107.48 1.727 1.318 1.727.69 0 1.139-.435 1.187-1.05H13.5v.114c-.057 1.147-1.028 1.938-2.342 1.938-1.613 0-2.518-1.028-2.518-2.729v-.747c0-1.7.914-2.751 2.518-2.751 1.318 0 2.29.813 2.342 2v.11h-1.147c-.048-.638-.505-1.108-1.187-1.108z"/></symbol><symbol fill="currentColor" class="bi bi-badge-hd" viewBox="0 0 16 16" id="badge-hd" xmlns="http://www.w3.org/2000/svg"><path d="M7.396 11V5.001H6.209v2.44H3.687V5H2.5v6h1.187V8.43h2.522V11h1.187zM8.5 5.001V11h2.188c1.811 0 2.685-1.107 2.685-3.015 0-1.894-.86-2.984-2.684-2.984H8.5zm1.187.967h.843c1.112 0 1.622.686 1.622 2.04 0 1.353-.505 2.02-1.622 2.02h-.843v-4.06z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-hd-fill" viewBox="0 0 16 16" id="badge-hd-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.53 5.968h-.843v4.06h.843c1.117 0 1.622-.667 1.622-2.02 0-1.354-.51-2.04-1.622-2.04z"/><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm5.396 3.001V11H6.209V8.43H3.687V11H2.5V5.001h1.187v2.44h2.522V5h1.187zM8.5 11V5.001h2.188c1.824 0 2.685 1.09 2.685 2.984C13.373 9.893 12.5 11 10.69 11H8.5z"/></symbol><symbol fill="currentColor" class="bi bi-badge-tm" viewBox="0 0 16 16" id="badge-tm" xmlns="http://www.w3.org/2000/svg"><path d="M5.295 11V5.995H7V5H2.403v.994h1.701V11h1.19zm3.397 0V7.01h.058l1.428 3.239h.773l1.42-3.24h.057V11H13.5V5.001h-1.2l-1.71 3.894h-.039l-1.71-3.894H7.634V11h1.06z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-tm-fill" viewBox="0 0 16 16" id="badge-tm-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm3.295 3.995V11H4.104V5.995h-1.7V5H7v.994H5.295zM8.692 7.01V11H7.633V5.001h1.209l1.71 3.894h.039l1.71-3.894H13.5V11h-1.072V7.01h-.057l-1.42 3.239h-.773L8.75 7.008h-.058z"/></symbol><symbol fill="currentColor" class="bi bi-badge-vo" viewBox="0 0 16 16" id="badge-vo" xmlns="http://www.w3.org/2000/svg"><path d="M4.508 11h1.429l1.99-5.999H6.61L5.277 9.708H5.22L3.875 5.001H2.5L4.508 11zM13.5 8.39v-.77c0-1.696-.962-2.733-2.566-2.733-1.604 0-2.571 1.029-2.571 2.734v.769c0 1.691.967 2.724 2.57 2.724 1.605 0 2.567-1.033 2.567-2.724zm-1.204-.778v.782c0 1.156-.571 1.732-1.362 1.732-.796 0-1.363-.576-1.363-1.732v-.782c0-1.156.567-1.736 1.363-1.736.79 0 1.362.58 1.362 1.736z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-vo-fill" viewBox="0 0 16 16" id="badge-vo-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12.296 8.394v-.782c0-1.156-.571-1.736-1.362-1.736-.796 0-1.363.58-1.363 1.736v.782c0 1.156.567 1.732 1.363 1.732.79 0 1.362-.576 1.362-1.732z"/><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm11.5 5.62v.77c0 1.691-.962 2.724-2.566 2.724-1.604 0-2.571-1.033-2.571-2.724v-.77c0-1.704.967-2.733 2.57-2.733 1.605 0 2.567 1.037 2.567 2.734zM5.937 11H4.508L2.5 5.001h1.375L5.22 9.708h.057L6.61 5.001h1.318L5.937 11z"/></symbol><symbol fill="currentColor" class="bi bi-badge-vr" viewBox="0 0 16 16" id="badge-vr" xmlns="http://www.w3.org/2000/svg"><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/><path d="M4.508 11h1.429l1.99-5.999H6.61L5.277 9.708H5.22L3.875 5.001H2.5L4.508 11zm6.387-5.999H8.5V11h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9zm-1.222 2.87V5.933h1.05c.63 0 1.05.347 1.05.989 0 .633-.408.95-1.067.95H9.673z"/></symbol><symbol fill="currentColor" class="bi bi-badge-vr-fill" viewBox="0 0 16 16" id="badge-vr-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.673 5.933v1.938h1.033c.66 0 1.068-.316 1.068-.95 0-.64-.422-.988-1.05-.988h-1.05z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm5.937 7l1.99-5.999H6.61L5.277 9.708H5.22L3.875 5.001H2.5L4.508 11h1.429zM8.5 5.001V11h1.173V8.763h1.064L11.787 11h1.327L11.91 8.583C12.455 8.373 13 7.779 13 6.9c0-1.147-.773-1.9-2.105-1.9H8.5z"/></symbol><symbol fill="currentColor" class="bi bi-badge-wc" viewBox="0 0 16 16" id="badge-wc" xmlns="http://www.w3.org/2000/svg"><path d="M10.348 7.643c0-1.112.488-1.754 1.318-1.754.682 0 1.139.47 1.187 1.108H14v-.11c-.053-1.187-1.024-2-2.342-2-1.604 0-2.518 1.05-2.518 2.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114h-1.147c-.048.615-.497 1.05-1.187 1.05-.839 0-1.318-.62-1.318-1.727v-.742zM4.457 11l1.02-4.184h.045L6.542 11h1.006L9 5.001H7.818l-.82 4.355h-.056L5.97 5.001h-.94l-.972 4.355h-.053l-.827-4.355H2L3.452 11h1.005z"/><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-badge-wc-fill" viewBox="0 0 16 16" id="badge-wc-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm11.666 1.89c.682 0 1.139.47 1.187 1.107H14v-.11c-.053-1.187-1.024-2-2.342-2-1.604 0-2.518 1.05-2.518 2.751v.747c0 1.7.905 2.73 2.518 2.73 1.314 0 2.285-.792 2.342-1.939v-.114h-1.147c-.048.615-.497 1.05-1.187 1.05-.839 0-1.318-.62-1.318-1.727v-.742c0-1.112.488-1.754 1.318-1.754zm-6.188.926h.044L6.542 11h1.006L9 5.001H7.818l-.82 4.355h-.056L5.97 5.001h-.94l-.972 4.355h-.053l-.827-4.355H2L3.452 11h1.005l1.02-4.184z"/></symbol><symbol fill="currentColor" class="bi bi-bag" viewBox="0 0 16 16" id="bag" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a2.5 2.5 0 012.5 2.5V4h-5v-.5A2.5 2.5 0 018 1zm3.5 3v-.5a3.5 3.5 0 10-7 0V4H1v10a2 2 0 002 2h10a2 2 0 002-2V4h-3.5zM2 5h12v9a1 1 0 01-1 1H3a1 1 0 01-1-1V5z"/></symbol><symbol fill="currentColor" class="bi bi-bag-check" viewBox="0 0 16 16" id="bag-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.854 8.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 01.708-.708L7.5 10.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M8 1a2.5 2.5 0 012.5 2.5V4h-5v-.5A2.5 2.5 0 018 1zm3.5 3v-.5a3.5 3.5 0 10-7 0V4H1v10a2 2 0 002 2h10a2 2 0 002-2V4h-3.5zM2 5h12v9a1 1 0 01-1 1H3a1 1 0 01-1-1V5z"/></symbol><symbol fill="currentColor" class="bi bi-bag-check-fill" viewBox="0 0 16 16" id="bag-check-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.5 3.5a2.5 2.5 0 00-5 0V4h5v-.5zm1 0V4H15v10a2 2 0 01-2 2H3a2 2 0 01-2-2V4h3.5v-.5a3.5 3.5 0 117 0zm-.646 5.354a.5.5 0 00-.708-.708L7.5 10.793 6.354 9.646a.5.5 0 10-.708.708l1.5 1.5a.5.5 0 00.708 0l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-bag-dash" viewBox="0 0 16 16" id="bag-dash" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.5 10a.5.5 0 01.5-.5h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M8 1a2.5 2.5 0 012.5 2.5V4h-5v-.5A2.5 2.5 0 018 1zm3.5 3v-.5a3.5 3.5 0 10-7 0V4H1v10a2 2 0 002 2h10a2 2 0 002-2V4h-3.5zM2 5h12v9a1 1 0 01-1 1H3a1 1 0 01-1-1V5z"/></symbol><symbol fill="currentColor" class="bi bi-bag-dash-fill" viewBox="0 0 16 16" id="bag-dash-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.5 3.5a2.5 2.5 0 00-5 0V4h5v-.5zm1 0V4H15v10a2 2 0 01-2 2H3a2 2 0 01-2-2V4h3.5v-.5a3.5 3.5 0 117 0zM6 9.5a.5.5 0 000 1h4a.5.5 0 000-1H6z"/></symbol><symbol fill="currentColor" class="bi bi-bag-fill" viewBox="0 0 16 16" id="bag-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a2.5 2.5 0 012.5 2.5V4h-5v-.5A2.5 2.5 0 018 1zm3.5 3v-.5a3.5 3.5 0 10-7 0V4H1v10a2 2 0 002 2h10a2 2 0 002-2V4h-3.5z"/></symbol><symbol fill="currentColor" class="bi bi-bag-plus" viewBox="0 0 16 16" id="bag-plus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 7.5a.5.5 0 01.5.5v1.5H10a.5.5 0 010 1H8.5V12a.5.5 0 01-1 0v-1.5H6a.5.5 0 010-1h1.5V8a.5.5 0 01.5-.5z"/><path d="M8 1a2.5 2.5 0 012.5 2.5V4h-5v-.5A2.5 2.5 0 018 1zm3.5 3v-.5a3.5 3.5 0 10-7 0V4H1v10a2 2 0 002 2h10a2 2 0 002-2V4h-3.5zM2 5h12v9a1 1 0 01-1 1H3a1 1 0 01-1-1V5z"/></symbol><symbol fill="currentColor" class="bi bi-bag-plus-fill" viewBox="0 0 16 16" id="bag-plus-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.5 3.5a2.5 2.5 0 00-5 0V4h5v-.5zm1 0V4H15v10a2 2 0 01-2 2H3a2 2 0 01-2-2V4h3.5v-.5a3.5 3.5 0 117 0zM8.5 8a.5.5 0 00-1 0v1.5H6a.5.5 0 000 1h1.5V12a.5.5 0 001 0v-1.5H10a.5.5 0 000-1H8.5V8z"/></symbol><symbol fill="currentColor" class="bi bi-bag-x" viewBox="0 0 16 16" id="bag-x" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.146 8.146a.5.5 0 01.708 0L8 9.293l1.146-1.147a.5.5 0 11.708.708L8.707 10l1.147 1.146a.5.5 0 01-.708.708L8 10.707l-1.146 1.147a.5.5 0 01-.708-.708L7.293 10 6.146 8.854a.5.5 0 010-.708z"/><path d="M8 1a2.5 2.5 0 012.5 2.5V4h-5v-.5A2.5 2.5 0 018 1zm3.5 3v-.5a3.5 3.5 0 10-7 0V4H1v10a2 2 0 002 2h10a2 2 0 002-2V4h-3.5zM2 5h12v9a1 1 0 01-1 1H3a1 1 0 01-1-1V5z"/></symbol><symbol fill="currentColor" class="bi bi-bag-x-fill" viewBox="0 0 16 16" id="bag-x-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.5 3.5a2.5 2.5 0 00-5 0V4h5v-.5zm1 0V4H15v10a2 2 0 01-2 2H3a2 2 0 01-2-2V4h3.5v-.5a3.5 3.5 0 117 0zM6.854 8.146a.5.5 0 10-.708.708L7.293 10l-1.147 1.146a.5.5 0 00.708.708L8 10.707l1.146 1.147a.5.5 0 00.708-.708L8.707 10l1.147-1.146a.5.5 0 00-.708-.708L8 9.293 6.854 8.146z"/></symbol><symbol fill="currentColor" class="bi bi-bank" viewBox="0 0 16 16" id="bank" xmlns="http://www.w3.org/2000/svg"><path d="M8 .95L14.61 4h.89a.5.5 0 01.5.5v2a.5.5 0 01-.5.5H15v7a.5.5 0 01.485.379l.5 2A.5.5 0 0115.5 17H.5a.5.5 0 01-.485-.621l.5-2A.5.5 0 011 14V7H.5a.5.5 0 01-.5-.5v-2A.5.5 0 01.5 4h.89L8 .95zM3.776 4h8.447L8 2.05 3.776 4zM2 7v7h1V7H2zm2 0v7h2.5V7H4zm3.5 0v7h1V7h-1zm2 0v7H12V7H9.5zM13 7v7h1V7h-1zm2-1V5H1v1h14zm-.39 9H1.39l-.25 1h13.72l-.25-1z"/></symbol><symbol fill="currentColor" class="bi bi-bank2" viewBox="0 0 16 16" id="bank2" xmlns="http://www.w3.org/2000/svg"><path d="M8.277.084a.5.5 0 00-.554 0l-7.5 5A.5.5 0 00.5 6h1.875v7H1.5a.5.5 0 000 1h13a.5.5 0 100-1h-.875V6H15.5a.5.5 0 00.277-.916l-7.5-5zM12.375 6v7h-1.25V6h1.25zm-2.5 0v7h-1.25V6h1.25zm-2.5 0v7h-1.25V6h1.25zm-2.5 0v7h-1.25V6h1.25zM8 4a1 1 0 110-2 1 1 0 010 2zM.5 15a.5.5 0 000 1h15a.5.5 0 100-1H.5z"/></symbol><symbol fill="currentColor" class="bi bi-bar-chart" viewBox="0 0 16 16" id="bar-chart" xmlns="http://www.w3.org/2000/svg"><path d="M4 11H2v3h2v-3zm5-4H7v7h2V7zm5-5v12h-2V2h2zm-2-1a1 1 0 00-1 1v12a1 1 0 001 1h2a1 1 0 001-1V2a1 1 0 00-1-1h-2zM6 7a1 1 0 011-1h2a1 1 0 011 1v7a1 1 0 01-1 1H7a1 1 0 01-1-1V7zm-5 4a1 1 0 011-1h2a1 1 0 011 1v3a1 1 0 01-1 1H2a1 1 0 01-1-1v-3z"/></symbol><symbol fill="currentColor" class="bi bi-bar-chart-fill" viewBox="0 0 16 16" id="bar-chart-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1 11a1 1 0 011-1h2a1 1 0 011 1v3a1 1 0 01-1 1H2a1 1 0 01-1-1v-3zm5-4a1 1 0 011-1h2a1 1 0 011 1v7a1 1 0 01-1 1H7a1 1 0 01-1-1V7zm5-5a1 1 0 011-1h2a1 1 0 011 1v12a1 1 0 01-1 1h-2a1 1 0 01-1-1V2z"/></symbol><symbol fill="currentColor" class="bi bi-bar-chart-line" viewBox="0 0 16 16" id="bar-chart-line" xmlns="http://www.w3.org/2000/svg"><path d="M11 2a1 1 0 011-1h2a1 1 0 011 1v12h.5a.5.5 0 010 1H.5a.5.5 0 010-1H1v-3a1 1 0 011-1h2a1 1 0 011 1v3h1V7a1 1 0 011-1h2a1 1 0 011 1v7h1V2zm1 12h2V2h-2v12zm-3 0V7H7v7h2zm-5 0v-3H2v3h2z"/></symbol><symbol fill="currentColor" class="bi bi-bar-chart-line-fill" viewBox="0 0 16 16" id="bar-chart-line-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11 2a1 1 0 011-1h2a1 1 0 011 1v12h.5a.5.5 0 010 1H.5a.5.5 0 010-1H1v-3a1 1 0 011-1h2a1 1 0 011 1v3h1V7a1 1 0 011-1h2a1 1 0 011 1v7h1V2z"/></symbol><symbol fill="currentColor" class="bi bi-bar-chart-steps" viewBox="0 0 16 16" id="bar-chart-steps" xmlns="http://www.w3.org/2000/svg"><path d="M.5 0a.5.5 0 01.5.5v15a.5.5 0 01-1 0V.5A.5.5 0 01.5 0zM2 1.5a.5.5 0 01.5-.5h4a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-4a.5.5 0 01-.5-.5v-1zm2 4a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-1zm2 4a.5.5 0 01.5-.5h6a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-6a.5.5 0 01-.5-.5v-1zm2 4a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-basket" viewBox="0 0 16 16" id="basket" xmlns="http://www.w3.org/2000/svg"><path d="M5.757 1.071a.5.5 0 01.172.686L3.383 6h9.234L10.07 1.757a.5.5 0 11.858-.514L13.783 6H15a1 1 0 011 1v1a1 1 0 01-1 1v4.5a2.5 2.5 0 01-2.5 2.5h-9A2.5 2.5 0 011 13.5V9a1 1 0 01-1-1V7a1 1 0 011-1h1.217L5.07 1.243a.5.5 0 01.686-.172zM2 9v4.5A1.5 1.5 0 003.5 15h9a1.5 1.5 0 001.5-1.5V9H2zM1 7v1h14V7H1zm3 3a.5.5 0 01.5.5v3a.5.5 0 01-1 0v-3A.5.5 0 014 10zm2 0a.5.5 0 01.5.5v3a.5.5 0 01-1 0v-3A.5.5 0 016 10zm2 0a.5.5 0 01.5.5v3a.5.5 0 01-1 0v-3A.5.5 0 018 10zm2 0a.5.5 0 01.5.5v3a.5.5 0 01-1 0v-3a.5.5 0 01.5-.5zm2 0a.5.5 0 01.5.5v3a.5.5 0 01-1 0v-3a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-basket-fill" viewBox="0 0 16 16" id="basket-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.071 1.243a.5.5 0 01.858.514L3.383 6h9.234L10.07 1.757a.5.5 0 11.858-.514L13.783 6H15.5a.5.5 0 01.5.5v2a.5.5 0 01-.5.5H15v5a2 2 0 01-2 2H3a2 2 0 01-2-2V9H.5a.5.5 0 01-.5-.5v-2A.5.5 0 01.5 6h1.717L5.07 1.243zM3.5 10.5a.5.5 0 10-1 0v3a.5.5 0 001 0v-3zm2.5 0a.5.5 0 10-1 0v3a.5.5 0 001 0v-3zm2.5 0a.5.5 0 10-1 0v3a.5.5 0 001 0v-3zm2.5 0a.5.5 0 10-1 0v3a.5.5 0 001 0v-3zm2.5 0a.5.5 0 10-1 0v3a.5.5 0 001 0v-3z"/></symbol><symbol fill="currentColor" class="bi bi-basket2" viewBox="0 0 16 16" id="basket2" xmlns="http://www.w3.org/2000/svg"><path d="M4 10a1 1 0 012 0v2a1 1 0 01-2 0v-2zm3 0a1 1 0 012 0v2a1 1 0 01-2 0v-2zm3 0a1 1 0 112 0v2a1 1 0 01-2 0v-2z"/><path d="M5.757 1.071a.5.5 0 01.172.686L3.383 6h9.234L10.07 1.757a.5.5 0 11.858-.514L13.783 6H15.5a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-.623l-1.844 6.456a.75.75 0 01-.722.544H3.69a.75.75 0 01-.722-.544L1.123 8H.5a.5.5 0 01-.5-.5v-1A.5.5 0 01.5 6h1.717L5.07 1.243a.5.5 0 01.686-.172zM2.163 8l1.714 6h8.246l1.714-6H2.163z"/></symbol><symbol fill="currentColor" class="bi bi-basket2-fill" viewBox="0 0 16 16" id="basket2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.929 1.757a.5.5 0 10-.858-.514L2.217 6H.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h.623l1.844 6.456A.75.75 0 003.69 15h8.622a.75.75 0 00.722-.544L14.877 8h.623a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1.717L10.93 1.243a.5.5 0 10-.858.514L12.617 6H3.383L5.93 1.757zM4 10a1 1 0 012 0v2a1 1 0 11-2 0v-2zm3 0a1 1 0 012 0v2a1 1 0 11-2 0v-2zm4-1a1 1 0 011 1v2a1 1 0 11-2 0v-2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-basket3" viewBox="0 0 16 16" id="basket3" xmlns="http://www.w3.org/2000/svg"><path d="M5.757 1.071a.5.5 0 01.172.686L3.383 6h9.234L10.07 1.757a.5.5 0 11.858-.514L13.783 6H15.5a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H.5a.5.5 0 01-.5-.5v-1A.5.5 0 01.5 6h1.717L5.07 1.243a.5.5 0 01.686-.172zM3.394 15l-1.48-6h-.97l1.525 6.426a.75.75 0 00.729.574h9.606a.75.75 0 00.73-.574L15.056 9h-.972l-1.479 6h-9.21z"/></symbol><symbol fill="currentColor" class="bi bi-basket3-fill" viewBox="0 0 16 16" id="basket3-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.757 1.071a.5.5 0 01.172.686L3.383 6h9.234L10.07 1.757a.5.5 0 11.858-.514L13.783 6H15.5a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H.5a.5.5 0 01-.5-.5v-1A.5.5 0 01.5 6h1.717L5.07 1.243a.5.5 0 01.686-.172zM2.468 15.426L.943 9h14.114l-1.525 6.426a.75.75 0 01-.729.574H3.197a.75.75 0 01-.73-.574z"/></symbol><symbol fill="currentColor" class="bi bi-battery" viewBox="0 0 16 16" id="battery" xmlns="http://www.w3.org/2000/svg"><path d="M0 6a2 2 0 012-2h10a2 2 0 012 2v4a2 2 0 01-2 2H2a2 2 0 01-2-2V6zm2-1a1 1 0 00-1 1v4a1 1 0 001 1h10a1 1 0 001-1V6a1 1 0 00-1-1H2zm14 3a1.5 1.5 0 01-1.5 1.5v-3A1.5 1.5 0 0116 8z"/></symbol><symbol fill="currentColor" class="bi bi-battery-charging" viewBox="0 0 16 16" id="battery-charging" xmlns="http://www.w3.org/2000/svg"><path d="M9.585 2.568a.5.5 0 01.226.58L8.677 6.832h1.99a.5.5 0 01.364.843l-5.334 5.667a.5.5 0 01-.842-.49L5.99 9.167H4a.5.5 0 01-.364-.843l5.333-5.667a.5.5 0 01.616-.09z"/><path d="M2 4h4.332l-.94 1H2a1 1 0 00-1 1v4a1 1 0 001 1h2.38l-.308 1H2a2 2 0 01-2-2V6a2 2 0 012-2z"/><path d="M2 6h2.45L2.908 7.639A1.5 1.5 0 003.313 10H2V6zm8.595-2l-.308 1H12a1 1 0 011 1v4a1 1 0 01-1 1H9.276l-.942 1H12a2 2 0 002-2V6a2 2 0 00-2-2h-1.405z"/><path d="M12 10h-1.783l1.542-1.639c.097-.103.178-.218.241-.34V10zm0-3.354V6h-.646a1.5 1.5 0 01.646.646zM16 8a1.5 1.5 0 01-1.5 1.5v-3A1.5 1.5 0 0116 8z"/></symbol><symbol fill="currentColor" class="bi bi-battery-full" viewBox="0 0 16 16" id="battery-full" xmlns="http://www.w3.org/2000/svg"><path d="M2 6h10v4H2V6z"/><path d="M2 4a2 2 0 00-2 2v4a2 2 0 002 2h10a2 2 0 002-2V6a2 2 0 00-2-2H2zm10 1a1 1 0 011 1v4a1 1 0 01-1 1H2a1 1 0 01-1-1V6a1 1 0 011-1h10zm4 3a1.5 1.5 0 01-1.5 1.5v-3A1.5 1.5 0 0116 8z"/></symbol><symbol fill="currentColor" class="bi bi-battery-half" viewBox="0 0 16 16" id="battery-half" xmlns="http://www.w3.org/2000/svg"><path d="M2 6h5v4H2V6z"/><path d="M2 4a2 2 0 00-2 2v4a2 2 0 002 2h10a2 2 0 002-2V6a2 2 0 00-2-2H2zm10 1a1 1 0 011 1v4a1 1 0 01-1 1H2a1 1 0 01-1-1V6a1 1 0 011-1h10zm4 3a1.5 1.5 0 01-1.5 1.5v-3A1.5 1.5 0 0116 8z"/></symbol><symbol fill="currentColor" class="bi bi-bell" viewBox="0 0 16 16" id="bell" xmlns="http://www.w3.org/2000/svg"><path d="M8 16a2 2 0 002-2H6a2 2 0 002 2zM8 1.918l-.797.161A4.002 4.002 0 004 6c0 .628-.134 2.197-.459 3.742-.16.767-.376 1.566-.663 2.258h10.244c-.287-.692-.502-1.49-.663-2.258C12.134 8.197 12 6.628 12 6a4.002 4.002 0 00-3.203-3.92L8 1.917zM14.22 12c.223.447.481.801.78 1H1c.299-.199.557-.553.78-1C2.68 10.2 3 6.88 3 6c0-2.42 1.72-4.44 4.005-4.901a1 1 0 111.99 0A5.002 5.002 0 0113 6c0 .88.32 4.2 1.22 6z"/></symbol><symbol fill="currentColor" class="bi bi-bell-fill" viewBox="0 0 16 16" id="bell-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16a2 2 0 002-2H6a2 2 0 002 2zm.995-14.901a1 1 0 10-1.99 0A5.002 5.002 0 003 6c0 1.098-.5 6-2 7h14c-1.5-1-2-5.902-2-7 0-2.42-1.72-4.44-4.005-4.901z"/></symbol><symbol fill="currentColor" class="bi bi-bell-slash" viewBox="0 0 16 16" id="bell-slash" xmlns="http://www.w3.org/2000/svg"><path d="M5.164 14H15c-.299-.199-.557-.553-.78-1-.9-1.8-1.22-5.12-1.22-6 0-.264-.02-.523-.06-.776l-.938.938c.02.708.157 2.154.457 3.58.161.767.377 1.566.663 2.258H6.164l-1 1zm5.581-9.91a3.986 3.986 0 00-1.948-1.01L8 2.917l-.797.161A4.002 4.002 0 004 7c0 .628-.134 2.197-.459 3.742-.05.238-.105.479-.166.718l-1.653 1.653c.02-.037.04-.074.059-.113C2.679 11.2 3 7.88 3 7c0-2.42 1.72-4.44 4.005-4.901a1 1 0 111.99 0c.942.19 1.788.645 2.457 1.284l-.707.707zM10 15a2 2 0 11-4 0h4zm-9.375.625a.53.53 0 00.75.75l14.75-14.75a.53.53 0 00-.75-.75L.625 15.625z"/></symbol><symbol fill="currentColor" class="bi bi-bell-slash-fill" viewBox="0 0 16 16" id="bell-slash-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.164 14H15c-1.5-1-2-5.902-2-7 0-.264-.02-.523-.06-.776L5.164 14zm6.288-10.617A4.988 4.988 0 008.995 2.1a1 1 0 10-1.99 0A5.002 5.002 0 003 7c0 .898-.335 4.342-1.278 6.113l9.73-9.73zM10 15a2 2 0 11-4 0h4zm-9.375.625a.53.53 0 00.75.75l14.75-14.75a.53.53 0 00-.75-.75L.625 15.625z"/></symbol><symbol fill="currentColor" class="bi bi-bezier" viewBox="0 0 16 16" id="bezier" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M0 10.5A1.5 1.5 0 011.5 9h1A1.5 1.5 0 014 10.5v1A1.5 1.5 0 012.5 13h-1A1.5 1.5 0 010 11.5v-1zm1.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zm10.5.5A1.5 1.5 0 0113.5 9h1a1.5 1.5 0 011.5 1.5v1a1.5 1.5 0 01-1.5 1.5h-1a1.5 1.5 0 01-1.5-1.5v-1zm1.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zM6 4.5A1.5 1.5 0 017.5 3h1A1.5 1.5 0 0110 4.5v1A1.5 1.5 0 018.5 7h-1A1.5 1.5 0 016 5.5v-1zM7.5 4a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1z"/><path d="M6 4.5H1.866a1 1 0 100 1h2.668A6.517 6.517 0 001.814 9H2.5c.123 0 .244.015.358.043a5.517 5.517 0 013.185-3.185A1.503 1.503 0 016 5.5v-1zm3.957 1.358A1.5 1.5 0 0010 5.5v-1h4.134a1 1 0 110 1h-2.668a6.517 6.517 0 012.72 3.5H13.5c-.123 0-.243.015-.358.043a5.517 5.517 0 00-3.185-3.185z"/></symbol><symbol fill="currentColor" class="bi bi-bezier2" viewBox="0 0 16 16" id="bezier2" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 2.5A1.5 1.5 0 012.5 1h1A1.5 1.5 0 015 2.5h4.134a1 1 0 110 1h-2.01c.18.18.34.381.484.605.638.992.892 2.354.892 3.895 0 1.993.257 3.092.713 3.7.356.476.895.721 1.787.784A1.5 1.5 0 0112.5 11h1a1.5 1.5 0 011.5 1.5v1a1.5 1.5 0 01-1.5 1.5h-1a1.5 1.5 0 01-1.5-1.5H6.866a1 1 0 110-1h1.711a2.839 2.839 0 01-.165-.2C7.743 11.407 7.5 10.007 7.5 8c0-1.46-.246-2.597-.733-3.355-.39-.605-.952-1-1.767-1.112A1.5 1.5 0 013.5 5h-1A1.5 1.5 0 011 3.5v-1zM2.5 2a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zm10 10a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-bicycle" viewBox="0 0 16 16" id="bicycle" xmlns="http://www.w3.org/2000/svg"><path d="M4 4.5a.5.5 0 01.5-.5H6a.5.5 0 010 1v.5h4.14l.386-1.158A.5.5 0 0111 4h1a.5.5 0 010 1h-.64l-.311.935.807 1.29a3 3 0 11-.848.53l-.508-.812-2.076 3.322A.5.5 0 018 10.5H5.959a3 3 0 11-1.815-3.274L5 5.856V5h-.5a.5.5 0 01-.5-.5zm1.5 2.443l-.508.814c.5.444.85 1.054.967 1.743h1.139L5.5 6.943zM8 9.057L9.598 6.5H6.402L8 9.057zM4.937 9.5a1.997 1.997 0 00-.487-.877l-.548.877h1.035zM3.603 8.092A2 2 0 104.937 10.5H3a.5.5 0 01-.424-.765l1.027-1.643zm7.947.53a2 2 0 10.848-.53l1.026 1.643a.5.5 0 11-.848.53L11.55 8.623z"/></symbol><symbol fill="currentColor" class="bi bi-binoculars" viewBox="0 0 16 16" id="binoculars" xmlns="http://www.w3.org/2000/svg"><path d="M3 2.5A1.5 1.5 0 014.5 1h1A1.5 1.5 0 017 2.5V5h2V2.5A1.5 1.5 0 0110.5 1h1A1.5 1.5 0 0113 2.5v2.382a.5.5 0 00.276.447l.895.447A1.5 1.5 0 0115 7.118V14.5a1.5 1.5 0 01-1.5 1.5h-3A1.5 1.5 0 019 14.5v-3a.5.5 0 01.146-.354l.854-.853V9.5a.5.5 0 00-.5-.5h-3a.5.5 0 00-.5.5v.793l.854.853A.5.5 0 017 11.5v3A1.5 1.5 0 015.5 16h-3A1.5 1.5 0 011 14.5V7.118a1.5 1.5 0 01.83-1.342l.894-.447A.5.5 0 003 4.882V2.5zM4.5 2a.5.5 0 00-.5.5V3h2v-.5a.5.5 0 00-.5-.5h-1zM6 4H4v.882a1.5 1.5 0 01-.83 1.342l-.894.447A.5.5 0 002 7.118V13h4v-1.293l-.854-.853A.5.5 0 015 10.5v-1A1.5 1.5 0 016.5 8h3A1.5 1.5 0 0111 9.5v1a.5.5 0 01-.146.354l-.854.853V13h4V7.118a.5.5 0 00-.276-.447l-.895-.447A1.5 1.5 0 0112 4.882V4h-2v1.5a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5V4zm4-1h2v-.5a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5V3zm4 11h-4v.5a.5.5 0 00.5.5h3a.5.5 0 00.5-.5V14zm-8 0H2v.5a.5.5 0 00.5.5h3a.5.5 0 00.5-.5V14z"/></symbol><symbol fill="currentColor" class="bi bi-binoculars-fill" viewBox="0 0 16 16" id="binoculars-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 1A1.5 1.5 0 003 2.5V3h4v-.5A1.5 1.5 0 005.5 1h-1zM7 4v1h2V4h4v.882a.5.5 0 00.276.447l.895.447A1.5 1.5 0 0115 7.118V13H9v-1.5a.5.5 0 01.146-.354l.854-.853V9.5a.5.5 0 00-.5-.5h-3a.5.5 0 00-.5.5v.793l.854.853A.5.5 0 017 11.5V13H1V7.118a1.5 1.5 0 01.83-1.342l.894-.447A.5.5 0 003 4.882V4h4zM1 14v.5A1.5 1.5 0 002.5 16h3A1.5 1.5 0 007 14.5V14H1zm8 0v.5a1.5 1.5 0 001.5 1.5h3a1.5 1.5 0 001.5-1.5V14H9zm4-11H9v-.5A1.5 1.5 0 0110.5 1h1A1.5 1.5 0 0113 2.5V3z"/></symbol><symbol fill="currentColor" class="bi bi-blockquote-left" viewBox="0 0 16 16" id="blockquote-left" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 3a.5.5 0 000 1h11a.5.5 0 000-1h-11zm5 3a.5.5 0 000 1h6a.5.5 0 000-1h-6zm0 3a.5.5 0 000 1h6a.5.5 0 000-1h-6zm-5 3a.5.5 0 000 1h11a.5.5 0 000-1h-11zm.79-5.373c.112-.078.26-.17.444-.275L3.524 6c-.122.074-.272.17-.452.287-.18.117-.35.26-.51.428a2.425 2.425 0 00-.398.562c-.11.207-.164.438-.164.692 0 .36.072.65.217.873.144.219.385.328.72.328.215 0 .383-.07.504-.211a.697.697 0 00.188-.463c0-.23-.07-.404-.211-.521-.137-.121-.326-.182-.568-.182h-.282c.024-.203.065-.37.123-.498a1.38 1.38 0 01.252-.37 1.94 1.94 0 01.346-.298zm2.167 0c.113-.078.262-.17.445-.275L5.692 6c-.122.074-.272.17-.452.287-.18.117-.35.26-.51.428a2.425 2.425 0 00-.398.562c-.11.207-.164.438-.164.692 0 .36.072.65.217.873.144.219.385.328.72.328.215 0 .383-.07.504-.211a.697.697 0 00.188-.463c0-.23-.07-.404-.211-.521-.137-.121-.326-.182-.568-.182h-.282a1.75 1.75 0 01.118-.492c.058-.13.144-.254.257-.375a1.94 1.94 0 01.346-.3z"/></symbol><symbol fill="currentColor" class="bi bi-blockquote-right" viewBox="0 0 16 16" id="blockquote-right" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 3a.5.5 0 000 1h11a.5.5 0 000-1h-11zm0 3a.5.5 0 000 1h6a.5.5 0 000-1h-6zm0 3a.5.5 0 000 1h6a.5.5 0 000-1h-6zm0 3a.5.5 0 000 1h11a.5.5 0 000-1h-11zm10.113-5.373a6.59 6.59 0 00-.445-.275l.21-.352c.122.074.272.17.452.287.18.117.35.26.51.428.156.164.289.351.398.562.11.207.164.438.164.692 0 .36-.072.65-.216.873-.145.219-.385.328-.721.328-.215 0-.383-.07-.504-.211a.697.697 0 01-.188-.463c0-.23.07-.404.211-.521.137-.121.326-.182.569-.182h.281a1.686 1.686 0 00-.123-.498 1.379 1.379 0 00-.252-.37 1.94 1.94 0 00-.346-.298zm-2.168 0A6.59 6.59 0 0010 6.352L10.21 6c.122.074.272.17.452.287.18.117.35.26.51.428.156.164.289.351.398.562.11.207.164.438.164.692 0 .36-.072.65-.216.873-.145.219-.385.328-.721.328-.215 0-.383-.07-.504-.211a.697.697 0 01-.188-.463c0-.23.07-.404.211-.521.137-.121.327-.182.569-.182h.281a1.749 1.749 0 00-.117-.492 1.402 1.402 0 00-.258-.375 1.94 1.94 0 00-.346-.3z"/></symbol><symbol fill="currentColor" class="bi bi-book" viewBox="0 0 16 16" id="book" xmlns="http://www.w3.org/2000/svg"><path d="M1 2.828c.885-.37 2.154-.769 3.388-.893 1.33-.134 2.458.063 3.112.752v9.746c-.935-.53-2.12-.603-3.213-.493-1.18.12-2.37.461-3.287.811V2.828zm7.5-.141c.654-.689 1.782-.886 3.112-.752 1.234.124 2.503.523 3.388.893v9.923c-.918-.35-2.107-.692-3.287-.81-1.094-.111-2.278-.039-3.213.492V2.687zM8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 000 2.5v11a.5.5 0 00.707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 00.78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0016 13.5v-11a.5.5 0 00-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783z"/></symbol><symbol fill="currentColor" class="bi bi-book-fill" viewBox="0 0 16 16" id="book-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 000 2.5v11a.5.5 0 00.707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 00.78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0016 13.5v-11a.5.5 0 00-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783z"/></symbol><symbol fill="currentColor" class="bi bi-book-half" viewBox="0 0 16 16" id="book-half" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 2.687c.654-.689 1.782-.886 3.112-.752 1.234.124 2.503.523 3.388.893v9.923c-.918-.35-2.107-.692-3.287-.81-1.094-.111-2.278-.039-3.213.492V2.687zM8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 000 2.5v11a.5.5 0 00.707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 00.78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0016 13.5v-11a.5.5 0 00-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark" viewBox="0 0 16 16" id="bookmark" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.777.416L8 13.101l-5.223 2.815A.5.5 0 012 15.5V2zm2-1a1 1 0 00-1 1v12.566l4.723-2.482a.5.5 0 01.554 0L13 14.566V2a1 1 0 00-1-1H4z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-check" viewBox="0 0 16 16" id="bookmark-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.854 5.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 7.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.777.416L8 13.101l-5.223 2.815A.5.5 0 012 15.5V2zm2-1a1 1 0 00-1 1v12.566l4.723-2.482a.5.5 0 01.554 0L13 14.566V2a1 1 0 00-1-1H4z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-check-fill" viewBox="0 0 16 16" id="bookmark-check-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 15.5V2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.74.439L8 13.069l-5.26 2.87A.5.5 0 012 15.5zm8.854-9.646a.5.5 0 00-.708-.708L7.5 7.793 6.354 6.646a.5.5 0 10-.708.708l1.5 1.5a.5.5 0 00.708 0l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-dash" viewBox="0 0 16 16" id="bookmark-dash" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.5 6.5A.5.5 0 016 6h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.777.416L8 13.101l-5.223 2.815A.5.5 0 012 15.5V2zm2-1a1 1 0 00-1 1v12.566l4.723-2.482a.5.5 0 01.554 0L13 14.566V2a1 1 0 00-1-1H4z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-dash-fill" viewBox="0 0 16 16" id="bookmark-dash-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 15.5V2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.74.439L8 13.069l-5.26 2.87A.5.5 0 012 15.5zM6 6a.5.5 0 000 1h4a.5.5 0 000-1H6z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-fill" viewBox="0 0 16 16" id="bookmark-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2v13.5a.5.5 0 00.74.439L8 13.069l5.26 2.87A.5.5 0 0014 15.5V2a2 2 0 00-2-2H4a2 2 0 00-2 2z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-heart" viewBox="0 0 16 16" id="bookmark-heart" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 4.41c1.387-1.425 4.854 1.07 0 4.277C3.146 5.48 6.613 2.986 8 4.412z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.777.416L8 13.101l-5.223 2.815A.5.5 0 012 15.5V2zm2-1a1 1 0 00-1 1v12.566l4.723-2.482a.5.5 0 01.554 0L13 14.566V2a1 1 0 00-1-1H4z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-heart-fill" viewBox="0 0 16 16" id="bookmark-heart-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 15.5a.5.5 0 00.74.439L8 13.069l5.26 2.87A.5.5 0 0014 15.5V2a2 2 0 00-2-2H4a2 2 0 00-2 2v13.5zM8 4.41c1.387-1.425 4.854 1.07 0 4.277C3.146 5.48 6.613 2.986 8 4.412z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-plus" viewBox="0 0 16 16" id="bookmark-plus" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.777.416L8 13.101l-5.223 2.815A.5.5 0 012 15.5V2zm2-1a1 1 0 00-1 1v12.566l4.723-2.482a.5.5 0 01.554 0L13 14.566V2a1 1 0 00-1-1H4z"/><path d="M8 4a.5.5 0 01.5.5V6H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V7H6a.5.5 0 010-1h1.5V4.5A.5.5 0 018 4z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-plus-fill" viewBox="0 0 16 16" id="bookmark-plus-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 15.5V2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.74.439L8 13.069l-5.26 2.87A.5.5 0 012 15.5zm6.5-11a.5.5 0 00-1 0V6H6a.5.5 0 000 1h1.5v1.5a.5.5 0 001 0V7H10a.5.5 0 000-1H8.5V4.5z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-star" viewBox="0 0 16 16" id="bookmark-star" xmlns="http://www.w3.org/2000/svg"><path d="M7.84 4.1a.178.178 0 01.32 0l.634 1.285a.178.178 0 00.134.098l1.42.206c.145.021.204.2.098.303L9.42 6.993a.178.178 0 00-.051.158l.242 1.414a.178.178 0 01-.258.187l-1.27-.668a.178.178 0 00-.165 0l-1.27.668a.178.178 0 01-.257-.187l.242-1.414a.178.178 0 00-.05-.158l-1.03-1.001a.178.178 0 01.098-.303l1.42-.206a.178.178 0 00.134-.098L7.84 4.1z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.777.416L8 13.101l-5.223 2.815A.5.5 0 012 15.5V2zm2-1a1 1 0 00-1 1v12.566l4.723-2.482a.5.5 0 01.554 0L13 14.566V2a1 1 0 00-1-1H4z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-star-fill" viewBox="0 0 16 16" id="bookmark-star-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 15.5V2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.74.439L8 13.069l-5.26 2.87A.5.5 0 012 15.5zM8.16 4.1a.178.178 0 00-.32 0l-.634 1.285a.178.178 0 01-.134.098l-1.42.206a.178.178 0 00-.098.303L6.58 6.993c.042.041.061.1.051.158L6.39 8.565a.178.178 0 00.258.187l1.27-.668a.178.178 0 01.165 0l1.27.668a.178.178 0 00.257-.187L9.368 7.15a.178.178 0 01.05-.158l1.028-1.001a.178.178 0 00-.098-.303l-1.42-.206a.178.178 0 01-.134-.098L8.16 4.1z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-x" viewBox="0 0 16 16" id="bookmark-x" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.146 5.146a.5.5 0 01.708 0L8 6.293l1.146-1.147a.5.5 0 11.708.708L8.707 7l1.147 1.146a.5.5 0 01-.708.708L8 7.707 6.854 8.854a.5.5 0 11-.708-.708L7.293 7 6.146 5.854a.5.5 0 010-.708z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.777.416L8 13.101l-5.223 2.815A.5.5 0 012 15.5V2zm2-1a1 1 0 00-1 1v12.566l4.723-2.482a.5.5 0 01.554 0L13 14.566V2a1 1 0 00-1-1H4z"/></symbol><symbol fill="currentColor" class="bi bi-bookmark-x-fill" viewBox="0 0 16 16" id="bookmark-x-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 15.5V2a2 2 0 012-2h8a2 2 0 012 2v13.5a.5.5 0 01-.74.439L8 13.069l-5.26 2.87A.5.5 0 012 15.5zM6.854 5.146a.5.5 0 10-.708.708L7.293 7 6.146 8.146a.5.5 0 10.708.708L8 7.707l1.146 1.147a.5.5 0 10.708-.708L8.707 7l1.147-1.146a.5.5 0 00-.708-.708L8 6.293 6.854 5.146z"/></symbol><symbol fill="currentColor" class="bi bi-bookmarks" viewBox="0 0 16 16" id="bookmarks" xmlns="http://www.w3.org/2000/svg"><path d="M2 4a2 2 0 012-2h6a2 2 0 012 2v11.5a.5.5 0 01-.777.416L7 13.101l-4.223 2.815A.5.5 0 012 15.5V4zm2-1a1 1 0 00-1 1v10.566l3.723-2.482a.5.5 0 01.554 0L11 14.566V4a1 1 0 00-1-1H4z"/><path d="M4.268 1H12a1 1 0 011 1v11.768l.223.148A.5.5 0 0014 13.5V2a2 2 0 00-2-2H6a2 2 0 00-1.732 1z"/></symbol><symbol fill="currentColor" class="bi bi-bookmarks-fill" viewBox="0 0 16 16" id="bookmarks-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 4a2 2 0 012-2h6a2 2 0 012 2v11.5a.5.5 0 01-.777.416L7 13.101l-4.223 2.815A.5.5 0 012 15.5V4z"/><path d="M4.268 1A2 2 0 016 0h6a2 2 0 012 2v11.5a.5.5 0 01-.777.416L13 13.768V2a1 1 0 00-1-1H4.268z"/></symbol><symbol fill="currentColor" class="bi bi-bookshelf" viewBox="0 0 16 16" id="bookshelf" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 0a.5.5 0 01.5.5V2h10V.5a.5.5 0 011 0v15a.5.5 0 01-1 0V15H3v.5a.5.5 0 01-1 0V.5a.5.5 0 01.5-.5zM3 14h10v-3H3v3zm0-4h10V7H3v3zm0-4h10V3H3v3z"/></symbol><symbol fill="currentColor" class="bi bi-bootstrap" viewBox="0 0 16 16" id="bootstrap" xmlns="http://www.w3.org/2000/svg"><path d="M5.062 12h3.475c1.804 0 2.888-.908 2.888-2.396 0-1.102-.761-1.916-1.904-2.034v-.1c.832-.14 1.482-.93 1.482-1.816 0-1.3-.955-2.11-2.542-2.11H5.062V12zm1.313-4.875V4.658h1.78c.973 0 1.542.457 1.542 1.237 0 .802-.604 1.23-1.764 1.23H6.375zm0 3.762V8.162h1.822c1.236 0 1.887.463 1.887 1.348 0 .896-.627 1.377-1.811 1.377H6.375z"/><path d="M0 4a4 4 0 014-4h8a4 4 0 014 4v8a4 4 0 01-4 4H4a4 4 0 01-4-4V4zm4-3a3 3 0 00-3 3v8a3 3 0 003 3h8a3 3 0 003-3V4a3 3 0 00-3-3H4z"/></symbol><symbol fill="currentColor" class="bi bi-bootstrap-fill" viewBox="0 0 16 16" id="bootstrap-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.375 7.125V4.658h1.78c.973 0 1.542.457 1.542 1.237 0 .802-.604 1.23-1.764 1.23H6.375zm0 3.762h1.898c1.184 0 1.81-.48 1.81-1.377 0-.885-.65-1.348-1.886-1.348H6.375v2.725z"/><path d="M4.002 0a4 4 0 00-4 4v8a4 4 0 004 4h8a4 4 0 004-4V4a4 4 0 00-4-4h-8zm1.06 12V3.545h3.399c1.587 0 2.543.809 2.543 2.11 0 .884-.65 1.675-1.483 1.816v.1c1.143.117 1.904.931 1.904 2.033 0 1.488-1.084 2.396-2.888 2.396H5.062z"/></symbol><symbol fill="currentColor" class="bi bi-bootstrap-reboot" viewBox="0 0 16 16" id="bootstrap-reboot" xmlns="http://www.w3.org/2000/svg"><path d="M1.161 8a6.84 6.84 0 106.842-6.84.58.58 0 110-1.16 8 8 0 11-6.556 3.412l-.663-.577a.58.58 0 01.227-.997l2.52-.69a.58.58 0 01.728.633l-.332 2.592a.58.58 0 01-.956.364l-.643-.56A6.812 6.812 0 001.16 8z"/><path d="M6.641 11.671V8.843h1.57l1.498 2.828h1.314L9.377 8.665c.897-.3 1.427-1.106 1.427-2.1 0-1.37-.943-2.246-2.456-2.246H5.5v7.352h1.141zm0-3.75V5.277h1.57c.881 0 1.416.499 1.416 1.32 0 .84-.504 1.324-1.386 1.324h-1.6z"/></symbol><symbol fill="currentColor" class="bi bi-border" viewBox="0 0 16 16" id="border" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h.969v.5H1v.469H.969V1H.5V.969H0V0zm2.844 1h-.938V0h.938v1zm1.875 0H3.78V0h.938v1zm1.875 0h-.938V0h.938v1zm.937 0V.969H7.5V.5h.031V0h.938v.5H8.5v.469h-.031V1H7.53zm2.813 0h-.938V0h.938v1zm1.875 0h-.938V0h.938v1zm1.875 0h-.938V0h.938v1zM15.5 1h-.469V.969H15V.5h.031V0H16v.969h-.5V1zM1 1.906v.938H0v-.938h1zm6.5.938v-.938h1v.938h-1zm7.5 0v-.938h1v.938h-1zM1 3.78v.938H0V3.78h1zm6.5.938V3.78h1v.938h-1zm7.5 0V3.78h1v.938h-1zM1 5.656v.938H0v-.938h1zm6.5.938v-.938h1v.938h-1zm7.5 0v-.938h1v.938h-1zM.969 8.5H.5v-.031H0V7.53h.5V7.5h.469v.031H1v.938H.969V8.5zm1.875 0h-.938v-1h.938v1zm1.875 0H3.78v-1h.938v1zm1.875 0h-.938v-1h.938v1zm1.875-.031V8.5H7.53v-.031H7.5V7.53h.031V7.5h.938v.031H8.5v.938h-.031zm1.875.031h-.938v-1h.938v1zm1.875 0h-.938v-1h.938v1zm1.875 0h-.938v-1h.938v1zm1.406 0h-.469v-.031H15V7.53h.031V7.5h.469v.031h.5v.938h-.5V8.5zM0 10.344v-.938h1v.938H0zm7.5 0v-.938h1v.938h-1zm8.5-.938v.938h-1v-.938h1zM0 12.22v-.938h1v.938H0zm7.5 0v-.938h1v.938h-1zm8.5-.938v.938h-1v-.938h1zM0 14.094v-.938h1v.938H0zm7.5 0v-.938h1v.938h-1zm8.5-.938v.938h-1v-.938h1zM.969 16H0v-.969h.5V15h.469v.031H1v.469H.969v.5zm1.875 0h-.938v-1h.938v1zm1.875 0H3.78v-1h.938v1zm1.875 0h-.938v-1h.938v1zm.937 0v-.5H7.5v-.469h.031V15h.938v.031H8.5v.469h-.031v.5H7.53zm2.813 0h-.938v-1h.938v1zm1.875 0h-.938v-1h.938v1zm1.875 0h-.938v-1h.938v1zm.937 0v-.5H15v-.469h.031V15h.469v.031h.5V16h-.969z"/></symbol><symbol fill="currentColor" class="bi bi-border-all" viewBox="0 0 16 16" id="border-all" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h16v16H0V0zm1 1v6.5h6.5V1H1zm7.5 0v6.5H15V1H8.5zM15 8.5H8.5V15H15V8.5zM7.5 15V8.5H1V15h6.5z"/></symbol><symbol fill="currentColor" class="bi bi-border-bottom" viewBox="0 0 16 16" id="border-bottom" xmlns="http://www.w3.org/2000/svg"><path d="M.969 0H0v.969h.5V1h.469V.969H1V.5H.969V0zm.937 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469h.031zM9.406 1h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031V1zM1 2.844v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5V8.5zm1.406 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5h.938zm.937 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031V8.5zM0 9.406v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zM0 15h16v1H0v-1z"/></symbol><symbol fill="currentColor" class="bi bi-border-center" viewBox="0 0 16 16" id="border-center" xmlns="http://www.w3.org/2000/svg"><path d="M.969 0H0v.969h.5V1h.469V.969H1V.5H.969V0zm.937 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469h.031zM9.406 1h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031V1zM1 2.844v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM0 8.5v-1h16v1H0zm0 .906v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0V16zm1.906 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469h.031zm1.875.5h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469h.031z"/></symbol><symbol fill="currentColor" class="bi bi-border-inner" viewBox="0 0 16 16" id="border-inner" xmlns="http://www.w3.org/2000/svg"><path d="M.969 0H0v.969h.5V1h.469V.969H1V.5H.969V0zm.937 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1z"/><path d="M8.5 7.5H16v1H8.5V16h-1V8.5H0v-1h7.5V0h1v7.5z"/><path d="M9.406 1h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031V1zM1 2.844v-.938H0v.938h1zm14-.938v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm14-.938v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm14-.938v.938h1v-.938h-1zM0 9.406v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0V16zm1.906 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm3.75 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469h.031z"/></symbol><symbol fill="currentColor" class="bi bi-border-left" viewBox="0 0 16 16" id="border-left" xmlns="http://www.w3.org/2000/svg"><path d="M0 0v16h1V0H0zm1.906 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469h.031zM9.406 1h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031V1zM7.5 1.906v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM7.5 3.781v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM7.5 5.656v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM1.906 8.5h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5h.938zm.937 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031V8.5zM7.5 9.406v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-8.5.937v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-8.5.937v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zM1.906 16h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469h.031zm1.875.5h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469h.031z"/></symbol><symbol fill="currentColor" class="bi bi-border-middle" viewBox="0 0 16 16" id="border-middle" xmlns="http://www.w3.org/2000/svg"><path d="M.969 0H0v.969h.5V1h.469V.969H1V.5H.969V0zm.937 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1zM8.5 16h-1V0h1v16zm.906-15h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.469V.969h.5V0h-.969v.5H15v.469h.031V1zM1 2.844v-.938H0v.938h1zm14-.938v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm14-.938v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm14-.938v.938h1v-.938h-1zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5V8.5zm1.406 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm3.75 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031V8.5zM0 9.406v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm16 .938v-.938h-1v.938h1zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0V16zm1.906 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm3.75 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469h.031z"/></symbol><symbol fill="currentColor" class="bi bi-border-outer" viewBox="0 0 16 16" id="border-outer" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 1.906v.938h1v-.938h-1zm0 1.875v.938h1V3.78h-1zm0 1.875v.938h1v-.938h-1zM1.906 8.5h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5h.938zm.937 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zM7.5 9.406v.938h1v-.938h-1zm0 1.875v.938h1v-.938h-1zm0 1.875v.938h1v-.938h-1z"/><path d="M0 0v16h16V0H0zm1 1h14v14H1V1z"/></symbol><symbol fill="currentColor" class="bi bi-border-right" viewBox="0 0 16 16" id="border-right" xmlns="http://www.w3.org/2000/svg"><path d="M.969 0H0v.969h.5V1h.469V.969H1V.5H.969V0zm.937 1h.938V0h-.938v1zm1.875 0h.938V0H3.78v1zm1.875 0h.938V0h-.938v1zM7.531.969V1h.938V.969H8.5V.5h-.031V0H7.53v.5H7.5v.469h.031zM9.406 1h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zm1.875 0h.938V0h-.938v1zM16 0h-1v16h1V0zM1 2.844v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5V8.5zm1.406 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5h.938zm.937 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zM0 9.406v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zM0 11.281v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zM0 13.156v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0V16zm1.906 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469h.031zm1.875.5h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1z"/></symbol><symbol fill="currentColor" class="bi bi-border-style" viewBox="0 0 16 16" id="border-style" xmlns="http://www.w3.org/2000/svg"><path d="M1 3.5a.5.5 0 01.5-.5h13a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-13a.5.5 0 01-.5-.5v-1zm0 4a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-1zm0 4a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm8 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-4 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm8 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-4-4a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-border-top" viewBox="0 0 16 16" id="border-top" xmlns="http://www.w3.org/2000/svg"><path d="M0 0v1h16V0H0zm1 2.844v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM1 4.719V3.78H0v.938h1zm6.5-.938v.938h1V3.78h-1zm7.5 0v.938h1V3.78h-1zM1 6.594v-.938H0v.938h1zm6.5-.938v.938h1v-.938h-1zm7.5 0v.938h1v-.938h-1zM.5 8.5h.469v-.031H1V7.53H.969V7.5H.5v.031H0v.938h.5V8.5zm1.406 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm2.813 0v-.031H8.5V7.53h-.031V7.5H7.53v.031H7.5v.938h.031V8.5h.938zm.937 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.469v-.031h.5V7.53h-.5V7.5h-.469v.031H15v.938h.031V8.5zM0 9.406v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zm-16 .937v.938h1v-.938H0zm7.5 0v.938h1v-.938h-1zm8.5.938v-.938h-1v.938h1zM0 16h.969v-.5H1v-.469H.969V15H.5v.031H0V16zm1.906 0h.938v-1h-.938v1zm1.875 0h.938v-1H3.78v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5h.938v-.5H8.5v-.469h-.031V15H7.53v.031H7.5v.469h.031zm1.875.5h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875 0h.938v-1h-.938v1zm1.875-.5v.5H16v-.969h-.5V15h-.469v.031H15v.469h.031z"/></symbol><symbol fill="currentColor" class="bi bi-border-width" viewBox="0 0 16 16" id="border-width" xmlns="http://www.w3.org/2000/svg"><path d="M0 3.5A.5.5 0 01.5 3h15a.5.5 0 01.5.5v2a.5.5 0 01-.5.5H.5a.5.5 0 01-.5-.5v-2zm0 5A.5.5 0 01.5 8h15a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H.5a.5.5 0 01-.5-.5v-1zm0 4a.5.5 0 01.5-.5h15a.5.5 0 010 1H.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-bounding-box" viewBox="0 0 16 16" id="bounding-box" xmlns="http://www.w3.org/2000/svg"><path d="M5 2V0H0v5h2v6H0v5h5v-2h6v2h5v-5h-2V5h2V0h-5v2H5zm6 1v2h2v6h-2v2H5v-2H3V5h2V3h6zm1-2h3v3h-3V1zm3 11v3h-3v-3h3zM4 15H1v-3h3v3zM1 4V1h3v3H1z"/></symbol><symbol fill="currentColor" class="bi bi-bounding-box-circles" viewBox="0 0 16 16" id="bounding-box-circles" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 100 2 1 1 0 000-2zM0 2a2 2 0 013.937-.5h8.126A2 2 0 1114.5 3.937v8.126a2 2 0 11-2.437 2.437H3.937A2 2 0 111.5 12.063V3.937A2 2 0 010 2zm2.5 1.937v8.126c.703.18 1.256.734 1.437 1.437h8.126a2.004 2.004 0 011.437-1.437V3.937A2.004 2.004 0 0112.063 2.5H3.937A2.004 2.004 0 012.5 3.937zM14 1a1 1 0 100 2 1 1 0 000-2zM2 13a1 1 0 100 2 1 1 0 000-2zm12 0a1 1 0 100 2 1 1 0 000-2z"/></symbol><symbol fill="currentColor" class="bi bi-box" viewBox="0 0 16 16" id="box" xmlns="http://www.w3.org/2000/svg"><path d="M8.186 1.113a.5.5 0 00-.372 0L1.846 3.5 8 5.961 14.154 3.5 8.186 1.113zM15 4.239l-6.5 2.6v7.922l6.5-2.6V4.24zM7.5 14.762V6.838L1 4.239v7.923l6.5 2.6zM7.443.184a1.5 1.5 0 011.114 0l7.129 2.852A.5.5 0 0116 3.5v8.662a1 1 0 01-.629.928l-7.185 2.874a.5.5 0 01-.372 0L.63 13.09a1 1 0 01-.63-.928V3.5a.5.5 0 01.314-.464L7.443.184z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-down" viewBox="0 0 16 16" id="box-arrow-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.5 10a.5.5 0 01-.5-.5v-8a.5.5 0 01.5-.5h9a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-2a.5.5 0 000 1h2A1.5 1.5 0 0014 9.5v-8A1.5 1.5 0 0012.5 0h-9A1.5 1.5 0 002 1.5v8A1.5 1.5 0 003.5 11h2a.5.5 0 000-1h-2z"/><path fill-rule="evenodd" d="M7.646 15.854a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 14.293V5.5a.5.5 0 00-1 0v8.793l-2.146-2.147a.5.5 0 00-.708.708l3 3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-down-left" viewBox="0 0 16 16" id="box-arrow-down-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.364 12.5a.5.5 0 00.5.5H14.5a1.5 1.5 0 001.5-1.5v-10A1.5 1.5 0 0014.5 0h-10A1.5 1.5 0 003 1.5v6.636a.5.5 0 101 0V1.5a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v10a.5.5 0 01-.5.5H7.864a.5.5 0 00-.5.5z"/><path fill-rule="evenodd" d="M0 15.5a.5.5 0 00.5.5h5a.5.5 0 000-1H1.707l8.147-8.146a.5.5 0 00-.708-.708L1 14.293V10.5a.5.5 0 00-1 0v5z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-down-right" viewBox="0 0 16 16" id="box-arrow-down-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8.636 12.5a.5.5 0 01-.5.5H1.5A1.5 1.5 0 010 11.5v-10A1.5 1.5 0 011.5 0h10A1.5 1.5 0 0113 1.5v6.636a.5.5 0 01-1 0V1.5a.5.5 0 00-.5-.5h-10a.5.5 0 00-.5.5v10a.5.5 0 00.5.5h6.636a.5.5 0 01.5.5z"/><path fill-rule="evenodd" d="M16 15.5a.5.5 0 01-.5.5h-5a.5.5 0 010-1h3.793L6.146 6.854a.5.5 0 11.708-.708L15 14.293V10.5a.5.5 0 011 0v5z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-down" viewBox="0 0 16 16" id="box-arrow-in-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.5 6a.5.5 0 00-.5.5v8a.5.5 0 00.5.5h9a.5.5 0 00.5-.5v-8a.5.5 0 00-.5-.5h-2a.5.5 0 010-1h2A1.5 1.5 0 0114 6.5v8a1.5 1.5 0 01-1.5 1.5h-9A1.5 1.5 0 012 14.5v-8A1.5 1.5 0 013.5 5h2a.5.5 0 010 1h-2z"/><path fill-rule="evenodd" d="M7.646 11.854a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 10.293V1.5a.5.5 0 00-1 0v8.793L5.354 8.146a.5.5 0 10-.708.708l3 3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-down-left" viewBox="0 0 16 16" id="box-arrow-in-down-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M9.636 2.5a.5.5 0 00-.5-.5H2.5A1.5 1.5 0 001 3.5v10A1.5 1.5 0 002.5 15h10a1.5 1.5 0 001.5-1.5V6.864a.5.5 0 00-1 0V13.5a.5.5 0 01-.5.5h-10a.5.5 0 01-.5-.5v-10a.5.5 0 01.5-.5h6.636a.5.5 0 00.5-.5z"/><path fill-rule="evenodd" d="M5 10.5a.5.5 0 00.5.5h5a.5.5 0 000-1H6.707l8.147-8.146a.5.5 0 00-.708-.708L6 9.293V5.5a.5.5 0 00-1 0v5z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-down-right" viewBox="0 0 16 16" id="box-arrow-in-down-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.364 2.5a.5.5 0 01.5-.5H13.5A1.5 1.5 0 0115 3.5v10a1.5 1.5 0 01-1.5 1.5h-10A1.5 1.5 0 012 13.5V6.864a.5.5 0 111 0V13.5a.5.5 0 00.5.5h10a.5.5 0 00.5-.5v-10a.5.5 0 00-.5-.5H6.864a.5.5 0 01-.5-.5z"/><path fill-rule="evenodd" d="M11 10.5a.5.5 0 01-.5.5h-5a.5.5 0 010-1h3.793L1.146 1.854a.5.5 0 11.708-.708L10 9.293V5.5a.5.5 0 011 0v5z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-left" viewBox="0 0 16 16" id="box-arrow-in-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10 3.5a.5.5 0 00-.5-.5h-8a.5.5 0 00-.5.5v9a.5.5 0 00.5.5h8a.5.5 0 00.5-.5v-2a.5.5 0 011 0v2A1.5 1.5 0 019.5 14h-8A1.5 1.5 0 010 12.5v-9A1.5 1.5 0 011.5 2h8A1.5 1.5 0 0111 3.5v2a.5.5 0 01-1 0v-2z"/><path fill-rule="evenodd" d="M4.146 8.354a.5.5 0 010-.708l3-3a.5.5 0 11.708.708L5.707 7.5H14.5a.5.5 0 010 1H5.707l2.147 2.146a.5.5 0 01-.708.708l-3-3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-right" viewBox="0 0 16 16" id="box-arrow-in-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 3.5a.5.5 0 01.5-.5h8a.5.5 0 01.5.5v9a.5.5 0 01-.5.5h-8a.5.5 0 01-.5-.5v-2a.5.5 0 00-1 0v2A1.5 1.5 0 006.5 14h8a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 2h-8A1.5 1.5 0 005 3.5v2a.5.5 0 001 0v-2z"/><path fill-rule="evenodd" d="M11.854 8.354a.5.5 0 000-.708l-3-3a.5.5 0 10-.708.708L10.293 7.5H1.5a.5.5 0 000 1h8.793l-2.147 2.146a.5.5 0 00.708.708l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-up" viewBox="0 0 16 16" id="box-arrow-in-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.5 10a.5.5 0 01-.5-.5v-8a.5.5 0 01.5-.5h9a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-2a.5.5 0 000 1h2A1.5 1.5 0 0014 9.5v-8A1.5 1.5 0 0012.5 0h-9A1.5 1.5 0 002 1.5v8A1.5 1.5 0 003.5 11h2a.5.5 0 000-1h-2z"/><path fill-rule="evenodd" d="M7.646 4.146a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 5.707V14.5a.5.5 0 01-1 0V5.707L5.354 7.854a.5.5 0 11-.708-.708l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-up-left" viewBox="0 0 16 16" id="box-arrow-in-up-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M9.636 13.5a.5.5 0 01-.5.5H2.5A1.5 1.5 0 011 12.5v-10A1.5 1.5 0 012.5 1h10A1.5 1.5 0 0114 2.5v6.636a.5.5 0 01-1 0V2.5a.5.5 0 00-.5-.5h-10a.5.5 0 00-.5.5v10a.5.5 0 00.5.5h6.636a.5.5 0 01.5.5z"/><path fill-rule="evenodd" d="M5 5.5a.5.5 0 01.5-.5h5a.5.5 0 010 1H6.707l8.147 8.146a.5.5 0 01-.708.708L6 6.707V10.5a.5.5 0 01-1 0v-5z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-in-up-right" viewBox="0 0 16 16" id="box-arrow-in-up-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.364 13.5a.5.5 0 00.5.5H13.5a1.5 1.5 0 001.5-1.5v-10A1.5 1.5 0 0013.5 1h-10A1.5 1.5 0 002 2.5v6.636a.5.5 0 101 0V2.5a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v10a.5.5 0 01-.5.5H6.864a.5.5 0 00-.5.5z"/><path fill-rule="evenodd" d="M11 5.5a.5.5 0 00-.5-.5h-5a.5.5 0 000 1h3.793l-8.147 8.146a.5.5 0 00.708.708L10 6.707V10.5a.5.5 0 001 0v-5z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-left" viewBox="0 0 16 16" id="box-arrow-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 12.5a.5.5 0 00.5.5h8a.5.5 0 00.5-.5v-9a.5.5 0 00-.5-.5h-8a.5.5 0 00-.5.5v2a.5.5 0 01-1 0v-2A1.5 1.5 0 016.5 2h8A1.5 1.5 0 0116 3.5v9a1.5 1.5 0 01-1.5 1.5h-8A1.5 1.5 0 015 12.5v-2a.5.5 0 011 0v2z"/><path fill-rule="evenodd" d="M.146 8.354a.5.5 0 010-.708l3-3a.5.5 0 11.708.708L1.707 7.5H10.5a.5.5 0 010 1H1.707l2.147 2.146a.5.5 0 01-.708.708l-3-3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-right" viewBox="0 0 16 16" id="box-arrow-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10 12.5a.5.5 0 01-.5.5h-8a.5.5 0 01-.5-.5v-9a.5.5 0 01.5-.5h8a.5.5 0 01.5.5v2a.5.5 0 001 0v-2A1.5 1.5 0 009.5 2h-8A1.5 1.5 0 000 3.5v9A1.5 1.5 0 001.5 14h8a1.5 1.5 0 001.5-1.5v-2a.5.5 0 00-1 0v2z"/><path fill-rule="evenodd" d="M15.854 8.354a.5.5 0 000-.708l-3-3a.5.5 0 00-.708.708L14.293 7.5H5.5a.5.5 0 000 1h8.793l-2.147 2.146a.5.5 0 00.708.708l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-up" viewBox="0 0 16 16" id="box-arrow-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.5 6a.5.5 0 00-.5.5v8a.5.5 0 00.5.5h9a.5.5 0 00.5-.5v-8a.5.5 0 00-.5-.5h-2a.5.5 0 010-1h2A1.5 1.5 0 0114 6.5v8a1.5 1.5 0 01-1.5 1.5h-9A1.5 1.5 0 012 14.5v-8A1.5 1.5 0 013.5 5h2a.5.5 0 010 1h-2z"/><path fill-rule="evenodd" d="M7.646.146a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 1.707V10.5a.5.5 0 01-1 0V1.707L5.354 3.854a.5.5 0 11-.708-.708l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-up-left" viewBox="0 0 16 16" id="box-arrow-up-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.364 3.5a.5.5 0 01.5-.5H14.5A1.5 1.5 0 0116 4.5v10a1.5 1.5 0 01-1.5 1.5h-10A1.5 1.5 0 013 14.5V7.864a.5.5 0 111 0V14.5a.5.5 0 00.5.5h10a.5.5 0 00.5-.5v-10a.5.5 0 00-.5-.5H7.864a.5.5 0 01-.5-.5z"/><path fill-rule="evenodd" d="M0 .5A.5.5 0 01.5 0h5a.5.5 0 010 1H1.707l8.147 8.146a.5.5 0 01-.708.708L1 1.707V5.5a.5.5 0 01-1 0v-5z"/></symbol><symbol fill="currentColor" class="bi bi-box-arrow-up-right" viewBox="0 0 16 16" id="box-arrow-up-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8.636 3.5a.5.5 0 00-.5-.5H1.5A1.5 1.5 0 000 4.5v10A1.5 1.5 0 001.5 16h10a1.5 1.5 0 001.5-1.5V7.864a.5.5 0 00-1 0V14.5a.5.5 0 01-.5.5h-10a.5.5 0 01-.5-.5v-10a.5.5 0 01.5-.5h6.636a.5.5 0 00.5-.5z"/><path fill-rule="evenodd" d="M16 .5a.5.5 0 00-.5-.5h-5a.5.5 0 000 1h3.793L6.146 9.146a.5.5 0 10.708.708L15 1.707V5.5a.5.5 0 001 0v-5z"/></symbol><symbol fill="currentColor" class="bi bi-box-seam" viewBox="0 0 16 16" id="box-seam" xmlns="http://www.w3.org/2000/svg"><path d="M8.186 1.113a.5.5 0 00-.372 0L1.846 3.5l2.404.961L10.404 2l-2.218-.887zm3.564 1.426L5.596 5 8 5.961 14.154 3.5l-2.404-.961zm3.25 1.7l-6.5 2.6v7.922l6.5-2.6V4.24zM7.5 14.762V6.838L1 4.239v7.923l6.5 2.6zM7.443.184a1.5 1.5 0 011.114 0l7.129 2.852A.5.5 0 0116 3.5v8.662a1 1 0 01-.629.928l-7.185 2.874a.5.5 0 01-.372 0L.63 13.09a1 1 0 01-.63-.928V3.5a.5.5 0 01.314-.464L7.443.184z"/></symbol><symbol fill="currentColor" class="bi bi-braces" viewBox="0 0 16 16" id="braces" xmlns="http://www.w3.org/2000/svg"><path d="M2.114 8.063V7.9c1.005-.102 1.497-.615 1.497-1.6V4.503c0-1.094.39-1.538 1.354-1.538h.273V2h-.376C3.25 2 2.49 2.759 2.49 4.352v1.524c0 1.094-.376 1.456-1.49 1.456v1.299c1.114 0 1.49.362 1.49 1.456v1.524c0 1.593.759 2.352 2.372 2.352h.376v-.964h-.273c-.964 0-1.354-.444-1.354-1.538V9.663c0-.984-.492-1.497-1.497-1.6zM13.886 7.9v.163c-1.005.103-1.497.616-1.497 1.6v1.798c0 1.094-.39 1.538-1.354 1.538h-.273v.964h.376c1.613 0 2.372-.759 2.372-2.352v-1.524c0-1.094.376-1.456 1.49-1.456V7.332c-1.114 0-1.49-.362-1.49-1.456V4.352C13.51 2.759 12.75 2 11.138 2h-.376v.964h.273c.964 0 1.354.444 1.354 1.538V6.3c0 .984.492 1.497 1.497 1.6z"/></symbol><symbol fill="currentColor" class="bi bi-bricks" viewBox="0 0 16 16" id="bricks" xmlns="http://www.w3.org/2000/svg"><path d="M0 .5A.5.5 0 01.5 0h15a.5.5 0 01.5.5v3a.5.5 0 01-.5.5H14v2h1.5a.5.5 0 01.5.5v3a.5.5 0 01-.5.5H14v2h1.5a.5.5 0 01.5.5v3a.5.5 0 01-.5.5H.5a.5.5 0 01-.5-.5v-3a.5.5 0 01.5-.5H2v-2H.5a.5.5 0 01-.5-.5v-3A.5.5 0 01.5 6H2V4H.5a.5.5 0 01-.5-.5v-3zM3 4v2h4.5V4H3zm5.5 0v2H13V4H8.5zM3 10v2h4.5v-2H3zm5.5 0v2H13v-2H8.5zM1 1v2h3.5V1H1zm4.5 0v2h5V1h-5zm6 0v2H15V1h-3.5zM1 7v2h3.5V7H1zm4.5 0v2h5V7h-5zm6 0v2H15V7h-3.5zM1 13v2h3.5v-2H1zm4.5 0v2h5v-2h-5zm6 0v2H15v-2h-3.5z"/></symbol><symbol fill="currentColor" class="bi bi-briefcase" viewBox="0 0 16 16" id="briefcase" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 1A1.5 1.5 0 005 2.5V3H1.5A1.5 1.5 0 000 4.5v8A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-8A1.5 1.5 0 0014.5 3H11v-.5A1.5 1.5 0 009.5 1h-3zm0 1h3a.5.5 0 01.5.5V3H6v-.5a.5.5 0 01.5-.5zm1.886 6.914L15 7.151V12.5a.5.5 0 01-.5.5h-13a.5.5 0 01-.5-.5V7.15l6.614 1.764a1.5 1.5 0 00.772 0zM1.5 4h13a.5.5 0 01.5.5v1.616L8.129 7.948a.5.5 0 01-.258 0L1 6.116V4.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-briefcase-fill" viewBox="0 0 16 16" id="briefcase-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 1A1.5 1.5 0 005 2.5V3H1.5A1.5 1.5 0 000 4.5v1.384l7.614 2.03a1.5 1.5 0 00.772 0L16 5.884V4.5A1.5 1.5 0 0014.5 3H11v-.5A1.5 1.5 0 009.5 1h-3zm0 1h3a.5.5 0 01.5.5V3H6v-.5a.5.5 0 01.5-.5z"/><path d="M0 12.5A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5V6.85L8.129 8.947a.5.5 0 01-.258 0L0 6.85v5.65z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-alt-high" viewBox="0 0 16 16" id="brightness-alt-high" xmlns="http://www.w3.org/2000/svg"><path d="M8 3a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 3zm8 8a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2a.5.5 0 01.5.5zm-13.5.5a.5.5 0 000-1h-2a.5.5 0 000 1h2zm11.157-6.157a.5.5 0 010 .707l-1.414 1.414a.5.5 0 11-.707-.707l1.414-1.414a.5.5 0 01.707 0zm-9.9 2.121a.5.5 0 00.707-.707L3.05 5.343a.5.5 0 10-.707.707l1.414 1.414zM8 7a4 4 0 00-4 4 .5.5 0 00.5.5h7a.5.5 0 00.5-.5 4 4 0 00-4-4zm0 1a3 3 0 012.959 2.5H5.04A3 3 0 018 8z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-alt-high-fill" viewBox="0 0 16 16" id="brightness-alt-high-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 3a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 3zm8 8a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2a.5.5 0 01.5.5zm-13.5.5a.5.5 0 000-1h-2a.5.5 0 000 1h2zm11.157-6.157a.5.5 0 010 .707l-1.414 1.414a.5.5 0 11-.707-.707l1.414-1.414a.5.5 0 01.707 0zm-9.9 2.121a.5.5 0 00.707-.707L3.05 5.343a.5.5 0 10-.707.707l1.414 1.414zM8 7a4 4 0 00-4 4 .5.5 0 00.5.5h7a.5.5 0 00.5-.5 4 4 0 00-4-4z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-alt-low" viewBox="0 0 16 16" id="brightness-alt-low" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 5.5a.5.5 0 11-1 0 .5.5 0 011 0zm5 6a.5.5 0 110-1 .5.5 0 010 1zM2 11a.5.5 0 101 0 .5.5 0 00-1 0zm10.243-3.536a.5.5 0 11-.707-.707.5.5 0 01.707.707zm-8.486-.707a.5.5 0 10.707.707.5.5 0 00-.707-.707zM8 7a4 4 0 00-4 4 .5.5 0 00.5.5h7a.5.5 0 00.5-.5 4 4 0 00-4-4zm0 1a3 3 0 012.959 2.5H5.04A3 3 0 018 8z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-alt-low-fill" viewBox="0 0 16 16" id="brightness-alt-low-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 5.5a.5.5 0 11-1 0 .5.5 0 011 0zm5 6a.5.5 0 110-1 .5.5 0 010 1zM2 11a.5.5 0 101 0 .5.5 0 00-1 0zm10.243-3.536a.5.5 0 11-.707-.707.5.5 0 01.707.707zm-8.486-.707a.5.5 0 10.707.707.5.5 0 00-.707-.707zM8 7a4 4 0 00-4 4 .5.5 0 00.5.5h7a.5.5 0 00.5-.5 4 4 0 00-4-4z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-high" viewBox="0 0 16 16" id="brightness-high" xmlns="http://www.w3.org/2000/svg"><path d="M8 11a3 3 0 110-6 3 3 0 010 6zm0 1a4 4 0 100-8 4 4 0 000 8zM8 0a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 0zm0 13a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 13zm8-5a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2a.5.5 0 01.5.5zM3 8a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2A.5.5 0 013 8zm10.657-5.657a.5.5 0 010 .707l-1.414 1.415a.5.5 0 11-.707-.708l1.414-1.414a.5.5 0 01.707 0zm-9.193 9.193a.5.5 0 010 .707L3.05 13.657a.5.5 0 01-.707-.707l1.414-1.414a.5.5 0 01.707 0zm9.193 2.121a.5.5 0 01-.707 0l-1.414-1.414a.5.5 0 01.707-.707l1.414 1.414a.5.5 0 010 .707zM4.464 4.465a.5.5 0 01-.707 0L2.343 3.05a.5.5 0 11.707-.707l1.414 1.414a.5.5 0 010 .708z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-high-fill" viewBox="0 0 16 16" id="brightness-high-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 8a4 4 0 11-8 0 4 4 0 018 0zM8 0a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 0zm0 13a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 13zm8-5a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2a.5.5 0 01.5.5zM3 8a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2A.5.5 0 013 8zm10.657-5.657a.5.5 0 010 .707l-1.414 1.415a.5.5 0 11-.707-.708l1.414-1.414a.5.5 0 01.707 0zm-9.193 9.193a.5.5 0 010 .707L3.05 13.657a.5.5 0 01-.707-.707l1.414-1.414a.5.5 0 01.707 0zm9.193 2.121a.5.5 0 01-.707 0l-1.414-1.414a.5.5 0 01.707-.707l1.414 1.414a.5.5 0 010 .707zM4.464 4.465a.5.5 0 01-.707 0L2.343 3.05a.5.5 0 11.707-.707l1.414 1.414a.5.5 0 010 .708z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-low" viewBox="0 0 16 16" id="brightness-low" xmlns="http://www.w3.org/2000/svg"><path d="M8 11a3 3 0 110-6 3 3 0 010 6zm0 1a4 4 0 100-8 4 4 0 000 8zm.5-9.5a.5.5 0 11-1 0 .5.5 0 011 0zm0 11a.5.5 0 11-1 0 .5.5 0 011 0zm5-5a.5.5 0 110-1 .5.5 0 010 1zm-11 0a.5.5 0 110-1 .5.5 0 010 1zm9.743-4.036a.5.5 0 11-.707-.707.5.5 0 01.707.707zm-7.779 7.779a.5.5 0 11-.707-.707.5.5 0 01.707.707zm7.072 0a.5.5 0 11.707-.707.5.5 0 01-.707.707zM3.757 4.464a.5.5 0 11.707-.707.5.5 0 01-.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-brightness-low-fill" viewBox="0 0 16 16" id="brightness-low-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 8a4 4 0 11-8 0 4 4 0 018 0zM8.5 2.5a.5.5 0 11-1 0 .5.5 0 011 0zm0 11a.5.5 0 11-1 0 .5.5 0 011 0zm5-5a.5.5 0 110-1 .5.5 0 010 1zm-11 0a.5.5 0 110-1 .5.5 0 010 1zm9.743-4.036a.5.5 0 11-.707-.707.5.5 0 01.707.707zm-7.779 7.779a.5.5 0 11-.707-.707.5.5 0 01.707.707zm7.072 0a.5.5 0 11.707-.707.5.5 0 01-.707.707zM3.757 4.464a.5.5 0 11.707-.707.5.5 0 01-.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-broadcast" viewBox="0 0 16 16" id="broadcast" xmlns="http://www.w3.org/2000/svg"><path d="M3.05 3.05a7 7 0 000 9.9.5.5 0 01-.707.707 8 8 0 010-11.314.5.5 0 01.707.707zm2.122 2.122a4 4 0 000 5.656.5.5 0 11-.708.708 5 5 0 010-7.072.5.5 0 01.708.708zm5.656-.708a.5.5 0 01.708 0 5 5 0 010 7.072.5.5 0 11-.708-.708 4 4 0 000-5.656.5.5 0 010-.708zm2.122-2.12a.5.5 0 01.707 0 8 8 0 010 11.313.5.5 0 01-.707-.707 7 7 0 000-9.9.5.5 0 010-.707zM10 8a2 2 0 11-4 0 2 2 0 014 0z"/></symbol><symbol fill="currentColor" class="bi bi-broadcast-pin" viewBox="0 0 16 16" id="broadcast-pin" xmlns="http://www.w3.org/2000/svg"><path d="M3.05 3.05a7 7 0 000 9.9.5.5 0 01-.707.707 8 8 0 010-11.314.5.5 0 01.707.707zm2.122 2.122a4 4 0 000 5.656.5.5 0 11-.708.708 5 5 0 010-7.072.5.5 0 01.708.708zm5.656-.708a.5.5 0 01.708 0 5 5 0 010 7.072.5.5 0 11-.708-.708 4 4 0 000-5.656.5.5 0 010-.708zm2.122-2.12a.5.5 0 01.707 0 8 8 0 010 11.313.5.5 0 01-.707-.707 7 7 0 000-9.9.5.5 0 010-.707zM6 8a2 2 0 112.5 1.937V15.5a.5.5 0 01-1 0V9.937A2 2 0 016 8z"/></symbol><symbol fill="currentColor" class="bi bi-brush" viewBox="0 0 16 16" id="brush" xmlns="http://www.w3.org/2000/svg"><path d="M15.825.12a.5.5 0 01.132.584c-1.53 3.43-4.743 8.17-7.095 10.64a6.067 6.067 0 01-2.373 1.534c-.018.227-.06.538-.16.868-.201.659-.667 1.479-1.708 1.74a8.118 8.118 0 01-3.078.132 3.659 3.659 0 01-.562-.135 1.382 1.382 0 01-.466-.247.714.714 0 01-.204-.288.622.622 0 01.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 01.596.04zM4.705 11.912a1.23 1.23 0 00-.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 01-.76.861c.69.112 1.736.111 2.657-.12.559-.139.843-.569.993-1.06a3.122 3.122 0 00.126-.75l-.793-.792zm1.44.026c.12-.04.277-.1.458-.183a5.068 5.068 0 001.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.04l.007-.005a.031.031 0 01-.007.004zm3.582-3.043l.002.001h-.002z"/></symbol><symbol fill="currentColor" class="bi bi-brush-fill" viewBox="0 0 16 16" id="brush-fill" xmlns="http://www.w3.org/2000/svg"><path d="M15.825.12a.5.5 0 01.132.584c-1.53 3.43-4.743 8.17-7.095 10.64a6.067 6.067 0 01-2.373 1.534c-.018.227-.06.538-.16.868-.201.659-.667 1.479-1.708 1.74a8.118 8.118 0 01-3.078.132 3.659 3.659 0 01-.562-.135 1.382 1.382 0 01-.466-.247.714.714 0 01-.204-.288.622.622 0 01.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 01.596.04z"/></symbol><symbol fill="currentColor" class="bi bi-bucket" viewBox="0 0 16 16" id="bucket" xmlns="http://www.w3.org/2000/svg"><path d="M2.522 5H2a.5.5 0 00-.494.574l1.372 9.149A1.5 1.5 0 004.36 16h7.278a1.5 1.5 0 001.483-1.277l1.373-9.149A.5.5 0 0014 5h-.522A5.5 5.5 0 002.522 5zm1.005 0a4.5 4.5 0 018.945 0H3.527zm9.892 1l-1.286 8.574a.5.5 0 01-.494.426H4.36a.5.5 0 01-.494-.426L2.58 6h10.838z"/></symbol><symbol fill="currentColor" class="bi bi-bucket-fill" viewBox="0 0 16 16" id="bucket-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.522 5H2a.5.5 0 00-.494.574l1.372 9.149A1.5 1.5 0 004.36 16h7.278a1.5 1.5 0 001.483-1.277l1.373-9.149A.5.5 0 0014 5h-.522A5.5 5.5 0 002.522 5zm1.005 0a4.5 4.5 0 018.945 0H3.527z"/></symbol><symbol fill="currentColor" class="bi bi-bug" viewBox="0 0 16 16" id="bug" xmlns="http://www.w3.org/2000/svg"><path d="M4.355.522a.5.5 0 01.623.333l.291.956A4.979 4.979 0 018 1c1.007 0 1.946.298 2.731.811l.29-.956a.5.5 0 11.957.29l-.41 1.352A4.985 4.985 0 0113 6h.5a.5.5 0 00.5-.5V5a.5.5 0 011 0v.5A1.5 1.5 0 0113.5 7H13v1h1.5a.5.5 0 010 1H13v1h.5a1.5 1.5 0 011.5 1.5v.5a.5.5 0 11-1 0v-.5a.5.5 0 00-.5-.5H13a5 5 0 01-10 0h-.5a.5.5 0 00-.5.5v.5a.5.5 0 11-1 0v-.5A1.5 1.5 0 012.5 10H3V9H1.5a.5.5 0 010-1H3V7h-.5A1.5 1.5 0 011 5.5V5a.5.5 0 011 0v.5a.5.5 0 00.5.5H3c0-1.364.547-2.601 1.432-3.503l-.41-1.352a.5.5 0 01.333-.623zM4 7v4a4 4 0 003.5 3.97V7H4zm4.5 0v7.97A4 4 0 0012 11V7H8.5zM12 6a3.989 3.989 0 00-1.334-2.982A3.983 3.983 0 008 2a3.983 3.983 0 00-2.667 1.018A3.989 3.989 0 004 6h8z"/></symbol><symbol fill="currentColor" class="bi bi-bug-fill" viewBox="0 0 16 16" id="bug-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.978.855a.5.5 0 10-.956.29l.41 1.352A4.985 4.985 0 003 6h10a4.985 4.985 0 00-1.432-3.503l.41-1.352a.5.5 0 10-.956-.29l-.291.956A4.978 4.978 0 008 1a4.979 4.979 0 00-2.731.811l-.29-.956z"/><path d="M13 6v1H8.5v8.975A5 5 0 0013 11h.5a.5.5 0 01.5.5v.5a.5.5 0 101 0v-.5a1.5 1.5 0 00-1.5-1.5H13V9h1.5a.5.5 0 000-1H13V7h.5A1.5 1.5 0 0015 5.5V5a.5.5 0 00-1 0v.5a.5.5 0 01-.5.5H13zm-5.5 9.975V7H3V6h-.5a.5.5 0 01-.5-.5V5a.5.5 0 00-1 0v.5A1.5 1.5 0 002.5 7H3v1H1.5a.5.5 0 000 1H3v1h-.5A1.5 1.5 0 001 11.5v.5a.5.5 0 101 0v-.5a.5.5 0 01.5-.5H3a5 5 0 004.5 4.975z"/></symbol><symbol fill="currentColor" class="bi bi-building" viewBox="0 0 16 16" id="building" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M14.763.075A.5.5 0 0115 .5v15a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5V14h-1v1.5a.5.5 0 01-.5.5h-9a.5.5 0 01-.5-.5V10a.5.5 0 01.342-.474L6 7.64V4.5a.5.5 0 01.276-.447l8-4a.5.5 0 01.487.022zM6 8.694L1 10.36V15h5V8.694zM7 15h2v-1.5a.5.5 0 01.5-.5h2a.5.5 0 01.5.5V15h2V1.309l-7 3.5V15z"/><path d="M2 11h1v1H2v-1zm2 0h1v1H4v-1zm-2 2h1v1H2v-1zm2 0h1v1H4v-1zm4-4h1v1H8V9zm2 0h1v1h-1V9zm-2 2h1v1H8v-1zm2 0h1v1h-1v-1zm2-2h1v1h-1V9zm0 2h1v1h-1v-1zM8 7h1v1H8V7zm2 0h1v1h-1V7zm2 0h1v1h-1V7zM8 5h1v1H8V5zm2 0h1v1h-1V5zm2 0h1v1h-1V5zm0-2h1v1h-1V3z"/></symbol><symbol fill="currentColor" class="bi bi-bullseye" viewBox="0 0 16 16" id="bullseye" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M8 13A5 5 0 118 3a5 5 0 010 10zm0 1A6 6 0 108 2a6 6 0 000 12z"/><path d="M8 11a3 3 0 110-6 3 3 0 010 6zm0 1a4 4 0 100-8 4 4 0 000 8z"/><path d="M9.5 8a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-calculator" viewBox="0 0 16 16" id="calculator" xmlns="http://www.w3.org/2000/svg"><path d="M12 1a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h8zM4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4z"/><path d="M4 2.5a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-2zm0 4a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm0 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm0 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm3-6a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm0 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm0 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm3-6a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm0 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v4a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-4z"/></symbol><symbol fill="currentColor" class="bi bi-calculator-fill" viewBox="0 0 16 16" id="calculator-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm2 .5v2a.5.5 0 00.5.5h7a.5.5 0 00.5-.5v-2a.5.5 0 00-.5-.5h-7a.5.5 0 00-.5.5zm0 4v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5zM4.5 9a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zM4 12.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5zM7.5 6a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zM7 9.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5zm.5 2.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zM10 6.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5zm.5 2.5a.5.5 0 00-.5.5v4a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-4a.5.5 0 00-.5-.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar" viewBox="0 0 16 16" id="calendar" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-check" viewBox="0 0 16 16" id="calendar-check" xmlns="http://www.w3.org/2000/svg"><path d="M10.854 7.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 9.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-check-fill" viewBox="0 0 16 16" id="calendar-check-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zm-5.146-5.146l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 01.708-.708L7.5 10.793l2.646-2.647a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-date" viewBox="0 0 16 16" id="calendar-date" xmlns="http://www.w3.org/2000/svg"><path d="M6.445 11.688V6.354h-.633A12.6 12.6 0 004.5 7.16v.695c.375-.257.969-.62 1.258-.777h.012v4.61h.675zm1.188-1.305c.047.64.594 1.406 1.703 1.406 1.258 0 2-1.066 2-2.871 0-1.934-.781-2.668-1.953-2.668-.926 0-1.797.672-1.797 1.809 0 1.16.824 1.77 1.676 1.77.746 0 1.23-.376 1.383-.79h.027c-.004 1.316-.461 2.164-1.305 2.164-.664 0-1.008-.45-1.05-.82h-.684zm2.953-2.317c0 .696-.559 1.18-1.184 1.18-.601 0-1.144-.383-1.144-1.2 0-.823.582-1.21 1.168-1.21.633 0 1.16.398 1.16 1.23z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-date-fill" viewBox="0 0 16 16" id="calendar-date-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zm5.402 9.746c.625 0 1.184-.484 1.184-1.18 0-.832-.527-1.23-1.16-1.23-.586 0-1.168.387-1.168 1.21 0 .817.543 1.2 1.144 1.2z"/><path d="M16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zm-6.664-1.21c-1.11 0-1.656-.767-1.703-1.407h.683c.043.37.387.82 1.051.82.844 0 1.301-.848 1.305-2.164h-.027c-.153.414-.637.79-1.383.79-.852 0-1.676-.61-1.676-1.77 0-1.137.871-1.809 1.797-1.809 1.172 0 1.953.734 1.953 2.668 0 1.805-.742 2.871-2 2.871zm-2.89-5.435v5.332H5.77V8.079h-.012c-.29.156-.883.52-1.258.777V8.16a12.6 12.6 0 011.313-.805h.632z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-day" viewBox="0 0 16 16" id="calendar-day" xmlns="http://www.w3.org/2000/svg"><path d="M4.684 11.523v-2.3h2.261v-.61H4.684V6.801h2.464v-.61H4v5.332h.684zm3.296 0h.676V8.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a1.806 1.806 0 00-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98v4.105zm2.805-5.093c0 .238.192.425.43.425a.428.428 0 100-.855.426.426 0 00-.43.43zm.094 5.093h.672V7.418h-.672v4.105z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-day-fill" viewBox="0 0 16 16" id="calendar-day-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 14a2 2 0 01-2 2H2a2 2 0 01-2-2V5h16v9zm-4.785-6.145a.428.428 0 100-.855.426.426 0 00-.43.43c0 .238.192.425.43.425zm.336.563h-.672v4.105h.672V8.418zm-6.867 4.105v-2.3h2.261v-.61H4.684V7.801h2.464v-.61H4v5.332h.684zm3.296 0h.676V9.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a1.806 1.806 0 00-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98v4.105z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-event" viewBox="0 0 16 16" id="calendar-event" xmlns="http://www.w3.org/2000/svg"><path d="M11 6.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-event-fill" viewBox="0 0 16 16" id="calendar-event-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zm-3.5-7h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-fill" viewBox="0 0 16 16" id="calendar-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V5h16V4H0V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-minus" viewBox="0 0 16 16" id="calendar-minus" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 9.5A.5.5 0 016 9h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-minus-fill" viewBox="0 0 16 16" id="calendar-minus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zM6 10h4a.5.5 0 010 1H6a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-month" viewBox="0 0 16 16" id="calendar-month" xmlns="http://www.w3.org/2000/svg"><path d="M2.56 11.332L3.1 9.73h1.984l.54 1.602h.718L4.444 6h-.696L1.85 11.332h.71zm1.544-4.527L4.9 9.18H3.284l.8-2.375h.02zm5.746.422h-.676V9.77c0 .652-.414 1.023-1.004 1.023-.539 0-.98-.246-.98-1.012V7.227h-.676v2.746c0 .941.606 1.425 1.453 1.425.656 0 1.043-.28 1.188-.605h.027v.539h.668V7.227zm2.258 5.046c-.563 0-.91-.304-.985-.636h-.687c.094.683.625 1.199 1.668 1.199.93 0 1.746-.527 1.746-1.578V7.227h-.649v.578h-.019c-.191-.348-.637-.64-1.195-.64-.965 0-1.64.679-1.64 1.886v.34c0 1.23.683 1.902 1.64 1.902.558 0 1.008-.293 1.172-.648h.02v.605c0 .645-.423 1.023-1.071 1.023zm.008-4.53c.648 0 1.062.527 1.062 1.359v.253c0 .848-.39 1.364-1.062 1.364-.692 0-1.098-.512-1.098-1.364v-.253c0-.868.406-1.36 1.098-1.36z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-month-fill" viewBox="0 0 16 16" id="calendar-month-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zm.104 7.305L4.9 10.18H3.284l.8-2.375h.02zm9.074 2.297c0-.832-.414-1.36-1.062-1.36-.692 0-1.098.492-1.098 1.36v.253c0 .852.406 1.364 1.098 1.364.671 0 1.062-.516 1.062-1.364v-.253z"/><path d="M16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zM2.56 12.332h-.71L3.748 7h.696l1.898 5.332h-.719l-.539-1.602H3.1l-.54 1.602zm7.29-4.105v4.105h-.668v-.539h-.027c-.145.324-.532.605-1.188.605-.847 0-1.453-.484-1.453-1.425V8.227h.676v2.554c0 .766.441 1.012.98 1.012.59 0 1.004-.371 1.004-1.023V8.227h.676zm1.273 4.41c.075.332.422.636.985.636.648 0 1.07-.378 1.07-1.023v-.605h-.02c-.163.355-.613.648-1.171.648-.957 0-1.64-.672-1.64-1.902v-.34c0-1.207.675-1.887 1.64-1.887.558 0 1.004.293 1.195.64h.02v-.577h.648v4.03c0 1.052-.816 1.579-1.746 1.579-1.043 0-1.574-.516-1.668-1.2h.687z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-plus" viewBox="0 0 16 16" id="calendar-plus" xmlns="http://www.w3.org/2000/svg"><path d="M8 7a.5.5 0 01.5.5V9H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V10H6a.5.5 0 010-1h1.5V7.5A.5.5 0 018 7z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-plus-fill" viewBox="0 0 16 16" id="calendar-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zM8.5 8.5V10H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V11H6a.5.5 0 010-1h1.5V8.5a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-range" viewBox="0 0 16 16" id="calendar-range" xmlns="http://www.w3.org/2000/svg"><path d="M9 7a1 1 0 011-1h5v2h-5a1 1 0 01-1-1zM1 9h4a1 1 0 010 2H1V9z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-range-fill" viewBox="0 0 16 16" id="calendar-range-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 7V5H0v5h5a1 1 0 110 2H0v2a2 2 0 002 2h12a2 2 0 002-2V9h-6a1 1 0 110-2h6z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-week" viewBox="0 0 16 16" id="calendar-week" xmlns="http://www.w3.org/2000/svg"><path d="M11 6.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-3 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-5 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm3 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-week-fill" viewBox="0 0 16 16" id="calendar-week-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zM9.5 7h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5zm3 0h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5zM2 10.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm3.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-x" viewBox="0 0 16 16" id="calendar-x" xmlns="http://www.w3.org/2000/svg"><path d="M6.146 7.146a.5.5 0 01.708 0L8 8.293l1.146-1.147a.5.5 0 11.708.708L8.707 9l1.147 1.146a.5.5 0 01-.708.708L8 9.707l-1.146 1.147a.5.5 0 01-.708-.708L7.293 9 6.146 7.854a.5.5 0 010-.708z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM1 4v10a1 1 0 001 1h12a1 1 0 001-1V4H1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar-x-fill" viewBox="0 0 16 16" id="calendar-x-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v1h16V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM16 14V5H0v9a2 2 0 002 2h12a2 2 0 002-2zM6.854 8.146L8 9.293l1.146-1.147a.5.5 0 11.708.708L8.707 10l1.147 1.146a.5.5 0 01-.708.708L8 10.707l-1.146 1.147a.5.5 0 01-.708-.708L7.293 10 6.146 8.854a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2" viewBox="0 0 16 16" id="calendar2" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-check" viewBox="0 0 16 16" id="calendar2-check" xmlns="http://www.w3.org/2000/svg"><path d="M10.854 8.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 01.708-.708L7.5 10.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-check-fill" viewBox="0 0 16 16" id="calendar2-check-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zm-2.6 5.854a.5.5 0 00-.708-.708L7.5 10.793 6.354 9.646a.5.5 0 10-.708.708l1.5 1.5a.5.5 0 00.708 0l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-date" viewBox="0 0 16 16" id="calendar2-date" xmlns="http://www.w3.org/2000/svg"><path d="M6.445 12.688V7.354h-.633A12.6 12.6 0 004.5 8.16v.695c.375-.257.969-.62 1.258-.777h.012v4.61h.675zm1.188-1.305c.047.64.594 1.406 1.703 1.406 1.258 0 2-1.066 2-2.871 0-1.934-.781-2.668-1.953-2.668-.926 0-1.797.672-1.797 1.809 0 1.16.824 1.77 1.676 1.77.746 0 1.23-.376 1.383-.79h.027c-.004 1.316-.461 2.164-1.305 2.164-.664 0-1.008-.45-1.05-.82h-.684zm2.953-2.317c0 .696-.559 1.18-1.184 1.18-.601 0-1.144-.383-1.144-1.2 0-.823.582-1.21 1.168-1.21.633 0 1.16.398 1.16 1.23z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-date-fill" viewBox="0 0 16 16" id="calendar2-date-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.402 10.246c.625 0 1.184-.484 1.184-1.18 0-.832-.527-1.23-1.16-1.23-.586 0-1.168.387-1.168 1.21 0 .817.543 1.2 1.144 1.2z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zm-4.118 9.79c1.258 0 2-1.067 2-2.872 0-1.934-.781-2.668-1.953-2.668-.926 0-1.797.672-1.797 1.809 0 1.16.824 1.77 1.676 1.77.746 0 1.23-.376 1.383-.79h.027c-.004 1.316-.461 2.164-1.305 2.164-.664 0-1.008-.45-1.05-.82h-.684c.047.64.594 1.406 1.703 1.406zm-2.89-5.435h-.633A12.6 12.6 0 004.5 8.16v.695c.375-.257.969-.62 1.258-.777h.012v4.61h.675V7.354z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-day" viewBox="0 0 16 16" id="calendar2-day" xmlns="http://www.w3.org/2000/svg"><path d="M4.684 12.523v-2.3h2.261v-.61H4.684V7.801h2.464v-.61H4v5.332h.684zm3.296 0h.676V9.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a1.806 1.806 0 00-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98v4.105zm2.805-5.093c0 .238.192.425.43.425a.428.428 0 100-.855.426.426 0 00-.43.43zm.094 5.093h.672V8.418h-.672v4.105z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-day-fill" viewBox="0 0 16 16" id="calendar2-day-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zm-2.24 4.855a.428.428 0 100-.855.426.426 0 00-.429.43c0 .238.192.425.43.425zm.337.563h-.672v4.105h.672V8.418zm-6.867 4.105v-2.3h2.261v-.61H4.684V7.801h2.464v-.61H4v5.332h.684zm3.296 0h.676V9.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a1.806 1.806 0 00-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98v4.105z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-event" viewBox="0 0 16 16" id="calendar2-event" xmlns="http://www.w3.org/2000/svg"><path d="M11 7.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-event-fill" viewBox="0 0 16 16" id="calendar2-event-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zM11.5 7a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-fill" viewBox="0 0 16 16" id="calendar2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 .5a.5.5 0 00-1 0V1H2a2 2 0 00-2 2v11a2 2 0 002 2h12a2 2 0 002-2V3a2 2 0 00-2-2h-1V.5a.5.5 0 00-1 0V1H4V.5zM2.545 3h10.91c.3 0 .545.224.545.5v1c0 .276-.244.5-.546.5H2.545C2.245 5 2 4.776 2 4.5v-1c0-.276.244-.5.545-.5z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-minus" viewBox="0 0 16 16" id="calendar2-minus" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 10.5A.5.5 0 016 10h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-minus-fill" viewBox="0 0 16 16" id="calendar2-minus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zM6 10a.5.5 0 000 1h4a.5.5 0 000-1H6z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-month" viewBox="0 0 16 16" id="calendar2-month" xmlns="http://www.w3.org/2000/svg"><path d="M2.56 12.332l.54-1.602h1.984l.54 1.602h.718L4.444 7h-.696L1.85 12.332h.71zm1.544-4.527L4.9 10.18H3.284l.8-2.375h.02zm5.746.422h-.676v2.543c0 .652-.414 1.023-1.004 1.023-.539 0-.98-.246-.98-1.012V8.227h-.676v2.746c0 .941.606 1.425 1.453 1.425.656 0 1.043-.28 1.188-.605h.027v.539h.668V8.227zm2.258 5.046c-.563 0-.91-.304-.985-.636h-.687c.094.683.625 1.199 1.668 1.199.93 0 1.746-.527 1.746-1.578V8.227h-.649v.578h-.019c-.191-.348-.637-.64-1.195-.64-.965 0-1.64.679-1.64 1.886v.34c0 1.23.683 1.902 1.64 1.902.558 0 1.008-.293 1.172-.648h.02v.605c0 .645-.423 1.023-1.071 1.023zm.008-4.53c.648 0 1.062.527 1.062 1.359v.253c0 .848-.39 1.364-1.062 1.364-.692 0-1.098-.512-1.098-1.364v-.253c0-.868.406-1.36 1.098-1.36z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-month-fill" viewBox="0 0 16 16" id="calendar2-month-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.104 7.805L4.9 10.18H3.284l.8-2.375h.02zm9.074 2.297c0-.832-.414-1.36-1.062-1.36-.692 0-1.098.492-1.098 1.36v.253c0 .852.406 1.364 1.098 1.364.671 0 1.062-.516 1.062-1.364v-.253z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zM2.561 12.332L3.1 10.73h1.984l.54 1.602h.718L4.444 7h-.696L1.85 12.332h.71zM9.85 8.227h-.676v2.543c0 .652-.414 1.023-1.004 1.023-.539 0-.98-.246-.98-1.012V8.227h-.676v2.746c0 .941.606 1.425 1.453 1.425.656 0 1.043-.28 1.188-.605h.027v.539h.668V8.227zm1.273 4.41h-.687c.094.683.625 1.199 1.668 1.199.93 0 1.746-.527 1.746-1.578V8.227h-.649v.578h-.019c-.191-.348-.637-.64-1.195-.64-.965 0-1.64.679-1.64 1.886v.34c0 1.23.683 1.902 1.64 1.902.558 0 1.008-.293 1.172-.648h.02v.605c0 .645-.423 1.023-1.071 1.023-.563 0-.91-.304-.985-.636z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-plus" viewBox="0 0 16 16" id="calendar2-plus" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4zM8 8a.5.5 0 01.5.5V10H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V11H6a.5.5 0 010-1h1.5V8.5A.5.5 0 018 8z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-plus-fill" viewBox="0 0 16 16" id="calendar2-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 3.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5H2.545c-.3 0-.545.224-.545.5zm6.5 5a.5.5 0 00-1 0V10H6a.5.5 0 000 1h1.5v1.5a.5.5 0 001 0V11H10a.5.5 0 000-1H8.5V8.5z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-range" viewBox="0 0 16 16" id="calendar2-range" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4zM9 8a1 1 0 011-1h5v2h-5a1 1 0 01-1-1zm-8 2h4a1 1 0 110 2H1v-2z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-range-fill" viewBox="0 0 16 16" id="calendar2-range-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zM10 7a1 1 0 000 2h5V7h-5zm-4 4a1 1 0 00-1-1H1v2h4a1 1 0 001-1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-week" viewBox="0 0 16 16" id="calendar2-week" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4zM11 7.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-3 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-5 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm3 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-week-fill" viewBox="0 0 16 16" id="calendar2-week-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zM8.5 7a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zm3 0a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zM3 10.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5zm3.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-x" viewBox="0 0 16 16" id="calendar2-x" xmlns="http://www.w3.org/2000/svg"><path d="M6.146 8.146a.5.5 0 01.708 0L8 9.293l1.146-1.147a.5.5 0 11.708.708L8.707 10l1.147 1.146a.5.5 0 01-.708.708L8 10.707l-1.146 1.147a.5.5 0 01-.708-.708L7.293 10 6.146 8.854a.5.5 0 010-.708z"/><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v11a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2z"/><path d="M2.5 4a.5.5 0 01.5-.5h10a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H3a.5.5 0 01-.5-.5V4z"/></symbol><symbol fill="currentColor" class="bi bi-calendar2-x-fill" viewBox="0 0 16 16" id="calendar2-x-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zm9.954 3H2.545c-.3 0-.545.224-.545.5v1c0 .276.244.5.545.5h10.91c.3 0 .545-.224.545-.5v-1c0-.276-.244-.5-.546-.5zm-6.6 5.146a.5.5 0 10-.708.708L7.293 10l-1.147 1.146a.5.5 0 00.708.708L8 10.707l1.146 1.147a.5.5 0 00.708-.708L8.707 10l1.147-1.146a.5.5 0 00-.708-.708L8 9.293 6.854 8.146z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3" viewBox="0 0 16 16" id="calendar3" xmlns="http://www.w3.org/2000/svg"><path d="M14 0H2a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z"/><path d="M6.5 7a1 1 0 100-2 1 1 0 000 2zm3 0a1 1 0 100-2 1 1 0 000 2zm3 0a1 1 0 100-2 1 1 0 000 2zm-9 3a1 1 0 100-2 1 1 0 000 2zm3 0a1 1 0 100-2 1 1 0 000 2zm3 0a1 1 0 100-2 1 1 0 000 2zm3 0a1 1 0 100-2 1 1 0 000 2zm-9 3a1 1 0 100-2 1 1 0 000 2zm3 0a1 1 0 100-2 1 1 0 000 2zm3 0a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3-event" viewBox="0 0 16 16" id="calendar3-event" xmlns="http://www.w3.org/2000/svg"><path d="M14 0H2a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z"/><path d="M12 7a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3-event-fill" viewBox="0 0 16 16" id="calendar3-event-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 0a2 2 0 00-2 2h16a2 2 0 00-2-2H2zM0 14V3h16v11a2 2 0 01-2 2H2a2 2 0 01-2-2zm12-8a1 1 0 102 0 1 1 0 00-2 0z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3-fill" viewBox="0 0 16 16" id="calendar3-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2H0zm0 1v11a2 2 0 002 2h12a2 2 0 002-2V3H0z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3-range" viewBox="0 0 16 16" id="calendar3-range" xmlns="http://www.w3.org/2000/svg"><path d="M14 0H2a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z"/><path d="M7 10a1 1 0 000-2H1v2h6zm2-3h6V5H9a1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3-range-fill" viewBox="0 0 16 16" id="calendar3-range-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 0a2 2 0 00-2 2h16a2 2 0 00-2-2H2zM0 8V3h16v2h-6a1 1 0 100 2h6v7a2 2 0 01-2 2H2a2 2 0 01-2-2v-4h6a1 1 0 100-2H0z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3-week" viewBox="0 0 16 16" id="calendar3-week" xmlns="http://www.w3.org/2000/svg"><path d="M14 0H2a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z"/><path d="M12 7a1 1 0 100-2 1 1 0 000 2zm-5 3a1 1 0 100-2 1 1 0 000 2zm2-3a1 1 0 100-2 1 1 0 000 2zm-5 3a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-calendar3-week-fill" viewBox="0 0 16 16" id="calendar3-week-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 0a2 2 0 00-2 2h16a2 2 0 00-2-2H2zM0 14V3h16v11a2 2 0 01-2 2H2a2 2 0 01-2-2zm12-8a1 1 0 102 0 1 1 0 00-2 0zM5 9a1 1 0 102 0 1 1 0 00-2 0zm5-2a1 1 0 110-2 1 1 0 010 2zM2 9a1 1 0 102 0 1 1 0 00-2 0z"/></symbol><symbol fill="currentColor" class="bi bi-calendar4" viewBox="0 0 16 16" id="calendar4" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v1h14V3a1 1 0 00-1-1H2zm13 3H1v9a1 1 0 001 1h12a1 1 0 001-1V5z"/></symbol><symbol fill="currentColor" class="bi bi-calendar4-event" viewBox="0 0 16 16" id="calendar4-event" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v1h14V3a1 1 0 00-1-1H2zm13 3H1v9a1 1 0 001 1h12a1 1 0 001-1V5z"/><path d="M11 7.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-calendar4-range" viewBox="0 0 16 16" id="calendar4-range" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v1h14V3a1 1 0 00-1-1H2zm13 3H1v9a1 1 0 001 1h12a1 1 0 001-1V5z"/><path d="M9 7.5a.5.5 0 01.5-.5H15v2H9.5a.5.5 0 01-.5-.5v-1zm-2 3v1a.5.5 0 01-.5.5H1v-2h5.5a.5.5 0 01.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-calendar4-week" viewBox="0 0 16 16" id="calendar4-week" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 0a.5.5 0 01.5.5V1h8V.5a.5.5 0 011 0V1h1a2 2 0 012 2v11a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h1V.5a.5.5 0 01.5-.5zM2 2a1 1 0 00-1 1v1h14V3a1 1 0 00-1-1H2zm13 3H1v9a1 1 0 001 1h12a1 1 0 001-1V5z"/><path d="M11 7.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-3 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-2 3a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm-3 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-camera" viewBox="0 0 16 16" id="camera" xmlns="http://www.w3.org/2000/svg"><path d="M15 12a1 1 0 01-1 1H2a1 1 0 01-1-1V6a1 1 0 011-1h1.172a3 3 0 002.12-.879l.83-.828A1 1 0 016.827 3h2.344a1 1 0 01.707.293l.828.828A3 3 0 0012.828 5H14a1 1 0 011 1v6zM2 4a2 2 0 00-2 2v6a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1.172a2 2 0 01-1.414-.586l-.828-.828A2 2 0 009.172 2H6.828a2 2 0 00-1.414.586l-.828.828A2 2 0 013.172 4H2z"/><path d="M8 11a2.5 2.5 0 110-5 2.5 2.5 0 010 5zm0 1a3.5 3.5 0 100-7 3.5 3.5 0 000 7zM3 6.5a.5.5 0 11-1 0 .5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-camera-fill" viewBox="0 0 16 16" id="camera-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.5 8.5a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0z"/><path d="M2 4a2 2 0 00-2 2v6a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1.172a2 2 0 01-1.414-.586l-.828-.828A2 2 0 009.172 2H6.828a2 2 0 00-1.414.586l-.828.828A2 2 0 013.172 4H2zm.5 2a.5.5 0 110-1 .5.5 0 010 1zm9 2.5a3.5 3.5 0 11-7 0 3.5 3.5 0 017 0z"/></symbol><symbol fill="currentColor" class="bi bi-camera-reels" viewBox="0 0 16 16" id="camera-reels" xmlns="http://www.w3.org/2000/svg"><path d="M6 3a3 3 0 11-6 0 3 3 0 016 0zM1 3a2 2 0 104 0 2 2 0 00-4 0z"/><path d="M9 6h.5a2 2 0 011.983 1.738l3.11-1.382A1 1 0 0116 7.269v7.462a1 1 0 01-1.406.913l-3.111-1.382A2 2 0 019.5 16H2a2 2 0 01-2-2V8a2 2 0 012-2h7zm6 8.73V7.27l-3.5 1.555v4.35l3.5 1.556zM1 8v6a1 1 0 001 1h7.5a1 1 0 001-1V8a1 1 0 00-1-1H2a1 1 0 00-1 1z"/><path d="M9 6a3 3 0 100-6 3 3 0 000 6zM7 3a2 2 0 114 0 2 2 0 01-4 0z"/></symbol><symbol fill="currentColor" class="bi bi-camera-reels-fill" viewBox="0 0 16 16" id="camera-reels-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 3a3 3 0 11-6 0 3 3 0 016 0z"/><path d="M9 6a3 3 0 110-6 3 3 0 010 6z"/><path d="M9 6h.5a2 2 0 011.983 1.738l3.11-1.382A1 1 0 0116 7.269v7.462a1 1 0 01-1.406.913l-3.111-1.382A2 2 0 019.5 16H2a2 2 0 01-2-2V8a2 2 0 012-2h7z"/></symbol><symbol fill="currentColor" class="bi bi-camera-video" viewBox="0 0 16 16" id="camera-video" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M0 5a2 2 0 012-2h7.5a2 2 0 011.983 1.738l3.11-1.382A1 1 0 0116 4.269v7.462a1 1 0 01-1.406.913l-3.111-1.382A2 2 0 019.5 13H2a2 2 0 01-2-2V5zm11.5 5.175l3.5 1.556V4.269l-3.5 1.556v4.35zM2 4a1 1 0 00-1 1v6a1 1 0 001 1h7.5a1 1 0 001-1V5a1 1 0 00-1-1H2z"/></symbol><symbol fill="currentColor" class="bi bi-camera-video-fill" viewBox="0 0 16 16" id="camera-video-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M0 5a2 2 0 012-2h7.5a2 2 0 011.983 1.738l3.11-1.382A1 1 0 0116 4.269v7.462a1 1 0 01-1.406.913l-3.111-1.382A2 2 0 019.5 13H2a2 2 0 01-2-2V5z"/></symbol><symbol fill="currentColor" class="bi bi-camera-video-off" viewBox="0 0 16 16" id="camera-video-off" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.961 12.365a1.99 1.99 0 00.522-1.103l3.11 1.382A1 1 0 0016 11.731V4.269a1 1 0 00-1.406-.913l-3.111 1.382A2 2 0 009.5 3H4.272l.714 1H9.5a1 1 0 011 1v6a1 1 0 01-.144.518l.605.847zM1.428 4.18A.999.999 0 001 5v6a1 1 0 001 1h5.014l.714 1H2a2 2 0 01-2-2V5c0-.675.334-1.272.847-1.634l.58.814zM15 11.73l-3.5-1.555v-4.35L15 4.269v7.462zm-4.407 3.56l-10-14 .814-.58 10 14-.814.58z"/></symbol><symbol fill="currentColor" class="bi bi-camera-video-off-fill" viewBox="0 0 16 16" id="camera-video-off-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.961 12.365a1.99 1.99 0 00.522-1.103l3.11 1.382A1 1 0 0016 11.731V4.269a1 1 0 00-1.406-.913l-3.111 1.382A2 2 0 009.5 3H4.272l6.69 9.365zm-10.114-9A2.001 2.001 0 000 5v6a2 2 0 002 2h5.728L.847 3.366zm9.746 11.925l-10-14 .814-.58 10 14-.814.58z"/></symbol><symbol fill="currentColor" class="bi bi-camera2" viewBox="0 0 16 16" id="camera2" xmlns="http://www.w3.org/2000/svg"><path d="M5 8c0-1.657 2.343-3 4-3V4a4 4 0 00-4 4z"/><path d="M12.318 3h2.015C15.253 3 16 3.746 16 4.667v6.666c0 .92-.746 1.667-1.667 1.667h-2.015A5.97 5.97 0 019 14a5.972 5.972 0 01-3.318-1H1.667C.747 13 0 12.254 0 11.333V4.667C0 3.747.746 3 1.667 3H2a1 1 0 011-1h1a1 1 0 011 1h.682A5.97 5.97 0 019 2c1.227 0 2.367.368 3.318 1zM2 4.5a.5.5 0 10-1 0 .5.5 0 001 0zM14 8A5 5 0 104 8a5 5 0 0010 0z"/></symbol><symbol fill="currentColor" class="bi bi-capslock" viewBox="0 0 16 16" id="capslock" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.27 1.047a1 1 0 011.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v1a1 1 0 01-1 1h-5a1 1 0 01-1-1v-1H1.654C.78 9.5.326 8.455.924 7.816L7.27 1.047zM14.346 8.5L8 1.731 1.654 8.5H4.5a1 1 0 011 1v1h5v-1a1 1 0 011-1h2.846zm-9.846 5a1 1 0 011-1h5a1 1 0 011 1v1a1 1 0 01-1 1h-5a1 1 0 01-1-1v-1zm6 0h-5v1h5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-capslock-fill" viewBox="0 0 16 16" id="capslock-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.27 1.047a1 1 0 011.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v1a1 1 0 01-1 1h-5a1 1 0 01-1-1v-1H1.654C.78 9.5.326 8.455.924 7.816L7.27 1.047zM4.5 13.5a1 1 0 011-1h5a1 1 0 011 1v1a1 1 0 01-1 1h-5a1 1 0 01-1-1v-1z"/></symbol><symbol fill="currentColor" class="bi bi-card-checklist" viewBox="0 0 16 16" id="card-checklist" xmlns="http://www.w3.org/2000/svg"><path d="M14.5 3a.5.5 0 01.5.5v9a.5.5 0 01-.5.5h-13a.5.5 0 01-.5-.5v-9a.5.5 0 01.5-.5h13zm-13-1A1.5 1.5 0 000 3.5v9A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 2h-13z"/><path d="M7 5.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm-1.496-.854a.5.5 0 010 .708l-1.5 1.5a.5.5 0 01-.708 0l-.5-.5a.5.5 0 11.708-.708l.146.147 1.146-1.147a.5.5 0 01.708 0zM7 9.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm-1.496-.854a.5.5 0 010 .708l-1.5 1.5a.5.5 0 01-.708 0l-.5-.5a.5.5 0 01.708-.708l.146.147 1.146-1.147a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-card-heading" viewBox="0 0 16 16" id="card-heading" xmlns="http://www.w3.org/2000/svg"><path d="M14.5 3a.5.5 0 01.5.5v9a.5.5 0 01-.5.5h-13a.5.5 0 01-.5-.5v-9a.5.5 0 01.5-.5h13zm-13-1A1.5 1.5 0 000 3.5v9A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 2h-13z"/><path d="M3 8.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zm0-5a.5.5 0 01.5-.5h9a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-9a.5.5 0 01-.5-.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-card-image" viewBox="0 0 16 16" id="card-image" xmlns="http://www.w3.org/2000/svg"><path d="M6.002 5.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/><path d="M1.5 2A1.5 1.5 0 000 3.5v9A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 2h-13zm13 1a.5.5 0 01.5.5v6l-3.775-1.947a.5.5 0 00-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 00-.63.062L1.002 12v.54A.505.505 0 011 12.5v-9a.5.5 0 01.5-.5h13z"/></symbol><symbol fill="currentColor" class="bi bi-card-list" viewBox="0 0 16 16" id="card-list" xmlns="http://www.w3.org/2000/svg"><path d="M14.5 3a.5.5 0 01.5.5v9a.5.5 0 01-.5.5h-13a.5.5 0 01-.5-.5v-9a.5.5 0 01.5-.5h13zm-13-1A1.5 1.5 0 000 3.5v9A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 2h-13z"/><path d="M5 8a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7A.5.5 0 015 8zm0-2.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0 5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-1-5a.5.5 0 11-1 0 .5.5 0 011 0zM4 8a.5.5 0 11-1 0 .5.5 0 011 0zm0 2.5a.5.5 0 11-1 0 .5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-card-text" viewBox="0 0 16 16" id="card-text" xmlns="http://www.w3.org/2000/svg"><path d="M14.5 3a.5.5 0 01.5.5v9a.5.5 0 01-.5.5h-13a.5.5 0 01-.5-.5v-9a.5.5 0 01.5-.5h13zm-13-1A1.5 1.5 0 000 3.5v9A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 2h-13z"/><path d="M3 5.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM3 8a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9A.5.5 0 013 8zm0 2.5a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-caret-down" viewBox="0 0 16 16" id="caret-down" xmlns="http://www.w3.org/2000/svg"><path d="M3.204 5h9.592L8 10.481 3.204 5zm-.753.659l4.796 5.48a1 1 0 001.506 0l4.796-5.48c.566-.647.106-1.659-.753-1.659H3.204a1 1 0 00-.753 1.659z"/></symbol><symbol fill="currentColor" class="bi bi-caret-down-fill" viewBox="0 0 16 16" id="caret-down-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.247 11.14L2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 01.753 1.659l-4.796 5.48a1 1 0 01-1.506 0z"/></symbol><symbol fill="currentColor" class="bi bi-caret-down-square" viewBox="0 0 16 16" id="caret-down-square" xmlns="http://www.w3.org/2000/svg"><path d="M3.626 6.832A.5.5 0 014 6h8a.5.5 0 01.374.832l-4 4.5a.5.5 0 01-.748 0l-4-4.5z"/><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2z"/></symbol><symbol fill="currentColor" class="bi bi-caret-down-square-fill" viewBox="0 0 16 16" id="caret-down-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm4 4a.5.5 0 00-.374.832l4 4.5a.5.5 0 00.748 0l4-4.5A.5.5 0 0012 6H4z"/></symbol><symbol fill="currentColor" class="bi bi-caret-left" viewBox="0 0 16 16" id="caret-left" xmlns="http://www.w3.org/2000/svg"><path d="M10 12.796V3.204L4.519 8 10 12.796zm-.659.753l-5.48-4.796a1 1 0 010-1.506l5.48-4.796A1 1 0 0111 3.204v9.592a1 1 0 01-1.659.753z"/></symbol><symbol fill="currentColor" class="bi bi-caret-left-fill" viewBox="0 0 16 16" id="caret-left-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.86 8.753l5.482 4.796c.646.566 1.658.106 1.658-.753V3.204a1 1 0 00-1.659-.753l-5.48 4.796a1 1 0 000 1.506z"/></symbol><symbol fill="currentColor" class="bi bi-caret-left-square" viewBox="0 0 16 16" id="caret-left-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M10.205 12.456A.5.5 0 0010.5 12V4a.5.5 0 00-.832-.374l-4.5 4a.5.5 0 000 .748l4.5 4a.5.5 0 00.537.082z"/></symbol><symbol fill="currentColor" class="bi bi-caret-left-square-fill" viewBox="0 0 16 16" id="caret-left-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm10.5 10V4a.5.5 0 00-.832-.374l-4.5 4a.5.5 0 000 .748l4.5 4A.5.5 0 0010.5 12z"/></symbol><symbol fill="currentColor" class="bi bi-caret-right" viewBox="0 0 16 16" id="caret-right" xmlns="http://www.w3.org/2000/svg"><path d="M6 12.796V3.204L11.481 8 6 12.796zm.659.753l5.48-4.796a1 1 0 000-1.506L6.66 2.451C6.011 1.885 5 2.345 5 3.204v9.592a1 1 0 001.659.753z"/></symbol><symbol fill="currentColor" class="bi bi-caret-right-fill" viewBox="0 0 16 16" id="caret-right-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12.14 8.753l-5.482 4.796c-.646.566-1.658.106-1.658-.753V3.204a1 1 0 011.659-.753l5.48 4.796a1 1 0 010 1.506z"/></symbol><symbol fill="currentColor" class="bi bi-caret-right-square" viewBox="0 0 16 16" id="caret-right-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M5.795 12.456A.5.5 0 015.5 12V4a.5.5 0 01.832-.374l4.5 4a.5.5 0 010 .748l-4.5 4a.5.5 0 01-.537.082z"/></symbol><symbol fill="currentColor" class="bi bi-caret-right-square-fill" viewBox="0 0 16 16" id="caret-right-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm5.5 10a.5.5 0 00.832.374l4.5-4a.5.5 0 000-.748l-4.5-4A.5.5 0 005.5 4v8z"/></symbol><symbol fill="currentColor" class="bi bi-caret-up" viewBox="0 0 16 16" id="caret-up" xmlns="http://www.w3.org/2000/svg"><path d="M3.204 11h9.592L8 5.519 3.204 11zm-.753-.659l4.796-5.48a1 1 0 011.506 0l4.796 5.48c.566.647.106 1.659-.753 1.659H3.204a1 1 0 01-.753-1.659z"/></symbol><symbol fill="currentColor" class="bi bi-caret-up-fill" viewBox="0 0 16 16" id="caret-up-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.247 4.86l-4.796 5.481c-.566.647-.106 1.659.753 1.659h9.592a1 1 0 00.753-1.659l-4.796-5.48a1 1 0 00-1.506 0z"/></symbol><symbol fill="currentColor" class="bi bi-caret-up-square" viewBox="0 0 16 16" id="caret-up-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M3.544 10.705A.5.5 0 004 11h8a.5.5 0 00.374-.832l-4-4.5a.5.5 0 00-.748 0l-4 4.5a.5.5 0 00-.082.537z"/></symbol><symbol fill="currentColor" class="bi bi-caret-up-square-fill" viewBox="0 0 16 16" id="caret-up-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm4 9h8a.5.5 0 00.374-.832l-4-4.5a.5.5 0 00-.748 0l-4 4.5A.5.5 0 004 11z"/></symbol><symbol fill="currentColor" class="bi bi-cart" viewBox="0 0 16 16" id="cart" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A.5.5 0 01.5 1H2a.5.5 0 01.485.379L2.89 3H14.5a.5.5 0 01.491.592l-1.5 8A.5.5 0 0113 12H4a.5.5 0 01-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 01-.5-.5zM3.102 4l1.313 7h8.17l1.313-7H3.102zM5 12a2 2 0 100 4 2 2 0 000-4zm7 0a2 2 0 100 4 2 2 0 000-4zm-7 1a1 1 0 110 2 1 1 0 010-2zm7 0a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-cart-check" viewBox="0 0 16 16" id="cart-check" xmlns="http://www.w3.org/2000/svg"><path d="M11.354 6.354a.5.5 0 00-.708-.708L8 8.293 6.854 7.146a.5.5 0 10-.708.708l1.5 1.5a.5.5 0 00.708 0l3-3z"/><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zm3.915 10L3.102 4h10.796l-1.313 7h-8.17zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-cart-check-fill" viewBox="0 0 16 16" id="cart-check-fill" xmlns="http://www.w3.org/2000/svg"><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0zm-1.646-7.646l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L8 8.293l2.646-2.647a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-cart-dash" viewBox="0 0 16 16" id="cart-dash" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 7a.5.5 0 000 1h4a.5.5 0 000-1h-4z"/><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zm3.915 10L3.102 4h10.796l-1.313 7h-8.17zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-cart-dash-fill" viewBox="0 0 16 16" id="cart-dash-fill" xmlns="http://www.w3.org/2000/svg"><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0zM6.5 7h4a.5.5 0 010 1h-4a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-cart-fill" viewBox="0 0 16 16" id="cart-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A.5.5 0 01.5 1H2a.5.5 0 01.485.379L2.89 3H14.5a.5.5 0 01.491.592l-1.5 8A.5.5 0 0113 12H4a.5.5 0 01-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 01-.5-.5zM5 12a2 2 0 100 4 2 2 0 000-4zm7 0a2 2 0 100 4 2 2 0 000-4zm-7 1a1 1 0 110 2 1 1 0 010-2zm7 0a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-cart-plus" viewBox="0 0 16 16" id="cart-plus" xmlns="http://www.w3.org/2000/svg"><path d="M9 5.5a.5.5 0 00-1 0V7H6.5a.5.5 0 000 1H8v1.5a.5.5 0 001 0V8h1.5a.5.5 0 000-1H9V5.5z"/><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zm3.915 10L3.102 4h10.796l-1.313 7h-8.17zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-cart-plus-fill" viewBox="0 0 16 16" id="cart-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0zM9 5.5V7h1.5a.5.5 0 010 1H9v1.5a.5.5 0 01-1 0V8H6.5a.5.5 0 010-1H8V5.5a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-cart-x" viewBox="0 0 16 16" id="cart-x" xmlns="http://www.w3.org/2000/svg"><path d="M7.354 5.646a.5.5 0 10-.708.708L7.793 7.5 6.646 8.646a.5.5 0 10.708.708L8.5 8.207l1.146 1.147a.5.5 0 00.708-.708L9.207 7.5l1.147-1.146a.5.5 0 00-.708-.708L8.5 6.793 7.354 5.646z"/><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zm3.915 10L3.102 4h10.796l-1.313 7h-8.17zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-cart-x-fill" viewBox="0 0 16 16" id="cart-x-fill" xmlns="http://www.w3.org/2000/svg"><path d="M.5 1a.5.5 0 000 1h1.11l.401 1.607 1.498 7.985A.5.5 0 004 12h1a2 2 0 100 4 2 2 0 000-4h7a2 2 0 100 4 2 2 0 000-4h1a.5.5 0 00.491-.408l1.5-8A.5.5 0 0014.5 3H2.89l-.405-1.621A.5.5 0 002 1H.5zM6 14a1 1 0 11-2 0 1 1 0 012 0zm7 0a1 1 0 11-2 0 1 1 0 012 0zM7.354 5.646L8.5 6.793l1.146-1.147a.5.5 0 01.708.708L9.207 7.5l1.147 1.146a.5.5 0 01-.708.708L8.5 8.207 7.354 9.354a.5.5 0 11-.708-.708L7.793 7.5 6.646 6.354a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-cart2" viewBox="0 0 16 16" id="cart2" xmlns="http://www.w3.org/2000/svg"><path d="M0 2.5A.5.5 0 01.5 2H2a.5.5 0 01.485.379L2.89 4H14.5a.5.5 0 01.485.621l-1.5 6A.5.5 0 0113 11H4a.5.5 0 01-.485-.379L1.61 3H.5a.5.5 0 01-.5-.5zM3.14 5l1.25 5h8.22l1.25-5H3.14zM5 13a1 1 0 100 2 1 1 0 000-2zm-2 1a2 2 0 114 0 2 2 0 01-4 0zm9-1a1 1 0 100 2 1 1 0 000-2zm-2 1a2 2 0 114 0 2 2 0 01-4 0z"/></symbol><symbol fill="currentColor" class="bi bi-cart3" viewBox="0 0 16 16" id="cart3" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A.5.5 0 01.5 1H2a.5.5 0 01.485.379L2.89 3H14.5a.5.5 0 01.49.598l-1 5a.5.5 0 01-.465.401l-9.397.472L4.415 11H13a.5.5 0 010 1H4a.5.5 0 01-.491-.408L2.01 3.607 1.61 2H.5a.5.5 0 01-.5-.5zM3.102 4l.84 4.479 9.144-.459L13.89 4H3.102zM5 12a2 2 0 100 4 2 2 0 000-4zm7 0a2 2 0 100 4 2 2 0 000-4zm-7 1a1 1 0 110 2 1 1 0 010-2zm7 0a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-cart4" viewBox="0 0 16 16" id="cart4" xmlns="http://www.w3.org/2000/svg"><path d="M0 2.5A.5.5 0 01.5 2H2a.5.5 0 01.485.379L2.89 4H14.5a.5.5 0 01.485.621l-1.5 6A.5.5 0 0113 11H4a.5.5 0 01-.485-.379L1.61 3H.5a.5.5 0 01-.5-.5zM3.14 5l.5 2H5V5H3.14zM6 5v2h2V5H6zm3 0v2h2V5H9zm3 0v2h1.36l.5-2H12zm1.11 3H12v2h.61l.5-2zM11 8H9v2h2V8zM8 8H6v2h2V8zM5 8H3.89l.5 2H5V8zm0 5a1 1 0 100 2 1 1 0 000-2zm-2 1a2 2 0 114 0 2 2 0 01-4 0zm9-1a1 1 0 100 2 1 1 0 000-2zm-2 1a2 2 0 114 0 2 2 0 01-4 0z"/></symbol><symbol fill="currentColor" class="bi bi-cash" viewBox="0 0 16 16" id="cash" xmlns="http://www.w3.org/2000/svg"><path d="M8 10a2 2 0 100-4 2 2 0 000 4z"/><path d="M0 4a1 1 0 011-1h14a1 1 0 011 1v8a1 1 0 01-1 1H1a1 1 0 01-1-1V4zm3 0a2 2 0 01-2 2v4a2 2 0 012 2h10a2 2 0 012-2V6a2 2 0 01-2-2H3z"/></symbol><symbol fill="currentColor" class="bi bi-cash-coin" viewBox="0 0 16 16" id="cash-coin" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11 15a4 4 0 100-8 4 4 0 000 8zm5-4a5 5 0 11-10 0 5 5 0 0110 0z"/><path d="M9.438 11.944c.047.596.518 1.06 1.363 1.116v.44h.375v-.443c.875-.061 1.386-.529 1.386-1.207 0-.618-.39-.936-1.09-1.1l-.296-.07v-1.2c.376.043.614.248.671.532h.658c-.047-.575-.54-1.024-1.329-1.073V8.5h-.375v.45c-.747.073-1.255.522-1.255 1.158 0 .562.378.92 1.007 1.066l.248.061v1.272c-.384-.058-.639-.27-.696-.563h-.668zm1.36-1.354c-.369-.085-.569-.26-.569-.522 0-.294.216-.514.572-.578v1.1h-.003zm.432.746c.449.104.655.272.655.569 0 .339-.257.571-.709.614v-1.195l.054.012z"/><path d="M1 0a1 1 0 00-1 1v8a1 1 0 001 1h4.083c.058-.344.145-.678.258-1H3a2 2 0 00-2-2V3a2 2 0 002-2h10a2 2 0 002 2v3.528c.38.34.717.728 1 1.154V1a1 1 0 00-1-1H1z"/><path d="M9.998 5.083L10 5a2 2 0 10-3.132 1.65 5.982 5.982 0 013.13-1.567z"/></symbol><symbol fill="currentColor" class="bi bi-cash-stack" viewBox="0 0 16 16" id="cash-stack" xmlns="http://www.w3.org/2000/svg"><path d="M1 3a1 1 0 011-1h12a1 1 0 011 1H1zm7 8a2 2 0 100-4 2 2 0 000 4z"/><path d="M0 5a1 1 0 011-1h14a1 1 0 011 1v8a1 1 0 01-1 1H1a1 1 0 01-1-1V5zm3 0a2 2 0 01-2 2v4a2 2 0 012 2h10a2 2 0 012-2V7a2 2 0 01-2-2H3z"/></symbol><symbol fill="currentColor" class="bi bi-cast" viewBox="0 0 16 16" id="cast" xmlns="http://www.w3.org/2000/svg"><path d="M7.646 9.354l-3.792 3.792a.5.5 0 00.353.854h7.586a.5.5 0 00.354-.854L8.354 9.354a.5.5 0 00-.708 0z"/><path d="M11.414 11H14.5a.5.5 0 00.5-.5v-7a.5.5 0 00-.5-.5h-13a.5.5 0 00-.5.5v7a.5.5 0 00.5.5h3.086l-1 1H1.5A1.5 1.5 0 010 10.5v-7A1.5 1.5 0 011.5 2h13A1.5 1.5 0 0116 3.5v7a1.5 1.5 0 01-1.5 1.5h-2.086l-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-chat" viewBox="0 0 16 16" id="chat" xmlns="http://www.w3.org/2000/svg"><path d="M2.678 11.894a1 1 0 01.287.801 10.97 10.97 0 01-.398 2c1.395-.323 2.247-.697 2.634-.893a1 1 0 01.71-.074A8.06 8.06 0 008 14c3.996 0 7-2.807 7-6 0-3.192-3.004-6-7-6S1 4.808 1 8c0 1.468.617 2.83 1.678 3.894zm-.493 3.905a21.682 21.682 0 01-.713.129c-.2.032-.352-.176-.273-.362a9.68 9.68 0 00.244-.637l.003-.01c.248-.72.45-1.548.524-2.319C.743 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7-3.582 7-8 7a9.06 9.06 0 01-2.347-.306c-.52.263-1.639.742-3.468 1.105z"/></symbol><symbol fill="currentColor" class="bi bi-chat-dots" viewBox="0 0 16 16" id="chat-dots" xmlns="http://www.w3.org/2000/svg"><path d="M5 8a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0zm3 1a1 1 0 100-2 1 1 0 000 2z"/><path d="M2.165 15.803l.02-.004c1.83-.363 2.948-.842 3.468-1.105A9.06 9.06 0 008 15c4.418 0 8-3.134 8-7s-3.582-7-8-7-8 3.134-8 7c0 1.76.743 3.37 1.97 4.6a10.437 10.437 0 01-.524 2.318l-.003.011a10.722 10.722 0 01-.244.637c-.079.186.074.394.273.362a21.673 21.673 0 00.693-.125zm.8-3.108a1 1 0 00-.287-.801C1.618 10.83 1 9.468 1 8c0-3.192 3.004-6 7-6s7 2.808 7 6c0 3.193-3.004 6-7 6a8.06 8.06 0 01-2.088-.272 1 1 0 00-.711.074c-.387.196-1.24.57-2.634.893a10.97 10.97 0 00.398-2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-dots-fill" viewBox="0 0 16 16" id="chat-dots-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8c0 3.866-3.582 7-8 7a9.06 9.06 0 01-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7zM5 8a1 1 0 10-2 0 1 1 0 002 0zm4 0a1 1 0 10-2 0 1 1 0 002 0zm3 1a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-fill" viewBox="0 0 16 16" id="chat-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 15c4.418 0 8-3.134 8-7s-3.582-7-8-7-8 3.134-8 7c0 1.76.743 3.37 1.97 4.6-.097 1.016-.417 2.13-.771 2.966-.079.186.074.394.273.362 2.256-.37 3.597-.938 4.18-1.234A9.06 9.06 0 008 15z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left" viewBox="0 0 16 16" id="chat-left" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1H4.414A2 2 0 003 11.586l-2 2V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12.793a.5.5 0 00.854.353l2.853-2.853A1 1 0 014.414 12H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left-dots" viewBox="0 0 16 16" id="chat-left-dots" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1H4.414A2 2 0 003 11.586l-2 2V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12.793a.5.5 0 00.854.353l2.853-2.853A1 1 0 014.414 12H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M5 6a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left-dots-fill" viewBox="0 0 16 16" id="chat-left-dots-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H4.414a1 1 0 00-.707.293L.854 15.146A.5.5 0 010 14.793V2zm5 4a1 1 0 10-2 0 1 1 0 002 0zm4 0a1 1 0 10-2 0 1 1 0 002 0zm3 1a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left-fill" viewBox="0 0 16 16" id="chat-left-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12.793a.5.5 0 00.854.353l2.853-2.853A1 1 0 014.414 12H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left-quote" viewBox="0 0 16 16" id="chat-left-quote" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1H4.414A2 2 0 003 11.586l-2 2V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12.793a.5.5 0 00.854.353l2.853-2.853A1 1 0 014.414 12H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M7.066 4.76A1.665 1.665 0 004 5.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 10.6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 008 5.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 10.6.58c1.486-1.54 1.293-3.214.682-4.112z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left-quote-fill" viewBox="0 0 16 16" id="chat-left-quote-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H4.414a1 1 0 00-.707.293L.854 15.146A.5.5 0 010 14.793V2zm7.194 2.766a1.688 1.688 0 00-.227-.272 1.467 1.467 0 00-.469-.324l-.008-.004A1.785 1.785 0 005.734 4C4.776 4 4 4.746 4 5.667c0 .92.776 1.666 1.734 1.666.343 0 .662-.095.931-.26-.137.389-.39.804-.81 1.22a.405.405 0 00.011.59c.173.16.447.155.614-.01 1.334-1.329 1.37-2.758.941-3.706a2.461 2.461 0 00-.227-.4zM11 7.073c-.136.389-.39.804-.81 1.22a.405.405 0 00.012.59c.172.16.446.155.613-.01 1.334-1.329 1.37-2.758.942-3.706a2.466 2.466 0 00-.228-.4 1.686 1.686 0 00-.227-.273 1.466 1.466 0 00-.469-.324l-.008-.004A1.785 1.785 0 0010.07 4c-.957 0-1.734.746-1.734 1.667 0 .92.777 1.666 1.734 1.666.343 0 .662-.095.931-.26z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left-text" viewBox="0 0 16 16" id="chat-left-text" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1H4.414A2 2 0 003 11.586l-2 2V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12.793a.5.5 0 00.854.353l2.853-2.853A1 1 0 014.414 12H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M3 3.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM3 6a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9A.5.5 0 013 6zm0 2.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-chat-left-text-fill" viewBox="0 0 16 16" id="chat-left-text-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H4.414a1 1 0 00-.707.293L.854 15.146A.5.5 0 010 14.793V2zm3.5 1a.5.5 0 000 1h9a.5.5 0 000-1h-9zm0 2.5a.5.5 0 000 1h9a.5.5 0 000-1h-9zm0 2.5a.5.5 0 000 1h5a.5.5 0 000-1h-5z"/></symbol><symbol fill="currentColor" class="bi bi-chat-quote" viewBox="0 0 16 16" id="chat-quote" xmlns="http://www.w3.org/2000/svg"><path d="M2.678 11.894a1 1 0 01.287.801 10.97 10.97 0 01-.398 2c1.395-.323 2.247-.697 2.634-.893a1 1 0 01.71-.074A8.06 8.06 0 008 14c3.996 0 7-2.807 7-6 0-3.192-3.004-6-7-6S1 4.808 1 8c0 1.468.617 2.83 1.678 3.894zm-.493 3.905a21.682 21.682 0 01-.713.129c-.2.032-.352-.176-.273-.362a9.68 9.68 0 00.244-.637l.003-.01c.248-.72.45-1.548.524-2.319C.743 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7-3.582 7-8 7a9.06 9.06 0 01-2.347-.306c-.52.263-1.639.742-3.468 1.105z"/><path d="M7.066 6.76A1.665 1.665 0 004 7.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 00.6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 008 7.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 00.6.58c1.486-1.54 1.293-3.214.682-4.112z"/></symbol><symbol fill="currentColor" class="bi bi-chat-quote-fill" viewBox="0 0 16 16" id="chat-quote-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8c0 3.866-3.582 7-8 7a9.06 9.06 0 01-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7zM7.194 6.766a1.688 1.688 0 00-.227-.272 1.467 1.467 0 00-.469-.324l-.008-.004A1.785 1.785 0 005.734 6C4.776 6 4 6.746 4 7.667c0 .92.776 1.666 1.734 1.666.343 0 .662-.095.931-.26-.137.389-.39.804-.81 1.22a.405.405 0 00.011.59c.173.16.447.155.614-.01 1.334-1.329 1.37-2.758.941-3.706a2.461 2.461 0 00-.227-.4zM11 9.073c-.136.389-.39.804-.81 1.22a.405.405 0 00.012.59c.172.16.446.155.613-.01 1.334-1.329 1.37-2.758.942-3.706a2.466 2.466 0 00-.228-.4 1.686 1.686 0 00-.227-.273 1.466 1.466 0 00-.469-.324l-.008-.004A1.785 1.785 0 0010.07 6c-.957 0-1.734.746-1.734 1.667 0 .92.777 1.666 1.734 1.666.343 0 .662-.095.931-.26z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right" viewBox="0 0 16 16" id="chat-right" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 00-1 1v8a1 1 0 001 1h9.586a2 2 0 011.414.586l2 2V2a1 1 0 00-1-1H2zm12-1a2 2 0 012 2v12.793a.5.5 0 01-.854.353l-2.853-2.853a1 1 0 00-.707-.293H2a2 2 0 01-2-2V2a2 2 0 012-2h12z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right-dots" viewBox="0 0 16 16" id="chat-right-dots" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 00-1 1v8a1 1 0 001 1h9.586a2 2 0 011.414.586l2 2V2a1 1 0 00-1-1H2zm12-1a2 2 0 012 2v12.793a.5.5 0 01-.854.353l-2.853-2.853a1 1 0 00-.707-.293H2a2 2 0 01-2-2V2a2 2 0 012-2h12z"/><path d="M5 6a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right-dots-fill" viewBox="0 0 16 16" id="chat-right-dots-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 2a2 2 0 00-2-2H2a2 2 0 00-2 2v8a2 2 0 002 2h9.586a1 1 0 01.707.293l2.853 2.853a.5.5 0 00.854-.353V2zM5 6a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0zm3 1a1 1 0 110-2 1 1 0 010 2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right-fill" viewBox="0 0 16 16" id="chat-right-fill" xmlns="http://www.w3.org/2000/svg"><path d="M14 0a2 2 0 012 2v12.793a.5.5 0 01-.854.353l-2.853-2.853a1 1 0 00-.707-.293H2a2 2 0 01-2-2V2a2 2 0 012-2h12z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right-quote" viewBox="0 0 16 16" id="chat-right-quote" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 00-1 1v8a1 1 0 001 1h9.586a2 2 0 011.414.586l2 2V2a1 1 0 00-1-1H2zm12-1a2 2 0 012 2v12.793a.5.5 0 01-.854.353l-2.853-2.853a1 1 0 00-.707-.293H2a2 2 0 01-2-2V2a2 2 0 012-2h12z"/><path d="M7.066 4.76A1.665 1.665 0 004 5.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 10.6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 008 5.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 10.6.58c1.486-1.54 1.293-3.214.682-4.112z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right-quote-fill" viewBox="0 0 16 16" id="chat-right-quote-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 2a2 2 0 00-2-2H2a2 2 0 00-2 2v8a2 2 0 002 2h9.586a1 1 0 01.707.293l2.853 2.853a.5.5 0 00.854-.353V2zM7.194 4.766c.087.124.163.26.227.401.428.948.393 2.377-.942 3.706a.446.446 0 01-.612.01.405.405 0 01-.011-.59c.419-.416.672-.831.809-1.22-.269.165-.588.26-.93.26C4.775 7.333 4 6.587 4 5.667 4 4.747 4.776 4 5.734 4c.271 0 .528.06.756.166l.008.004c.169.07.327.182.469.324.085.083.161.174.227.272zM11 7.073c-.269.165-.588.26-.93.26-.958 0-1.735-.746-1.735-1.666 0-.92.777-1.667 1.734-1.667.271 0 .528.06.756.166l.008.004c.17.07.327.182.469.324.085.083.161.174.227.272.087.124.164.26.228.401.428.948.392 2.377-.942 3.706a.446.446 0 01-.613.01.405.405 0 01-.011-.59c.42-.416.672-.831.81-1.22z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right-text" viewBox="0 0 16 16" id="chat-right-text" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 00-1 1v8a1 1 0 001 1h9.586a2 2 0 011.414.586l2 2V2a1 1 0 00-1-1H2zm12-1a2 2 0 012 2v12.793a.5.5 0 01-.854.353l-2.853-2.853a1 1 0 00-.707-.293H2a2 2 0 01-2-2V2a2 2 0 012-2h12z"/><path d="M3 3.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM3 6a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9A.5.5 0 013 6zm0 2.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-chat-right-text-fill" viewBox="0 0 16 16" id="chat-right-text-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 2a2 2 0 00-2-2H2a2 2 0 00-2 2v8a2 2 0 002 2h9.586a1 1 0 01.707.293l2.853 2.853a.5.5 0 00.854-.353V2zM3.5 3h9a.5.5 0 010 1h-9a.5.5 0 010-1zm0 2.5h9a.5.5 0 010 1h-9a.5.5 0 010-1zm0 2.5h5a.5.5 0 010 1h-5a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square" viewBox="0 0 16 16" id="chat-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1h-2.5a2 2 0 00-1.6.8L8 14.333 6.1 11.8a2 2 0 00-1.6-.8H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v8a2 2 0 002 2h2.5a1 1 0 01.8.4l1.9 2.533a1 1 0 001.6 0l1.9-2.533a1 1 0 01.8-.4H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square-dots" viewBox="0 0 16 16" id="chat-square-dots" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1h-2.5a2 2 0 00-1.6.8L8 14.333 6.1 11.8a2 2 0 00-1.6-.8H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v8a2 2 0 002 2h2.5a1 1 0 01.8.4l1.9 2.533a1 1 0 001.6 0l1.9-2.533a1 1 0 01.8-.4H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M5 6a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0zm4 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square-dots-fill" viewBox="0 0 16 16" id="chat-square-dots-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2h-2.5a1 1 0 00-.8.4l-1.9 2.533a1 1 0 01-1.6 0L5.3 12.4a1 1 0 00-.8-.4H2a2 2 0 01-2-2V2zm5 4a1 1 0 10-2 0 1 1 0 002 0zm4 0a1 1 0 10-2 0 1 1 0 002 0zm3 1a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square-fill" viewBox="0 0 16 16" id="chat-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v8a2 2 0 002 2h2.5a1 1 0 01.8.4l1.9 2.533a1 1 0 001.6 0l1.9-2.533a1 1 0 01.8-.4H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square-quote" viewBox="0 0 16 16" id="chat-square-quote" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1h-2.5a2 2 0 00-1.6.8L8 14.333 6.1 11.8a2 2 0 00-1.6-.8H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v8a2 2 0 002 2h2.5a1 1 0 01.8.4l1.9 2.533a1 1 0 001.6 0l1.9-2.533a1 1 0 01.8-.4H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M7.066 4.76A1.665 1.665 0 004 5.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 10.6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 008 5.668a1.667 1.667 0 002.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 10.6.58c1.486-1.54 1.293-3.214.682-4.112z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square-quote-fill" viewBox="0 0 16 16" id="chat-square-quote-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2h-2.5a1 1 0 00-.8.4l-1.9 2.533a1 1 0 01-1.6 0L5.3 12.4a1 1 0 00-.8-.4H2a2 2 0 01-2-2V2zm7.194 2.766a1.688 1.688 0 00-.227-.272 1.467 1.467 0 00-.469-.324l-.008-.004A1.785 1.785 0 005.734 4C4.776 4 4 4.746 4 5.667c0 .92.776 1.666 1.734 1.666.343 0 .662-.095.931-.26-.137.389-.39.804-.81 1.22a.405.405 0 00.011.59c.173.16.447.155.614-.01 1.334-1.329 1.37-2.758.941-3.706a2.461 2.461 0 00-.227-.4zM11 7.073c-.136.389-.39.804-.81 1.22a.405.405 0 00.012.59c.172.16.446.155.613-.01 1.334-1.329 1.37-2.758.942-3.706a2.466 2.466 0 00-.228-.4 1.686 1.686 0 00-.227-.273 1.466 1.466 0 00-.469-.324l-.008-.004A1.785 1.785 0 0010.07 4c-.957 0-1.734.746-1.734 1.667 0 .92.777 1.666 1.734 1.666.343 0 .662-.095.931-.26z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square-text" viewBox="0 0 16 16" id="chat-square-text" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v8a1 1 0 01-1 1h-2.5a2 2 0 00-1.6.8L8 14.333 6.1 11.8a2 2 0 00-1.6-.8H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v8a2 2 0 002 2h2.5a1 1 0 01.8.4l1.9 2.533a1 1 0 001.6 0l1.9-2.533a1 1 0 01.8-.4H14a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M3 3.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM3 6a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9A.5.5 0 013 6zm0 2.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-chat-square-text-fill" viewBox="0 0 16 16" id="chat-square-text-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2h-2.5a1 1 0 00-.8.4l-1.9 2.533a1 1 0 01-1.6 0L5.3 12.4a1 1 0 00-.8-.4H2a2 2 0 01-2-2V2zm3.5 1a.5.5 0 000 1h9a.5.5 0 000-1h-9zm0 2.5a.5.5 0 000 1h9a.5.5 0 000-1h-9zm0 2.5a.5.5 0 000 1h5a.5.5 0 000-1h-5z"/></symbol><symbol fill="currentColor" class="bi bi-chat-text" viewBox="0 0 16 16" id="chat-text" xmlns="http://www.w3.org/2000/svg"><path d="M2.678 11.894a1 1 0 01.287.801 10.97 10.97 0 01-.398 2c1.395-.323 2.247-.697 2.634-.893a1 1 0 01.71-.074A8.06 8.06 0 008 14c3.996 0 7-2.807 7-6 0-3.192-3.004-6-7-6S1 4.808 1 8c0 1.468.617 2.83 1.678 3.894zm-.493 3.905a21.682 21.682 0 01-.713.129c-.2.032-.352-.176-.273-.362a9.68 9.68 0 00.244-.637l.003-.01c.248-.72.45-1.548.524-2.319C.743 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7-3.582 7-8 7a9.06 9.06 0 01-2.347-.306c-.52.263-1.639.742-3.468 1.105z"/><path d="M4 5.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zM4 8a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7A.5.5 0 014 8zm0 2.5a.5.5 0 01.5-.5h4a.5.5 0 010 1h-4a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-chat-text-fill" viewBox="0 0 16 16" id="chat-text-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8c0 3.866-3.582 7-8 7a9.06 9.06 0 01-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7zM4.5 5a.5.5 0 000 1h7a.5.5 0 000-1h-7zm0 2.5a.5.5 0 000 1h7a.5.5 0 000-1h-7zm0 2.5a.5.5 0 000 1h4a.5.5 0 000-1h-4z"/></symbol><symbol fill="currentColor" class="bi bi-check" viewBox="0 0 16 16" id="check" xmlns="http://www.w3.org/2000/svg"><path d="M10.97 4.97a.75.75 0 011.07 1.05l-3.99 4.99a.75.75 0 01-1.08.02L4.324 8.384a.75.75 0 111.06-1.06l2.094 2.093 3.473-4.425a.267.267 0 01.02-.022z"/></symbol><symbol fill="currentColor" class="bi bi-check-all" viewBox="0 0 16 16" id="check-all" xmlns="http://www.w3.org/2000/svg"><path d="M8.97 4.97a.75.75 0 011.07 1.05l-3.99 4.99a.75.75 0 01-1.08.02L2.324 8.384a.75.75 0 111.06-1.06l2.094 2.093L8.95 4.992a.252.252 0 01.02-.022zm-.92 5.14l.92.92a.75.75 0 001.079-.02l3.992-4.99a.75.75 0 10-1.091-1.028L9.477 9.417l-.485-.486-.943 1.179z"/></symbol><symbol fill="currentColor" class="bi bi-check-circle" viewBox="0 0 16 16" id="check-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M10.97 4.97a.235.235 0 00-.02.022L7.477 9.417 5.384 7.323a.75.75 0 00-1.06 1.06L6.97 11.03a.75.75 0 001.079-.02l3.992-4.99a.75.75 0 00-1.071-1.05z"/></symbol><symbol fill="currentColor" class="bi bi-check-circle-fill" viewBox="0 0 16 16" id="check-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-3.97-3.03a.75.75 0 00-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 00-1.06 1.06L6.97 11.03a.75.75 0 001.079-.02l3.992-4.99a.75.75 0 00-.01-1.05z"/></symbol><symbol fill="currentColor" class="bi bi-check-lg" viewBox="0 0 16 16" id="check-lg" xmlns="http://www.w3.org/2000/svg"><path d="M13.485 1.431a1.473 1.473 0 012.104 2.062l-7.84 9.801a1.473 1.473 0 01-2.12.04L.431 8.138a1.473 1.473 0 012.084-2.083l4.111 4.112 6.82-8.69a.486.486 0 01.04-.045z"/></symbol><symbol fill="currentColor" class="bi bi-check-square" viewBox="0 0 16 16" id="check-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M10.97 4.97a.75.75 0 011.071 1.05l-3.992 4.99a.75.75 0 01-1.08.02L4.324 8.384a.75.75 0 111.06-1.06l2.094 2.093 3.473-4.425a.235.235 0 01.02-.022z"/></symbol><symbol fill="currentColor" class="bi bi-check-square-fill" viewBox="0 0 16 16" id="check-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm10.03 4.97a.75.75 0 01.011 1.05l-3.992 4.99a.75.75 0 01-1.08.02L4.324 8.384a.75.75 0 111.06-1.06l2.094 2.093 3.473-4.425a.75.75 0 011.08-.022z"/></symbol><symbol fill="currentColor" class="bi bi-check2" viewBox="0 0 16 16" id="check2" xmlns="http://www.w3.org/2000/svg"><path d="M13.854 3.646a.5.5 0 010 .708l-7 7a.5.5 0 01-.708 0l-3.5-3.5a.5.5 0 11.708-.708L6.5 10.293l6.646-6.647a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-check2-all" viewBox="0 0 16 16" id="check2-all" xmlns="http://www.w3.org/2000/svg"><path d="M12.354 4.354a.5.5 0 00-.708-.708L5 10.293 1.854 7.146a.5.5 0 10-.708.708l3.5 3.5a.5.5 0 00.708 0l7-7zm-4.208 7l-.896-.897.707-.707.543.543 6.646-6.647a.5.5 0 01.708.708l-7 7a.5.5 0 01-.708 0z"/><path d="M5.354 7.146l.896.897-.707.707-.897-.896a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-check2-circle" viewBox="0 0 16 16" id="check2-circle" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 8a5.5 5.5 0 018.25-4.764.5.5 0 00.5-.866A6.5 6.5 0 1014.5 8a.5.5 0 00-1 0 5.5 5.5 0 11-11 0z"/><path d="M15.354 3.354a.5.5 0 00-.708-.708L8 9.293 5.354 6.646a.5.5 0 10-.708.708l3 3a.5.5 0 00.708 0l7-7z"/></symbol><symbol fill="currentColor" class="bi bi-check2-square" viewBox="0 0 16 16" id="check2-square" xmlns="http://www.w3.org/2000/svg"><path d="M3 14.5A1.5 1.5 0 011.5 13V3A1.5 1.5 0 013 1.5h8a.5.5 0 010 1H3a.5.5 0 00-.5.5v10a.5.5 0 00.5.5h10a.5.5 0 00.5-.5V8a.5.5 0 011 0v5a1.5 1.5 0 01-1.5 1.5H3z"/><path d="M8.354 10.354l7-7a.5.5 0 00-.708-.708L8 9.293 5.354 6.646a.5.5 0 10-.708.708l3 3a.5.5 0 00.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-bar-contract" viewBox="0 0 16 16" id="chevron-bar-contract" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.646 14.854a.5.5 0 00.708 0L8 11.207l3.646 3.647a.5.5 0 00.708-.708l-4-4a.5.5 0 00-.708 0l-4 4a.5.5 0 000 .708zm0-13.708a.5.5 0 01.708 0L8 4.793l3.646-3.647a.5.5 0 01.708.708l-4 4a.5.5 0 01-.708 0l-4-4a.5.5 0 010-.708zM1 8a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13A.5.5 0 011 8z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-bar-down" viewBox="0 0 16 16" id="chevron-bar-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.646 4.146a.5.5 0 01.708 0L8 7.793l3.646-3.647a.5.5 0 01.708.708l-4 4a.5.5 0 01-.708 0l-4-4a.5.5 0 010-.708zM1 11.5a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-bar-expand" viewBox="0 0 16 16" id="chevron-bar-expand" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.646 10.146a.5.5 0 01.708 0L8 13.793l3.646-3.647a.5.5 0 01.708.708l-4 4a.5.5 0 01-.708 0l-4-4a.5.5 0 010-.708zm0-4.292a.5.5 0 00.708 0L8 2.207l3.646 3.647a.5.5 0 00.708-.708l-4-4a.5.5 0 00-.708 0l-4 4a.5.5 0 000 .708zM1 8a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13A.5.5 0 011 8z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-bar-left" viewBox="0 0 16 16" id="chevron-bar-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11.854 3.646a.5.5 0 010 .708L8.207 8l3.647 3.646a.5.5 0 01-.708.708l-4-4a.5.5 0 010-.708l4-4a.5.5 0 01.708 0zM4.5 1a.5.5 0 00-.5.5v13a.5.5 0 001 0v-13a.5.5 0 00-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-bar-right" viewBox="0 0 16 16" id="chevron-bar-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.146 3.646a.5.5 0 000 .708L7.793 8l-3.647 3.646a.5.5 0 00.708.708l4-4a.5.5 0 000-.708l-4-4a.5.5 0 00-.708 0zM11.5 1a.5.5 0 01.5.5v13a.5.5 0 01-1 0v-13a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-bar-up" viewBox="0 0 16 16" id="chevron-bar-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.646 11.854a.5.5 0 00.708 0L8 8.207l3.646 3.647a.5.5 0 00.708-.708l-4-4a.5.5 0 00-.708 0l-4 4a.5.5 0 000 .708zM2.4 5.2c0 .22.18.4.4.4h10.4a.4.4 0 000-.8H2.8a.4.4 0 00-.4.4z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-compact-down" viewBox="0 0 16 16" id="chevron-compact-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.553 6.776a.5.5 0 01.67-.223L8 9.44l5.776-2.888a.5.5 0 11.448.894l-6 3a.5.5 0 01-.448 0l-6-3a.5.5 0 01-.223-.67z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-compact-left" viewBox="0 0 16 16" id="chevron-compact-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M9.224 1.553a.5.5 0 01.223.67L6.56 8l2.888 5.776a.5.5 0 11-.894.448l-3-6a.5.5 0 010-.448l3-6a.5.5 0 01.67-.223z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-compact-right" viewBox="0 0 16 16" id="chevron-compact-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.776 1.553a.5.5 0 01.671.223l3 6a.5.5 0 010 .448l-3 6a.5.5 0 11-.894-.448L9.44 8 6.553 2.224a.5.5 0 01.223-.671z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-compact-up" viewBox="0 0 16 16" id="chevron-compact-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.776 5.553a.5.5 0 01.448 0l6 3a.5.5 0 11-.448.894L8 6.56 2.224 9.447a.5.5 0 11-.448-.894l6-3z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-contract" viewBox="0 0 16 16" id="chevron-contract" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.646 13.854a.5.5 0 00.708 0L8 10.207l3.646 3.647a.5.5 0 00.708-.708l-4-4a.5.5 0 00-.708 0l-4 4a.5.5 0 000 .708zm0-11.708a.5.5 0 01.708 0L8 5.793l3.646-3.647a.5.5 0 01.708.708l-4 4a.5.5 0 01-.708 0l-4-4a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-double-down" viewBox="0 0 16 16" id="chevron-double-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.646 6.646a.5.5 0 01.708 0L8 12.293l5.646-5.647a.5.5 0 01.708.708l-6 6a.5.5 0 01-.708 0l-6-6a.5.5 0 010-.708z"/><path fill-rule="evenodd" d="M1.646 2.646a.5.5 0 01.708 0L8 8.293l5.646-5.647a.5.5 0 01.708.708l-6 6a.5.5 0 01-.708 0l-6-6a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-double-left" viewBox="0 0 16 16" id="chevron-double-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8.354 1.646a.5.5 0 010 .708L2.707 8l5.647 5.646a.5.5 0 01-.708.708l-6-6a.5.5 0 010-.708l6-6a.5.5 0 01.708 0z"/><path fill-rule="evenodd" d="M12.354 1.646a.5.5 0 010 .708L6.707 8l5.647 5.646a.5.5 0 01-.708.708l-6-6a.5.5 0 010-.708l6-6a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-double-right" viewBox="0 0 16 16" id="chevron-double-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.646 1.646a.5.5 0 01.708 0l6 6a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708L9.293 8 3.646 2.354a.5.5 0 010-.708z"/><path fill-rule="evenodd" d="M7.646 1.646a.5.5 0 01.708 0l6 6a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708L13.293 8 7.646 2.354a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-double-up" viewBox="0 0 16 16" id="chevron-double-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.646 2.646a.5.5 0 01.708 0l6 6a.5.5 0 01-.708.708L8 3.707 2.354 9.354a.5.5 0 11-.708-.708l6-6z"/><path fill-rule="evenodd" d="M7.646 6.646a.5.5 0 01.708 0l6 6a.5.5 0 01-.708.708L8 7.707l-5.646 5.647a.5.5 0 01-.708-.708l6-6z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-down" viewBox="0 0 16 16" id="chevron-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.646 4.646a.5.5 0 01.708 0L8 10.293l5.646-5.647a.5.5 0 01.708.708l-6 6a.5.5 0 01-.708 0l-6-6a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-expand" viewBox="0 0 16 16" id="chevron-expand" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.646 9.146a.5.5 0 01.708 0L8 12.793l3.646-3.647a.5.5 0 01.708.708l-4 4a.5.5 0 01-.708 0l-4-4a.5.5 0 010-.708zm0-2.292a.5.5 0 00.708 0L8 3.207l3.646 3.647a.5.5 0 00.708-.708l-4-4a.5.5 0 00-.708 0l-4 4a.5.5 0 000 .708z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-left" viewBox="0 0 16 16" id="chevron-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11.354 1.646a.5.5 0 010 .708L5.707 8l5.647 5.646a.5.5 0 01-.708.708l-6-6a.5.5 0 010-.708l6-6a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-right" viewBox="0 0 16 16" id="chevron-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.646 1.646a.5.5 0 01.708 0l6 6a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708L10.293 8 4.646 2.354a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-chevron-up" viewBox="0 0 16 16" id="chevron-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.646 4.646a.5.5 0 01.708 0l6 6a.5.5 0 01-.708.708L8 5.707l-5.646 5.647a.5.5 0 01-.708-.708l6-6z"/></symbol><symbol fill="currentColor" class="bi bi-circle" viewBox="0 0 16 16" id="circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/></symbol><symbol fill="currentColor" class="bi bi-circle-fill" viewBox="0 0 16 16" id="circle-fill" xmlns="http://www.w3.org/2000/svg"><circle cx="8" cy="8" r="8"/></symbol><symbol fill="currentColor" class="bi bi-circle-half" viewBox="0 0 16 16" id="circle-half" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 108 1v14zm0 1A8 8 0 118 0a8 8 0 010 16z"/></symbol><symbol fill="currentColor" class="bi bi-circle-square" viewBox="0 0 16 16" id="circle-square" xmlns="http://www.w3.org/2000/svg"><path d="M0 6a6 6 0 1112 0A6 6 0 010 6z"/><path d="M12.93 5h1.57a.5.5 0 01.5.5v9a.5.5 0 01-.5.5h-9a.5.5 0 01-.5-.5v-1.57a6.953 6.953 0 01-1-.22v1.79A1.5 1.5 0 005.5 16h9a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 4h-1.79c.097.324.17.658.22 1z"/></symbol><symbol fill="currentColor" class="bi bi-clipboard" viewBox="0 0 16 16" id="clipboard" xmlns="http://www.w3.org/2000/svg"><path d="M4 1.5H3a2 2 0 00-2 2V14a2 2 0 002 2h10a2 2 0 002-2V3.5a2 2 0 00-2-2h-1v1h1a1 1 0 011 1V14a1 1 0 01-1 1H3a1 1 0 01-1-1V3.5a1 1 0 011-1h1v-1z"/><path d="M9.5 1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5h3zm-3-1A1.5 1.5 0 005 1.5v1A1.5 1.5 0 006.5 4h3A1.5 1.5 0 0011 2.5v-1A1.5 1.5 0 009.5 0h-3z"/></symbol><symbol fill="currentColor" class="bi bi-clipboard-check" viewBox="0 0 16 16" id="clipboard-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.854 7.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 9.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M4 1.5H3a2 2 0 00-2 2V14a2 2 0 002 2h10a2 2 0 002-2V3.5a2 2 0 00-2-2h-1v1h1a1 1 0 011 1V14a1 1 0 01-1 1H3a1 1 0 01-1-1V3.5a1 1 0 011-1h1v-1z"/><path d="M9.5 1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5h3zm-3-1A1.5 1.5 0 005 1.5v1A1.5 1.5 0 006.5 4h3A1.5 1.5 0 0011 2.5v-1A1.5 1.5 0 009.5 0h-3z"/></symbol><symbol fill="currentColor" class="bi bi-clipboard-data" viewBox="0 0 16 16" id="clipboard-data" xmlns="http://www.w3.org/2000/svg"><path d="M4 11a1 1 0 112 0v1a1 1 0 11-2 0v-1zm6-4a1 1 0 112 0v5a1 1 0 11-2 0V7zM7 9a1 1 0 012 0v3a1 1 0 11-2 0V9z"/><path d="M4 1.5H3a2 2 0 00-2 2V14a2 2 0 002 2h10a2 2 0 002-2V3.5a2 2 0 00-2-2h-1v1h1a1 1 0 011 1V14a1 1 0 01-1 1H3a1 1 0 01-1-1V3.5a1 1 0 011-1h1v-1z"/><path d="M9.5 1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5h3zm-3-1A1.5 1.5 0 005 1.5v1A1.5 1.5 0 006.5 4h3A1.5 1.5 0 0011 2.5v-1A1.5 1.5 0 009.5 0h-3z"/></symbol><symbol fill="currentColor" class="bi bi-clipboard-minus" viewBox="0 0 16 16" id="clipboard-minus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.5 9.5A.5.5 0 016 9h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M4 1.5H3a2 2 0 00-2 2V14a2 2 0 002 2h10a2 2 0 002-2V3.5a2 2 0 00-2-2h-1v1h1a1 1 0 011 1V14a1 1 0 01-1 1H3a1 1 0 01-1-1V3.5a1 1 0 011-1h1v-1z"/><path d="M9.5 1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5h3zm-3-1A1.5 1.5 0 005 1.5v1A1.5 1.5 0 006.5 4h3A1.5 1.5 0 0011 2.5v-1A1.5 1.5 0 009.5 0h-3z"/></symbol><symbol fill="currentColor" class="bi bi-clipboard-plus" viewBox="0 0 16 16" id="clipboard-plus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 7a.5.5 0 01.5.5V9H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V10H6a.5.5 0 010-1h1.5V7.5A.5.5 0 018 7z"/><path d="M4 1.5H3a2 2 0 00-2 2V14a2 2 0 002 2h10a2 2 0 002-2V3.5a2 2 0 00-2-2h-1v1h1a1 1 0 011 1V14a1 1 0 01-1 1H3a1 1 0 01-1-1V3.5a1 1 0 011-1h1v-1z"/><path d="M9.5 1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5h3zm-3-1A1.5 1.5 0 005 1.5v1A1.5 1.5 0 006.5 4h3A1.5 1.5 0 0011 2.5v-1A1.5 1.5 0 009.5 0h-3z"/></symbol><symbol fill="currentColor" class="bi bi-clipboard-x" viewBox="0 0 16 16" id="clipboard-x" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.146 7.146a.5.5 0 01.708 0L8 8.293l1.146-1.147a.5.5 0 11.708.708L8.707 9l1.147 1.146a.5.5 0 01-.708.708L8 9.707l-1.146 1.147a.5.5 0 01-.708-.708L7.293 9 6.146 7.854a.5.5 0 010-.708z"/><path d="M4 1.5H3a2 2 0 00-2 2V14a2 2 0 002 2h10a2 2 0 002-2V3.5a2 2 0 00-2-2h-1v1h1a1 1 0 011 1V14a1 1 0 01-1 1H3a1 1 0 01-1-1V3.5a1 1 0 011-1h1v-1z"/><path d="M9.5 1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-3a.5.5 0 01-.5-.5v-1a.5.5 0 01.5-.5h3zm-3-1A1.5 1.5 0 005 1.5v1A1.5 1.5 0 006.5 4h3A1.5 1.5 0 0011 2.5v-1A1.5 1.5 0 009.5 0h-3z"/></symbol><symbol fill="currentColor" class="bi bi-clock" viewBox="0 0 16 16" id="clock" xmlns="http://www.w3.org/2000/svg"><path d="M8 3.5a.5.5 0 00-1 0V9a.5.5 0 00.252.434l3.5 2a.5.5 0 00.496-.868L8 8.71V3.5z"/><path d="M8 16A8 8 0 108 0a8 8 0 000 16zm7-8A7 7 0 111 8a7 7 0 0114 0z"/></symbol><symbol fill="currentColor" class="bi bi-clock-fill" viewBox="0 0 16 16" id="clock-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM8 3.5a.5.5 0 00-1 0V9a.5.5 0 00.252.434l3.5 2a.5.5 0 00.496-.868L8 8.71V3.5z"/></symbol><symbol fill="currentColor" class="bi bi-clock-history" viewBox="0 0 16 16" id="clock-history" xmlns="http://www.w3.org/2000/svg"><path d="M8.515 1.019A7 7 0 008 1V0a8 8 0 01.589.022l-.074.997zm2.004.45a7.003 7.003 0 00-.985-.299l.219-.976c.383.086.76.2 1.126.342l-.36.933zm1.37.71a7.01 7.01 0 00-.439-.27l.493-.87a8.025 8.025 0 01.979.654l-.615.789a6.996 6.996 0 00-.418-.302zm1.834 1.79a6.99 6.99 0 00-.653-.796l.724-.69c.27.285.52.59.747.91l-.818.576zm.744 1.352a7.08 7.08 0 00-.214-.468l.893-.45a7.976 7.976 0 01.45 1.088l-.95.313a7.023 7.023 0 00-.179-.483zm.53 2.507a6.991 6.991 0 00-.1-1.025l.985-.17c.067.386.106.778.116 1.17l-1 .025zm-.131 1.538c.033-.17.06-.339.081-.51l.993.123a7.957 7.957 0 01-.23 1.155l-.964-.267c.046-.165.086-.332.12-.501zm-.952 2.379c.184-.29.346-.594.486-.908l.914.405c-.16.36-.345.706-.555 1.038l-.845-.535zm-.964 1.205c.122-.122.239-.248.35-.378l.758.653a8.073 8.073 0 01-.401.432l-.707-.707z"/><path d="M8 1a7 7 0 104.95 11.95l.707.707A8.001 8.001 0 118 0v1z"/><path d="M7.5 3a.5.5 0 01.5.5v5.21l3.248 1.856a.5.5 0 01-.496.868l-3.5-2A.5.5 0 017 9V3.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-cloud" viewBox="0 0 16 16" id="cloud" xmlns="http://www.w3.org/2000/svg"><path d="M4.406 3.342A5.53 5.53 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 00-2.941 1.1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-arrow-down" viewBox="0 0 16 16" id="cloud-arrow-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.646 10.854a.5.5 0 00.708 0l2-2a.5.5 0 00-.708-.708L8.5 9.293V5.5a.5.5 0 00-1 0v3.793L6.354 8.146a.5.5 0 10-.708.708l2 2z"/><path d="M4.406 3.342A5.53 5.53 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 00-2.941 1.1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-arrow-down-fill" viewBox="0 0 16 16" id="cloud-arrow-down-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 2a5.53 5.53 0 00-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2zm2.354 6.854l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 11.708-.708L7.5 9.293V5.5a.5.5 0 011 0v3.793l1.146-1.147a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-arrow-up" viewBox="0 0 16 16" id="cloud-arrow-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.646 5.146a.5.5 0 01.708 0l2 2a.5.5 0 01-.708.708L8.5 6.707V10.5a.5.5 0 01-1 0V6.707L6.354 7.854a.5.5 0 11-.708-.708l2-2z"/><path d="M4.406 3.342A5.53 5.53 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 00-2.941 1.1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-arrow-up-fill" viewBox="0 0 16 16" id="cloud-arrow-up-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 2a5.53 5.53 0 00-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2zm2.354 5.146a.5.5 0 01-.708.708L8.5 6.707V10.5a.5.5 0 01-1 0V6.707L6.354 7.854a.5.5 0 11-.708-.708l2-2a.5.5 0 01.708 0l2 2z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-check" viewBox="0 0 16 16" id="cloud-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.354 6.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7 8.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M4.406 3.342A5.53 5.53 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 00-2.941 1.1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-check-fill" viewBox="0 0 16 16" id="cloud-check-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 2a5.53 5.53 0 00-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2zm2.354 4.854l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7 8.793l2.646-2.647a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-download" viewBox="0 0 16 16" id="cloud-download" xmlns="http://www.w3.org/2000/svg"><path d="M4.406 1.342A5.53 5.53 0 018 0c2.69 0 4.923 2 5.166 4.579C14.758 4.804 16 6.137 16 7.773 16 9.569 14.502 11 12.687 11H10a.5.5 0 010-1h2.688C13.979 10 15 8.988 15 7.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 2.825 10.328 1 8 1a4.53 4.53 0 00-2.941 1.1c-.757.652-1.153 1.438-1.153 2.055v.448l-.445.049C2.064 4.805 1 5.952 1 7.318 1 8.785 2.23 10 3.781 10H6a.5.5 0 010 1H3.781C1.708 11 0 9.366 0 7.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383z"/><path d="M7.646 15.854a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 14.293V5.5a.5.5 0 00-1 0v8.793l-2.146-2.147a.5.5 0 00-.708.708l3 3z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-download-fill" viewBox="0 0 16 16" id="cloud-download-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0a5.53 5.53 0 00-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 4.095 0 5.555 0 7.318 0 9.366 1.708 11 3.781 11H7.5V5.5a.5.5 0 011 0V11h4.188C14.502 11 16 9.57 16 7.773c0-1.636-1.242-2.969-2.834-3.194C12.923 1.999 10.69 0 8 0zm-.354 15.854a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 14.293V11h-1v3.293l-2.146-2.147a.5.5 0 00-.708.708l3 3z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-drizzle" viewBox="0 0 16 16" id="cloud-drizzle" xmlns="http://www.w3.org/2000/svg"><path d="M4.158 12.025a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm6 0a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm-3.5 1.5a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm6 0a.5.5 0 01.316.633l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.317zm.747-8.498a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 11H13a3 3 0 00.405-5.973zM8.5 2a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 2z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-drizzle-fill" viewBox="0 0 16 16" id="cloud-drizzle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.158 12.025a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm6 0a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm-3.5 1.5a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm6 0a.5.5 0 01.316.633l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.317zm.747-8.498a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 11H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-fill" viewBox="0 0 16 16" id="cloud-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.406 3.342A5.53 5.53 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-fog" viewBox="0 0 16 16" id="cloud-fog" xmlns="http://www.w3.org/2000/svg"><path d="M3 13.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm10.405-9.473a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 12H13a3 3 0 00.405-5.973zM8.5 3a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 3z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-fog-fill" viewBox="0 0 16 16" id="cloud-fog-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 13.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm10.405-9.473a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 12H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-fog2" viewBox="0 0 16 16" id="cloud-fog2" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 4a4.002 4.002 0 00-3.8 2.745.5.5 0 11-.949-.313 5.002 5.002 0 019.654.595A3 3 0 0113 13H.5a.5.5 0 010-1H13a2 2 0 00.001-4h-.026a.5.5 0 01-.5-.445A4 4 0 008.5 4zM0 8.5A.5.5 0 01.5 8h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-fog2-fill" viewBox="0 0 16 16" id="cloud-fog2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 3a5.001 5.001 0 014.905 4.027A3 3 0 0113 13h-1.5a.5.5 0 000-1H1.05a3.51 3.51 0 01-.713-1H9.5a.5.5 0 000-1H.035a3.53 3.53 0 010-1H7.5a.5.5 0 000-1H.337a3.5 3.5 0 013.57-1.977A5.001 5.001 0 018.5 3z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-hail" viewBox="0 0 16 16" id="cloud-hail" xmlns="http://www.w3.org/2000/svg"><path d="M13.405 4.527a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10.5H13a3 3 0 00.405-5.973zM8.5 1.5a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 01-.001 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 1.5zM3.75 15.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm.408-3.724a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zM7.75 15.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm.408-3.724a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm3.592 3.724a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm.408-3.724a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-hail-fill" viewBox="0 0 16 16" id="cloud-hail-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.75 15.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm.408-3.724a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zM7.75 15.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm.408-3.724a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm3.592 3.724a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm.408-3.724a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm1.247-6.999a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10.5H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-haze" viewBox="0 0 16 16" id="cloud-haze" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 3a4.002 4.002 0 00-3.8 2.745.5.5 0 11-.949-.313 5.002 5.002 0 019.654.595A3 3 0 0113 12H4.5a.5.5 0 010-1H13a2 2 0 00.001-4h-.026a.5.5 0 01-.5-.445A4 4 0 008.5 3zM0 7.5A.5.5 0 01.5 7h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm2 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm-2 4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-haze-1" viewBox="0 0 16 16" id="cloud-haze-1" xmlns="http://www.w3.org/2000/svg"><path d="M4 11.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm-3 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm2 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM13.405 4.027a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973zM8.5 1a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-haze-fill" viewBox="0 0 16 16" id="cloud-haze-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 11.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm-3 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm2 2a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM13.405 4.027a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-haze2-fill" viewBox="0 0 16 16" id="cloud-haze2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 2a5.001 5.001 0 014.905 4.027A3 3 0 0113 12H3.5A3.5 3.5 0 01.035 9H5.5a.5.5 0 000-1H.035a3.5 3.5 0 013.871-2.977A5.001 5.001 0 018.5 2zm-6 8a.5.5 0 000 1h9a.5.5 0 000-1h-9zM0 13.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-lightning" viewBox="0 0 16 16" id="cloud-lightning" xmlns="http://www.w3.org/2000/svg"><path d="M13.405 4.027a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973zM8.5 1a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 1zM7.053 11.276A.5.5 0 017.5 11h1a.5.5 0 01.474.658l-.28.842H9.5a.5.5 0 01.39.812l-2 2.5a.5.5 0 01-.875-.433L7.36 14H6.5a.5.5 0 01-.447-.724l1-2z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-lightning-fill" viewBox="0 0 16 16" id="cloud-lightning-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.053 11.276A.5.5 0 017.5 11h1a.5.5 0 01.474.658l-.28.842H9.5a.5.5 0 01.39.812l-2 2.5a.5.5 0 01-.875-.433L7.36 14H6.5a.5.5 0 01-.447-.724l1-2zm6.352-7.249a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-lightning-rain" viewBox="0 0 16 16" id="cloud-lightning-rain" xmlns="http://www.w3.org/2000/svg"><path d="M2.658 11.026a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm9.5 0a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm-7.5 1.5a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm9.5 0a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm-.753-8.499a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973zM8.5 1a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 1zM7.053 11.276A.5.5 0 017.5 11h1a.5.5 0 01.474.658l-.28.842H9.5a.5.5 0 01.39.812l-2 2.5a.5.5 0 01-.875-.433L7.36 14H6.5a.5.5 0 01-.447-.724l1-2z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-lightning-rain-fill" viewBox="0 0 16 16" id="cloud-lightning-rain-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.658 11.026a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm9.5 0a.5.5 0 01.316.632l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.316zm-7.5 1.5a.5.5 0 01.316.632l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.316zm9.5 0a.5.5 0 01.316.632l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.316zm-7.105-1.25A.5.5 0 017.5 11h1a.5.5 0 01.474.658l-.28.842H9.5a.5.5 0 01.39.812l-2 2.5a.5.5 0 01-.875-.433L7.36 14H6.5a.5.5 0 01-.447-.724l1-2zm6.352-7.249a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-minus" viewBox="0 0 16 16" id="cloud-minus" xmlns="http://www.w3.org/2000/svg"><path d="M4.406 3.342A5.53 5.53 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 00-2.941 1.1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-minus-fill" viewBox="0 0 16 16" id="cloud-minus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 2a5.53 5.53 0 00-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2zM6 7.5h4a.5.5 0 010 1H6a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-moon" viewBox="0 0 16 16" id="cloud-moon" xmlns="http://www.w3.org/2000/svg"><path d="M7 8a3.5 3.5 0 013.5 3.555.5.5 0 00.625.492A1.503 1.503 0 0113 13.5a1.5 1.5 0 01-1.5 1.5H3a2 2 0 11.1-3.998.5.5 0 00.509-.375A3.502 3.502 0 017 8zm4.473 3a4.5 4.5 0 00-8.72-.99A3 3 0 003 16h8.5a2.5 2.5 0 000-5h-.027z"/><path d="M11.286 1.778a.5.5 0 00-.565-.755 4.595 4.595 0 00-3.18 5.003 5.46 5.46 0 011.055.209A3.603 3.603 0 019.83 2.617a4.593 4.593 0 004.31 5.744 3.576 3.576 0 01-2.241.634c.162.317.295.652.394 1a4.59 4.59 0 003.624-2.04.5.5 0 00-.565-.755 3.593 3.593 0 01-4.065-5.422z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-moon-fill" viewBox="0 0 16 16" id="cloud-moon-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.473 11a4.5 4.5 0 00-8.72-.99A3 3 0 003 16h8.5a2.5 2.5 0 000-5h-.027z"/><path d="M11.286 1.778a.5.5 0 00-.565-.755 4.595 4.595 0 00-3.18 5.003 5.46 5.46 0 011.055.209A3.603 3.603 0 019.83 2.617a4.593 4.593 0 004.31 5.744 3.576 3.576 0 01-2.241.634c.162.317.295.652.394 1a4.59 4.59 0 003.624-2.04.5.5 0 00-.565-.755 3.593 3.593 0 01-4.065-5.422z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-plus" viewBox="0 0 16 16" id="cloud-plus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 5.5a.5.5 0 01.5.5v1.5H10a.5.5 0 010 1H8.5V10a.5.5 0 01-1 0V8.5H6a.5.5 0 010-1h1.5V6a.5.5 0 01.5-.5z"/><path d="M4.406 3.342A5.53 5.53 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 00-2.941 1.1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-plus-fill" viewBox="0 0 16 16" id="cloud-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 2a5.53 5.53 0 00-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13h8.906C14.502 13 16 11.57 16 9.773c0-1.636-1.242-2.969-2.834-3.194C12.923 3.999 10.69 2 8 2zm.5 4v1.5H10a.5.5 0 010 1H8.5V10a.5.5 0 01-1 0V8.5H6a.5.5 0 010-1h1.5V6a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-rain" viewBox="0 0 16 16" id="cloud-rain" xmlns="http://www.w3.org/2000/svg"><path d="M4.158 12.025a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm3 0a.5.5 0 01.316.633l-1 3a.5.5 0 01-.948-.316l1-3a.5.5 0 01.632-.317zm3 0a.5.5 0 01.316.633l-.5 1.5a.5.5 0 01-.948-.316l.5-1.5a.5.5 0 01.632-.317zm3 0a.5.5 0 01.316.633l-1 3a.5.5 0 11-.948-.316l1-3a.5.5 0 01.632-.317zm.247-6.998a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 11H13a3 3 0 00.405-5.973zM8.5 2a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 2z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-rain-fill" viewBox="0 0 16 16" id="cloud-rain-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.158 12.025a.5.5 0 01.316.633l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.317zm3 0a.5.5 0 01.316.633l-1 3a.5.5 0 11-.948-.316l1-3a.5.5 0 01.632-.317zm3 0a.5.5 0 01.316.633l-.5 1.5a.5.5 0 11-.948-.316l.5-1.5a.5.5 0 01.632-.317zm3 0a.5.5 0 01.316.633l-1 3a.5.5 0 11-.948-.316l1-3a.5.5 0 01.632-.317zm.247-6.998a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 11H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-rain-heavy" viewBox="0 0 16 16" id="cloud-rain-heavy" xmlns="http://www.w3.org/2000/svg"><path d="M4.176 11.032a.5.5 0 01.292.643l-1.5 4a.5.5 0 11-.936-.35l1.5-4a.5.5 0 01.644-.293zm3 0a.5.5 0 01.292.643l-1.5 4a.5.5 0 11-.936-.35l1.5-4a.5.5 0 01.644-.293zm3 0a.5.5 0 01.292.643l-1.5 4a.5.5 0 11-.936-.35l1.5-4a.5.5 0 01.644-.293zm3 0a.5.5 0 01.292.643l-1.5 4a.5.5 0 01-.936-.35l1.5-4a.5.5 0 01.644-.293zm.229-7.005a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973zM8.5 1a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-rain-heavy-fill" viewBox="0 0 16 16" id="cloud-rain-heavy-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.176 11.032a.5.5 0 01.292.643l-1.5 4a.5.5 0 01-.936-.35l1.5-4a.5.5 0 01.644-.293zm3 0a.5.5 0 01.292.643l-1.5 4a.5.5 0 01-.936-.35l1.5-4a.5.5 0 01.644-.293zm3 0a.5.5 0 01.292.643l-1.5 4a.5.5 0 01-.936-.35l1.5-4a.5.5 0 01.644-.293zm3 0a.5.5 0 01.292.643l-1.5 4a.5.5 0 01-.936-.35l1.5-4a.5.5 0 01.644-.293zm.229-7.005a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-slash" viewBox="0 0 16 16" id="cloud-slash" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.112 5.112a3.125 3.125 0 00-.17.613C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13H11l-1-1H3.781C2.231 12 1 10.785 1 9.318c0-1.365 1.064-2.513 2.46-2.666l.446-.05v-.447c0-.075.006-.152.018-.231l-.812-.812zm2.55-1.45l-.725-.725A5.512 5.512 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773a3.2 3.2 0 01-1.516 2.711l-.733-.733C14.498 11.378 15 10.626 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3c-.875 0-1.678.26-2.339.661z"/><path d="M13.646 14.354l-12-12 .708-.708 12 12-.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-slash-fill" viewBox="0 0 16 16" id="cloud-slash-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.112 5.112a3.125 3.125 0 00-.17.613C1.266 6.095 0 7.555 0 9.318 0 11.366 1.708 13 3.781 13H11L3.112 5.112zm11.372 7.372L4.937 2.937A5.512 5.512 0 018 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773a3.2 3.2 0 01-1.516 2.711zm-.838 1.87l-12-12 .708-.708 12 12-.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-sleet" viewBox="0 0 16 16" id="cloud-sleet" xmlns="http://www.w3.org/2000/svg"><path d="M13.405 4.027a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973zM8.5 1a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 010 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 1zM2.375 13.5a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm1.849-2.447a.5.5 0 01.223.67l-.5 1a.5.5 0 11-.894-.447l.5-1a.5.5 0 01.67-.223zM6.375 13.5a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm1.849-2.447a.5.5 0 01.223.67l-.5 1a.5.5 0 11-.894-.447l.5-1a.5.5 0 01.67-.223zm2.151 2.447a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm1.849-2.447a.5.5 0 01.223.67l-.5 1a.5.5 0 11-.894-.447l.5-1a.5.5 0 01.67-.223z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-sleet-fill" viewBox="0 0 16 16" id="cloud-sleet-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.375 13.5a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 11-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 11-.248-.434l.495-.283-.495-.283a.25.25 0 11.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm1.849-2.447a.5.5 0 01.223.67l-.5 1a.5.5 0 01-.894-.447l.5-1a.5.5 0 01.67-.223zM6.375 13.5a.25.25 0 01.25.25v.57l.5-.287a.25.25 0 01.249.434l-.495.283.495.283a.25.25 0 11-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 11-.248-.434l.495-.283-.495-.283a.25.25 0 11.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm1.849-2.447a.5.5 0 01.223.67l-.5 1a.5.5 0 01-.894-.447l.5-1a.5.5 0 01.67-.223zm2.151 2.447a.25.25 0 01.25.25v.57l.5-.287a.25.25 0 01.249.434l-.495.283.495.283a.25.25 0 11-.248.434l-.501-.286v.569a.25.25 0 01-.5 0v-.57l-.501.287a.25.25 0 11-.248-.434l.495-.283-.495-.283a.25.25 0 11.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm1.849-2.447a.5.5 0 01.223.67l-.5 1a.5.5 0 11-.894-.447l.5-1a.5.5 0 01.67-.223zm1.181-7.026a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-snow" viewBox="0 0 16 16" id="cloud-snow" xmlns="http://www.w3.org/2000/svg"><path d="M13.405 4.277a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10.25H13a3 3 0 00.405-5.973zM8.5 1.25a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 01-.001 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 1.25zM2.625 11.5a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm2.75 2a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm5.5 0a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm-2.75-2a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm5.5 0a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-snow-fill" viewBox="0 0 16 16" id="cloud-snow-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.625 11.5a.25.25 0 01.25.25v.57l.501-.287a.25.25 0 01.248.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm2.75 2a.25.25 0 01.25.25v.57l.5-.287a.25.25 0 01.249.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm5.5 0a.25.25 0 01.25.25v.57l.5-.287a.25.25 0 01.249.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 01-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm-2.75-2a.25.25 0 01.25.25v.57l.5-.287a.25.25 0 01.249.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 11-.5 0v-.57l-.501.287a.25.25 0 01-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm5.5 0a.25.25 0 01.25.25v.57l.5-.287a.25.25 0 01.249.434l-.495.283.495.283a.25.25 0 01-.248.434l-.501-.286v.569a.25.25 0 01-.5 0v-.57l-.501.287a.25.25 0 11-.248-.434l.495-.283-.495-.283a.25.25 0 01.248-.434l.501.286v-.569a.25.25 0 01.25-.25zm-.22-7.223a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 10.25H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-sun" viewBox="0 0 16 16" id="cloud-sun" xmlns="http://www.w3.org/2000/svg"><path d="M7 8a3.5 3.5 0 013.5 3.555.5.5 0 00.624.492A1.503 1.503 0 0113 13.5a1.5 1.5 0 01-1.5 1.5H3a2 2 0 11.1-3.998.5.5 0 00.51-.375A3.502 3.502 0 017 8zm4.473 3a4.5 4.5 0 00-8.72-.99A3 3 0 003 16h8.5a2.5 2.5 0 000-5h-.027z"/><path d="M10.5 1.5a.5.5 0 00-1 0v1a.5.5 0 001 0v-1zm3.743 1.964a.5.5 0 10-.707-.707l-.708.707a.5.5 0 00.708.708l.707-.708zm-7.779-.707a.5.5 0 00-.707.707l.707.708a.5.5 0 10.708-.708l-.708-.707zm1.734 3.374a2 2 0 113.296 2.198c.199.281.372.582.516.898a3 3 0 10-4.84-3.225c.352.011.696.055 1.028.129zm4.484 4.074c.6.215 1.125.59 1.522 1.072a.5.5 0 00.039-.742l-.707-.707a.5.5 0 00-.854.377zM14.5 6.5a.5.5 0 000 1h1a.5.5 0 000-1h-1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-sun-fill" viewBox="0 0 16 16" id="cloud-sun-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.473 11a4.5 4.5 0 00-8.72-.99A3 3 0 003 16h8.5a2.5 2.5 0 000-5h-.027z"/><path d="M10.5 1.5a.5.5 0 00-1 0v1a.5.5 0 001 0v-1zm3.743 1.964a.5.5 0 10-.707-.707l-.708.707a.5.5 0 00.708.708l.707-.708zm-7.779-.707a.5.5 0 00-.707.707l.707.708a.5.5 0 10.708-.708l-.708-.707zm1.734 3.374a2 2 0 113.296 2.198c.199.281.372.582.516.898a3 3 0 10-4.84-3.225c.352.011.696.055 1.028.129zm4.484 4.074c.6.215 1.125.59 1.522 1.072a.5.5 0 00.039-.742l-.707-.707a.5.5 0 00-.854.377zM14.5 6.5a.5.5 0 000 1h1a.5.5 0 000-1h-1z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-upload" viewBox="0 0 16 16" id="cloud-upload" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.406 1.342A5.53 5.53 0 018 0c2.69 0 4.923 2 5.166 4.579C14.758 4.804 16 6.137 16 7.773 16 9.569 14.502 11 12.687 11H10a.5.5 0 010-1h2.688C13.979 10 15 8.988 15 7.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 2.825 10.328 1 8 1a4.53 4.53 0 00-2.941 1.1c-.757.652-1.153 1.438-1.153 2.055v.448l-.445.049C2.064 4.805 1 5.952 1 7.318 1 8.785 2.23 10 3.781 10H6a.5.5 0 010 1H3.781C1.708 11 0 9.366 0 7.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383z"/><path fill-rule="evenodd" d="M7.646 4.146a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 5.707V14.5a.5.5 0 01-1 0V5.707L5.354 7.854a.5.5 0 11-.708-.708l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-cloud-upload-fill" viewBox="0 0 16 16" id="cloud-upload-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0a5.53 5.53 0 00-3.594 1.342c-.766.66-1.321 1.52-1.464 2.383C1.266 4.095 0 5.555 0 7.318 0 9.366 1.708 11 3.781 11H7.5V5.707L5.354 7.854a.5.5 0 11-.708-.708l3-3a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 5.707V11h4.188C14.502 11 16 9.57 16 7.773c0-1.636-1.242-2.969-2.834-3.194C12.923 1.999 10.69 0 8 0zm-.5 14.5V11h1v3.5a.5.5 0 01-1 0z"/></symbol><symbol fill="currentColor" class="bi bi-clouds" viewBox="0 0 16 16" id="clouds" xmlns="http://www.w3.org/2000/svg"><path d="M16 7.5a2.5 2.5 0 01-1.456 2.272 3.513 3.513 0 00-.65-.824 1.5 1.5 0 00-.789-2.896.5.5 0 01-.627-.421 3 3 0 00-5.22-1.625 5.587 5.587 0 00-1.276.088 4.002 4.002 0 017.392.91A2.5 2.5 0 0116 7.5z"/><path d="M7 5a4.5 4.5 0 014.473 4h.027a2.5 2.5 0 010 5H3a3 3 0 01-.247-5.99A4.502 4.502 0 017 5zm3.5 4.5a3.5 3.5 0 00-6.89-.873.5.5 0 01-.51.375A2 2 0 103 13h8.5a1.5 1.5 0 10-.376-2.953.5.5 0 01-.624-.492V9.5z"/></symbol><symbol fill="currentColor" class="bi bi-clouds-fill" viewBox="0 0 16 16" id="clouds-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.473 9a4.5 4.5 0 00-8.72-.99A3 3 0 003 14h8.5a2.5 2.5 0 10-.027-5z"/><path d="M14.544 9.772a3.506 3.506 0 00-2.225-1.676 5.502 5.502 0 00-6.337-4.002 4.002 4.002 0 017.392.91 2.5 2.5 0 011.17 4.769z"/></symbol><symbol fill="currentColor" class="bi bi-cloudy" viewBox="0 0 16 16" id="cloudy" xmlns="http://www.w3.org/2000/svg"><path d="M13.405 8.527a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 14.5H13a3 3 0 00.405-5.973zM8.5 5.5a4 4 0 013.976 3.555.5.5 0 00.5.445H13a2 2 0 01-.001 4H3.5a2.5 2.5 0 11.605-4.926.5.5 0 00.596-.329A4.002 4.002 0 018.5 5.5z"/></symbol><symbol fill="currentColor" class="bi bi-cloudy-fill" viewBox="0 0 16 16" id="cloudy-fill" xmlns="http://www.w3.org/2000/svg"><path d="M13.405 7.027a5.001 5.001 0 00-9.499-1.004A3.5 3.5 0 103.5 13H13a3 3 0 00.405-5.973z"/></symbol><symbol fill="currentColor" class="bi bi-code" viewBox="0 0 16 16" id="code" xmlns="http://www.w3.org/2000/svg"><path d="M5.854 4.854a.5.5 0 10-.708-.708l-3.5 3.5a.5.5 0 000 .708l3.5 3.5a.5.5 0 00.708-.708L2.707 8l3.147-3.146zm4.292 0a.5.5 0 01.708-.708l3.5 3.5a.5.5 0 010 .708l-3.5 3.5a.5.5 0 01-.708-.708L13.293 8l-3.147-3.146z"/></symbol><symbol fill="currentColor" class="bi bi-code-slash" viewBox="0 0 16 16" id="code-slash" xmlns="http://www.w3.org/2000/svg"><path d="M10.478 1.647a.5.5 0 10-.956-.294l-4 13a.5.5 0 00.956.294l4-13zM4.854 4.146a.5.5 0 010 .708L1.707 8l3.147 3.146a.5.5 0 01-.708.708l-3.5-3.5a.5.5 0 010-.708l3.5-3.5a.5.5 0 01.708 0zm6.292 0a.5.5 0 000 .708L14.293 8l-3.147 3.146a.5.5 0 00.708.708l3.5-3.5a.5.5 0 000-.708l-3.5-3.5a.5.5 0 00-.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-code-square" viewBox="0 0 16 16" id="code-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M6.854 4.646a.5.5 0 010 .708L4.207 8l2.647 2.646a.5.5 0 01-.708.708l-3-3a.5.5 0 010-.708l3-3a.5.5 0 01.708 0zm2.292 0a.5.5 0 000 .708L11.793 8l-2.647 2.646a.5.5 0 00.708.708l3-3a.5.5 0 000-.708l-3-3a.5.5 0 00-.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-coin" viewBox="0 0 16 16" id="coin" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 9.511c.076.954.83 1.697 2.182 1.785V12h.6v-.709c1.4-.098 2.218-.846 2.218-1.932 0-.987-.626-1.496-1.745-1.76l-.473-.112V5.57c.6.068.982.396 1.074.85h1.052c-.076-.919-.864-1.638-2.126-1.716V4h-.6v.719c-1.195.117-2.01.836-2.01 1.853 0 .9.606 1.472 1.613 1.707l.397.098v2.034c-.615-.093-1.022-.43-1.114-.9H5.5zm2.177-2.166c-.59-.137-.91-.416-.91-.836 0-.47.345-.822.915-.925v1.76h-.005zm.692 1.193c.717.166 1.048.435 1.048.91 0 .542-.412.914-1.135.982V8.518l.087.02z"/><path fill-rule="evenodd" d="M8 15A7 7 0 108 1a7 7 0 000 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path fill-rule="evenodd" d="M8 13.5a5.5 5.5 0 100-11 5.5 5.5 0 000 11zm0 .5A6 6 0 108 2a6 6 0 000 12z"/></symbol><symbol fill="currentColor" class="bi bi-collection" viewBox="0 0 16 16" id="collection" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 3.5a.5.5 0 010-1h11a.5.5 0 010 1h-11zm2-2a.5.5 0 010-1h7a.5.5 0 010 1h-7zM0 13a1.5 1.5 0 001.5 1.5h13A1.5 1.5 0 0016 13V6a1.5 1.5 0 00-1.5-1.5h-13A1.5 1.5 0 000 6v7zm1.5.5A.5.5 0 011 13V6a.5.5 0 01.5-.5h13a.5.5 0 01.5.5v7a.5.5 0 01-.5.5h-13z"/></symbol><symbol fill="currentColor" class="bi bi-collection-fill" viewBox="0 0 16 16" id="collection-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 13a1.5 1.5 0 001.5 1.5h13A1.5 1.5 0 0016 13V6a1.5 1.5 0 00-1.5-1.5h-13A1.5 1.5 0 000 6v7zM2 3a.5.5 0 00.5.5h11a.5.5 0 000-1h-11A.5.5 0 002 3zm2-2a.5.5 0 00.5.5h7a.5.5 0 000-1h-7A.5.5 0 004 1z"/></symbol><symbol fill="currentColor" class="bi bi-collection-play" viewBox="0 0 16 16" id="collection-play" xmlns="http://www.w3.org/2000/svg"><path d="M2 3a.5.5 0 00.5.5h11a.5.5 0 000-1h-11A.5.5 0 002 3zm2-2a.5.5 0 00.5.5h7a.5.5 0 000-1h-7A.5.5 0 004 1zm2.765 5.576A.5.5 0 006 7v5a.5.5 0 00.765.424l4-2.5a.5.5 0 000-.848l-4-2.5z"/><path d="M1.5 14.5A1.5 1.5 0 010 13V6a1.5 1.5 0 011.5-1.5h13A1.5 1.5 0 0116 6v7a1.5 1.5 0 01-1.5 1.5h-13zm13-1a.5.5 0 00.5-.5V6a.5.5 0 00-.5-.5h-13A.5.5 0 001 6v7a.5.5 0 00.5.5h13z"/></symbol><symbol fill="currentColor" class="bi bi-collection-play-fill" viewBox="0 0 16 16" id="collection-play-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 3.5a.5.5 0 010-1h11a.5.5 0 010 1h-11zm2-2a.5.5 0 010-1h7a.5.5 0 010 1h-7zM0 13a1.5 1.5 0 001.5 1.5h13A1.5 1.5 0 0016 13V6a1.5 1.5 0 00-1.5-1.5h-13A1.5 1.5 0 000 6v7zm6.258-6.437a.5.5 0 01.507.013l4 2.5a.5.5 0 010 .848l-4 2.5A.5.5 0 016 12V7a.5.5 0 01.258-.437z"/></symbol><symbol fill="currentColor" class="bi bi-columns" viewBox="0 0 16 16" id="columns" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a1 1 0 011-1h14a1 1 0 011 1v12a1 1 0 01-1 1H1a1 1 0 01-1-1V2zm8.5 0v8H15V2H8.5zm0 9v3H15v-3H8.5zm-1-9H1v3h6.5V2zM1 14h6.5V6H1v8z"/></symbol><symbol fill="currentColor" class="bi bi-columns-gap" viewBox="0 0 16 16" id="columns-gap" xmlns="http://www.w3.org/2000/svg"><path d="M6 1v3H1V1h5zM1 0a1 1 0 00-1 1v3a1 1 0 001 1h5a1 1 0 001-1V1a1 1 0 00-1-1H1zm14 12v3h-5v-3h5zm-5-1a1 1 0 00-1 1v3a1 1 0 001 1h5a1 1 0 001-1v-3a1 1 0 00-1-1h-5zM6 8v7H1V8h5zM1 7a1 1 0 00-1 1v7a1 1 0 001 1h5a1 1 0 001-1V8a1 1 0 00-1-1H1zm14-6v7h-5V1h5zm-5-1a1 1 0 00-1 1v7a1 1 0 001 1h5a1 1 0 001-1V1a1 1 0 00-1-1h-5z"/></symbol><symbol fill="currentColor" class="bi bi-command" viewBox="0 0 16 16" id="command" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 2A1.5 1.5 0 015 3.5V5H3.5a1.5 1.5 0 110-3zM6 5V3.5A2.5 2.5 0 103.5 6H5v4H3.5A2.5 2.5 0 106 12.5V11h4v1.5a2.5 2.5 0 102.5-2.5H11V6h1.5A2.5 2.5 0 1010 3.5V5H6zm4 1v4H6V6h4zm1-1V3.5A1.5 1.5 0 1112.5 5H11zm0 6h1.5a1.5 1.5 0 11-1.5 1.5V11zm-6 0v1.5A1.5 1.5 0 113.5 11H5z"/></symbol><symbol fill="currentColor" class="bi bi-compass" viewBox="0 0 16 16" id="compass" xmlns="http://www.w3.org/2000/svg"><path d="M8 16.016a7.5 7.5 0 001.962-14.74A1 1 0 009 0H7a1 1 0 00-.962 1.276A7.5 7.5 0 008 16.016zm6.5-7.5a6.5 6.5 0 11-13 0 6.5 6.5 0 0113 0z"/><path d="M6.94 7.44l4.95-2.83-2.83 4.95-4.949 2.83 2.828-4.95z"/></symbol><symbol fill="currentColor" class="bi bi-compass-fill" viewBox="0 0 16 16" id="compass-fill" xmlns="http://www.w3.org/2000/svg"><path d="M15.5 8.516a7.5 7.5 0 11-9.462-7.24A1 1 0 017 0h2a1 1 0 01.962 1.276 7.503 7.503 0 015.538 7.24zm-3.61-3.905L6.94 7.439 4.11 12.39l4.95-2.828 2.828-4.95z"/></symbol><symbol fill="currentColor" class="bi bi-cone" viewBox="0 0 16 16" id="cone" xmlns="http://www.w3.org/2000/svg"><path d="M7.03 1.88c.252-1.01 1.688-1.01 1.94 0l2.905 11.62H14a.5.5 0 010 1H2a.5.5 0 010-1h2.125L7.03 1.88z"/></symbol><symbol fill="currentColor" class="bi bi-cone-striped" viewBox="0 0 16 16" id="cone-striped" xmlns="http://www.w3.org/2000/svg"><path d="M9.97 4.88l.953 3.811C10.159 8.878 9.14 9 8 9c-1.14 0-2.158-.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.275 3.9C6.8 3.965 7.382 4 8 4c.618 0 1.2-.036 1.725-.098zm4.396 8.613a.5.5 0 01.037.96l-6 2a.5.5 0 01-.316 0l-6-2a.5.5 0 01.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"/></symbol><symbol fill="currentColor" class="bi bi-controller" viewBox="0 0 16 16" id="controller" xmlns="http://www.w3.org/2000/svg"><path d="M11.5 6.027a.5.5 0 11-1 0 .5.5 0 011 0zm-1.5 1.5a.5.5 0 100-1 .5.5 0 000 1zm2.5-.5a.5.5 0 11-1 0 .5.5 0 011 0zm-1.5 1.5a.5.5 0 100-1 .5.5 0 000 1zm-6.5-3h1v1h1v1h-1v1h-1v-1h-1v-1h1v-1z"/><path d="M3.051 3.26a.5.5 0 01.354-.613l1.932-.518a.5.5 0 01.62.39c.655-.079 1.35-.117 2.043-.117.72 0 1.443.041 2.12.126a.5.5 0 01.622-.399l1.932.518a.5.5 0 01.306.729c.14.09.266.19.373.297.408.408.78 1.05 1.095 1.772.32.733.599 1.591.805 2.466.206.875.34 1.78.364 2.606.024.816-.059 1.602-.328 2.21a1.42 1.42 0 01-1.445.83c-.636-.067-1.115-.394-1.513-.773-.245-.232-.496-.526-.739-.808-.126-.148-.25-.292-.368-.423-.728-.804-1.597-1.527-3.224-1.527-1.627 0-2.496.723-3.224 1.527-.119.131-.242.275-.368.423-.243.282-.494.575-.739.808-.398.38-.877.706-1.513.773a1.42 1.42 0 01-1.445-.83c-.27-.608-.352-1.395-.329-2.21.024-.826.16-1.73.365-2.606.206-.875.486-1.733.805-2.466.315-.722.687-1.364 1.094-1.772a2.34 2.34 0 01.433-.335.504.504 0 01-.028-.079zm2.036.412c-.877.185-1.469.443-1.733.708-.276.276-.587.783-.885 1.465a13.748 13.748 0 00-.748 2.295 12.351 12.351 0 00-.339 2.406c-.022.755.062 1.368.243 1.776a.42.42 0 00.426.24c.327-.034.61-.199.929-.502.212-.202.4-.423.615-.674.133-.156.276-.323.44-.504C4.861 9.969 5.978 9.027 8 9.027s3.139.942 3.965 1.855c.164.181.307.348.44.504.214.251.403.472.615.674.318.303.601.468.929.503a.42.42 0 00.426-.241c.18-.408.265-1.02.243-1.776a12.354 12.354 0 00-.339-2.406 13.753 13.753 0 00-.748-2.295c-.298-.682-.61-1.19-.885-1.465-.264-.265-.856-.523-1.733-.708-.85-.179-1.877-.27-2.913-.27-1.036 0-2.063.091-2.913.27z"/></symbol><symbol fill="currentColor" class="bi bi-cpu" viewBox="0 0 16 16" id="cpu" xmlns="http://www.w3.org/2000/svg"><path d="M5 0a.5.5 0 01.5.5V2h1V.5a.5.5 0 011 0V2h1V.5a.5.5 0 011 0V2h1V.5a.5.5 0 011 0V2A2.5 2.5 0 0114 4.5h1.5a.5.5 0 010 1H14v1h1.5a.5.5 0 010 1H14v1h1.5a.5.5 0 010 1H14v1h1.5a.5.5 0 010 1H14a2.5 2.5 0 01-2.5 2.5v1.5a.5.5 0 01-1 0V14h-1v1.5a.5.5 0 01-1 0V14h-1v1.5a.5.5 0 01-1 0V14h-1v1.5a.5.5 0 01-1 0V14A2.5 2.5 0 012 11.5H.5a.5.5 0 010-1H2v-1H.5a.5.5 0 010-1H2v-1H.5a.5.5 0 010-1H2v-1H.5a.5.5 0 010-1H2A2.5 2.5 0 014.5 2V.5A.5.5 0 015 0zm-.5 3A1.5 1.5 0 003 4.5v7A1.5 1.5 0 004.5 13h7a1.5 1.5 0 001.5-1.5v-7A1.5 1.5 0 0011.5 3h-7zM5 6.5A1.5 1.5 0 016.5 5h3A1.5 1.5 0 0111 6.5v3A1.5 1.5 0 019.5 11h-3A1.5 1.5 0 015 9.5v-3zM6.5 6a.5.5 0 00-.5.5v3a.5.5 0 00.5.5h3a.5.5 0 00.5-.5v-3a.5.5 0 00-.5-.5h-3z"/></symbol><symbol fill="currentColor" class="bi bi-cpu-fill" viewBox="0 0 16 16" id="cpu-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 6a.5.5 0 00-.5.5v3a.5.5 0 00.5.5h3a.5.5 0 00.5-.5v-3a.5.5 0 00-.5-.5h-3z"/><path d="M5.5.5a.5.5 0 00-1 0V2A2.5 2.5 0 002 4.5H.5a.5.5 0 000 1H2v1H.5a.5.5 0 000 1H2v1H.5a.5.5 0 000 1H2v1H.5a.5.5 0 000 1H2A2.5 2.5 0 004.5 14v1.5a.5.5 0 001 0V14h1v1.5a.5.5 0 001 0V14h1v1.5a.5.5 0 001 0V14h1v1.5a.5.5 0 001 0V14a2.5 2.5 0 002.5-2.5h1.5a.5.5 0 000-1H14v-1h1.5a.5.5 0 000-1H14v-1h1.5a.5.5 0 000-1H14v-1h1.5a.5.5 0 000-1H14A2.5 2.5 0 0011.5 2V.5a.5.5 0 00-1 0V2h-1V.5a.5.5 0 00-1 0V2h-1V.5a.5.5 0 00-1 0V2h-1V.5zm1 4.5h3A1.5 1.5 0 0111 6.5v3A1.5 1.5 0 019.5 11h-3A1.5 1.5 0 015 9.5v-3A1.5 1.5 0 016.5 5z"/></symbol><symbol fill="currentColor" class="bi bi-credit-card" viewBox="0 0 16 16" id="credit-card" xmlns="http://www.w3.org/2000/svg"><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm2-1a1 1 0 00-1 1v1h14V4a1 1 0 00-1-1H2zm13 4H1v5a1 1 0 001 1h12a1 1 0 001-1V7z"/><path d="M2 10a1 1 0 011-1h1a1 1 0 011 1v1a1 1 0 01-1 1H3a1 1 0 01-1-1v-1z"/></symbol><symbol fill="currentColor" class="bi bi-credit-card-2-back" viewBox="0 0 16 16" id="credit-card-2-back" xmlns="http://www.w3.org/2000/svg"><path d="M11 5.5a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-1z"/><path d="M2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm13 2v5H1V4a1 1 0 011-1h12a1 1 0 011 1zm-1 9H2a1 1 0 01-1-1v-1h14v1a1 1 0 01-1 1z"/></symbol><symbol fill="currentColor" class="bi bi-credit-card-2-back-fill" viewBox="0 0 16 16" id="credit-card-2-back-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v5H0V4zm11.5 1a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h2a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-2zM0 11v1a2 2 0 002 2h12a2 2 0 002-2v-1H0z"/></symbol><symbol fill="currentColor" class="bi bi-credit-card-2-front" viewBox="0 0 16 16" id="credit-card-2-front" xmlns="http://www.w3.org/2000/svg"><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/><path d="M2 5.5a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-1zm0 3a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zm3 0a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zm3 0a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zm3 0a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-credit-card-2-front-fill" viewBox="0 0 16 16" id="credit-card-2-front-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm2.5 1a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h2a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-2zm0 3a.5.5 0 000 1h5a.5.5 0 000-1h-5zm0 2a.5.5 0 000 1h1a.5.5 0 000-1h-1zm3 0a.5.5 0 000 1h1a.5.5 0 000-1h-1zm3 0a.5.5 0 000 1h1a.5.5 0 000-1h-1zm3 0a.5.5 0 000 1h1a.5.5 0 000-1h-1z"/></symbol><symbol fill="currentColor" class="bi bi-credit-card-fill" viewBox="0 0 16 16" id="credit-card-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v1H0V4zm0 3v5a2 2 0 002 2h12a2 2 0 002-2V7H0zm3 2h1a1 1 0 011 1v1a1 1 0 01-1 1H3a1 1 0 01-1-1v-1a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-crop" viewBox="0 0 16 16" id="crop" xmlns="http://www.w3.org/2000/svg"><path d="M3.5.5A.5.5 0 014 1v13h13a.5.5 0 010 1h-2v2a.5.5 0 01-1 0v-2H3.5a.5.5 0 01-.5-.5V4H1a.5.5 0 010-1h2V1a.5.5 0 01.5-.5zm2.5 3a.5.5 0 01.5-.5h8a.5.5 0 01.5.5v8a.5.5 0 01-1 0V4H6.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-cup" viewBox="0 0 16 16" id="cup" xmlns="http://www.w3.org/2000/svg"><path d="M1 2a1 1 0 011-1h11a1 1 0 011 1v1h.5A1.5 1.5 0 0116 4.5v7a1.5 1.5 0 01-1.5 1.5h-.55a2.5 2.5 0 01-2.45 2h-8A2.5 2.5 0 011 12.5V2zm13 10h.5a.5.5 0 00.5-.5v-7a.5.5 0 00-.5-.5H14v8zM13 2H2v10.5A1.5 1.5 0 003.5 14h8a1.5 1.5 0 001.5-1.5V2z"/></symbol><symbol fill="currentColor" class="bi bi-cup-fill" viewBox="0 0 16 16" id="cup-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1 2a1 1 0 011-1h11a1 1 0 011 1v1h.5A1.5 1.5 0 0116 4.5v7a1.5 1.5 0 01-1.5 1.5h-.55a2.5 2.5 0 01-2.45 2h-8A2.5 2.5 0 011 12.5V2zm13 10h.5a.5.5 0 00.5-.5v-7a.5.5 0 00-.5-.5H14v8z"/></symbol><symbol fill="currentColor" class="bi bi-cup-straw" viewBox="0 0 16 16" id="cup-straw" xmlns="http://www.w3.org/2000/svg"><path d="M13.902.334a.5.5 0 01-.28.65l-2.254.902-.4 1.927c.376.095.715.215.972.367.228.135.56.396.56.82 0 .046-.004.09-.011.132l-.962 9.068a1.28 1.28 0 01-.524.93c-.488.34-1.494.87-3.01.87-1.516 0-2.522-.53-3.01-.87a1.28 1.28 0 01-.524-.93L3.51 5.132A.78.78 0 013.5 5c0-.424.332-.685.56-.82.262-.154.607-.276.99-.372C5.824 3.614 6.867 3.5 8 3.5c.712 0 1.389.045 1.985.127l.464-2.215a.5.5 0 01.303-.356l2.5-1a.5.5 0 01.65.278zM9.768 4.607A13.991 13.991 0 008 4.5c-1.076 0-2.033.11-2.707.278A3.284 3.284 0 004.645 5c.146.073.362.15.648.222C5.967 5.39 6.924 5.5 8 5.5c.571 0 1.109-.03 1.588-.085l.18-.808zm.292 1.756C9.445 6.45 8.742 6.5 8 6.5c-1.133 0-2.176-.114-2.95-.308a5.514 5.514 0 01-.435-.127l.838 8.03c.013.121.06.186.102.215.357.249 1.168.69 2.438.69 1.27 0 2.081-.441 2.438-.69.042-.029.09-.094.102-.215l.852-8.03a5.517 5.517 0 01-.435.127 8.88 8.88 0 01-.89.17zM4.467 4.884s.003.002.005.006l-.005-.006zm7.066 0l-.005.006c.002-.004.005-.006.005-.006zM11.354 5a3.174 3.174 0 00-.604-.21l-.099.445.055-.013c.286-.072.502-.149.648-.222z"/></symbol><symbol fill="currentColor" class="bi bi-currency-bitcoin" viewBox="0 0 16 16" id="currency-bitcoin" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 13v1.25c0 .138.112.25.25.25h1a.25.25 0 00.25-.25V13h.5v1.25c0 .138.112.25.25.25h1a.25.25 0 00.25-.25V13h.084c1.992 0 3.416-1.033 3.416-2.82 0-1.502-1.007-2.323-2.186-2.44v-.088c.97-.242 1.683-.974 1.683-2.19C11.997 3.93 10.847 3 9.092 3H9V1.75a.25.25 0 00-.25-.25h-1a.25.25 0 00-.25.25V3h-.573V1.75a.25.25 0 00-.25-.25H5.75a.25.25 0 00-.25.25V3l-1.998.011a.25.25 0 00-.25.25v.989c0 .137.11.25.248.25l.755-.005a.75.75 0 01.745.75v5.505a.75.75 0 01-.75.75l-.748.011a.25.25 0 00-.25.25v1c0 .138.112.25.25.25L5.5 13zm1.427-8.513h1.719c.906 0 1.438.498 1.438 1.312 0 .871-.575 1.362-1.877 1.362h-1.28V4.487zm0 4.051h1.84c1.137 0 1.756.58 1.756 1.524 0 .953-.626 1.45-2.158 1.45H6.927V8.539z"/></symbol><symbol fill="currentColor" class="bi bi-currency-dollar" viewBox="0 0 16 16" id="currency-dollar" xmlns="http://www.w3.org/2000/svg"><path d="M4 10.781c.148 1.667 1.513 2.85 3.591 3.003V15h1.043v-1.216c2.27-.179 3.678-1.438 3.678-3.3 0-1.59-.947-2.51-2.956-3.028l-.722-.187V3.467c1.122.11 1.879.714 2.07 1.616h1.47c-.166-1.6-1.54-2.748-3.54-2.875V1H7.591v1.233c-1.939.23-3.27 1.472-3.27 3.156 0 1.454.966 2.483 2.661 2.917l.61.162v4.031c-1.149-.17-1.94-.8-2.131-1.718H4zm3.391-3.836c-1.043-.263-1.6-.825-1.6-1.616 0-.944.704-1.641 1.8-1.828v3.495l-.2-.05zm1.591 1.872c1.287.323 1.852.859 1.852 1.769 0 1.097-.826 1.828-2.2 1.939V8.73l.348.086z"/></symbol><symbol fill="currentColor" class="bi bi-currency-euro" viewBox="0 0 16 16" id="currency-euro" xmlns="http://www.w3.org/2000/svg"><path d="M4 9.42h1.063C5.4 12.323 7.317 14 10.34 14c.622 0 1.167-.068 1.659-.185v-1.3c-.484.119-1.045.17-1.659.17-2.1 0-3.455-1.198-3.775-3.264h4.017v-.928H6.497v-.936c0-.11 0-.219.008-.329h4.078v-.927H6.618c.388-1.898 1.719-2.985 3.723-2.985.614 0 1.175.05 1.659.177V2.194A6.617 6.617 0 0010.341 2c-2.928 0-4.82 1.569-5.244 4.3H4v.928h1.01v1.265H4v.928z"/></symbol><symbol fill="currentColor" class="bi bi-currency-exchange" viewBox="0 0 16 16" id="currency-exchange" xmlns="http://www.w3.org/2000/svg"><path d="M0 5a5.002 5.002 0 004.027 4.905 6.46 6.46 0 01.544-2.073C3.695 7.536 3.132 6.864 3 5.91h-.5v-.426h.466V5.05c0-.046 0-.093.004-.135H2.5v-.427h.511C3.236 3.24 4.213 2.5 5.681 2.5c.316 0 .59.031.819.085v.733a3.46 3.46 0 00-.815-.082c-.919 0-1.538.466-1.734 1.252h1.917v.427h-1.98c-.003.046-.003.097-.003.147v.422h1.983v.427H3.93c.118.602.468 1.03 1.005 1.229a6.5 6.5 0 014.97-3.113A5.002 5.002 0 000 5zm16 5.5a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0zm-7.75 1.322c.069.835.746 1.485 1.964 1.562V14h.54v-.62c1.259-.086 1.996-.74 1.996-1.69 0-.865-.563-1.31-1.57-1.54l-.426-.1V8.374c.54.06.884.347.966.745h.948c-.07-.804-.779-1.433-1.914-1.502V7h-.54v.629c-1.076.103-1.808.732-1.808 1.622 0 .787.544 1.288 1.45 1.493l.358.085v1.78c-.554-.08-.92-.376-1.003-.787H8.25zm1.96-1.895c-.532-.12-.82-.364-.82-.732 0-.41.311-.719.824-.809v1.54h-.005zm.622 1.044c.645.145.943.38.943.796 0 .474-.37.8-1.02.86v-1.674l.077.018z"/></symbol><symbol fill="currentColor" class="bi bi-currency-pound" viewBox="0 0 16 16" id="currency-pound" xmlns="http://www.w3.org/2000/svg"><path d="M4 8.585h1.969c.115.465.186.939.186 1.43 0 1.385-.736 2.496-2.075 2.771V14H12v-1.24H6.492v-.129c.825-.525 1.135-1.446 1.135-2.694 0-.465-.07-.913-.168-1.352h3.29v-.972H7.22c-.186-.723-.372-1.455-.372-2.247 0-1.274 1.047-2.066 2.58-2.066a5.32 5.32 0 012.103.465V2.456A5.629 5.629 0 009.348 2C6.865 2 5.322 3.291 5.322 5.366c0 .775.195 1.515.399 2.247H4v.972z"/></symbol><symbol fill="currentColor" class="bi bi-currency-yen" viewBox="0 0 16 16" id="currency-yen" xmlns="http://www.w3.org/2000/svg"><path d="M8.75 14v-2.629h2.446v-.967H8.75v-1.31h2.445v-.967H9.128L12.5 2h-1.699L8.047 7.327h-.086L5.207 2H3.5l3.363 6.127H4.778v.968H7.25v1.31H4.78v.966h2.47V14h1.502z"/></symbol><symbol fill="currentColor" class="bi bi-cursor" viewBox="0 0 16 16" id="cursor" xmlns="http://www.w3.org/2000/svg"><path d="M14.082 2.182a.5.5 0 01.103.557L8.528 15.467a.5.5 0 01-.917-.007L5.57 10.694.803 8.652a.5.5 0 01-.006-.916l12.728-5.657a.5.5 0 01.556.103zM2.25 8.184l3.897 1.67a.5.5 0 01.262.263l1.67 3.897L12.743 3.52 2.25 8.184z"/></symbol><symbol fill="currentColor" class="bi bi-cursor-fill" viewBox="0 0 16 16" id="cursor-fill" xmlns="http://www.w3.org/2000/svg"><path d="M14.082 2.182a.5.5 0 01.103.557L8.528 15.467a.5.5 0 01-.917-.007L5.57 10.694.803 8.652a.5.5 0 01-.006-.916l12.728-5.657a.5.5 0 01.556.103z"/></symbol><symbol fill="currentColor" class="bi bi-cursor-text" viewBox="0 0 16 16" id="cursor-text" xmlns="http://www.w3.org/2000/svg"><path d="M5 2a.5.5 0 01.5-.5c.862 0 1.573.287 2.06.566.174.099.321.198.44.286.119-.088.266-.187.44-.286A4.165 4.165 0 0110.5 1.5a.5.5 0 010 1c-.638 0-1.177.213-1.564.434a3.49 3.49 0 00-.436.294V7.5H9a.5.5 0 010 1h-.5v4.272c.1.08.248.187.436.294.387.221.926.434 1.564.434a.5.5 0 010 1 4.165 4.165 0 01-2.06-.566A4.561 4.561 0 018 13.65a4.561 4.561 0 01-.44.285 4.165 4.165 0 01-2.06.566.5.5 0 010-1c.638 0 1.177-.213 1.564-.434.188-.107.335-.214.436-.294V8.5H7a.5.5 0 010-1h.5V3.228a3.49 3.49 0 00-.436-.294A3.166 3.166 0 005.5 2.5.5.5 0 015 2zm3.352 1.355zm-.704 9.29z"/></symbol><symbol fill="currentColor" class="bi bi-dash" viewBox="0 0 16 16" id="dash" xmlns="http://www.w3.org/2000/svg"><path d="M4 8a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7A.5.5 0 014 8z"/></symbol><symbol fill="currentColor" class="bi bi-dash-circle" viewBox="0 0 16 16" id="dash-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4 8a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7A.5.5 0 014 8z"/></symbol><symbol fill="currentColor" class="bi bi-dash-circle-dotted" viewBox="0 0 16 16" id="dash-circle-dotted" xmlns="http://www.w3.org/2000/svg"><path d="M8 0c-.176 0-.35.006-.523.017l.064.998a7.117 7.117 0 01.918 0l.064-.998A8.113 8.113 0 008 0zM6.44.152c-.346.069-.684.16-1.012.27l.321.948c.287-.098.582-.177.884-.237L6.44.153zm4.132.271a7.946 7.946 0 00-1.011-.27l-.194.98c.302.06.597.14.884.237l.321-.947zm1.873.925a8 8 0 00-.906-.524l-.443.896c.275.136.54.29.793.459l.556-.831zM4.46.824c-.314.155-.616.33-.905.524l.556.83a7.07 7.07 0 01.793-.458L4.46.824zM2.725 1.985c-.262.23-.51.478-.74.74l.752.66c.202-.23.418-.446.648-.648l-.66-.752zm11.29.74a8.058 8.058 0 00-.74-.74l-.66.752c.23.202.447.418.648.648l.752-.66zm1.161 1.735a7.98 7.98 0 00-.524-.905l-.83.556c.169.253.322.518.458.793l.896-.443zM1.348 3.555c-.194.289-.37.591-.524.906l.896.443c.136-.275.29-.54.459-.793l-.831-.556zM.423 5.428a7.945 7.945 0 00-.27 1.011l.98.194c.06-.302.14-.597.237-.884l-.947-.321zM15.848 6.44a7.943 7.943 0 00-.27-1.012l-.948.321c.098.287.177.582.237.884l.98-.194zM.017 7.477a8.113 8.113 0 000 1.046l.998-.064a7.117 7.117 0 010-.918l-.998-.064zM16 8a8.1 8.1 0 00-.017-.523l-.998.064a7.11 7.11 0 010 .918l.998.064A8.1 8.1 0 0016 8zM.152 9.56c.069.346.16.684.27 1.012l.948-.321a6.944 6.944 0 01-.237-.884l-.98.194zm15.425 1.012c.112-.328.202-.666.27-1.011l-.98-.194c-.06.302-.14.597-.237.884l.947.321zM.824 11.54a8 8 0 00.524.905l.83-.556a6.999 6.999 0 01-.458-.793l-.896.443zm13.828.905c.194-.289.37-.591.524-.906l-.896-.443c-.136.275-.29.54-.459.793l.831.556zm-12.667.83c.23.262.478.51.74.74l.66-.752a7.047 7.047 0 01-.648-.648l-.752.66zm11.29.74c.262-.23.51-.478.74-.74l-.752-.66c-.201.23-.418.447-.648.648l.66.752zm-1.735 1.161c.314-.155.616-.33.905-.524l-.556-.83a7.07 7.07 0 01-.793.458l.443.896zm-7.985-.524c.289.194.591.37.906.524l.443-.896a6.998 6.998 0 01-.793-.459l-.556.831zm1.873.925c.328.112.666.202 1.011.27l.194-.98a6.953 6.953 0 01-.884-.237l-.321.947zm4.132.271a7.944 7.944 0 001.012-.27l-.321-.948a6.954 6.954 0 01-.884.237l.194.98zm-2.083.135a8.1 8.1 0 001.046 0l-.064-.998a7.11 7.11 0 01-.918 0l-.064.998zM4.5 7.5a.5.5 0 000 1h7a.5.5 0 000-1h-7z"/></symbol><symbol fill="currentColor" class="bi bi-dash-circle-fill" viewBox="0 0 16 16" id="dash-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM4.5 7.5a.5.5 0 000 1h7a.5.5 0 000-1h-7z"/></symbol><symbol fill="currentColor" class="bi bi-dash-lg" viewBox="0 0 16 16" id="dash-lg" xmlns="http://www.w3.org/2000/svg"><path d="M0 8a1 1 0 011-1h14a1 1 0 110 2H1a1 1 0 01-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-dash-square" viewBox="0 0 16 16" id="dash-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M4 8a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7A.5.5 0 014 8z"/></symbol><symbol fill="currentColor" class="bi bi-dash-square-dotted" viewBox="0 0 16 16" id="dash-square-dotted" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 0c-.166 0-.33.016-.487.048l.194.98A1.51 1.51 0 012.5 1h.458V0H2.5zm2.292 0h-.917v1h.917V0zm1.833 0h-.917v1h.917V0zm1.833 0h-.916v1h.916V0zm1.834 0h-.917v1h.917V0zm1.833 0h-.917v1h.917V0zM13.5 0h-.458v1h.458c.1 0 .199.01.293.029l.194-.981A2.51 2.51 0 0013.5 0zm2.079 1.11a2.511 2.511 0 00-.69-.689l-.556.831c.164.11.305.251.415.415l.83-.556zM1.11.421a2.511 2.511 0 00-.689.69l.831.556c.11-.164.251-.305.415-.415L1.11.422zM16 2.5c0-.166-.016-.33-.048-.487l-.98.194c.018.094.028.192.028.293v.458h1V2.5zM.048 2.013A2.51 2.51 0 000 2.5v.458h1V2.5c0-.1.01-.199.029-.293l-.981-.194zM0 3.875v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zM0 5.708v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zM0 7.542v.916h1v-.916H0zm15 .916h1v-.916h-1v.916zM0 9.375v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zm-16 .916v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zm-16 .917v.458c0 .166.016.33.048.487l.98-.194A1.51 1.51 0 011 13.5v-.458H0zm16 .458v-.458h-1v.458c0 .1-.01.199-.029.293l.981.194c.032-.158.048-.32.048-.487zM.421 14.89c.183.272.417.506.69.689l.556-.831a1.51 1.51 0 01-.415-.415l-.83.556zm14.469.689c.272-.183.506-.417.689-.69l-.831-.556c-.11.164-.251.305-.415.415l.556.83zm-12.877.373c.158.032.32.048.487.048h.458v-1H2.5c-.1 0-.199-.01-.293-.029l-.194.981zM13.5 16c.166 0 .33-.016.487-.048l-.194-.98A1.51 1.51 0 0113.5 15h-.458v1h.458zm-9.625 0h.917v-1h-.917v1zm1.833 0h.917v-1h-.917v1zm1.834 0h.916v-1h-.916v1zm1.833 0h.917v-1h-.917v1zm1.833 0h.917v-1h-.917v1zM4.5 7.5a.5.5 0 000 1h7a.5.5 0 000-1h-7z"/></symbol><symbol fill="currentColor" class="bi bi-dash-square-fill" viewBox="0 0 16 16" id="dash-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm2.5 7.5h7a.5.5 0 010 1h-7a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-diagram-2" viewBox="0 0 16 16" id="diagram-2" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 3.5A1.5 1.5 0 017.5 2h1A1.5 1.5 0 0110 3.5v1A1.5 1.5 0 018.5 6v1H11a.5.5 0 01.5.5v1a.5.5 0 01-1 0V8h-5v.5a.5.5 0 01-1 0v-1A.5.5 0 015 7h2.5V6A1.5 1.5 0 016 4.5v-1zM8.5 5a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1zM3 11.5A1.5 1.5 0 014.5 10h1A1.5 1.5 0 017 11.5v1A1.5 1.5 0 015.5 14h-1A1.5 1.5 0 013 12.5v-1zm1.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zm4.5.5a1.5 1.5 0 011.5-1.5h1a1.5 1.5 0 011.5 1.5v1a1.5 1.5 0 01-1.5 1.5h-1A1.5 1.5 0 019 12.5v-1zm1.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-diagram-2-fill" viewBox="0 0 16 16" id="diagram-2-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 3.5A1.5 1.5 0 017.5 2h1A1.5 1.5 0 0110 3.5v1A1.5 1.5 0 018.5 6v1H11a.5.5 0 01.5.5v1a.5.5 0 01-1 0V8h-5v.5a.5.5 0 01-1 0v-1A.5.5 0 015 7h2.5V6A1.5 1.5 0 016 4.5v-1zm-3 8A1.5 1.5 0 014.5 10h1A1.5 1.5 0 017 11.5v1A1.5 1.5 0 015.5 14h-1A1.5 1.5 0 013 12.5v-1zm6 0a1.5 1.5 0 011.5-1.5h1a1.5 1.5 0 011.5 1.5v1a1.5 1.5 0 01-1.5 1.5h-1A1.5 1.5 0 019 12.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-diagram-3" viewBox="0 0 16 16" id="diagram-3" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 3.5A1.5 1.5 0 017.5 2h1A1.5 1.5 0 0110 3.5v1A1.5 1.5 0 018.5 6v1H14a.5.5 0 01.5.5v1a.5.5 0 01-1 0V8h-5v.5a.5.5 0 01-1 0V8h-5v.5a.5.5 0 01-1 0v-1A.5.5 0 012 7h5.5V6A1.5 1.5 0 016 4.5v-1zM8.5 5a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1zM0 11.5A1.5 1.5 0 011.5 10h1A1.5 1.5 0 014 11.5v1A1.5 1.5 0 012.5 14h-1A1.5 1.5 0 010 12.5v-1zm1.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zm4.5.5A1.5 1.5 0 017.5 10h1a1.5 1.5 0 011.5 1.5v1A1.5 1.5 0 018.5 14h-1A1.5 1.5 0 016 12.5v-1zm1.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zm4.5.5a1.5 1.5 0 011.5-1.5h1a1.5 1.5 0 011.5 1.5v1a1.5 1.5 0 01-1.5 1.5h-1a1.5 1.5 0 01-1.5-1.5v-1zm1.5-.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-diagram-3-fill" viewBox="0 0 16 16" id="diagram-3-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 3.5A1.5 1.5 0 017.5 2h1A1.5 1.5 0 0110 3.5v1A1.5 1.5 0 018.5 6v1H14a.5.5 0 01.5.5v1a.5.5 0 01-1 0V8h-5v.5a.5.5 0 01-1 0V8h-5v.5a.5.5 0 01-1 0v-1A.5.5 0 012 7h5.5V6A1.5 1.5 0 016 4.5v-1zm-6 8A1.5 1.5 0 011.5 10h1A1.5 1.5 0 014 11.5v1A1.5 1.5 0 012.5 14h-1A1.5 1.5 0 010 12.5v-1zm6 0A1.5 1.5 0 017.5 10h1a1.5 1.5 0 011.5 1.5v1A1.5 1.5 0 018.5 14h-1A1.5 1.5 0 016 12.5v-1zm6 0a1.5 1.5 0 011.5-1.5h1a1.5 1.5 0 011.5 1.5v1a1.5 1.5 0 01-1.5 1.5h-1a1.5 1.5 0 01-1.5-1.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-diamond" viewBox="0 0 16 16" id="diamond" xmlns="http://www.w3.org/2000/svg"><path d="M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.482 1.482 0 010-2.098L6.95.435zm1.4.7a.495.495 0 00-.7 0L1.134 7.65a.495.495 0 000 .7l6.516 6.516a.495.495 0 00.7 0l6.516-6.516a.495.495 0 000-.7L8.35 1.134z"/></symbol><symbol fill="currentColor" class="bi bi-diamond-fill" viewBox="0 0 16 16" id="diamond-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.482 1.482 0 010-2.098L6.95.435z"/></symbol><symbol fill="currentColor" class="bi bi-diamond-half" viewBox="0 0 16 16" id="diamond-half" xmlns="http://www.w3.org/2000/svg"><path d="M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098L9.05.435zM8 .989c.127 0 .253.049.35.145l6.516 6.516a.495.495 0 010 .7L8.35 14.866a.493.493 0 01-.35.145V.989z"/></symbol><symbol fill="currentColor" class="bi bi-dice-1" viewBox="0 0 16 16" id="dice-1" xmlns="http://www.w3.org/2000/svg"><circle cx="8" cy="8" r="1.5"/><path d="M13 1a2 2 0 012 2v10a2 2 0 01-2 2H3a2 2 0 01-2-2V3a2 2 0 012-2h10zM3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3z"/></symbol><symbol fill="currentColor" class="bi bi-dice-1-fill" viewBox="0 0 16 16" id="dice-1-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3zm5 9.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-dice-2" viewBox="0 0 16 16" id="dice-2" xmlns="http://www.w3.org/2000/svg"><path d="M13 1a2 2 0 012 2v10a2 2 0 01-2 2H3a2 2 0 01-2-2V3a2 2 0 012-2h10zM3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3z"/><path d="M5.5 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm8 8a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-dice-2-fill" viewBox="0 0 16 16" id="dice-2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 3a3 3 0 013-3h10a3 3 0 013 3v10a3 3 0 01-3 3H3a3 3 0 01-3-3V3zm5.5 1a1.5 1.5 0 10-3 0 1.5 1.5 0 003 0zm6.5 9.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/></symbol><symbol fill="currentColor" class="bi bi-dice-3" viewBox="0 0 16 16" id="dice-3" xmlns="http://www.w3.org/2000/svg"><path d="M13 1a2 2 0 012 2v10a2 2 0 01-2 2H3a2 2 0 01-2-2V3a2 2 0 012-2h10zM3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3z"/><path d="M5.5 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm8 8a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm-4-4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-dice-3-fill" viewBox="0 0 16 16" id="dice-3-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3zm2.5 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm8 8a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM8 9.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-dice-4" viewBox="0 0 16 16" id="dice-4" xmlns="http://www.w3.org/2000/svg"><path d="M13 1a2 2 0 012 2v10a2 2 0 01-2 2H3a2 2 0 01-2-2V3a2 2 0 012-2h10zM3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3z"/><path d="M5.5 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm8 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0 8a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm-8 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-dice-4-fill" viewBox="0 0 16 16" id="dice-4-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3zm1 5.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm8 0a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm1.5 6.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM4 13.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-dice-5" viewBox="0 0 16 16" id="dice-5" xmlns="http://www.w3.org/2000/svg"><path d="M13 1a2 2 0 012 2v10a2 2 0 01-2 2H3a2 2 0 01-2-2V3a2 2 0 012-2h10zM3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3z"/><path d="M5.5 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm8 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0 8a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm-8 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm4-4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-dice-5-fill" viewBox="0 0 16 16" id="dice-5-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3zm2.5 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm8 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM12 13.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zM5.5 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM8 9.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-dice-6" viewBox="0 0 16 16" id="dice-6" xmlns="http://www.w3.org/2000/svg"><path d="M13 1a2 2 0 012 2v10a2 2 0 01-2 2H3a2 2 0 01-2-2V3a2 2 0 012-2h10zM3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3z"/><path d="M5.5 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm8 0a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0 8a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0-4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm-8 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0-4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-dice-6-fill" viewBox="0 0 16 16" id="dice-6-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 0a3 3 0 00-3 3v10a3 3 0 003 3h10a3 3 0 003-3V3a3 3 0 00-3-3H3zm1 5.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm8 0a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm1.5 6.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM12 9.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zM5.5 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM4 9.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-disc" viewBox="0 0 16 16" id="disc" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M10 8a2 2 0 11-4 0 2 2 0 014 0zM8 4a4 4 0 00-4 4 .5.5 0 01-1 0 5 5 0 015-5 .5.5 0 010 1zm4.5 3.5a.5.5 0 01.5.5 5 5 0 01-5 5 .5.5 0 010-1 4 4 0 004-4 .5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-disc-fill" viewBox="0 0 16 16" id="disc-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-6 0a2 2 0 10-4 0 2 2 0 004 0zM4 8a4 4 0 014-4 .5.5 0 000-1 5 5 0 00-5 5 .5.5 0 001 0zm9 0a.5.5 0 10-1 0 4 4 0 01-4 4 .5.5 0 000 1 5 5 0 005-5z"/></symbol><symbol fill="currentColor" class="bi bi-discord" viewBox="0 0 16 16" id="discord" xmlns="http://www.w3.org/2000/svg"><path d="M6.552 6.712c-.456 0-.816.4-.816.888s.368.888.816.888c.456 0 .816-.4.816-.888.008-.488-.36-.888-.816-.888zm2.92 0c-.456 0-.816.4-.816.888s.368.888.816.888c.456 0 .816-.4.816-.888s-.36-.888-.816-.888z"/><path d="M13.36 0H2.64C1.736 0 1 .736 1 1.648v10.816c0 .912.736 1.648 1.64 1.648h9.072l-.424-1.48 1.024.952.968.896L15 16V1.648C15 .736 14.264 0 13.36 0zm-3.088 10.448s-.288-.344-.528-.648c1.048-.296 1.448-.952 1.448-.952-.328.216-.64.368-.92.472-.4.168-.784.28-1.16.344a5.604 5.604 0 01-2.072-.008 6.716 6.716 0 01-1.176-.344 4.688 4.688 0 01-.584-.272c-.024-.016-.048-.024-.072-.04-.016-.008-.024-.016-.032-.024-.144-.08-.224-.136-.224-.136s.384.64 1.4.944c-.24.304-.536.664-.536.664-1.768-.056-2.44-1.216-2.44-1.216 0-2.576 1.152-4.664 1.152-4.664 1.152-.864 2.248-.84 2.248-.84l.08.096c-1.44.416-2.104 1.048-2.104 1.048s.176-.096.472-.232c.856-.376 1.536-.48 1.816-.504.048-.008.088-.016.136-.016a6.521 6.521 0 014.024.752s-.632-.6-1.992-1.016l.112-.128s1.096-.024 2.248.84c0 0 1.152 2.088 1.152 4.664 0 0-.68 1.16-2.448 1.216z"/></symbol><symbol fill="currentColor" class="bi bi-display" viewBox="0 0 16 16" id="display" xmlns="http://www.w3.org/2000/svg"><path d="M0 4s0-2 2-2h12s2 0 2 2v6s0 2-2 2h-4c0 .667.083 1.167.25 1.5H11a.5.5 0 010 1H5a.5.5 0 010-1h.75c.167-.333.25-.833.25-1.5H2s-2 0-2-2V4zm1.398-.855a.758.758 0 00-.254.302A1.46 1.46 0 001 4.01V10c0 .325.078.502.145.602.07.105.17.188.302.254a1.464 1.464 0 00.538.143L2.01 11H14c.325 0 .502-.078.602-.145a.758.758 0 00.254-.302 1.464 1.464 0 00.143-.538L15 9.99V4c0-.325-.078-.502-.145-.602a.757.757 0 00-.302-.254A1.46 1.46 0 0013.99 3H2c-.325 0-.502.078-.602.145z"/></symbol><symbol fill="currentColor" class="bi bi-display-fill" viewBox="0 0 16 16" id="display-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 12c0 .667-.083 1.167-.25 1.5H5a.5.5 0 000 1h6a.5.5 0 000-1h-.75c-.167-.333-.25-.833-.25-1.5h4c2 0 2-2 2-2V4c0-2-2-2-2-2H2C0 2 0 4 0 4v6c0 2 2 2 2 2h4z"/></symbol><symbol fill="currentColor" class="bi bi-distribute-horizontal" viewBox="0 0 16 16" id="distribute-horizontal" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M14.5 1a.5.5 0 00-.5.5v13a.5.5 0 001 0v-13a.5.5 0 00-.5-.5zm-13 0a.5.5 0 00-.5.5v13a.5.5 0 001 0v-13a.5.5 0 00-.5-.5z"/><path d="M6 13a1 1 0 001 1h2a1 1 0 001-1V3a1 1 0 00-1-1H7a1 1 0 00-1 1v10z"/></symbol><symbol fill="currentColor" class="bi bi-distribute-vertical" viewBox="0 0 16 16" id="distribute-vertical" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 1.5a.5.5 0 00.5.5h13a.5.5 0 000-1h-13a.5.5 0 00-.5.5zm0 13a.5.5 0 00.5.5h13a.5.5 0 000-1h-13a.5.5 0 00-.5.5z"/><path d="M2 7a1 1 0 011-1h10a1 1 0 011 1v2a1 1 0 01-1 1H3a1 1 0 01-1-1V7z"/></symbol><symbol fill="currentColor" class="bi bi-door-closed" viewBox="0 0 16 16" id="door-closed" xmlns="http://www.w3.org/2000/svg"><path d="M3 2a1 1 0 011-1h8a1 1 0 011 1v13h1.5a.5.5 0 010 1h-13a.5.5 0 010-1H3V2zm1 13h8V2H4v13z"/><path d="M9 9a1 1 0 102 0 1 1 0 00-2 0z"/></symbol><symbol fill="currentColor" class="bi bi-door-closed-fill" viewBox="0 0 16 16" id="door-closed-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 1a1 1 0 011 1v13h1.5a.5.5 0 010 1h-13a.5.5 0 010-1H3V2a1 1 0 011-1h8zm-2 9a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-door-open" viewBox="0 0 16 16" id="door-open" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 10c-.276 0-.5-.448-.5-1s.224-1 .5-1 .5.448.5 1-.224 1-.5 1z"/><path d="M10.828.122A.5.5 0 0111 .5V1h.5A1.5 1.5 0 0113 2.5V15h1.5a.5.5 0 010 1h-13a.5.5 0 010-1H3V1.5a.5.5 0 01.43-.495l7-1a.5.5 0 01.398.117zM11.5 2H11v13h1V2.5a.5.5 0 00-.5-.5zM4 1.934V15h6V1.077l-6 .857z"/></symbol><symbol fill="currentColor" class="bi bi-door-open-fill" viewBox="0 0 16 16" id="door-open-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 15a.5.5 0 000 1h13a.5.5 0 000-1H13V2.5A1.5 1.5 0 0011.5 1H11V.5a.5.5 0 00-.57-.495l-7 1A.5.5 0 003 1.5V15H1.5zM11 2h.5a.5.5 0 01.5.5V15h-1V2zm-2.5 8c-.276 0-.5-.448-.5-1s.224-1 .5-1 .5.448.5 1-.224 1-.5 1z"/></symbol><symbol fill="currentColor" class="bi bi-dot" viewBox="0 0 16 16" id="dot" xmlns="http://www.w3.org/2000/svg"><path d="M8 9.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/></symbol><symbol fill="currentColor" class="bi bi-download" viewBox="0 0 16 16" id="download" xmlns="http://www.w3.org/2000/svg"><path d="M.5 9.9a.5.5 0 01.5.5v2.5a1 1 0 001 1h12a1 1 0 001-1v-2.5a.5.5 0 011 0v2.5a2 2 0 01-2 2H2a2 2 0 01-2-2v-2.5a.5.5 0 01.5-.5z"/><path d="M7.646 11.854a.5.5 0 00.708 0l3-3a.5.5 0 00-.708-.708L8.5 10.293V1.5a.5.5 0 00-1 0v8.793L5.354 8.146a.5.5 0 10-.708.708l3 3z"/></symbol><symbol fill="currentColor" class="bi bi-droplet" viewBox="0 0 16 16" id="droplet" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.21.8C7.69.295 8 0 8 0c.109.363.234.708.371 1.038.812 1.946 2.073 3.35 3.197 4.6C12.878 7.096 14 8.345 14 10a6 6 0 01-12 0C2 6.668 5.58 2.517 7.21.8zm.413 1.021A31.25 31.25 0 005.794 3.99c-.726.95-1.436 2.008-1.96 3.07C3.304 8.133 3 9.138 3 10a5 5 0 0010 0c0-1.201-.796-2.157-2.181-3.7l-.03-.032C9.75 5.11 8.5 3.72 7.623 1.82z"/><path fill-rule="evenodd" d="M4.553 7.776c.82-1.641 1.717-2.753 2.093-3.13l.708.708c-.29.29-1.128 1.311-1.907 2.87l-.894-.448z"/></symbol><symbol fill="currentColor" class="bi bi-droplet-fill" viewBox="0 0 16 16" id="droplet-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 16a6 6 0 006-6c0-1.655-1.122-2.904-2.432-4.362C10.254 4.176 8.75 2.503 8 0c0 0-6 5.686-6 10a6 6 0 006 6zM6.646 4.646c-.376.377-1.272 1.489-2.093 3.13l.894.448c.78-1.559 1.616-2.58 1.907-2.87l-.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-droplet-half" viewBox="0 0 16 16" id="droplet-half" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.21.8C7.69.295 8 0 8 0c.109.363.234.708.371 1.038.812 1.946 2.073 3.35 3.197 4.6C12.878 7.096 14 8.345 14 10a6 6 0 01-12 0C2 6.668 5.58 2.517 7.21.8zm.413 1.021A31.25 31.25 0 005.794 3.99c-.726.95-1.436 2.008-1.96 3.07C3.304 8.133 3 9.138 3 10c0 0 2.5 1.5 5 .5s5-.5 5-.5c0-1.201-.796-2.157-2.181-3.7l-.03-.032C9.75 5.11 8.5 3.72 7.623 1.82z"/><path fill-rule="evenodd" d="M4.553 7.776c.82-1.641 1.717-2.753 2.093-3.13l.708.708c-.29.29-1.128 1.311-1.907 2.87l-.894-.448z"/></symbol><symbol fill="currentColor" class="bi bi-earbuds" viewBox="0 0 16 16" id="earbuds" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.825 4.138c.596 2.141-.36 3.593-2.389 4.117a4.432 4.432 0 01-2.018.054c-.048-.01.9 2.778 1.522 4.61l.41 1.205a.52.52 0 01-.346.659l-.593.19a.548.548 0 01-.69-.34L.184 6.99c-.696-2.137.662-4.309 2.564-4.8 2.029-.523 3.402 0 4.076 1.948zm-.868 2.221c.43-.112.561-.993.292-1.969-.269-.975-.836-1.675-1.266-1.563-.43.112-.561.994-.292 1.969.269.975.836 1.675 1.266 1.563zm3.218-2.221c-.596 2.141.36 3.593 2.389 4.117a4.434 4.434 0 002.018.054c.048-.01-.9 2.778-1.522 4.61l-.41 1.205a.52.52 0 00.346.659l.593.19c.289.092.6-.06.69-.34l2.536-7.643c.696-2.137-.662-4.309-2.564-4.8-2.029-.523-3.402 0-4.076 1.948zm.868 2.221c-.43-.112-.561-.993-.292-1.969.269-.975.836-1.675 1.266-1.563.43.112.561.994.292 1.969-.269.975-.836 1.675-1.266 1.563z"/></symbol><symbol fill="currentColor" class="bi bi-easel" viewBox="0 0 16 16" id="easel" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a.5.5 0 01.473.337L9.046 2H14a1 1 0 011 1v7a1 1 0 01-1 1h-1.85l1.323 3.837a.5.5 0 11-.946.326L11.092 11H8.5v3a.5.5 0 01-1 0v-3H4.908l-1.435 4.163a.5.5 0 11-.946-.326L3.85 11H2a1 1 0 01-1-1V3a1 1 0 011-1h4.954L7.527.337A.5.5 0 018 0zM2 3v7h12V3H2z"/></symbol><symbol fill="currentColor" class="bi bi-easel-fill" viewBox="0 0 16 16" id="easel-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.473.337a.5.5 0 00-.946 0L6.954 2H2a1 1 0 00-1 1v7a1 1 0 001 1h1.85l-1.323 3.837a.5.5 0 10.946.326L4.908 11H7.5v2.5a.5.5 0 001 0V11h2.592l1.435 4.163a.5.5 0 00.946-.326L12.15 11H14a1 1 0 001-1V3a1 1 0 00-1-1H9.046L8.473.337z"/></symbol><symbol fill="currentColor" class="bi bi-egg" viewBox="0 0 16 16" id="egg" xmlns="http://www.w3.org/2000/svg"><path d="M8 15a5 5 0 01-5-5c0-1.956.69-4.286 1.742-6.12.524-.913 1.112-1.658 1.704-2.164C7.044 1.206 7.572 1 8 1c.428 0 .956.206 1.554.716.592.506 1.18 1.251 1.704 2.164C12.31 5.714 13 8.044 13 10a5 5 0 01-5 5zm0 1a6 6 0 006-6c0-4.314-3-10-6-10S2 5.686 2 10a6 6 0 006 6z"/></symbol><symbol fill="currentColor" class="bi bi-egg-fill" viewBox="0 0 16 16" id="egg-fill" xmlns="http://www.w3.org/2000/svg"><path d="M14 10a6 6 0 01-12 0C2 5.686 5 0 8 0s6 5.686 6 10z"/></symbol><symbol fill="currentColor" class="bi bi-egg-fried" viewBox="0 0 16 16" id="egg-fried" xmlns="http://www.w3.org/2000/svg"><path d="M8 11a3 3 0 100-6 3 3 0 000 6z"/><path d="M13.997 5.17a5 5 0 00-8.101-4.09A5 5 0 001.28 9.342a5 5 0 008.336 5.109 3.5 3.5 0 005.201-4.065 3.001 3.001 0 00-.822-5.216zm-1-.034a1 1 0 00.668.977 2.001 2.001 0 01.547 3.478 1 1 0 00-.341 1.113 2.5 2.5 0 01-3.715 2.905 1 1 0 00-1.262.152 4 4 0 01-6.67-4.087 1 1 0 00-.2-1 4 4 0 013.693-6.61 1 1 0 00.8-.2 4 4 0 016.48 3.273z"/></symbol><symbol fill="currentColor" class="bi bi-eject" viewBox="0 0 16 16" id="eject" xmlns="http://www.w3.org/2000/svg"><path d="M7.27 1.047a1 1 0 011.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H1.656C.78 9.5.326 8.455.926 7.816L7.27 1.047zM14.346 8.5L8 1.731 1.654 8.5h12.692zM.5 11.5a1 1 0 011-1h13a1 1 0 011 1v1a1 1 0 01-1 1h-13a1 1 0 01-1-1v-1zm14 0h-13v1h13v-1z"/></symbol><symbol fill="currentColor" class="bi bi-eject-fill" viewBox="0 0 16 16" id="eject-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.27 1.047a1 1 0 011.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H1.656C.78 9.5.326 8.455.926 7.816L7.27 1.047zM.5 11.5a1 1 0 011-1h13a1 1 0 011 1v1a1 1 0 01-1 1h-13a1 1 0 01-1-1v-1z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-angry" viewBox="0 0 16 16" id="emoji-angry" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4.285 12.433a.5.5 0 00.683-.183A3.498 3.498 0 018 10.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 00.866-.5A4.498 4.498 0 008 9.5a4.5 4.5 0 00-3.898 2.25.5.5 0 00.183.683zm6.991-8.38a.5.5 0 11.448.894l-1.009.504c.176.27.285.64.285 1.049 0 .828-.448 1.5-1 1.5s-1-.672-1-1.5c0-.247.04-.48.11-.686a.502.502 0 01.166-.761l2-1zm-6.552 0a.5.5 0 00-.448.894l1.009.504A1.94 1.94 0 005 6.5C5 7.328 5.448 8 6 8s1-.672 1-1.5c0-.247-.04-.48-.11-.686a.502.502 0 00-.166-.761l-2-1z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-angry-fill" viewBox="0 0 16 16" id="emoji-angry-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM4.053 4.276a.5.5 0 01.67-.223l2 1a.5.5 0 01.166.76c.071.206.111.44.111.687C7 7.328 6.552 8 6 8s-1-.672-1-1.5c0-.408.109-.778.285-1.049l-1.009-.504a.5.5 0 01-.223-.67zm.232 8.157a.5.5 0 01-.183-.683A4.498 4.498 0 018 9.5a4.5 4.5 0 013.898 2.25.5.5 0 11-.866.5A3.498 3.498 0 008 10.5a3.498 3.498 0 00-3.032 1.75.5.5 0 01-.683.183zM10 8c-.552 0-1-.672-1-1.5 0-.247.04-.48.11-.686a.502.502 0 01.166-.761l2-1a.5.5 0 11.448.894l-1.009.504c.176.27.285.64.285 1.049 0 .828-.448 1.5-1 1.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-dizzy" viewBox="0 0 16 16" id="emoji-dizzy" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M9.146 5.146a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 01.708.708l-.647.646.647.646a.5.5 0 01-.708.708l-.646-.647-.646.647a.5.5 0 11-.708-.708l.647-.646-.647-.646a.5.5 0 010-.708zm-5 0a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 11.708.708l-.647.646.647.646a.5.5 0 11-.708.708L5.5 7.207l-.646.647a.5.5 0 11-.708-.708l.647-.646-.647-.646a.5.5 0 010-.708zM10 11a2 2 0 11-4 0 2 2 0 014 0z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-dizzy-fill" viewBox="0 0 16 16" id="emoji-dizzy-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM4.146 5.146a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 11.708.708l-.647.646.647.646a.5.5 0 11-.708.708L5.5 7.207l-.646.647a.5.5 0 11-.708-.708l.647-.646-.647-.646a.5.5 0 010-.708zm5 0a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 01.708.708l-.647.646.647.646a.5.5 0 01-.708.708l-.646-.647-.646.647a.5.5 0 11-.708-.708l.647-.646-.647-.646a.5.5 0 010-.708zM8 13a2 2 0 110-4 2 2 0 010 4z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-expressionless" viewBox="0 0 16 16" id="emoji-expressionless" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4 10.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm5 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-expressionless-fill" viewBox="0 0 16 16" id="emoji-expressionless-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM4.5 6h2a.5.5 0 010 1h-2a.5.5 0 010-1zm5 0h2a.5.5 0 010 1h-2a.5.5 0 010-1zm-5 4h7a.5.5 0 010 1h-7a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-frown" viewBox="0 0 16 16" id="emoji-frown" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4.285 12.433a.5.5 0 00.683-.183A3.498 3.498 0 018 10.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 00.866-.5A4.498 4.498 0 008 9.5a4.5 4.5 0 00-3.898 2.25.5.5 0 00.183.683zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm4 0c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-frown-fill" viewBox="0 0 16 16" id="emoji-frown-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm-2.715 5.933a.5.5 0 01-.183-.683A4.498 4.498 0 018 9.5a4.5 4.5 0 013.898 2.25.5.5 0 01-.866.5A3.498 3.498 0 008 10.5a3.498 3.498 0 00-3.032 1.75.5.5 0 01-.683.183zM10 8c-.552 0-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5S10.552 8 10 8z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-heart-eyes" viewBox="0 0 16 16" id="emoji-heart-eyes" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M11.315 10.014a.5.5 0 01.548.736A4.498 4.498 0 017.965 13a4.498 4.498 0 01-3.898-2.25.5.5 0 01.548-.736h.005l.017.005.067.015.252.055c.215.046.515.108.857.169.693.124 1.522.242 2.152.242.63 0 1.46-.118 2.152-.242a26.58 26.58 0 001.109-.224l.067-.015.017-.004.005-.002zM4.756 4.566c.763-1.424 4.02-.12.952 3.434-4.496-1.596-2.35-4.298-.952-3.434zm6.488 0c1.398-.864 3.544 1.838-.952 3.434-3.067-3.554.19-4.858.952-3.434z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-heart-eyes-fill" viewBox="0 0 16 16" id="emoji-heart-eyes-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a8 8 0 100 16A8 8 0 008 0zM4.756 4.566c.763-1.424 4.02-.12.952 3.434-4.496-1.596-2.35-4.298-.952-3.434zm6.559 5.448a.5.5 0 01.548.736A4.498 4.498 0 017.965 13a4.498 4.498 0 01-3.898-2.25.5.5 0 01.548-.736h.005l.017.005.067.015.252.055c.215.046.515.108.857.169.693.124 1.522.242 2.152.242.63 0 1.46-.118 2.152-.242a26.58 26.58 0 001.109-.224l.067-.015.017-.004.005-.002zm-.07-5.448c1.397-.864 3.543 1.838-.953 3.434-3.067-3.554.19-4.858.952-3.434z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-laughing" viewBox="0 0 16 16" id="emoji-laughing" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M12.331 9.5a1 1 0 010 1A4.998 4.998 0 018 13a4.998 4.998 0 01-4.33-2.5A1 1 0 014.535 9h6.93a1 1 0 01.866.5zM7 6.5c0 .828-.448 0-1 0s-1 .828-1 0S5.448 5 6 5s1 .672 1 1.5zm4 0c0 .828-.448 0-1 0s-1 .828-1 0S9.448 5 10 5s1 .672 1 1.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-laughing-fill" viewBox="0 0 16 16" id="emoji-laughing-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM7 6.5c0 .501-.164.396-.415.235C6.42 6.629 6.218 6.5 6 6.5c-.218 0-.42.13-.585.235C5.164 6.896 5 7 5 6.5 5 5.672 5.448 5 6 5s1 .672 1 1.5zm5.331 3a1 1 0 010 1A4.998 4.998 0 018 13a4.998 4.998 0 01-4.33-2.5A1 1 0 014.535 9h6.93a1 1 0 01.866.5zm-1.746-2.765C10.42 6.629 10.218 6.5 10 6.5c-.218 0-.42.13-.585.235C9.164 6.896 9 7 9 6.5c0-.828.448-1.5 1-1.5s1 .672 1 1.5c0 .501-.164.396-.415.235z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-neutral" viewBox="0 0 16 16" id="emoji-neutral" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4 10.5a.5.5 0 00.5.5h7a.5.5 0 000-1h-7a.5.5 0 00-.5.5zm3-4C7 5.672 6.552 5 6 5s-1 .672-1 1.5S5.448 8 6 8s1-.672 1-1.5zm4 0c0-.828-.448-1.5-1-1.5s-1 .672-1 1.5S9.448 8 10 8s1-.672 1-1.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-neutral-fill" viewBox="0 0 16 16" id="emoji-neutral-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm-3 4a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zM10 8c-.552 0-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5S10.552 8 10 8z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-smile" viewBox="0 0 16 16" id="emoji-smile" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4.285 9.567a.5.5 0 01.683.183A3.498 3.498 0 008 11.5a3.498 3.498 0 003.032-1.75.5.5 0 11.866.5A4.498 4.498 0 018 12.5a4.498 4.498 0 01-3.898-2.25.5.5 0 01.183-.683zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm4 0c0 .828-.448 1.5-1 1.5s-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-smile-fill" viewBox="0 0 16 16" id="emoji-smile-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zM4.285 9.567a.5.5 0 01.683.183A3.498 3.498 0 008 11.5a3.498 3.498 0 003.032-1.75.5.5 0 11.866.5A4.498 4.498 0 018 12.5a4.498 4.498 0 01-3.898-2.25.5.5 0 01.183-.683zM10 8c-.552 0-1-.672-1-1.5S9.448 5 10 5s1 .672 1 1.5S10.552 8 10 8z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-smile-upside-down" viewBox="0 0 16 16" id="emoji-smile-upside-down" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a7 7 0 100 14A7 7 0 008 1zm0-1a8 8 0 110 16A8 8 0 018 0z"/><path d="M4.285 6.433a.5.5 0 00.683-.183A3.498 3.498 0 018 4.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 00.866-.5A4.498 4.498 0 008 3.5a4.5 4.5 0 00-3.898 2.25.5.5 0 00.183.683zM7 9.5C7 8.672 6.552 8 6 8s-1 .672-1 1.5.448 1.5 1 1.5 1-.672 1-1.5zm4 0c0-.828-.448-1.5-1-1.5s-1 .672-1 1.5.448 1.5 1 1.5 1-.672 1-1.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-smile-upside-down-fill" viewBox="0 0 16 16" id="emoji-smile-upside-down-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a8 8 0 110 16A8 8 0 018 0zM7 9.5C7 8.672 6.552 8 6 8s-1 .672-1 1.5.448 1.5 1 1.5 1-.672 1-1.5zM4.285 6.433a.5.5 0 00.683-.183A3.498 3.498 0 018 4.5c1.295 0 2.426.703 3.032 1.75a.5.5 0 00.866-.5A4.498 4.498 0 008 3.5a4.5 4.5 0 00-3.898 2.25.5.5 0 00.183.683zM10 8c-.552 0-1 .672-1 1.5s.448 1.5 1 1.5 1-.672 1-1.5S10.552 8 10 8z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-sunglasses" viewBox="0 0 16 16" id="emoji-sunglasses" xmlns="http://www.w3.org/2000/svg"><path d="M4.968 9.75a.5.5 0 10-.866.5A4.498 4.498 0 008 12.5a4.5 4.5 0 003.898-2.25.5.5 0 10-.866-.5A3.498 3.498 0 018 11.5a3.498 3.498 0 01-3.032-1.75zM7 5.116V5a1 1 0 00-1-1H3.28a1 1 0 00-.97 1.243l.311 1.242A2 2 0 004.561 8H5a2 2 0 001.994-1.839A2.99 2.99 0 018 6c.393 0 .74.064 1.006.161A2 2 0 0011 8h.438a2 2 0 001.94-1.515l.311-1.242A1 1 0 0012.72 4H10a1 1 0 00-1 1v.116A4.22 4.22 0 008 5c-.35 0-.69.04-1 .116z"/><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-1 0A7 7 0 101 8a7 7 0 0014 0z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-sunglasses-fill" viewBox="0 0 16 16" id="emoji-sunglasses-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM2.31 5.243A1 1 0 013.28 4H6a1 1 0 011 1v.116A4.22 4.22 0 018 5c.35 0 .69.04 1 .116V5a1 1 0 011-1h2.72a1 1 0 01.97 1.243l-.311 1.242A2 2 0 0111.439 8H11a2 2 0 01-1.994-1.839A2.99 2.99 0 008 6c-.393 0-.74.064-1.006.161A2 2 0 015 8h-.438a2 2 0 01-1.94-1.515L2.31 5.243zM4.969 9.75A3.498 3.498 0 008 11.5a3.498 3.498 0 003.032-1.75.5.5 0 11.866.5A4.498 4.498 0 018 12.5a4.498 4.498 0 01-3.898-2.25.5.5 0 01.866-.5z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-wink" viewBox="0 0 16 16" id="emoji-wink" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4.285 9.567a.5.5 0 01.683.183A3.498 3.498 0 008 11.5a3.498 3.498 0 003.032-1.75.5.5 0 11.866.5A4.498 4.498 0 018 12.5a4.498 4.498 0 01-3.898-2.25.5.5 0 01.183-.683zM7 6.5C7 7.328 6.552 8 6 8s-1-.672-1-1.5S5.448 5 6 5s1 .672 1 1.5zm1.757-.437a.5.5 0 01.68.194.934.934 0 00.813.493c.339 0 .645-.19.813-.493a.5.5 0 11.874.486A1.934 1.934 0 0110.25 7.75c-.73 0-1.356-.412-1.687-1.007a.5.5 0 01.194-.68z"/></symbol><symbol fill="currentColor" class="bi bi-emoji-wink-fill" viewBox="0 0 16 16" id="emoji-wink-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a8 8 0 110 16A8 8 0 018 0zM7 6.5C7 5.672 6.552 5 6 5s-1 .672-1 1.5S5.448 8 6 8s1-.672 1-1.5zM4.285 9.567a.5.5 0 00-.183.683A4.498 4.498 0 008 12.5a4.5 4.5 0 003.898-2.25.5.5 0 10-.866-.5A3.498 3.498 0 018 11.5a3.498 3.498 0 01-3.032-1.75.5.5 0 00-.683-.183zm5.152-3.31a.5.5 0 00-.874.486c.33.595.958 1.007 1.687 1.007.73 0 1.356-.412 1.687-1.007a.5.5 0 00-.874-.486.934.934 0 01-.813.493.934.934 0 01-.813-.493z"/></symbol><symbol fill="currentColor" class="bi bi-envelope" viewBox="0 0 16 16" id="envelope" xmlns="http://www.w3.org/2000/svg"><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm2-1a1 1 0 00-1 1v.217l7 4.2 7-4.2V4a1 1 0 00-1-1H2zm13 2.383l-4.758 2.855L15 11.114v-5.73zm-.034 6.878L9.271 8.82 8 9.583 6.728 8.82l-5.694 3.44A1 1 0 002 13h12a1 1 0 00.966-.739zM1 11.114l4.758-2.876L1 5.383v5.73z"/></symbol><symbol fill="currentColor" class="bi bi-envelope-fill" viewBox="0 0 16 16" id="envelope-fill" xmlns="http://www.w3.org/2000/svg"><path d="M.05 3.555A2 2 0 012 2h12a2 2 0 011.95 1.555L8 8.414.05 3.555zM0 4.697v7.104l5.803-3.558L0 4.697zM6.761 8.83l-6.57 4.027A2 2 0 002 14h12a2 2 0 001.808-1.144l-6.57-4.027L8 9.586l-1.239-.757zm3.436-.586L16 11.801V4.697l-5.803 3.546z"/></symbol><symbol fill="currentColor" class="bi bi-envelope-open" viewBox="0 0 16 16" id="envelope-open" xmlns="http://www.w3.org/2000/svg"><path d="M8.47 1.318a1 1 0 00-.94 0l-6 3.2A1 1 0 001 5.4v.818l5.724 3.465L8 8.917l1.276.766L15 6.218V5.4a1 1 0 00-.53-.882l-6-3.2zM15 7.388l-4.754 2.877L15 13.117v-5.73zm-.035 6.874L8 10.083l-6.965 4.18A1 1 0 002 15h12a1 1 0 00.965-.738zM1 13.117l4.754-2.852L1 7.387v5.73zM7.059.435a2 2 0 011.882 0l6 3.2A2 2 0 0116 5.4V14a2 2 0 01-2 2H2a2 2 0 01-2-2V5.4a2 2 0 011.059-1.765l6-3.2z"/></symbol><symbol fill="currentColor" class="bi bi-envelope-open-fill" viewBox="0 0 16 16" id="envelope-open-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.941.435a2 2 0 00-1.882 0l-6 3.2A2 2 0 000 5.4v.313l6.709 3.933L8 8.928l1.291.717L16 5.715V5.4a2 2 0 00-1.059-1.765l-6-3.2zM16 6.873l-5.693 3.337L16 13.372v-6.5zm-.059 7.611L8 10.072.059 14.484A2 2 0 002 16h12a2 2 0 001.941-1.516zM0 13.373l5.693-3.163L0 6.873v6.5z"/></symbol><symbol fill="currentColor" class="bi bi-eraser" viewBox="0 0 16 16" id="eraser" xmlns="http://www.w3.org/2000/svg"><path d="M8.086 2.207a2 2 0 012.828 0l3.879 3.879a2 2 0 010 2.828l-5.5 5.5A2 2 0 017.879 15H5.12a2 2 0 01-1.414-.586l-2.5-2.5a2 2 0 010-2.828l6.879-6.879zm2.121.707a1 1 0 00-1.414 0L4.16 7.547l5.293 5.293 4.633-4.633a1 1 0 000-1.414l-3.879-3.879zM8.746 13.547L3.453 8.254 1.914 9.793a1 1 0 000 1.414l2.5 2.5a1 1 0 00.707.293H7.88a1 1 0 00.707-.293l.16-.16z"/></symbol><symbol fill="currentColor" class="bi bi-eraser-fill" viewBox="0 0 16 16" id="eraser-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.086 2.207a2 2 0 012.828 0l3.879 3.879a2 2 0 010 2.828l-5.5 5.5A2 2 0 017.879 15H5.12a2 2 0 01-1.414-.586l-2.5-2.5a2 2 0 010-2.828l6.879-6.879zm.66 11.34L3.453 8.254 1.914 9.793a1 1 0 000 1.414l2.5 2.5a1 1 0 00.707.293H7.88a1 1 0 00.707-.293l.16-.16z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation" viewBox="0 0 16 16" id="exclamation" xmlns="http://www.w3.org/2000/svg"><path d="M7.002 11a1 1 0 112 0 1 1 0 01-2 0zM7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.553.553 0 01-1.1 0L7.1 4.995z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-circle" viewBox="0 0 16 16" id="exclamation-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M7.002 11a1 1 0 112 0 1 1 0 01-2 0zM7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-circle-fill" viewBox="0 0 16 16" id="exclamation-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM8 4a.905.905 0 00-.9.995l.35 3.507a.552.552 0 001.1 0l.35-3.507A.905.905 0 008 4zm.002 6a1 1 0 100 2 1 1 0 000-2z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-diamond" viewBox="0 0 16 16" id="exclamation-diamond" xmlns="http://www.w3.org/2000/svg"><path d="M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.482 1.482 0 010-2.098L6.95.435zm1.4.7a.495.495 0 00-.7 0L1.134 7.65a.495.495 0 000 .7l6.516 6.516a.495.495 0 00.7 0l6.516-6.516a.495.495 0 000-.7L8.35 1.134z"/><path d="M7.002 11a1 1 0 112 0 1 1 0 01-2 0zM7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-diamond-fill" viewBox="0 0 16 16" id="exclamation-diamond-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098L9.05.435zM8 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995A.905.905 0 018 4zm.002 6a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-lg" viewBox="0 0 16 16" id="exclamation-lg" xmlns="http://www.w3.org/2000/svg"><path d="M6.002 14a2 2 0 114 0 2 2 0 01-4 0zm.195-12.01a1.81 1.81 0 113.602 0l-.701 7.015a1.105 1.105 0 01-2.2 0l-.7-7.015z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-octagon" viewBox="0 0 16 16" id="exclamation-octagon" xmlns="http://www.w3.org/2000/svg"><path d="M4.54.146A.5.5 0 014.893 0h6.214a.5.5 0 01.353.146l4.394 4.394a.5.5 0 01.146.353v6.214a.5.5 0 01-.146.353l-4.394 4.394a.5.5 0 01-.353.146H4.893a.5.5 0 01-.353-.146L.146 11.46A.5.5 0 010 11.107V4.893a.5.5 0 01.146-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z"/><path d="M7.002 11a1 1 0 112 0 1 1 0 01-2 0zM7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-octagon-fill" viewBox="0 0 16 16" id="exclamation-octagon-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.46.146A.5.5 0 0011.107 0H4.893a.5.5 0 00-.353.146L.146 4.54A.5.5 0 000 4.893v6.214a.5.5 0 00.146.353l4.394 4.394a.5.5 0 00.353.146h6.214a.5.5 0 00.353-.146l4.394-4.394a.5.5 0 00.146-.353V4.893a.5.5 0 00-.146-.353L11.46.146zM8 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995A.905.905 0 018 4zm.002 6a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-square" viewBox="0 0 16 16" id="exclamation-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M7.002 11a1 1 0 112 0 1 1 0 01-2 0zM7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-square-fill" viewBox="0 0 16 16" id="exclamation-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm6 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995A.905.905 0 018 4zm.002 6a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-triangle" viewBox="0 0 16 16" id="exclamation-triangle" xmlns="http://www.w3.org/2000/svg"><path d="M7.938 2.016A.13.13 0 018.002 2a.13.13 0 01.063.016.146.146 0 01.054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 01-.054.06.116.116 0 01-.066.017H1.146a.115.115 0 01-.066-.017.163.163 0 01-.054-.06.176.176 0 01.002-.183L7.884 2.073a.147.147 0 01.054-.057zm1.044-.45a1.13 1.13 0 00-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 112 0 1 1 0 01-2 0zM7.1 5.995a.905.905 0 111.8 0l-.35 3.507a.552.552 0 01-1.1 0L7.1 5.995z"/></symbol><symbol fill="currentColor" class="bi bi-exclamation-triangle-fill" viewBox="0 0 16 16" id="exclamation-triangle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.982 1.566a1.13 1.13 0 00-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.566zM8 5c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 01-1.1 0L7.1 5.995A.905.905 0 018 5zm.002 6a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-exclude" viewBox="0 0 16 16" id="exclude" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h8a2 2 0 012 2v2h2a2 2 0 012 2v8a2 2 0 01-2 2H6a2 2 0 01-2-2v-2H2a2 2 0 01-2-2V2zm12 2H5a1 1 0 00-1 1v7h7a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-eye" viewBox="0 0 16 16" id="eye" xmlns="http://www.w3.org/2000/svg"><path d="M16 8s-3-5.5-8-5.5S0 8 0 8s3 5.5 8 5.5S16 8 16 8zM1.173 8a13.133 13.133 0 011.66-2.043C4.12 4.668 5.88 3.5 8 3.5c2.12 0 3.879 1.168 5.168 2.457A13.133 13.133 0 0114.828 8c-.058.087-.122.183-.195.288-.335.48-.83 1.12-1.465 1.755C11.879 11.332 10.119 12.5 8 12.5c-2.12 0-3.879-1.168-5.168-2.457A13.134 13.134 0 011.172 8z"/><path d="M8 5.5a2.5 2.5 0 100 5 2.5 2.5 0 000-5zM4.5 8a3.5 3.5 0 117 0 3.5 3.5 0 01-7 0z"/></symbol><symbol fill="currentColor" class="bi bi-eye-fill" viewBox="0 0 16 16" id="eye-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.5 8a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0z"/><path d="M0 8s3-5.5 8-5.5S16 8 16 8s-3 5.5-8 5.5S0 8 0 8zm8 3.5a3.5 3.5 0 100-7 3.5 3.5 0 000 7z"/></symbol><symbol fill="currentColor" class="bi bi-eye-slash" viewBox="0 0 16 16" id="eye-slash" xmlns="http://www.w3.org/2000/svg"><path d="M13.359 11.238C15.06 9.72 16 8 16 8s-3-5.5-8-5.5a7.028 7.028 0 00-2.79.588l.77.771A5.944 5.944 0 018 3.5c2.12 0 3.879 1.168 5.168 2.457A13.134 13.134 0 0114.828 8c-.058.087-.122.183-.195.288-.335.48-.83 1.12-1.465 1.755-.165.165-.337.328-.517.486l.708.709z"/><path d="M11.297 9.176a3.5 3.5 0 00-4.474-4.474l.823.823a2.5 2.5 0 012.829 2.829l.822.822zm-2.943 1.299l.822.822a3.5 3.5 0 01-4.474-4.474l.823.823a2.5 2.5 0 002.829 2.829z"/><path d="M3.35 5.47c-.18.16-.353.322-.518.487A13.134 13.134 0 001.172 8l.195.288c.335.48.83 1.12 1.465 1.755C4.121 11.332 5.881 12.5 8 12.5c.716 0 1.39-.133 2.02-.36l.77.772A7.029 7.029 0 018 13.5C3 13.5 0 8 0 8s.939-1.721 2.641-3.238l.708.709zm10.296 8.884l-12-12 .708-.708 12 12-.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-eye-slash-fill" viewBox="0 0 16 16" id="eye-slash-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.79 12.912l-1.614-1.615a3.5 3.5 0 01-4.474-4.474l-2.06-2.06C.938 6.278 0 8 0 8s3 5.5 8 5.5a7.029 7.029 0 002.79-.588zM5.21 3.088A7.028 7.028 0 018 2.5c5 0 8 5.5 8 5.5s-.939 1.721-2.641 3.238l-2.062-2.062a3.5 3.5 0 00-4.474-4.474L5.21 3.089z"/><path d="M5.525 7.646a2.5 2.5 0 002.829 2.829l-2.83-2.829zm4.95.708l-2.829-2.83a2.5 2.5 0 012.829 2.829zm3.171 6l-12-12 .708-.708 12 12-.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-eyedropper" viewBox="0 0 16 16" id="eyedropper" xmlns="http://www.w3.org/2000/svg"><path d="M13.354.646a1.207 1.207 0 00-1.708 0L8.5 3.793l-.646-.647a.5.5 0 10-.708.708L8.293 5l-7.147 7.146A.5.5 0 001 12.5v1.793l-.854.853a.5.5 0 10.708.707L1.707 15H3.5a.5.5 0 00.354-.146L11 7.707l1.146 1.147a.5.5 0 00.708-.708l-.647-.646 3.147-3.146a1.207 1.207 0 000-1.708l-2-2zM2 12.707l7-7L10.293 7l-7 7H2v-1.293z"/></symbol><symbol fill="currentColor" class="bi bi-eyeglasses" viewBox="0 0 16 16" id="eyeglasses" xmlns="http://www.w3.org/2000/svg"><path d="M4 6a2 2 0 110 4 2 2 0 010-4zm2.625.547a3 3 0 00-5.584.953H.5a.5.5 0 000 1h.541A3 3 0 007 8a1 1 0 012 0 3 3 0 005.959.5h.541a.5.5 0 000-1h-.541a3 3 0 00-5.584-.953A1.993 1.993 0 008 6c-.532 0-1.016.208-1.375.547zM14 8a2 2 0 11-4 0 2 2 0 014 0z"/></symbol><symbol fill="currentColor" class="bi bi-facebook" viewBox="0 0 16 16" id="facebook" xmlns="http://www.w3.org/2000/svg"><path d="M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951z"/></symbol><symbol fill="currentColor" class="bi bi-file" viewBox="0 0 16 16" id="file" xmlns="http://www.w3.org/2000/svg"><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-arrow-down" viewBox="0 0 16 16" id="file-arrow-down" xmlns="http://www.w3.org/2000/svg"><path d="M8 5a.5.5 0 01.5.5v3.793l1.146-1.147a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 11.708-.708L7.5 9.293V5.5A.5.5 0 018 5z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-arrow-down-fill" viewBox="0 0 16 16" id="file-arrow-down-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM8 5a.5.5 0 01.5.5v3.793l1.146-1.147a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 11.708-.708L7.5 9.293V5.5A.5.5 0 018 5z"/></symbol><symbol fill="currentColor" class="bi bi-file-arrow-up" viewBox="0 0 16 16" id="file-arrow-up" xmlns="http://www.w3.org/2000/svg"><path d="M8 11a.5.5 0 00.5-.5V6.707l1.146 1.147a.5.5 0 00.708-.708l-2-2a.5.5 0 00-.708 0l-2 2a.5.5 0 10.708.708L7.5 6.707V10.5a.5.5 0 00.5.5z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-arrow-up-fill" viewBox="0 0 16 16" id="file-arrow-up-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM7.5 6.707L6.354 7.854a.5.5 0 11-.708-.708l2-2a.5.5 0 01.708 0l2 2a.5.5 0 01-.708.708L8.5 6.707V10.5a.5.5 0 01-1 0V6.707z"/></symbol><symbol fill="currentColor" class="bi bi-file-bar-graph" viewBox="0 0 16 16" id="file-bar-graph" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 12a.5.5 0 01-.5-.5v-2a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-1zm3 0a.5.5 0 01-.5-.5v-4a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v4a.5.5 0 01-.5.5h-1zm3 0a.5.5 0 01-.5-.5v-6a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v6a.5.5 0 01-.5.5h-1z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-bar-graph-fill" viewBox="0 0 16 16" id="file-bar-graph-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zm-2 11.5v-6a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v6a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5zm-2.5.5a.5.5 0 01-.5-.5v-4a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v4a.5.5 0 01-.5.5h-1zm-3 0a.5.5 0 01-.5-.5v-2a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-binary" viewBox="0 0 16 16" id="file-binary" xmlns="http://www.w3.org/2000/svg"><path d="M5.526 13.09c.976 0 1.524-.79 1.524-2.205 0-1.412-.548-2.203-1.524-2.203-.978 0-1.526.79-1.526 2.203 0 1.415.548 2.206 1.526 2.206zm-.832-2.205c0-1.05.29-1.612.832-1.612.358 0 .607.247.733.721L4.7 11.137a6.749 6.749 0 01-.006-.252zm.832 1.614c-.36 0-.606-.246-.732-.718l1.556-1.145c.003.079.005.164.005.249 0 1.052-.29 1.614-.829 1.614zm5.329.501v-.595H9.73V8.772h-.69l-1.19.786v.688L8.986 9.5h.05v2.906h-1.18V13h3z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-binary-fill" viewBox="0 0 16 16" id="file-binary-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.526 9.273c-.542 0-.832.563-.832 1.612 0 .088.003.173.006.252l1.56-1.143c-.126-.474-.375-.72-.733-.72zm-.732 2.508c.126.472.372.718.732.718.54 0 .83-.563.83-1.614 0-.085-.003-.17-.006-.25l-1.556 1.146z"/><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM7.05 10.885c0 1.415-.548 2.206-1.524 2.206C4.548 13.09 4 12.3 4 10.885c0-1.412.548-2.203 1.526-2.203.976 0 1.524.79 1.524 2.203zm3.805 1.52V13h-3v-.595h1.181V9.5h-.05l-1.136.747v-.688l1.19-.786h.69v3.633h1.125z"/></symbol><symbol fill="currentColor" class="bi bi-file-break" viewBox="0 0 16 16" id="file-break" xmlns="http://www.w3.org/2000/svg"><path d="M0 10.5a.5.5 0 01.5-.5h15a.5.5 0 010 1H.5a.5.5 0 01-.5-.5zM12 0H4a2 2 0 00-2 2v7h1V2a1 1 0 011-1h8a1 1 0 011 1v7h1V2a2 2 0 00-2-2zm2 12h-1v2a1 1 0 01-1 1H4a1 1 0 01-1-1v-2H2v2a2 2 0 002 2h8a2 2 0 002-2v-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-break-fill" viewBox="0 0 16 16" id="file-break-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 0h8a2 2 0 012 2v7H2V2a2 2 0 012-2zM2 12h12v2a2 2 0 01-2 2H4a2 2 0 01-2-2v-2zM.5 10a.5.5 0 000 1h15a.5.5 0 000-1H.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-check" viewBox="0 0 16 16" id="file-check" xmlns="http://www.w3.org/2000/svg"><path d="M10.854 6.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 8.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-check-fill" viewBox="0 0 16 16" id="file-check-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zm-1.146 6.854l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 8.793l2.646-2.647a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-file-code" viewBox="0 0 16 16" id="file-code" xmlns="http://www.w3.org/2000/svg"><path d="M6.646 5.646a.5.5 0 11.708.708L5.707 8l1.647 1.646a.5.5 0 01-.708.708l-2-2a.5.5 0 010-.708l2-2zm2.708 0a.5.5 0 10-.708.708L10.293 8 8.646 9.646a.5.5 0 00.708.708l2-2a.5.5 0 000-.708l-2-2z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-code-fill" viewBox="0 0 16 16" id="file-code-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM6.646 5.646a.5.5 0 11.708.708L5.707 8l1.647 1.646a.5.5 0 01-.708.708l-2-2a.5.5 0 010-.708l2-2zm2.708 0l2 2a.5.5 0 010 .708l-2 2a.5.5 0 01-.708-.708L10.293 8 8.646 6.354a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-file-diff" viewBox="0 0 16 16" id="file-diff" xmlns="http://www.w3.org/2000/svg"><path d="M8 4a.5.5 0 01.5.5V6H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V7H6a.5.5 0 010-1h1.5V4.5A.5.5 0 018 4zm-2.5 6.5A.5.5 0 016 10h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-diff-fill" viewBox="0 0 16 16" id="file-diff-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM8.5 4.5V6H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V7H6a.5.5 0 010-1h1.5V4.5a.5.5 0 011 0zM6 10h4a.5.5 0 010 1H6a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark" viewBox="0 0 16 16" id="file-earmark" xmlns="http://www.w3.org/2000/svg"><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-arrow-down" viewBox="0 0 16 16" id="file-earmark-arrow-down" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 6.5a.5.5 0 00-1 0v3.793L6.354 9.146a.5.5 0 10-.708.708l2 2a.5.5 0 00.708 0l2-2a.5.5 0 00-.708-.708L8.5 10.293V6.5z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-arrow-down-fill" viewBox="0 0 16 16" id="file-earmark-arrow-down-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zm-1 4v3.793l1.146-1.147a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 01.708-.708L7.5 11.293V7.5a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-arrow-up" viewBox="0 0 16 16" id="file-earmark-arrow-up" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 11.5a.5.5 0 01-1 0V7.707L6.354 8.854a.5.5 0 11-.708-.708l2-2a.5.5 0 01.708 0l2 2a.5.5 0 01-.708.708L8.5 7.707V11.5z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-arrow-up-fill" viewBox="0 0 16 16" id="file-earmark-arrow-up-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM6.354 9.854a.5.5 0 01-.708-.708l2-2a.5.5 0 01.708 0l2 2a.5.5 0 01-.708.708L8.5 8.707V12.5a.5.5 0 01-1 0V8.707L6.354 9.854z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-bar-graph" viewBox="0 0 16 16" id="file-earmark-bar-graph" xmlns="http://www.w3.org/2000/svg"><path d="M10 13.5a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-6a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5v6zm-2.5.5a.5.5 0 01-.5-.5v-4a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v4a.5.5 0 01-.5.5h-1zm-3 0a.5.5 0 01-.5-.5v-2a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-1z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-bar-graph-fill" viewBox="0 0 16 16" id="file-earmark-bar-graph-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zm.5 10v-6a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v6a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5zm-2.5.5a.5.5 0 01-.5-.5v-4a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v4a.5.5 0 01-.5.5h-1zm-3 0a.5.5 0 01-.5-.5v-2a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-binary" viewBox="0 0 16 16" id="file-earmark-binary" xmlns="http://www.w3.org/2000/svg"><path d="M7.05 11.885c0 1.415-.548 2.206-1.524 2.206C4.548 14.09 4 13.3 4 11.885c0-1.412.548-2.203 1.526-2.203.976 0 1.524.79 1.524 2.203zm-1.524-1.612c-.542 0-.832.563-.832 1.612 0 .088.003.173.006.252l1.559-1.143c-.126-.474-.375-.72-.733-.72zm-.732 2.508c.126.472.372.718.732.718.54 0 .83-.563.83-1.614 0-.085-.003-.17-.006-.25l-1.556 1.146zm6.061.624V14h-3v-.595h1.181V10.5h-.05l-1.136.747v-.688l1.19-.786h.69v3.633h1.125z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-binary-fill" viewBox="0 0 16 16" id="file-earmark-binary-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.526 10.273c-.542 0-.832.563-.832 1.612 0 .088.003.173.006.252l1.559-1.143c-.126-.474-.375-.72-.733-.72zm-.732 2.508c.126.472.372.718.732.718.54 0 .83-.563.83-1.614 0-.085-.003-.17-.006-.25l-1.556 1.146z"/><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zm-2.45 8.385c0 1.415-.548 2.206-1.524 2.206C4.548 14.09 4 13.3 4 11.885c0-1.412.548-2.203 1.526-2.203.976 0 1.524.79 1.524 2.203zm3.805 1.52V14h-3v-.595h1.181V10.5h-.05l-1.136.747v-.688l1.19-.786h.69v3.633h1.125z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-break" viewBox="0 0 16 16" id="file-earmark-break" xmlns="http://www.w3.org/2000/svg"><path d="M14 4.5V9h-1V4.5h-2A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v7H2V2a2 2 0 012-2h5.5L14 4.5zM13 12h1v2a2 2 0 01-2 2H4a2 2 0 01-2-2v-2h1v2a1 1 0 001 1h8a1 1 0 001-1v-2zM.5 10a.5.5 0 000 1h15a.5.5 0 000-1H.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-break-fill" viewBox="0 0 16 16" id="file-earmark-break-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 0h5.293A1 1 0 0110 .293L13.707 4a1 1 0 01.293.707V9H2V2a2 2 0 012-2zm5.5 1.5v2a1 1 0 001 1h2l-3-3zM2 12h12v2a2 2 0 01-2 2H4a2 2 0 01-2-2v-2zM.5 10a.5.5 0 000 1h15a.5.5 0 000-1H.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-check" viewBox="0 0 16 16" id="file-earmark-check" xmlns="http://www.w3.org/2000/svg"><path d="M10.854 7.854a.5.5 0 00-.708-.708L7.5 9.793 6.354 8.646a.5.5 0 10-.708.708l1.5 1.5a.5.5 0 00.708 0l3-3z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-check-fill" viewBox="0 0 16 16" id="file-earmark-check-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zm1.354 4.354l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 9.793l2.646-2.647a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-code" viewBox="0 0 16 16" id="file-earmark-code" xmlns="http://www.w3.org/2000/svg"><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/><path d="M8.646 6.646a.5.5 0 01.708 0l2 2a.5.5 0 010 .708l-2 2a.5.5 0 01-.708-.708L10.293 9 8.646 7.354a.5.5 0 010-.708zm-1.292 0a.5.5 0 00-.708 0l-2 2a.5.5 0 000 .708l2 2a.5.5 0 00.708-.708L5.707 9l1.647-1.646a.5.5 0 000-.708z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-code-fill" viewBox="0 0 16 16" id="file-earmark-code-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM6.646 7.646a.5.5 0 11.708.708L5.707 10l1.647 1.646a.5.5 0 01-.708.708l-2-2a.5.5 0 010-.708l2-2zm2.708 0l2 2a.5.5 0 010 .708l-2 2a.5.5 0 01-.708-.708L10.293 10 8.646 8.354a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-diff" viewBox="0 0 16 16" id="file-earmark-diff" xmlns="http://www.w3.org/2000/svg"><path d="M8 5a.5.5 0 01.5.5V7H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V8H6a.5.5 0 010-1h1.5V5.5A.5.5 0 018 5zm-2.5 6.5A.5.5 0 016 11h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-diff-fill" viewBox="0 0 16 16" id="file-earmark-diff-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM8 6a.5.5 0 01.5.5V8H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V9H6a.5.5 0 010-1h1.5V6.5A.5.5 0 018 6zm-2.5 6.5A.5.5 0 016 12h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-easel" viewBox="0 0 16 16" id="file-earmark-easel" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 6a.5.5 0 10-1 0h-2A1.5 1.5 0 004 7.5v2A1.5 1.5 0 005.5 11h.473l-.447 1.342a.5.5 0 10.948.316L7.027 11H7.5v1a.5.5 0 001 0v-1h.473l.553 1.658a.5.5 0 10.948-.316L10.027 11h.473A1.5 1.5 0 0012 9.5v-2A1.5 1.5 0 0010.5 6h-2zM5 7.5a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-2z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-easel-fill" viewBox="0 0 16 16" id="file-earmark-easel-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5 7.5a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-2z"/><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM8.5 6h2A1.5 1.5 0 0112 7.5v2a1.5 1.5 0 01-1.5 1.5h-.473l.447 1.342a.5.5 0 01-.948.316L8.973 11H8.5v1a.5.5 0 01-1 0v-1h-.473l-.553 1.658a.5.5 0 11-.948-.316L5.973 11H5.5A1.5 1.5 0 014 9.5v-2A1.5 1.5 0 015.5 6h2a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-excel" viewBox="0 0 16 16" id="file-earmark-excel" xmlns="http://www.w3.org/2000/svg"><path d="M5.884 6.68a.5.5 0 10-.768.64L7.349 10l-2.233 2.68a.5.5 0 00.768.64L8 10.781l2.116 2.54a.5.5 0 00.768-.641L8.651 10l2.233-2.68a.5.5 0 00-.768-.64L8 9.219l-2.116-2.54z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-excel-fill" viewBox="0 0 16 16" id="file-earmark-excel-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM5.884 6.68L8 9.219l2.116-2.54a.5.5 0 11.768.641L8.651 10l2.233 2.68a.5.5 0 01-.768.64L8 10.781l-2.116 2.54a.5.5 0 01-.768-.641L7.349 10 5.116 7.32a.5.5 0 11.768-.64z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-fill" viewBox="0 0 16 16" id="file-earmark-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 0h5.293A1 1 0 0110 .293L13.707 4a1 1 0 01.293.707V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2zm5.5 1.5v2a1 1 0 001 1h2l-3-3z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-font" viewBox="0 0 16 16" id="file-earmark-font" xmlns="http://www.w3.org/2000/svg"><path d="M10.943 6H5.057L5 8h.5c.18-1.096.356-1.192 1.694-1.235l.293-.01v5.09c0 .47-.1.582-.898.655v.5H9.41v-.5c-.803-.073-.903-.184-.903-.654V6.755l.298.01c1.338.043 1.514.14 1.694 1.235h.5l-.057-2z"/><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-font-fill" viewBox="0 0 16 16" id="file-earmark-font-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM5.057 6h5.886L11 8h-.5c-.18-1.096-.356-1.192-1.694-1.235l-.298-.01v5.09c0 .47.1.582.903.655v.5H6.59v-.5c.799-.073.898-.184.898-.654V6.755l-.293.01C5.856 6.808 5.68 6.905 5.5 8H5l.057-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-image" viewBox="0 0 16 16" id="file-earmark-image" xmlns="http://www.w3.org/2000/svg"><path d="M6.502 7a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/><path d="M14 14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5V14zM4 1a1 1 0 00-1 1v10l2.224-2.224a.5.5 0 01.61-.075L8 11l2.157-3.02a.5.5 0 01.76-.063L13 10V4.5h-2A1.5 1.5 0 019.5 3V1H4z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-image-fill" viewBox="0 0 16 16" id="file-earmark-image-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 0h5.293A1 1 0 0110 .293L13.707 4a1 1 0 01.293.707v5.586l-2.73-2.73a1 1 0 00-1.52.127l-1.889 2.644-1.769-1.062a1 1 0 00-1.222.15L2 12.292V2a2 2 0 012-2zm5.5 1.5v2a1 1 0 001 1h2l-3-3zm-1.498 4a1.5 1.5 0 10-3 0 1.5 1.5 0 003 0z"/><path d="M10.564 8.27L14 11.708V14a2 2 0 01-2 2H4a2 2 0 01-2-2v-.293l3.578-3.577 2.56 1.536 2.426-3.395z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-lock" viewBox="0 0 16 16" id="file-earmark-lock" xmlns="http://www.w3.org/2000/svg"><path d="M10 7v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 114 0zM7 7v1h2V7a1 1 0 00-2 0zM6 9.3v2.4c0 .042.02.107.105.175A.637.637 0 006.5 12h3a.64.64 0 00.395-.125c.085-.068.105-.133.105-.175V9.3c0-.042-.02-.107-.105-.175A.637.637 0 009.5 9h-3a.637.637 0 00-.395.125C6.02 9.193 6 9.258 6 9.3z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-lock-fill" viewBox="0 0 16 16" id="file-earmark-lock-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 7a1 1 0 012 0v1H7V7zM6 9.3c0-.042.02-.107.105-.175A.637.637 0 016.5 9h3a.64.64 0 01.395.125c.085.068.105.133.105.175v2.4c0 .042-.02.107-.105.175A.637.637 0 019.5 12h-3a.637.637 0 01-.395-.125C6.02 11.807 6 11.742 6 11.7V9.3z"/><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM10 7v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 114 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-lock2" viewBox="0 0 16 16" id="file-earmark-lock2" xmlns="http://www.w3.org/2000/svg"><path d="M10 7v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 114 0zM7 7v1h2V7a1 1 0 00-2 0z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-lock2-fill" viewBox="0 0 16 16" id="file-earmark-lock2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 7a1 1 0 012 0v1H7V7z"/><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM10 7v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V9.3c0-.627.46-1.058 1-1.224V7a2 2 0 114 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-medical" viewBox="0 0 16 16" id="file-earmark-medical" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 5.5a.5.5 0 00-1 0v.634l-.549-.317a.5.5 0 10-.5.866L6 7l-.549.317a.5.5 0 10.5.866l.549-.317V8.5a.5.5 0 101 0v-.634l.549.317a.5.5 0 10.5-.866L8 7l.549-.317a.5.5 0 10-.5-.866l-.549.317V5.5zm-2 4.5a.5.5 0 000 1h5a.5.5 0 000-1h-5zm0 2a.5.5 0 000 1h5a.5.5 0 000-1h-5z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-medical-fill" viewBox="0 0 16 16" id="file-earmark-medical-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zm-3 2v.634l.549-.317a.5.5 0 11.5.866L7 7l.549.317a.5.5 0 11-.5.866L6.5 7.866V8.5a.5.5 0 01-1 0v-.634l-.549.317a.5.5 0 11-.5-.866L5 7l-.549-.317a.5.5 0 01.5-.866l.549.317V5.5a.5.5 0 111 0zm-2 4.5h5a.5.5 0 010 1h-5a.5.5 0 010-1zm0 2h5a.5.5 0 010 1h-5a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-minus" viewBox="0 0 16 16" id="file-earmark-minus" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 9a.5.5 0 01.5-.5h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-minus-fill" viewBox="0 0 16 16" id="file-earmark-minus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM6 8.5h4a.5.5 0 010 1H6a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-music" viewBox="0 0 16 16" id="file-earmark-music" xmlns="http://www.w3.org/2000/svg"><path d="M11 6.64a1 1 0 00-1.243-.97l-1 .25A1 1 0 008 6.89v4.306A2.572 2.572 0 007 11c-.5 0-.974.134-1.338.377-.36.24-.662.628-.662 1.123s.301.883.662 1.123c.364.243.839.377 1.338.377.5 0 .974-.134 1.338-.377.36-.24.662-.628.662-1.123V8.89l2-.5V6.64z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-music-fill" viewBox="0 0 16 16" id="file-earmark-music-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM11 6.64v1.75l-2 .5v3.61c0 .495-.301.883-.662 1.123C7.974 13.866 7.499 14 7 14c-.5 0-.974-.134-1.338-.377-.36-.24-.662-.628-.662-1.123s.301-.883.662-1.123C6.026 11.134 6.501 11 7 11c.356 0 .7.068 1 .196V6.89a1 1 0 01.757-.97l1-.25A1 1 0 0111 6.64z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-pdf" viewBox="0 0 16 16" id="file-earmark-pdf" xmlns="http://www.w3.org/2000/svg"><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/><path d="M4.603 14.087a.81.81 0 01-.438-.42c-.195-.388-.13-.776.08-1.102.198-.307.526-.568.897-.787a7.68 7.68 0 011.482-.645 19.697 19.697 0 001.062-2.227 7.269 7.269 0 01-.43-1.295c-.086-.4-.119-.796-.046-1.136.075-.354.274-.672.65-.823.192-.077.4-.12.602-.077a.7.7 0 01.477.365c.088.164.12.356.127.538.007.188-.012.396-.047.614-.084.51-.27 1.134-.52 1.794a10.954 10.954 0 00.98 1.686 5.753 5.753 0 011.334.05c.364.066.734.195.96.465.12.144.193.32.2.518.007.192-.047.382-.138.563a1.04 1.04 0 01-.354.416.856.856 0 01-.51.138c-.331-.014-.654-.196-.933-.417a5.712 5.712 0 01-.911-.95 11.651 11.651 0 00-1.997.406 11.307 11.307 0 01-1.02 1.51c-.292.35-.609.656-.927.787a.793.793 0 01-.58.029zm1.379-1.901c-.166.076-.32.156-.459.238-.328.194-.541.383-.647.547-.094.145-.096.25-.04.361.01.022.02.036.026.044a.266.266 0 00.035-.012c.137-.056.355-.235.635-.572a8.18 8.18 0 00.45-.606zm1.64-1.33a12.71 12.71 0 011.01-.193 11.744 11.744 0 01-.51-.858 20.801 20.801 0 01-.5 1.05zm2.446.45c.15.163.296.3.435.41.24.19.407.253.498.256a.107.107 0 00.07-.015.307.307 0 00.094-.125.436.436 0 00.059-.2.095.095 0 00-.026-.063c-.052-.062-.2-.152-.518-.209a3.876 3.876 0 00-.612-.053zM8.078 7.8a6.7 6.7 0 00.2-.828c.031-.188.043-.343.038-.465a.613.613 0 00-.032-.198.517.517 0 00-.145.04c-.087.035-.158.106-.196.283-.04.192-.03.469.046.822.024.111.054.227.09.346z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-pdf-fill" viewBox="0 0 16 16" id="file-earmark-pdf-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.523 12.424c.14-.082.293-.162.459-.238a7.878 7.878 0 01-.45.606c-.28.337-.498.516-.635.572a.266.266 0 01-.035.012.282.282 0 01-.026-.044c-.056-.11-.054-.216.04-.36.106-.165.319-.354.647-.548zm2.455-1.647c-.119.025-.237.05-.356.078a21.148 21.148 0 00.5-1.05 12.045 12.045 0 00.51.858c-.217.032-.436.07-.654.114zm2.525.939a3.881 3.881 0 01-.435-.41c.228.005.434.022.612.054.317.057.466.147.518.209a.095.095 0 01.026.064.436.436 0 01-.06.2.307.307 0 01-.094.124.107.107 0 01-.069.015c-.09-.003-.258-.066-.498-.256zM8.278 6.97c-.04.244-.108.524-.2.829a4.86 4.86 0 01-.089-.346c-.076-.353-.087-.63-.046-.822.038-.177.11-.248.196-.283a.517.517 0 01.145-.04c.013.03.028.092.032.198.005.122-.007.277-.038.465z"/><path fill-rule="evenodd" d="M4 0h5.293A1 1 0 0110 .293L13.707 4a1 1 0 01.293.707V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2zm5.5 1.5v2a1 1 0 001 1h2l-3-3zM4.165 13.668c.09.18.23.343.438.419.207.075.412.04.58-.03.318-.13.635-.436.926-.786.333-.401.683-.927 1.021-1.51a11.651 11.651 0 011.997-.406c.3.383.61.713.91.95.28.22.603.403.934.417a.856.856 0 00.51-.138c.155-.101.27-.247.354-.416.09-.181.145-.37.138-.563a.844.844 0 00-.2-.518c-.226-.27-.596-.4-.96-.465a5.76 5.76 0 00-1.335-.05 10.954 10.954 0 01-.98-1.686c.25-.66.437-1.284.52-1.794.036-.218.055-.426.048-.614a1.238 1.238 0 00-.127-.538.7.7 0 00-.477-.365c-.202-.043-.41 0-.601.077-.377.15-.576.47-.651.823-.073.34-.04.736.046 1.136.088.406.238.848.43 1.295a19.697 19.697 0 01-1.062 2.227 7.662 7.662 0 00-1.482.645c-.37.22-.699.48-.897.787-.21.326-.275.714-.08 1.103z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-person" viewBox="0 0 16 16" id="file-earmark-person" xmlns="http://www.w3.org/2000/svg"><path d="M11 8a3 3 0 11-6 0 3 3 0 016 0z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2v9.255S12 12 8 12s-5 1.755-5 1.755V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-person-fill" viewBox="0 0 16 16" id="file-earmark-person-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM11 8a3 3 0 11-6 0 3 3 0 016 0zm2 5.755V14a1 1 0 01-1 1H4a1 1 0 01-1-1v-.245S4 12 8 12s5 1.755 5 1.755z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-play" viewBox="0 0 16 16" id="file-earmark-play" xmlns="http://www.w3.org/2000/svg"><path d="M6 6.883v4.234a.5.5 0 00.757.429l3.528-2.117a.5.5 0 000-.858L6.757 6.454a.5.5 0 00-.757.43z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-play-fill" viewBox="0 0 16 16" id="file-earmark-play-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM6 6.883a.5.5 0 01.757-.429l3.528 2.117a.5.5 0 010 .858l-3.528 2.117a.5.5 0 01-.757-.43V6.884z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-plus" viewBox="0 0 16 16" id="file-earmark-plus" xmlns="http://www.w3.org/2000/svg"><path d="M8 6.5a.5.5 0 01.5.5v1.5H10a.5.5 0 010 1H8.5V11a.5.5 0 01-1 0V9.5H6a.5.5 0 010-1h1.5V7a.5.5 0 01.5-.5z"/><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-plus-fill" viewBox="0 0 16 16" id="file-earmark-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM8.5 7v1.5H10a.5.5 0 010 1H8.5V11a.5.5 0 01-1 0V9.5H6a.5.5 0 010-1h1.5V7a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-post" viewBox="0 0 16 16" id="file-earmark-post" xmlns="http://www.w3.org/2000/svg"><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/><path d="M4 6.5a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v7a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-7zm0-3a.5.5 0 01.5-.5H7a.5.5 0 010 1H4.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-post-fill" viewBox="0 0 16 16" id="file-earmark-post-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zm-5-.5H7a.5.5 0 010 1H4.5a.5.5 0 010-1zm0 3h7a.5.5 0 01.5.5v7a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-7a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-ppt" viewBox="0 0 16 16" id="file-earmark-ppt" xmlns="http://www.w3.org/2000/svg"><path d="M7 5.5a1 1 0 00-1 1V13a.5.5 0 001 0v-2h1.188a2.75 2.75 0 000-5.5H7zM8.188 10H7V6.5h1.188a1.75 1.75 0 110 3.5z"/><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-ppt-fill" viewBox="0 0 16 16" id="file-earmark-ppt-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.188 10H7V6.5h1.188a1.75 1.75 0 110 3.5z"/><path d="M4 0h5.293A1 1 0 0110 .293L13.707 4a1 1 0 01.293.707V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2zm5.5 1.5v2a1 1 0 001 1h2l-3-3zM7 5.5a1 1 0 00-1 1V13a.5.5 0 001 0v-2h1.188a2.75 2.75 0 000-5.5H7z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-richtext" viewBox="0 0 16 16" id="file-earmark-richtext" xmlns="http://www.w3.org/2000/svg"><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/><path d="M4.5 12.5A.5.5 0 015 12h3a.5.5 0 010 1H5a.5.5 0 01-.5-.5zm0-2A.5.5 0 015 10h6a.5.5 0 010 1H5a.5.5 0 01-.5-.5zm1.639-3.708l1.33.886 1.854-1.855a.25.25 0 01.289-.047l1.888.974V8.5a.5.5 0 01-.5.5H5a.5.5 0 01-.5-.5V8s1.54-1.274 1.639-1.208zM6.25 6a.75.75 0 100-1.5.75.75 0 000 1.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-richtext-fill" viewBox="0 0 16 16" id="file-earmark-richtext-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM7 6.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm-.861 1.542l1.33.886 1.854-1.855a.25.25 0 01.289-.047l1.888.974V9.5a.5.5 0 01-.5.5H5a.5.5 0 01-.5-.5V9s1.54-1.274 1.639-1.208zM5 11h6a.5.5 0 010 1H5a.5.5 0 010-1zm0 2h3a.5.5 0 010 1H5a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-ruled" viewBox="0 0 16 16" id="file-earmark-ruled" xmlns="http://www.w3.org/2000/svg"><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V9H3V2a1 1 0 011-1h5.5v2zM3 12v-2h2v2H3zm0 1h2v2H4a1 1 0 01-1-1v-1zm3 2v-2h7v1a1 1 0 01-1 1H6zm7-3H6v-2h7v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-ruled-fill" viewBox="0 0 16 16" id="file-earmark-ruled-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM3 9h10v1H6v2h7v1H6v2H5v-2H3v-1h2v-2H3V9z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-slides" viewBox="0 0 16 16" id="file-earmark-slides" xmlns="http://www.w3.org/2000/svg"><path d="M5 6a.5.5 0 00-.496.438l-.5 4A.5.5 0 004.5 11h3v2.016c-.863.055-1.5.251-1.5.484 0 .276.895.5 2 .5s2-.224 2-.5c0-.233-.637-.429-1.5-.484V11h3a.5.5 0 00.496-.562l-.5-4A.5.5 0 0011 6H5zm2 3.78V7.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 010 .214l-2.13 1.28A.125.125 0 017 9.778z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-slides-fill" viewBox="0 0 16 16" id="file-earmark-slides-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 9.78V7.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 010 .214l-2.13 1.28A.125.125 0 017 9.778z"/><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM5 6h6a.5.5 0 01.496.438l.5 4A.5.5 0 0111.5 11h-3v2.016c.863.055 1.5.251 1.5.484 0 .276-.895.5-2 .5s-2-.224-2-.5c0-.233.637-.429 1.5-.484V11h-3a.5.5 0 01-.496-.562l.5-4A.5.5 0 015 6z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-spreadsheet" viewBox="0 0 16 16" id="file-earmark-spreadsheet" xmlns="http://www.w3.org/2000/svg"><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V9H3V2a1 1 0 011-1h5.5v2zM3 12v-2h2v2H3zm0 1h2v2H4a1 1 0 01-1-1v-1zm3 2v-2h3v2H6zm4 0v-2h3v1a1 1 0 01-1 1h-2zm3-3h-3v-2h3v2zm-7 0v-2h3v2H6z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-spreadsheet-fill" viewBox="0 0 16 16" id="file-earmark-spreadsheet-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 12v-2h3v2H6z"/><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM3 9h10v1h-3v2h3v1h-3v2H9v-2H6v2H5v-2H3v-1h2v-2H3V9z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-text" viewBox="0 0 16 16" id="file-earmark-text" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 7a.5.5 0 000 1h5a.5.5 0 000-1h-5zM5 9.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/><path d="M9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.5L9.5 0zm0 1v2A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-text-fill" viewBox="0 0 16 16" id="file-earmark-text-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM4.5 9a.5.5 0 010-1h7a.5.5 0 010 1h-7zM4 10.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm.5 2.5a.5.5 0 010-1h4a.5.5 0 010 1h-4z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-word" viewBox="0 0 16 16" id="file-earmark-word" xmlns="http://www.w3.org/2000/svg"><path d="M5.485 6.879a.5.5 0 10-.97.242l1.5 6a.5.5 0 00.967.01L8 9.402l1.018 3.73a.5.5 0 00.967-.01l1.5-6a.5.5 0 00-.97-.242l-1.036 4.144-.997-3.655a.5.5 0 00-.964 0l-.997 3.655L5.485 6.88z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-word-fill" viewBox="0 0 16 16" id="file-earmark-word-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM5.485 6.879l1.036 4.144.997-3.655a.5.5 0 01.964 0l.997 3.655 1.036-4.144a.5.5 0 01.97.242l-1.5 6a.5.5 0 01-.967.01L8 9.402l-1.018 3.73a.5.5 0 01-.967-.01l-1.5-6a.5.5 0 11.97-.242z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-x" viewBox="0 0 16 16" id="file-earmark-x" xmlns="http://www.w3.org/2000/svg"><path d="M6.854 7.146a.5.5 0 10-.708.708L7.293 9l-1.147 1.146a.5.5 0 00.708.708L8 9.707l1.146 1.147a.5.5 0 00.708-.708L8.707 9l1.147-1.146a.5.5 0 00-.708-.708L8 8.293 6.854 7.146z"/><path d="M14 14V4.5L9.5 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2zM9.5 3A1.5 1.5 0 0011 4.5h2V14a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h5.5v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-x-fill" viewBox="0 0 16 16" id="file-earmark-x-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zM6.854 7.146L8 8.293l1.146-1.147a.5.5 0 11.708.708L8.707 9l1.147 1.146a.5.5 0 01-.708.708L8 9.707l-1.146 1.147a.5.5 0 01-.708-.708L7.293 9 6.146 7.854a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-zip" viewBox="0 0 16 16" id="file-earmark-zip" xmlns="http://www.w3.org/2000/svg"><path d="M5 7.5a1 1 0 011-1h1a1 1 0 011 1v.938l.4 1.599a1 1 0 01-.416 1.074l-.93.62a1 1 0 01-1.11 0l-.929-.62a1 1 0 01-.415-1.074L5 8.438V7.5zm2 0H6v.938a1 1 0 01-.03.243l-.4 1.598.93.62.929-.62-.4-1.598A1 1 0 017 8.438V7.5z"/><path d="M14 4.5V14a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2h5.5L14 4.5zm-3 0A1.5 1.5 0 019.5 3V1h-2v1h-1v1h1v1h-1v1h1v1H6V5H5V4h1V3H5V2h1V1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V4.5h-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-earmark-zip-fill" viewBox="0 0 16 16" id="file-earmark-zip-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 9.438V8.5h1v.938a1 1 0 00.03.243l.4 1.598-.93.62-.93-.62.4-1.598a1 1 0 00.03-.243z"/><path d="M9.293 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V4.707A1 1 0 0013.707 4L10 .293A1 1 0 009.293 0zM9.5 3.5v-2l3 3h-2a1 1 0 01-1-1zm-4-.5V2h-1V1H6v1h1v1H6v1h1v1H6v1h1v1H5.5V6h-1V5h1V4h-1V3h1zm0 4.5h1a1 1 0 011 1v.938l.4 1.599a1 1 0 01-.416 1.074l-.93.62a1 1 0 01-1.109 0l-.93-.62a1 1 0 01-.415-1.074l.4-1.599V8.5a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-easel" viewBox="0 0 16 16" id="file-easel" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 5a.5.5 0 10-1 0h-2A1.5 1.5 0 004 6.5v2A1.5 1.5 0 005.5 10h.473l-.447 1.342a.5.5 0 10.948.316L7.027 10H7.5v1a.5.5 0 001 0v-1h.473l.553 1.658a.5.5 0 10.948-.316L10.027 10h.473A1.5 1.5 0 0012 8.5v-2A1.5 1.5 0 0010.5 5h-2zM5 6.5a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-2z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-easel-fill" viewBox="0 0 16 16" id="file-easel-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5 6.5a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-2z"/><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM8.5 5h2A1.5 1.5 0 0112 6.5v2a1.5 1.5 0 01-1.5 1.5h-.473l.447 1.342a.5.5 0 01-.948.316L8.973 10H8.5v1a.5.5 0 01-1 0v-1h-.473l-.553 1.658a.5.5 0 11-.948-.316L5.973 10H5.5A1.5 1.5 0 014 8.5v-2A1.5 1.5 0 015.5 5h2a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-excel" viewBox="0 0 16 16" id="file-excel" xmlns="http://www.w3.org/2000/svg"><path d="M5.18 4.616a.5.5 0 01.704.064L8 7.219l2.116-2.54a.5.5 0 11.768.641L8.651 8l2.233 2.68a.5.5 0 01-.768.64L8 8.781l-2.116 2.54a.5.5 0 01-.768-.641L7.349 8 5.116 5.32a.5.5 0 01.064-.704z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-excel-fill" viewBox="0 0 16 16" id="file-excel-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM5.884 4.68L8 7.219l2.116-2.54a.5.5 0 11.768.641L8.651 8l2.233 2.68a.5.5 0 01-.768.64L8 8.781l-2.116 2.54a.5.5 0 01-.768-.641L7.349 8 5.116 5.32a.5.5 0 11.768-.64z"/></symbol><symbol fill="currentColor" class="bi bi-file-fill" viewBox="0 0 16 16" id="file-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4 0h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-font" viewBox="0 0 16 16" id="file-font" xmlns="http://www.w3.org/2000/svg"><path d="M10.943 4H5.057L5 6h.5c.18-1.096.356-1.192 1.694-1.235l.293-.01v6.09c0 .47-.1.582-.898.655v.5H9.41v-.5c-.803-.073-.903-.184-.903-.654V4.755l.298.01c1.338.043 1.514.14 1.694 1.235h.5l-.057-2z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-font-fill" viewBox="0 0 16 16" id="file-font-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM5.057 4h5.886L11 6h-.5c-.18-1.096-.356-1.192-1.694-1.235l-.298-.01v6.09c0 .47.1.582.903.655v.5H6.59v-.5c.799-.073.898-.184.898-.654V4.755l-.293.01C5.856 4.808 5.68 4.905 5.5 6H5l.057-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-image" viewBox="0 0 16 16" id="file-image" xmlns="http://www.w3.org/2000/svg"><path d="M8.002 5.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM3 2a1 1 0 011-1h8a1 1 0 011 1v8l-2.083-2.083a.5.5 0 00-.76.063L8 11 5.835 9.7a.5.5 0 00-.611.076L3 12V2z"/></symbol><symbol fill="currentColor" class="bi bi-file-image-fill" viewBox="0 0 16 16" id="file-image-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 0h8a2 2 0 012 2v8.293l-2.73-2.73a1 1 0 00-1.52.127l-1.889 2.644-1.769-1.062a1 1 0 00-1.222.15L2 12.292V2a2 2 0 012-2zm4.002 5.5a1.5 1.5 0 10-3 0 1.5 1.5 0 003 0z"/><path d="M10.564 8.27L14 11.708V14a2 2 0 01-2 2H4a2 2 0 01-2-2v-.293l3.578-3.577 2.56 1.536 2.426-3.395z"/></symbol><symbol fill="currentColor" class="bi bi-file-lock" viewBox="0 0 16 16" id="file-lock" xmlns="http://www.w3.org/2000/svg"><path d="M8 5a1 1 0 011 1v1H7V6a1 1 0 011-1zm2 2.076V6a2 2 0 10-4 0v1.076c-.54.166-1 .597-1 1.224v2.4c0 .816.781 1.3 1.5 1.3h3c.719 0 1.5-.484 1.5-1.3V8.3c0-.627-.46-1.058-1-1.224zM6.105 8.125A.637.637 0 016.5 8h3a.64.64 0 01.395.125c.085.068.105.133.105.175v2.4c0 .042-.02.107-.105.175A.637.637 0 019.5 11h-3a.637.637 0 01-.395-.125C6.02 10.807 6 10.742 6 10.7V8.3c0-.042.02-.107.105-.175z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-lock-fill" viewBox="0 0 16 16" id="file-lock-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 6a1 1 0 012 0v1H7V6zM6 8.3c0-.042.02-.107.105-.175A.637.637 0 016.5 8h3a.64.64 0 01.395.125c.085.068.105.133.105.175v2.4c0 .042-.02.107-.105.175A.637.637 0 019.5 11h-3a.637.637 0 01-.395-.125C6.02 10.807 6 10.742 6 10.7V8.3z"/><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zm-2 6v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V8.3c0-.627.46-1.058 1-1.224V6a2 2 0 114 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-lock2" viewBox="0 0 16 16" id="file-lock2" xmlns="http://www.w3.org/2000/svg"><path d="M8 5a1 1 0 011 1v1H7V6a1 1 0 011-1zm2 2.076V6a2 2 0 10-4 0v1.076c-.54.166-1 .597-1 1.224v2.4c0 .816.781 1.3 1.5 1.3h3c.719 0 1.5-.484 1.5-1.3V8.3c0-.627-.46-1.058-1-1.224z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-lock2-fill" viewBox="0 0 16 16" id="file-lock2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 6a1 1 0 012 0v1H7V6z"/><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zm-2 6v1.076c.54.166 1 .597 1 1.224v2.4c0 .816-.781 1.3-1.5 1.3h-3c-.719 0-1.5-.484-1.5-1.3V8.3c0-.627.46-1.058 1-1.224V6a2 2 0 114 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-medical" viewBox="0 0 16 16" id="file-medical" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 4.5a.5.5 0 00-1 0v.634l-.549-.317a.5.5 0 10-.5.866L7 6l-.549.317a.5.5 0 10.5.866l.549-.317V7.5a.5.5 0 101 0v-.634l.549.317a.5.5 0 10.5-.866L9 6l.549-.317a.5.5 0 10-.5-.866l-.549.317V4.5zM5.5 9a.5.5 0 000 1h5a.5.5 0 000-1h-5zm0 2a.5.5 0 000 1h5a.5.5 0 000-1h-5z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-medical-fill" viewBox="0 0 16 16" id="file-medical-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM8.5 4.5v.634l.549-.317a.5.5 0 11.5.866L9 6l.549.317a.5.5 0 11-.5.866L8.5 6.866V7.5a.5.5 0 01-1 0v-.634l-.549.317a.5.5 0 11-.5-.866L7 6l-.549-.317a.5.5 0 01.5-.866l.549.317V4.5a.5.5 0 111 0zM5.5 9h5a.5.5 0 010 1h-5a.5.5 0 010-1zm0 2h5a.5.5 0 010 1h-5a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-minus" viewBox="0 0 16 16" id="file-minus" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 8a.5.5 0 01.5-.5h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-minus-fill" viewBox="0 0 16 16" id="file-minus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM6 7.5h4a.5.5 0 010 1H6a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-music" viewBox="0 0 16 16" id="file-music" xmlns="http://www.w3.org/2000/svg"><path d="M10.304 3.13a1 1 0 011.196.98v1.8l-2.5.5v5.09c0 .495-.301.883-.662 1.123C7.974 12.866 7.499 13 7 13c-.5 0-.974-.134-1.338-.377-.36-.24-.662-.628-.662-1.123s.301-.883.662-1.123C6.026 10.134 6.501 10 7 10c.356 0 .7.068 1 .196V4.41a1 1 0 01.804-.98l1.5-.3z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-music-fill" viewBox="0 0 16 16" id="file-music-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zm-.5 4.11v1.8l-2.5.5v5.09c0 .495-.301.883-.662 1.123C7.974 12.866 7.499 13 7 13c-.5 0-.974-.134-1.338-.377-.36-.24-.662-.628-.662-1.123s.301-.883.662-1.123C6.026 10.134 6.501 10 7 10c.356 0 .7.068 1 .196V4.41a1 1 0 01.804-.98l1.5-.3a1 1 0 011.196.98z"/></symbol><symbol fill="currentColor" class="bi bi-file-pdf" viewBox="0 0 16 16" id="file-pdf" xmlns="http://www.w3.org/2000/svg"><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/><path d="M4.603 12.087a.81.81 0 01-.438-.42c-.195-.388-.13-.776.08-1.102.198-.307.526-.568.897-.787a7.68 7.68 0 011.482-.645 19.701 19.701 0 001.062-2.227 7.269 7.269 0 01-.43-1.295c-.086-.4-.119-.796-.046-1.136.075-.354.274-.672.65-.823.192-.077.4-.12.602-.077a.7.7 0 01.477.365c.088.164.12.356.127.538.007.187-.012.395-.047.614-.084.51-.27 1.134-.52 1.794a10.954 10.954 0 00.98 1.686 5.753 5.753 0 011.334.05c.364.065.734.195.96.465.12.144.193.32.2.518.007.192-.047.382-.138.563a1.04 1.04 0 01-.354.416.856.856 0 01-.51.138c-.331-.014-.654-.196-.933-.417a5.716 5.716 0 01-.911-.95 11.642 11.642 0 00-1.997.406 11.311 11.311 0 01-1.021 1.51c-.29.35-.608.655-.926.787a.793.793 0 01-.58.029zm1.379-1.901c-.166.076-.32.156-.459.238-.328.194-.541.383-.647.547-.094.145-.096.25-.04.361.01.022.02.036.026.044a.27.27 0 00.035-.012c.137-.056.355-.235.635-.572a8.18 8.18 0 00.45-.606zm1.64-1.33a12.647 12.647 0 011.01-.193 11.666 11.666 0 01-.51-.858 20.741 20.741 0 01-.5 1.05zm2.446.45c.15.162.296.3.435.41.24.19.407.253.498.256a.107.107 0 00.07-.015.307.307 0 00.094-.125.436.436 0 00.059-.2.095.095 0 00-.026-.063c-.052-.062-.2-.152-.518-.209a3.881 3.881 0 00-.612-.053zM8.078 5.8a6.7 6.7 0 00.2-.828c.031-.188.043-.343.038-.465a.613.613 0 00-.032-.198.517.517 0 00-.145.04c-.087.035-.158.106-.196.283-.04.192-.03.469.046.822.024.111.054.227.09.346z"/></symbol><symbol fill="currentColor" class="bi bi-file-pdf-fill" viewBox="0 0 16 16" id="file-pdf-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.523 10.424c.14-.082.293-.162.459-.238a7.878 7.878 0 01-.45.606c-.28.337-.498.516-.635.572a.266.266 0 01-.035.012.282.282 0 01-.026-.044c-.056-.11-.054-.216.04-.36.106-.165.319-.354.647-.548zm2.455-1.647c-.119.025-.237.05-.356.078a21.035 21.035 0 00.5-1.05 11.96 11.96 0 00.51.858c-.217.032-.436.07-.654.114zm2.525.939a3.888 3.888 0 01-.435-.41c.228.005.434.022.612.054.317.057.466.147.518.209a.095.095 0 01.026.064.436.436 0 01-.06.2.307.307 0 01-.094.124.107.107 0 01-.069.015c-.09-.003-.258-.066-.498-.256zM8.278 4.97c-.04.244-.108.524-.2.829a4.86 4.86 0 01-.089-.346c-.076-.353-.087-.63-.046-.822.038-.177.11-.248.196-.283a.517.517 0 01.145-.04c.013.03.028.092.032.198.005.122-.007.277-.038.465z"/><path fill-rule="evenodd" d="M4 0h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2zm.165 11.668c.09.18.23.343.438.419.207.075.412.04.58-.03.318-.13.635-.436.926-.786.333-.401.683-.927 1.021-1.51a11.64 11.64 0 011.997-.406c.3.383.61.713.91.95.28.22.603.403.934.417a.856.856 0 00.51-.138c.155-.101.27-.247.354-.416.09-.181.145-.37.138-.563a.844.844 0 00-.2-.518c-.226-.27-.596-.4-.96-.465a5.76 5.76 0 00-1.335-.05 10.954 10.954 0 01-.98-1.686c.25-.66.437-1.284.52-1.794.036-.218.055-.426.048-.614a1.238 1.238 0 00-.127-.538.7.7 0 00-.477-.365c-.202-.043-.41 0-.601.077-.377.15-.576.47-.651.823-.073.34-.04.736.046 1.136.088.406.238.848.43 1.295a19.707 19.707 0 01-1.062 2.227 7.662 7.662 0 00-1.482.645c-.37.22-.699.48-.897.787-.21.326-.275.714-.08 1.103z"/></symbol><symbol fill="currentColor" class="bi bi-file-person" viewBox="0 0 16 16" id="file-person" xmlns="http://www.w3.org/2000/svg"><path d="M12 1a1 1 0 011 1v10.755S12 11 8 11s-5 1.755-5 1.755V2a1 1 0 011-1h8zM4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4z"/><path d="M8 10a3 3 0 100-6 3 3 0 000 6z"/></symbol><symbol fill="currentColor" class="bi bi-file-person-fill" viewBox="0 0 16 16" id="file-person-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zm-1 7a3 3 0 11-6 0 3 3 0 016 0zm-3 4c2.623 0 4.146.826 5 1.755V14a1 1 0 01-1 1H4a1 1 0 01-1-1v-1.245C3.854 11.825 5.377 11 8 11z"/></symbol><symbol fill="currentColor" class="bi bi-file-play" viewBox="0 0 16 16" id="file-play" xmlns="http://www.w3.org/2000/svg"><path d="M6 10.117V5.883a.5.5 0 01.757-.429l3.528 2.117a.5.5 0 010 .858l-3.528 2.117a.5.5 0 01-.757-.43z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-play-fill" viewBox="0 0 16 16" id="file-play-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM6 5.883a.5.5 0 01.757-.429l3.528 2.117a.5.5 0 010 .858l-3.528 2.117a.5.5 0 01-.757-.43V5.884z"/></symbol><symbol fill="currentColor" class="bi bi-file-plus" viewBox="0 0 16 16" id="file-plus" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 6a.5.5 0 00-1 0v1.5H6a.5.5 0 000 1h1.5V10a.5.5 0 001 0V8.5H10a.5.5 0 000-1H8.5V6z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-plus-fill" viewBox="0 0 16 16" id="file-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM8.5 6v1.5H10a.5.5 0 010 1H8.5V10a.5.5 0 01-1 0V8.5H6a.5.5 0 010-1h1.5V6a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-file-post" viewBox="0 0 16 16" id="file-post" xmlns="http://www.w3.org/2000/svg"><path d="M4 3.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-8z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-post-fill" viewBox="0 0 16 16" id="file-post-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM4.5 3h5a.5.5 0 010 1h-5a.5.5 0 010-1zm0 2h7a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-8a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-ppt" viewBox="0 0 16 16" id="file-ppt" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/><path d="M6 5a1 1 0 011-1h1.188a2.75 2.75 0 010 5.5H7v2a.5.5 0 01-1 0V5zm1 3.5h1.188a1.75 1.75 0 100-3.5H7v3.5z"/></symbol><symbol fill="currentColor" class="bi bi-file-ppt-fill" viewBox="0 0 16 16" id="file-ppt-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.188 8.5H7V5h1.188a1.75 1.75 0 110 3.5z"/><path d="M4 0h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2zm3 4a1 1 0 00-1 1v6.5a.5.5 0 001 0v-2h1.188a2.75 2.75 0 000-5.5H7z"/></symbol><symbol fill="currentColor" class="bi bi-file-richtext" viewBox="0 0 16 16" id="file-richtext" xmlns="http://www.w3.org/2000/svg"><path d="M7 4.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm-.861 1.542l1.33.886 1.854-1.855a.25.25 0 01.289-.047l1.888.974V7.5a.5.5 0 01-.5.5H5a.5.5 0 01-.5-.5V7s1.54-1.274 1.639-1.208zM5 9a.5.5 0 000 1h6a.5.5 0 000-1H5zm0 2a.5.5 0 000 1h3a.5.5 0 000-1H5z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-richtext-fill" viewBox="0 0 16 16" id="file-richtext-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM7 4.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm-.861 1.542l1.33.886 1.854-1.855a.25.25 0 01.289-.047l1.888.974V7.5a.5.5 0 01-.5.5H5a.5.5 0 01-.5-.5V7s1.54-1.274 1.639-1.208zM5 9h6a.5.5 0 010 1H5a.5.5 0 010-1zm0 2h3a.5.5 0 010 1H5a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-ruled" viewBox="0 0 16 16" id="file-ruled" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm2-1a1 1 0 00-1 1v4h10V2a1 1 0 00-1-1H4zm9 6H6v2h7V7zm0 3H6v2h7v-2zm0 3H6v2h6a1 1 0 001-1v-1zm-8 2v-2H3v1a1 1 0 001 1h1zm-2-3h2v-2H3v2zm0-3h2V7H3v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-ruled-fill" viewBox="0 0 16 16" id="file-ruled-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v4h12V2a2 2 0 00-2-2zm2 7H6v2h8V7zm0 3H6v2h8v-2zm0 3H6v3h6a2 2 0 002-2v-1zm-9 3v-3H2v1a2 2 0 002 2h1zm-3-4h3v-2H2v2zm0-3h3V7H2v2z"/></symbol><symbol fill="currentColor" class="bi bi-file-slides" viewBox="0 0 16 16" id="file-slides" xmlns="http://www.w3.org/2000/svg"><path d="M5 4a.5.5 0 00-.496.438l-.5 4A.5.5 0 004.5 9h3v2.016c-.863.055-1.5.251-1.5.484 0 .276.895.5 2 .5s2-.224 2-.5c0-.233-.637-.429-1.5-.484V9h3a.5.5 0 00.496-.562l-.5-4A.5.5 0 0011 4H5zm2 3.78V5.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 010 .214l-2.13 1.28A.125.125 0 017 7.778z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-slides-fill" viewBox="0 0 16 16" id="file-slides-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 7.78V5.22c0-.096.106-.156.19-.106l2.13 1.279a.125.125 0 010 .214l-2.13 1.28A.125.125 0 017 7.778z"/><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM5 4h6a.5.5 0 01.496.438l.5 4A.5.5 0 0111.5 9h-3v2.016c.863.055 1.5.251 1.5.484 0 .276-.895.5-2 .5s-2-.224-2-.5c0-.233.637-.429 1.5-.484V9h-3a.5.5 0 01-.496-.562l.5-4A.5.5 0 015 4z"/></symbol><symbol fill="currentColor" class="bi bi-file-spreadsheet" viewBox="0 0 16 16" id="file-spreadsheet" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm2-1a1 1 0 00-1 1v4h10V2a1 1 0 00-1-1H4zm9 6h-3v2h3V7zm0 3h-3v2h3v-2zm0 3h-3v2h2a1 1 0 001-1v-1zm-4 2v-2H6v2h3zm-4 0v-2H3v1a1 1 0 001 1h1zm-2-3h2v-2H3v2zm0-3h2V7H3v2zm3-2v2h3V7H6zm3 3H6v2h3v-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-spreadsheet-fill" viewBox="0 0 16 16" id="file-spreadsheet-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v4h12V2a2 2 0 00-2-2zm2 7h-4v2h4V7zm0 3h-4v2h4v-2zm0 3h-4v3h2a2 2 0 002-2v-1zm-5 3v-3H6v3h3zm-4 0v-3H2v1a2 2 0 002 2h1zm-3-4h3v-2H2v2zm0-3h3V7H2v2zm4 0V7h3v2H6zm0 1h3v2H6v-2z"/></symbol><symbol fill="currentColor" class="bi bi-file-text" viewBox="0 0 16 16" id="file-text" xmlns="http://www.w3.org/2000/svg"><path d="M5 4a.5.5 0 000 1h6a.5.5 0 000-1H5zm-.5 2.5A.5.5 0 015 6h6a.5.5 0 010 1H5a.5.5 0 01-.5-.5zM5 8a.5.5 0 000 1h6a.5.5 0 000-1H5zm0 2a.5.5 0 000 1h3a.5.5 0 000-1H5z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm10-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-text-fill" viewBox="0 0 16 16" id="file-text-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM5 4h6a.5.5 0 010 1H5a.5.5 0 010-1zm-.5 2.5A.5.5 0 015 6h6a.5.5 0 010 1H5a.5.5 0 01-.5-.5zM5 8h6a.5.5 0 010 1H5a.5.5 0 010-1zm0 2h3a.5.5 0 010 1H5a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-word" viewBox="0 0 16 16" id="file-word" xmlns="http://www.w3.org/2000/svg"><path d="M4.879 4.515a.5.5 0 01.606.364l1.036 4.144.997-3.655a.5.5 0 01.964 0l.997 3.655 1.036-4.144a.5.5 0 01.97.242l-1.5 6a.5.5 0 01-.967.01L8 7.402l-1.018 3.73a.5.5 0 01-.967-.01l-1.5-6a.5.5 0 01.364-.606z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-word-fill" viewBox="0 0 16 16" id="file-word-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM5.485 4.879l1.036 4.144.997-3.655a.5.5 0 01.964 0l.997 3.655 1.036-4.144a.5.5 0 01.97.242l-1.5 6a.5.5 0 01-.967.01L8 7.402l-1.018 3.73a.5.5 0 01-.967-.01l-1.5-6a.5.5 0 11.97-.242z"/></symbol><symbol fill="currentColor" class="bi bi-file-x" viewBox="0 0 16 16" id="file-x" xmlns="http://www.w3.org/2000/svg"><path d="M6.146 6.146a.5.5 0 01.708 0L8 7.293l1.146-1.147a.5.5 0 11.708.708L8.707 8l1.147 1.146a.5.5 0 01-.708.708L8 8.707 6.854 9.854a.5.5 0 01-.708-.708L7.293 8 6.146 6.854a.5.5 0 010-.708z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm0 1h8a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-file-x-fill" viewBox="0 0 16 16" id="file-x-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12 0H4a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2zM6.854 6.146L8 7.293l1.146-1.147a.5.5 0 11.708.708L8.707 8l1.147 1.146a.5.5 0 01-.708.708L8 8.707 6.854 9.854a.5.5 0 01-.708-.708L7.293 8 6.146 6.854a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-file-zip" viewBox="0 0 16 16" id="file-zip" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 7.5a1 1 0 011-1h1a1 1 0 011 1v.938l.4 1.599a1 1 0 01-.416 1.074l-.93.62a1 1 0 01-1.109 0l-.93-.62a1 1 0 01-.415-1.074l.4-1.599V7.5zm2 0h-1v.938a1 1 0 01-.03.243l-.4 1.598.93.62.93-.62-.4-1.598a1 1 0 01-.03-.243V7.5z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm5.5-1H4a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1H9v1H8v1h1v1H8v1h1v1H7.5V5h-1V4h1V3h-1V2h1V1z"/></symbol><symbol fill="currentColor" class="bi bi-file-zip-fill" viewBox="0 0 16 16" id="file-zip-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 9.438V8.5h-1v.938a1 1 0 01-.03.243l-.4 1.598.93.62.93-.62-.4-1.598a1 1 0 01-.03-.243z"/><path d="M4 0h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2a2 2 0 012-2zm2.5 8.5v.938l-.4 1.599a1 1 0 00.416 1.074l.93.62a1 1 0 001.109 0l.93-.62a1 1 0 00.415-1.074l-.4-1.599V8.5a1 1 0 00-1-1h-1a1 1 0 00-1 1zm1-5.5h-1v1h1v1h-1v1h1v1H9V6H8V5h1V4H8V3h1V2H8V1H6.5v1h1v1z"/></symbol><symbol fill="currentColor" class="bi bi-files" viewBox="0 0 16 16" id="files" xmlns="http://www.w3.org/2000/svg"><path d="M13 0H6a2 2 0 00-2 2 2 2 0 00-2 2v10a2 2 0 002 2h7a2 2 0 002-2 2 2 0 002-2V2a2 2 0 00-2-2zm0 13V4a2 2 0 00-2-2H5a1 1 0 011-1h7a1 1 0 011 1v10a1 1 0 01-1 1zM3 4a1 1 0 011-1h7a1 1 0 011 1v10a1 1 0 01-1 1H4a1 1 0 01-1-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-files-alt" viewBox="0 0 16 16" id="files-alt" xmlns="http://www.w3.org/2000/svg"><path d="M11 0H3a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2 2 2 0 002-2V4a2 2 0 00-2-2 2 2 0 00-2-2zm2 3a1 1 0 011 1v8a1 1 0 01-1 1V3zM2 2a1 1 0 011-1h8a1 1 0 011 1v12a1 1 0 01-1 1H3a1 1 0 01-1-1V2z"/></symbol><symbol fill="currentColor" class="bi bi-film" viewBox="0 0 16 16" id="film" xmlns="http://www.w3.org/2000/svg"><path d="M0 1a1 1 0 011-1h14a1 1 0 011 1v14a1 1 0 01-1 1H1a1 1 0 01-1-1V1zm4 0v6h8V1H4zm8 8H4v6h8V9zM1 1v2h2V1H1zm2 3H1v2h2V4zM1 7v2h2V7H1zm2 3H1v2h2v-2zm-2 3v2h2v-2H1zM15 1h-2v2h2V1zm-2 3v2h2V4h-2zm2 3h-2v2h2V7zm-2 3v2h2v-2h-2zm2 3h-2v2h2v-2z"/></symbol><symbol fill="currentColor" class="bi bi-filter" viewBox="0 0 16 16" id="filter" xmlns="http://www.w3.org/2000/svg"><path d="M6 10.5a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-filter-circle" viewBox="0 0 16 16" id="filter-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M7 11.5a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-filter-circle-fill" viewBox="0 0 16 16" id="filter-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zM3.5 5h9a.5.5 0 010 1h-9a.5.5 0 010-1zM5 8.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm2 3a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-filter-left" viewBox="0 0 16 16" id="filter-left" xmlns="http://www.w3.org/2000/svg"><path d="M2 10.5a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-filter-right" viewBox="0 0 16 16" id="filter-right" xmlns="http://www.w3.org/2000/svg"><path d="M14 10.5a.5.5 0 00-.5-.5h-3a.5.5 0 000 1h3a.5.5 0 00.5-.5zm0-3a.5.5 0 00-.5-.5h-7a.5.5 0 000 1h7a.5.5 0 00.5-.5zm0-3a.5.5 0 00-.5-.5h-11a.5.5 0 000 1h11a.5.5 0 00.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-filter-square" viewBox="0 0 16 16" id="filter-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M6 11.5a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-filter-square-fill" viewBox="0 0 16 16" id="filter-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm.5 5h11a.5.5 0 010 1h-11a.5.5 0 010-1zM4 8.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm2 3a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-flag" viewBox="0 0 16 16" id="flag" xmlns="http://www.w3.org/2000/svg"><path d="M14.778.085A.5.5 0 0115 .5V8a.5.5 0 01-.314.464L14.5 8l.186.464-.003.001-.006.003-.023.009a12.435 12.435 0 01-.397.15c-.264.095-.631.223-1.047.35-.816.252-1.879.523-2.71.523-.847 0-1.548-.28-2.158-.525l-.028-.01C7.68 8.71 7.14 8.5 6.5 8.5c-.7 0-1.638.23-2.437.477A19.626 19.626 0 003 9.342V15.5a.5.5 0 01-1 0V.5a.5.5 0 011 0v.282c.226-.079.496-.17.79-.26C4.606.272 5.67 0 6.5 0c.84 0 1.524.277 2.121.519l.043.018C9.286.788 9.828 1 10.5 1c.7 0 1.638-.23 2.437-.477a19.587 19.587 0 001.349-.476l.019-.007.004-.002h.001M14 1.221c-.22.078-.48.167-.766.255-.81.252-1.872.523-2.734.523-.886 0-1.592-.286-2.203-.534l-.008-.003C7.662 1.21 7.139 1 6.5 1c-.669 0-1.606.229-2.415.478A21.294 21.294 0 003 1.845v6.433c.22-.078.48-.167.766-.255C4.576 7.77 5.638 7.5 6.5 7.5c.847 0 1.548.28 2.158.525l.028.01C9.32 8.29 9.86 8.5 10.5 8.5c.668 0 1.606-.229 2.415-.478A21.317 21.317 0 0014 7.655V1.222z"/></symbol><symbol fill="currentColor" class="bi bi-flag-fill" viewBox="0 0 16 16" id="flag-fill" xmlns="http://www.w3.org/2000/svg"><path d="M14.778.085A.5.5 0 0115 .5V8a.5.5 0 01-.314.464L14.5 8l.186.464-.003.001-.006.003-.023.009a12.435 12.435 0 01-.397.15c-.264.095-.631.223-1.047.35-.816.252-1.879.523-2.71.523-.847 0-1.548-.28-2.158-.525l-.028-.01C7.68 8.71 7.14 8.5 6.5 8.5c-.7 0-1.638.23-2.437.477A19.626 19.626 0 003 9.342V15.5a.5.5 0 01-1 0V.5a.5.5 0 011 0v.282c.226-.079.496-.17.79-.26C4.606.272 5.67 0 6.5 0c.84 0 1.524.277 2.121.519l.043.018C9.286.788 9.828 1 10.5 1c.7 0 1.638-.23 2.437-.477a19.587 19.587 0 001.349-.476l.019-.007.004-.002h.001"/></symbol><symbol fill="currentColor" class="bi bi-flower1" viewBox="0 0 16 16" id="flower1" xmlns="http://www.w3.org/2000/svg"><path d="M6.174 1.184a2 2 0 013.652 0A2 2 0 0112.99 3.01a2 2 0 011.826 3.164 2 2 0 010 3.652 2 2 0 01-1.826 3.164 2 2 0 01-3.164 1.826 2 2 0 01-3.652 0A2 2 0 013.01 12.99a2 2 0 01-1.826-3.164 2 2 0 010-3.652A2 2 0 013.01 3.01a2 2 0 013.164-1.826zM8 1a1 1 0 00-.998 1.03l.01.091c.012.077.029.176.054.296.049.241.122.542.213.887.182.688.428 1.513.676 2.314L8 5.762l.045-.144c.248-.8.494-1.626.676-2.314.091-.345.164-.646.213-.887a4.997 4.997 0 00.064-.386L9 2a1 1 0 00-1-1zM2 9l.03-.002.091-.01a4.99 4.99 0 00.296-.054c.241-.049.542-.122.887-.213a60.59 60.59 0 002.314-.676L5.762 8l-.144-.045a60.59 60.59 0 00-2.314-.676 16.705 16.705 0 00-.887-.213 4.99 4.99 0 00-.386-.064L2 7a1 1 0 100 2zm7 5l-.002-.03a5.005 5.005 0 00-.064-.386 16.398 16.398 0 00-.213-.888 60.582 60.582 0 00-.676-2.314L8 10.238l-.045.144c-.248.8-.494 1.626-.676 2.314-.091.345-.164.646-.213.887a4.996 4.996 0 00-.064.386L7 14a1 1 0 102 0zm-5.696-2.134l.025-.017a5.001 5.001 0 00.303-.248c.184-.164.408-.377.661-.629A60.614 60.614 0 005.96 9.23l.103-.111-.147.033a60.88 60.88 0 00-2.343.572c-.344.093-.64.18-.874.258a5.063 5.063 0 00-.367.138l-.027.014a1 1 0 101 1.732zM4.5 14.062a1 1 0 001.366-.366l.014-.027c.01-.02.021-.048.036-.084a5.09 5.09 0 00.102-.283c.078-.233.165-.53.258-.874a60.6 60.6 0 00.572-2.343l.033-.147-.11.102a60.848 60.848 0 00-1.743 1.667 17.07 17.07 0 00-.629.66 5.06 5.06 0 00-.248.304l-.017.025a1 1 0 00.366 1.366zm9.196-8.196a1 1 0 00-1-1.732l-.025.017a4.951 4.951 0 00-.303.248 16.69 16.69 0 00-.661.629A60.72 60.72 0 0010.04 6.77l-.102.111.147-.033a60.6 60.6 0 002.342-.572c.345-.093.642-.18.875-.258a4.993 4.993 0 00.367-.138.53.53 0 00.027-.014zM11.5 1.938a1 1 0 00-1.366.366l-.014.027c-.01.02-.021.048-.036.084a5.09 5.09 0 00-.102.283c-.078.233-.165.53-.258.875a60.62 60.62 0 00-.572 2.342l-.033.147.11-.102a60.848 60.848 0 001.743-1.667c.252-.253.465-.477.629-.66a5.001 5.001 0 00.248-.304l.017-.025a1 1 0 00-.366-1.366zM14 9a1 1 0 000-2l-.03.002a4.996 4.996 0 00-.386.064c-.242.049-.543.122-.888.213-.688.182-1.513.428-2.314.676L10.238 8l.144.045c.8.248 1.626.494 2.314.676.345.091.646.164.887.213a4.996 4.996 0 00.386.064L14 9zM1.938 4.5a1 1 0 00.393 1.38l.084.035c.072.03.166.064.283.103.233.078.53.165.874.258a60.88 60.88 0 002.343.572l.147.033-.103-.111a60.584 60.584 0 00-1.666-1.742 16.705 16.705 0 00-.66-.629 4.996 4.996 0 00-.304-.248l-.025-.017a1 1 0 00-1.366.366zm2.196-1.196l.017.025a4.996 4.996 0 00.248.303c.164.184.377.408.629.661A60.597 60.597 0 006.77 5.96l.111.102-.033-.147a60.602 60.602 0 00-.572-2.342c-.093-.345-.18-.642-.258-.875a5.006 5.006 0 00-.138-.367l-.014-.027a1 1 0 10-1.732 1zm9.928 8.196a1 1 0 00-.366-1.366l-.027-.014a5 5 0 00-.367-.138c-.233-.078-.53-.165-.875-.258a60.619 60.619 0 00-2.342-.572l-.147-.033.102.111a60.73 60.73 0 001.667 1.742c.253.252.477.465.66.629a4.946 4.946 0 00.304.248l.025.017a1 1 0 001.366-.366zm-3.928 2.196a1 1 0 001.732-1l-.017-.025a5.065 5.065 0 00-.248-.303 16.705 16.705 0 00-.629-.661A60.462 60.462 0 009.23 10.04l-.111-.102.033.147a60.6 60.6 0 00.572 2.342c.093.345.18.642.258.875a4.985 4.985 0 00.138.367.575.575 0 00.014.027zM8 9.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/></symbol><symbol fill="currentColor" class="bi bi-flower2" viewBox="0 0 16 16" id="flower2" xmlns="http://www.w3.org/2000/svg"><path d="M8 16a4 4 0 004-4 4 4 0 000-8 4 4 0 00-8 0 4 4 0 100 8 4 4 0 004 4zm3-12c0 .073-.01.155-.03.247-.544.241-1.091.638-1.598 1.084A2.987 2.987 0 008 5c-.494 0-.96.12-1.372.331-.507-.446-1.054-.843-1.597-1.084A1.117 1.117 0 015 4a3 3 0 016 0zm-.812 6.052A2.99 2.99 0 0011 8a2.99 2.99 0 00-.812-2.052c.215-.18.432-.346.647-.487C11.34 5.131 11.732 5 12 5a3 3 0 110 6c-.268 0-.66-.13-1.165-.461a6.833 6.833 0 01-.647-.487zm-3.56.617a3.001 3.001 0 002.744 0c.507.446 1.054.842 1.598 1.084.02.091.03.174.03.247a3 3 0 11-6 0c0-.073.01-.155.03-.247.544-.242 1.091-.638 1.598-1.084zm-.816-4.721A2.99 2.99 0 005 8c0 .794.308 1.516.812 2.052a6.83 6.83 0 01-.647.487C4.66 10.869 4.268 11 4 11a3 3 0 010-6c.268 0 .66.13 1.165.461.215.141.432.306.647.487zM8 9a1 1 0 110-2 1 1 0 010 2z"/></symbol><symbol fill="currentColor" class="bi bi-flower3" viewBox="0 0 16 16" id="flower3" xmlns="http://www.w3.org/2000/svg"><path d="M11.424 8c.437-.052.811-.136 1.04-.268a2 2 0 00-2-3.464c-.229.132-.489.414-.752.767C9.886 4.63 10 4.264 10 4a2 2 0 10-4 0c0 .264.114.63.288 1.035-.263-.353-.523-.635-.752-.767a2 2 0 00-2 3.464c.229.132.603.216 1.04.268-.437.052-.811.136-1.04.268a2 2 0 102 3.464c.229-.132.489-.414.752-.767C6.114 11.37 6 11.736 6 12a2 2 0 104 0c0-.264-.114-.63-.288-1.035.263.353.523.635.752.767a2 2 0 102-3.464c-.229-.132-.603-.216-1.04-.268zM9 4a1.468 1.468 0 01-.045.205c-.039.132-.1.295-.183.484a12.88 12.88 0 01-.637 1.223L8 6.142a21.73 21.73 0 01-.135-.23 12.88 12.88 0 01-.637-1.223 4.216 4.216 0 01-.183-.484A1.473 1.473 0 017 4a1 1 0 112 0zM3.67 5.5a1 1 0 011.366-.366 1.472 1.472 0 01.156.142c.094.1.204.233.326.4.245.333.502.747.742 1.163l.13.232a21.86 21.86 0 01-.265.002 12.88 12.88 0 01-1.379-.06 4.214 4.214 0 01-.51-.083 1.47 1.47 0 01-.2-.064A1 1 0 013.67 5.5zm1.366 5.366a1 1 0 01-1-1.732c.001 0 .016-.008.047-.02.037-.013.087-.028.153-.044.134-.032.305-.06.51-.083a12.88 12.88 0 011.379-.06c.09 0 .178 0 .266.002a21.82 21.82 0 01-.131.232c-.24.416-.497.83-.742 1.163a4.1 4.1 0 01-.327.4 1.483 1.483 0 01-.155.142zM9 12a1 1 0 01-2 0 1.476 1.476 0 01.045-.206c.039-.131.1-.294.183-.483.166-.378.396-.808.637-1.223L8 9.858l.135.23c.241.415.47.845.637 1.223.083.19.144.352.183.484A1.338 1.338 0 019 12zm3.33-6.5a1 1 0 01-.366 1.366 1.478 1.478 0 01-.2.064c-.134.032-.305.06-.51.083-.412.045-.898.061-1.379.06-.09 0-.178 0-.266-.002l.131-.232c.24-.416.497-.83.742-1.163a4.1 4.1 0 01.327-.4c.046-.05.085-.086.114-.11.026-.022.04-.03.041-.032a1 1 0 011.366.366zm-1.366 5.366a1.494 1.494 0 01-.155-.141 4.225 4.225 0 01-.327-.4A12.88 12.88 0 019.74 9.16a22 22 0 01-.13-.232l.265-.002c.48-.001.967.015 1.379.06.205.023.376.051.51.083.066.016.116.031.153.044l.048.02a1 1 0 11-1 1.732zM8 9a1 1 0 110-2 1 1 0 010 2z"/></symbol><symbol fill="currentColor" class="bi bi-folder" viewBox="0 0 16 16" id="folder" xmlns="http://www.w3.org/2000/svg"><path d="M.54 3.87L.5 3a2 2 0 012-2h3.672a2 2 0 011.414.586l.828.828A2 2 0 009.828 3h3.982a2 2 0 011.992 2.181l-.637 7A2 2 0 0113.174 14H2.826a2 2 0 01-1.991-1.819l-.637-7a1.99 1.99 0 01.342-1.31zM2.19 4a1 1 0 00-.996 1.09l.637 7a1 1 0 00.995.91h10.348a1 1 0 00.995-.91l.637-7A1 1 0 0013.81 4H2.19zm4.69-1.707A1 1 0 006.172 2H2.5a1 1 0 00-1 .981l.006.139C1.72 3.042 1.95 3 2.19 3h5.396l-.707-.707z"/></symbol><symbol fill="currentColor" class="bi bi-folder-check" viewBox="0 0 16 16" id="folder-check" xmlns="http://www.w3.org/2000/svg"><path d="M.5 3l.04.87a1.99 1.99 0 00-.342 1.311l.637 7A2 2 0 002.826 14H9v-1H2.826a1 1 0 01-.995-.91l-.637-7A1 1 0 012.19 4h11.62a1 1 0 01.996 1.09L14.54 8h1.005l.256-2.819A2 2 0 0013.81 3H9.828a2 2 0 01-1.414-.586l-.828-.828A2 2 0 006.172 1H2.5a2 2 0 00-2 2zm5.672-1a1 1 0 01.707.293L7.586 3H2.19c-.24 0-.47.042-.683.12L1.5 2.98a1 1 0 011-.98h3.672z"/><path d="M15.854 10.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.707 0l-1.5-1.5a.5.5 0 01.707-.708l1.146 1.147 2.646-2.647a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-folder-fill" viewBox="0 0 16 16" id="folder-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.828 3h3.982a2 2 0 011.992 2.181l-.637 7A2 2 0 0113.174 14H2.825a2 2 0 01-1.991-1.819l-.637-7a1.99 1.99 0 01.342-1.31L.5 3a2 2 0 012-2h3.672a2 2 0 011.414.586l.828.828A2 2 0 009.828 3zm-8.322.12C1.72 3.042 1.95 3 2.19 3h5.396l-.707-.707A1 1 0 006.172 2H2.5a1 1 0 00-1 .981l.006.139z"/></symbol><symbol fill="currentColor" class="bi bi-folder-minus" viewBox="0 0 16 16" id="folder-minus" xmlns="http://www.w3.org/2000/svg"><path d="M.5 3l.04.87a1.99 1.99 0 00-.342 1.311l.637 7A2 2 0 002.826 14H9v-1H2.826a1 1 0 01-.995-.91l-.637-7A1 1 0 012.19 4h11.62a1 1 0 01.996 1.09L14.54 8h1.005l.256-2.819A2 2 0 0013.81 3H9.828a2 2 0 01-1.414-.586l-.828-.828A2 2 0 006.172 1H2.5a2 2 0 00-2 2zm5.672-1a1 1 0 01.707.293L7.586 3H2.19c-.24 0-.47.042-.683.12L1.5 2.98a1 1 0 011-.98h3.672z"/><path d="M11 11.5a.5.5 0 01.5-.5h4a.5.5 0 110 1h-4a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-folder-plus" viewBox="0 0 16 16" id="folder-plus" xmlns="http://www.w3.org/2000/svg"><path d="M.5 3l.04.87a1.99 1.99 0 00-.342 1.311l.637 7A2 2 0 002.826 14H9v-1H2.826a1 1 0 01-.995-.91l-.637-7A1 1 0 012.19 4h11.62a1 1 0 01.996 1.09L14.54 8h1.005l.256-2.819A2 2 0 0013.81 3H9.828a2 2 0 01-1.414-.586l-.828-.828A2 2 0 006.172 1H2.5a2 2 0 00-2 2zm5.672-1a1 1 0 01.707.293L7.586 3H2.19c-.24 0-.47.042-.683.12L1.5 2.98a1 1 0 011-.98h3.672z"/><path d="M13.5 10a.5.5 0 01.5.5V12h1.5a.5.5 0 110 1H14v1.5a.5.5 0 11-1 0V13h-1.5a.5.5 0 010-1H13v-1.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-folder-symlink" viewBox="0 0 16 16" id="folder-symlink" xmlns="http://www.w3.org/2000/svg"><path d="M11.798 8.271l-3.182 1.97c-.27.166-.616-.036-.616-.372V9.1s-2.571-.3-4 2.4c.571-4.8 3.143-4.8 4-4.8v-.769c0-.336.346-.538.616-.371l3.182 1.969c.27.166.27.576 0 .742z"/><path d="M.5 3l.04.87a1.99 1.99 0 00-.342 1.311l.637 7A2 2 0 002.826 14h10.348a2 2 0 001.991-1.819l.637-7A2 2 0 0013.81 3H9.828a2 2 0 01-1.414-.586l-.828-.828A2 2 0 006.172 1H2.5a2 2 0 00-2 2zm.694 2.09A1 1 0 012.19 4h11.62a1 1 0 01.996 1.09l-.636 7a1 1 0 01-.996.91H2.826a1 1 0 01-.995-.91l-.637-7zM6.172 2a1 1 0 01.707.293L7.586 3H2.19c-.24 0-.47.042-.683.12L1.5 2.98a1 1 0 011-.98h3.672z"/></symbol><symbol fill="currentColor" class="bi bi-folder-symlink-fill" viewBox="0 0 16 16" id="folder-symlink-fill" xmlns="http://www.w3.org/2000/svg"><path d="M13.81 3H9.828a2 2 0 01-1.414-.586l-.828-.828A2 2 0 006.172 1H2.5a2 2 0 00-2 2l.04.87a1.99 1.99 0 00-.342 1.311l.637 7A2 2 0 002.826 14h10.348a2 2 0 001.991-1.819l.637-7A2 2 0 0013.81 3zM2.19 3c-.24 0-.47.042-.683.12L1.5 2.98a1 1 0 011-.98h3.672a1 1 0 01.707.293L7.586 3H2.19zm9.608 5.271l-3.182 1.97c-.27.166-.616-.036-.616-.372V9.1s-2.571-.3-4 2.4c.571-4.8 3.143-4.8 4-4.8v-.769c0-.336.346-.538.616-.371l3.182 1.969c.27.166.27.576 0 .742z"/></symbol><symbol fill="currentColor" class="bi bi-folder-x" viewBox="0 0 16 16" id="folder-x" xmlns="http://www.w3.org/2000/svg"><path d="M.54 3.87L.5 3a2 2 0 012-2h3.672a2 2 0 011.414.586l.828.828A2 2 0 009.828 3h3.982a2 2 0 011.992 2.181L15.546 8H14.54l.265-2.91A1 1 0 0013.81 4H2.19a1 1 0 00-.996 1.09l.637 7a1 1 0 00.995.91H9v1H2.826a2 2 0 01-1.991-1.819l-.637-7a1.99 1.99 0 01.342-1.31zm6.339-1.577A1 1 0 006.172 2H2.5a1 1 0 00-1 .981l.006.139C1.72 3.042 1.95 3 2.19 3h5.396l-.707-.707z"/><path d="M11.854 10.146a.5.5 0 00-.707.708L12.293 12l-1.146 1.146a.5.5 0 00.707.708L13 12.707l1.146 1.147a.5.5 0 00.708-.708L13.707 12l1.147-1.146a.5.5 0 00-.707-.708L13 11.293l-1.146-1.147z"/></symbol><symbol fill="currentColor" class="bi bi-folder2" viewBox="0 0 16 16" id="folder2" xmlns="http://www.w3.org/2000/svg"><path d="M1 3.5A1.5 1.5 0 012.5 2h2.764c.958 0 1.76.56 2.311 1.184C7.985 3.648 8.48 4 9 4h4.5A1.5 1.5 0 0115 5.5v7a1.5 1.5 0 01-1.5 1.5h-11A1.5 1.5 0 011 12.5v-9zM2.5 3a.5.5 0 00-.5.5V6h12v-.5a.5.5 0 00-.5-.5H9c-.964 0-1.71-.629-2.174-1.154C6.374 3.334 5.82 3 5.264 3H2.5zM14 7H2v5.5a.5.5 0 00.5.5h11a.5.5 0 00.5-.5V7z"/></symbol><symbol fill="currentColor" class="bi bi-folder2-open" viewBox="0 0 16 16" id="folder2-open" xmlns="http://www.w3.org/2000/svg"><path d="M1 3.5A1.5 1.5 0 012.5 2h2.764c.958 0 1.76.56 2.311 1.184C7.985 3.648 8.48 4 9 4h4.5A1.5 1.5 0 0115 5.5v.64c.57.265.94.876.856 1.546l-.64 5.124A2.5 2.5 0 0112.733 15H3.266a2.5 2.5 0 01-2.481-2.19l-.64-5.124A1.5 1.5 0 011 6.14V3.5zM2 6h12v-.5a.5.5 0 00-.5-.5H9c-.964 0-1.71-.629-2.174-1.154C6.374 3.334 5.82 3 5.264 3H2.5a.5.5 0 00-.5.5V6zm-.367 1a.5.5 0 00-.496.562l.64 5.124A1.5 1.5 0 003.266 14h9.468a1.5 1.5 0 001.489-1.314l.64-5.124A.5.5 0 0014.367 7H1.633z"/></symbol><symbol fill="currentColor" class="bi bi-fonts" viewBox="0 0 16 16" id="fonts" xmlns="http://www.w3.org/2000/svg"><path d="M12.258 3h-8.51l-.083 2.46h.479c.26-1.544.758-1.783 2.693-1.845l.424-.013v7.827c0 .663-.144.82-1.3.923v.52h4.082v-.52c-1.162-.103-1.306-.26-1.306-.923V3.602l.431.013c1.934.062 2.434.301 2.693 1.846h.479L12.258 3z"/></symbol><symbol fill="currentColor" class="bi bi-forward" viewBox="0 0 16 16" id="forward" xmlns="http://www.w3.org/2000/svg"><path d="M9.502 5.513a.144.144 0 00-.202.134V6.65a.5.5 0 01-.5.5H2.5v2.9h6.3a.5.5 0 01.5.5v1.003c0 .108.11.176.202.134l3.984-2.933a.51.51 0 01.042-.028.147.147 0 000-.252.51.51 0 01-.042-.028L9.502 5.513zM8.3 5.647a1.144 1.144 0 011.767-.96l3.994 2.94a1.147 1.147 0 010 1.946l-3.994 2.94a1.144 1.144 0 01-1.767-.96v-.503H2a.5.5 0 01-.5-.5v-3.9a.5.5 0 01.5-.5h6.3v-.503z"/></symbol><symbol fill="currentColor" class="bi bi-forward-fill" viewBox="0 0 16 16" id="forward-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.77 12.11l4.012-2.953a.647.647 0 000-1.114L9.771 5.09a.644.644 0 00-.971.557V6.65H2v3.9h6.8v1.003c0 .505.545.808.97.557z"/></symbol><symbol fill="currentColor" class="bi bi-front" viewBox="0 0 16 16" id="front" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h8a2 2 0 012 2v2h2a2 2 0 012 2v8a2 2 0 01-2 2H6a2 2 0 01-2-2v-2H2a2 2 0 01-2-2V2zm5 10v2a1 1 0 001 1h8a1 1 0 001-1V6a1 1 0 00-1-1h-2v5a2 2 0 01-2 2H5z"/></symbol><symbol fill="currentColor" class="bi bi-fullscreen" viewBox="0 0 16 16" id="fullscreen" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 1a.5.5 0 00-.5.5v4a.5.5 0 01-1 0v-4A1.5 1.5 0 011.5 0h4a.5.5 0 010 1h-4zM10 .5a.5.5 0 01.5-.5h4A1.5 1.5 0 0116 1.5v4a.5.5 0 01-1 0v-4a.5.5 0 00-.5-.5h-4a.5.5 0 01-.5-.5zM.5 10a.5.5 0 01.5.5v4a.5.5 0 00.5.5h4a.5.5 0 010 1h-4A1.5 1.5 0 010 14.5v-4a.5.5 0 01.5-.5zm15 0a.5.5 0 01.5.5v4a1.5 1.5 0 01-1.5 1.5h-4a.5.5 0 010-1h4a.5.5 0 00.5-.5v-4a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-fullscreen-exit" viewBox="0 0 16 16" id="fullscreen-exit" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 0a.5.5 0 01.5.5v4A1.5 1.5 0 014.5 6h-4a.5.5 0 010-1h4a.5.5 0 00.5-.5v-4a.5.5 0 01.5-.5zm5 0a.5.5 0 01.5.5v4a.5.5 0 00.5.5h4a.5.5 0 010 1h-4A1.5 1.5 0 0110 4.5v-4a.5.5 0 01.5-.5zM0 10.5a.5.5 0 01.5-.5h4A1.5 1.5 0 016 11.5v4a.5.5 0 01-1 0v-4a.5.5 0 00-.5-.5h-4a.5.5 0 01-.5-.5zm10 1a1.5 1.5 0 011.5-1.5h4a.5.5 0 010 1h-4a.5.5 0 00-.5.5v4a.5.5 0 01-1 0v-4z"/></symbol><symbol fill="currentColor" class="bi bi-funnel" viewBox="0 0 16 16" id="funnel" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 1.5A.5.5 0 012 1h12a.5.5 0 01.5.5v2a.5.5 0 01-.128.334L10 8.692V13.5a.5.5 0 01-.342.474l-3 1A.5.5 0 016 14.5V8.692L1.628 3.834A.5.5 0 011.5 3.5v-2zm1 .5v1.308l4.372 4.858A.5.5 0 017 8.5v5.306l2-.666V8.5a.5.5 0 01.128-.334L13.5 3.308V2h-11z"/></symbol><symbol fill="currentColor" class="bi bi-funnel-fill" viewBox="0 0 16 16" id="funnel-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 1.5A.5.5 0 012 1h12a.5.5 0 01.5.5v2a.5.5 0 01-.128.334L10 8.692V13.5a.5.5 0 01-.342.474l-3 1A.5.5 0 016 14.5V8.692L1.628 3.834A.5.5 0 011.5 3.5v-2z"/></symbol><symbol fill="currentColor" class="bi bi-gear" viewBox="0 0 16 16" id="gear" xmlns="http://www.w3.org/2000/svg"><path d="M8 4.754a3.246 3.246 0 100 6.492 3.246 3.246 0 000-6.492zM5.754 8a2.246 2.246 0 114.492 0 2.246 2.246 0 01-4.492 0z"/><path d="M9.796 1.343c-.527-1.79-3.065-1.79-3.592 0l-.094.319a.873.873 0 01-1.255.52l-.292-.16c-1.64-.892-3.433.902-2.54 2.541l.159.292a.873.873 0 01-.52 1.255l-.319.094c-1.79.527-1.79 3.065 0 3.592l.319.094a.873.873 0 01.52 1.255l-.16.292c-.892 1.64.901 3.434 2.541 2.54l.292-.159a.873.873 0 011.255.52l.094.319c.527 1.79 3.065 1.79 3.592 0l.094-.319a.873.873 0 011.255-.52l.292.16c1.64.893 3.434-.902 2.54-2.541l-.159-.292a.873.873 0 01.52-1.255l.319-.094c1.79-.527 1.79-3.065 0-3.592l-.319-.094a.873.873 0 01-.52-1.255l.16-.292c.893-1.64-.902-3.433-2.541-2.54l-.292.159a.873.873 0 01-1.255-.52l-.094-.319zm-2.633.283c.246-.835 1.428-.835 1.674 0l.094.319a1.873 1.873 0 002.693 1.115l.291-.16c.764-.415 1.6.42 1.184 1.185l-.159.292a1.873 1.873 0 001.116 2.692l.318.094c.835.246.835 1.428 0 1.674l-.319.094a1.873 1.873 0 00-1.115 2.693l.16.291c.415.764-.42 1.6-1.185 1.184l-.291-.159a1.873 1.873 0 00-2.693 1.116l-.094.318c-.246.835-1.428.835-1.674 0l-.094-.319a1.873 1.873 0 00-2.692-1.115l-.292.16c-.764.415-1.6-.42-1.184-1.185l.159-.291A1.873 1.873 0 001.945 8.93l-.319-.094c-.835-.246-.835-1.428 0-1.674l.319-.094A1.873 1.873 0 003.06 4.377l-.16-.292c-.415-.764.42-1.6 1.185-1.184l.292.159a1.873 1.873 0 002.692-1.115l.094-.319z"/></symbol><symbol fill="currentColor" class="bi bi-gear-fill" viewBox="0 0 16 16" id="gear-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.405 1.05c-.413-1.4-2.397-1.4-2.81 0l-.1.34a1.464 1.464 0 01-2.105.872l-.31-.17c-1.283-.698-2.686.705-1.987 1.987l.169.311c.446.82.023 1.841-.872 2.105l-.34.1c-1.4.413-1.4 2.397 0 2.81l.34.1a1.464 1.464 0 01.872 2.105l-.17.31c-.698 1.283.705 2.686 1.987 1.987l.311-.169a1.464 1.464 0 012.105.872l.1.34c.413 1.4 2.397 1.4 2.81 0l.1-.34a1.464 1.464 0 012.105-.872l.31.17c1.283.698 2.686-.705 1.987-1.987l-.169-.311a1.464 1.464 0 01.872-2.105l.34-.1c1.4-.413 1.4-2.397 0-2.81l-.34-.1a1.464 1.464 0 01-.872-2.105l.17-.31c.698-1.283-.705-2.686-1.987-1.987l-.311.169a1.464 1.464 0 01-2.105-.872l-.1-.34zM8 10.93a2.929 2.929 0 110-5.86 2.929 2.929 0 010 5.858z"/></symbol><symbol fill="currentColor" class="bi bi-gear-wide" viewBox="0 0 16 16" id="gear-wide" xmlns="http://www.w3.org/2000/svg"><path d="M8.932.727c-.243-.97-1.62-.97-1.864 0l-.071.286a.96.96 0 01-1.622.434l-.205-.211c-.695-.719-1.888-.03-1.613.931l.08.284a.96.96 0 01-1.186 1.187l-.284-.081c-.96-.275-1.65.918-.931 1.613l.211.205a.96.96 0 01-.434 1.622l-.286.071c-.97.243-.97 1.62 0 1.864l.286.071a.96.96 0 01.434 1.622l-.211.205c-.719.695-.03 1.888.931 1.613l.284-.08a.96.96 0 011.187 1.187l-.081.283c-.275.96.918 1.65 1.613.931l.205-.211a.96.96 0 011.622.434l.071.286c.243.97 1.62.97 1.864 0l.071-.286a.96.96 0 011.622-.434l.205.211c.695.719 1.888.03 1.613-.931l-.08-.284a.96.96 0 011.187-1.187l.283.081c.96.275 1.65-.918.931-1.613l-.211-.205a.96.96 0 01.434-1.622l.286-.071c.97-.243.97-1.62 0-1.864l-.286-.071a.96.96 0 01-.434-1.622l.211-.205c.719-.695.03-1.888-.931-1.613l-.284.08a.96.96 0 01-1.187-1.186l.081-.284c.275-.96-.918-1.65-1.613-.931l-.205.211a.96.96 0 01-1.622-.434L8.932.727zM8 12.997a4.998 4.998 0 110-9.995 4.998 4.998 0 010 9.996z"/></symbol><symbol fill="currentColor" class="bi bi-gear-wide-connected" viewBox="0 0 16 16" id="gear-wide-connected" xmlns="http://www.w3.org/2000/svg"><path d="M7.068.727c.243-.97 1.62-.97 1.864 0l.071.286a.96.96 0 001.622.434l.205-.211c.695-.719 1.888-.03 1.613.931l-.08.284a.96.96 0 001.187 1.187l.283-.081c.96-.275 1.65.918.931 1.613l-.211.205a.96.96 0 00.434 1.622l.286.071c.97.243.97 1.62 0 1.864l-.286.071a.96.96 0 00-.434 1.622l.211.205c.719.695.03 1.888-.931 1.613l-.284-.08a.96.96 0 00-1.187 1.187l.081.283c.275.96-.918 1.65-1.613.931l-.205-.211a.96.96 0 00-1.622.434l-.071.286c-.243.97-1.62.97-1.864 0l-.071-.286a.96.96 0 00-1.622-.434l-.205.211c-.695.719-1.888.03-1.613-.931l.08-.284a.96.96 0 00-1.186-1.187l-.284.081c-.96.275-1.65-.918-.931-1.613l.211-.205a.96.96 0 00-.434-1.622l-.286-.071c-.97-.243-.97-1.62 0-1.864l.286-.071a.96.96 0 00.434-1.622l-.211-.205c-.719-.695-.03-1.888.931-1.613l.284.08a.96.96 0 001.187-1.186l-.081-.284c-.275-.96.918-1.65 1.613-.931l.205.211a.96.96 0 001.622-.434l.071-.286zM12.973 8.5H8.25l-2.834 3.779A4.998 4.998 0 0012.973 8.5zm0-1a4.998 4.998 0 00-7.557-3.779l2.834 3.78h4.723zM5.048 3.967c-.03.021-.058.043-.087.065l.087-.065zm-.431.355A4.984 4.984 0 003.002 8c0 1.455.622 2.765 1.615 3.678L7.375 8 4.617 4.322zm.344 7.646l.087.065-.087-.065z"/></symbol><symbol fill="currentColor" class="bi bi-gem" viewBox="0 0 16 16" id="gem" xmlns="http://www.w3.org/2000/svg"><path d="M3.1.7a.5.5 0 01.4-.2h9a.5.5 0 01.4.2l2.976 3.974c.149.185.156.45.01.644L8.4 15.3a.5.5 0 01-.8 0L.1 5.3a.5.5 0 010-.6l3-4zm11.386 3.785l-1.806-2.41-.776 2.413 2.582-.003zm-3.633.004l.961-2.989H4.186l.963 2.995 5.704-.006zM5.47 5.495L8 13.366l2.532-7.876-5.062.005zm-1.371-.999l-.78-2.422-1.818 2.425 2.598-.003zM1.499 5.5l5.113 6.817-2.192-6.82L1.5 5.5zm7.889 6.817l5.123-6.83-2.928.002-2.195 6.828z"/></symbol><symbol fill="currentColor" class="bi bi-gender-ambiguous" viewBox="0 0 16 16" id="gender-ambiguous" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11.5 1a.5.5 0 010-1h4a.5.5 0 01.5.5v4a.5.5 0 01-1 0V1.707l-3.45 3.45A4 4 0 018.5 10.97V13H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V14H6a.5.5 0 010-1h1.5v-2.03a4 4 0 113.471-6.648L14.293 1H11.5zm-.997 4.346a3 3 0 10-5.006 3.309 3 3 0 005.006-3.31z"/></symbol><symbol fill="currentColor" class="bi bi-gender-female" viewBox="0 0 16 16" id="gender-female" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 1a4 4 0 100 8 4 4 0 000-8zM3 5a5 5 0 115.5 4.975V12h2a.5.5 0 010 1h-2v2.5a.5.5 0 01-1 0V13h-2a.5.5 0 010-1h2V9.975A5 5 0 013 5z"/></symbol><symbol fill="currentColor" class="bi bi-gender-male" viewBox="0 0 16 16" id="gender-male" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M9.5 2a.5.5 0 010-1h5a.5.5 0 01.5.5v5a.5.5 0 01-1 0V2.707L9.871 6.836a5 5 0 11-.707-.707L13.293 2H9.5zM6 6a4 4 0 100 8 4 4 0 000-8z"/></symbol><symbol fill="currentColor" class="bi bi-gender-trans" viewBox="0 0 16 16" id="gender-trans" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M0 .5A.5.5 0 01.5 0h3a.5.5 0 010 1H1.707L3.5 2.793l.646-.647a.5.5 0 11.708.708l-.647.646.822.822A3.99 3.99 0 018 3c1.18 0 2.239.51 2.971 1.322L14.293 1H11.5a.5.5 0 010-1h4a.5.5 0 01.5.5v4a.5.5 0 01-1 0V1.707l-3.45 3.45A4 4 0 018.5 10.97V13H10a.5.5 0 010 1H8.5v1.5a.5.5 0 01-1 0V14H6a.5.5 0 010-1h1.5v-2.03a4 4 0 01-3.05-5.814l-.95-.949-.646.647a.5.5 0 11-.708-.708l.647-.646L1 1.707V3.5a.5.5 0 01-1 0v-3zm5.49 4.856a3 3 0 105.02 3.288 3 3 0 00-5.02-3.288z"/></symbol><symbol fill="currentColor" class="bi bi-geo" viewBox="0 0 16 16" id="geo" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 1a3 3 0 100 6 3 3 0 000-6zM4 4a4 4 0 114.5 3.969V13.5a.5.5 0 01-1 0V7.97A4 4 0 014 3.999zm2.493 8.574a.5.5 0 01-.411.575c-.712.118-1.28.295-1.655.493a1.319 1.319 0 00-.37.265.301.301 0 00-.057.09V14l.002.008a.147.147 0 00.016.033.617.617 0 00.145.15c.165.13.435.27.813.395.751.25 1.82.414 3.024.414s2.273-.163 3.024-.414c.378-.126.648-.265.813-.395a.619.619 0 00.146-.15.148.148 0 00.015-.033L12 14v-.004a.301.301 0 00-.057-.09 1.318 1.318 0 00-.37-.264c-.376-.198-.943-.375-1.655-.493a.5.5 0 11.164-.986c.77.127 1.452.328 1.957.594C12.5 13 13 13.4 13 14c0 .426-.26.752-.544.977-.29.228-.68.413-1.116.558-.878.293-2.059.465-3.34.465-1.281 0-2.462-.172-3.34-.465-.436-.145-.826-.33-1.116-.558C3.26 14.752 3 14.426 3 14c0-.599.5-1 .961-1.243.505-.266 1.187-.467 1.957-.594a.5.5 0 01.575.411z"/></symbol><symbol fill="currentColor" class="bi bi-geo-alt" viewBox="0 0 16 16" id="geo-alt" xmlns="http://www.w3.org/2000/svg"><path d="M12.166 8.94c-.524 1.062-1.234 2.12-1.96 3.07A31.493 31.493 0 018 14.58a31.481 31.481 0 01-2.206-2.57c-.726-.95-1.436-2.008-1.96-3.07C3.304 7.867 3 6.862 3 6a5 5 0 0110 0c0 .862-.305 1.867-.834 2.94zM8 16s6-5.686 6-10A6 6 0 002 6c0 4.314 6 10 6 10z"/><path d="M8 8a2 2 0 110-4 2 2 0 010 4zm0 1a3 3 0 100-6 3 3 0 000 6z"/></symbol><symbol fill="currentColor" class="bi bi-geo-alt-fill" viewBox="0 0 16 16" id="geo-alt-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16s6-5.686 6-10A6 6 0 002 6c0 4.314 6 10 6 10zm0-7a3 3 0 110-6 3 3 0 010 6z"/></symbol><symbol fill="currentColor" class="bi bi-geo-fill" viewBox="0 0 16 16" id="geo-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4 4a4 4 0 114.5 3.969V13.5a.5.5 0 01-1 0V7.97A4 4 0 014 3.999zm2.493 8.574a.5.5 0 01-.411.575c-.712.118-1.28.295-1.655.493a1.319 1.319 0 00-.37.265.301.301 0 00-.057.09V14l.002.008a.147.147 0 00.016.033.617.617 0 00.145.15c.165.13.435.27.813.395.751.25 1.82.414 3.024.414s2.273-.163 3.024-.414c.378-.126.648-.265.813-.395a.619.619 0 00.146-.15.148.148 0 00.015-.033L12 14v-.004a.301.301 0 00-.057-.09 1.318 1.318 0 00-.37-.264c-.376-.198-.943-.375-1.655-.493a.5.5 0 11.164-.986c.77.127 1.452.328 1.957.594C12.5 13 13 13.4 13 14c0 .426-.26.752-.544.977-.29.228-.68.413-1.116.558-.878.293-2.059.465-3.34.465-1.281 0-2.462-.172-3.34-.465-.436-.145-.826-.33-1.116-.558C3.26 14.752 3 14.426 3 14c0-.599.5-1 .961-1.243.505-.266 1.187-.467 1.957-.594a.5.5 0 01.575.411z"/></symbol><symbol fill="currentColor" class="bi bi-gift" viewBox="0 0 16 16" id="gift" xmlns="http://www.w3.org/2000/svg"><path d="M3 2.5a2.5 2.5 0 015 0 2.5 2.5 0 015 0v.006c0 .07 0 .27-.038.494H15a1 1 0 011 1v2a1 1 0 01-1 1v7.5a1.5 1.5 0 01-1.5 1.5h-11A1.5 1.5 0 011 14.5V7a1 1 0 01-1-1V4a1 1 0 011-1h2.038A2.968 2.968 0 013 2.506V2.5zm1.068.5H7v-.5a1.5 1.5 0 10-3 0c0 .085.002.274.045.43a.522.522 0 00.023.07zM9 3h2.932a.56.56 0 00.023-.07c.043-.156.045-.345.045-.43a1.5 1.5 0 00-3 0V3zM1 4v2h6V4H1zm8 0v2h6V4H9zm5 3H9v8h4.5a.5.5 0 00.5-.5V7zm-7 8V7H2v7.5a.5.5 0 00.5.5H7z"/></symbol><symbol fill="currentColor" class="bi bi-gift-fill" viewBox="0 0 16 16" id="gift-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 2.5a2.5 2.5 0 015 0 2.5 2.5 0 015 0v.006c0 .07 0 .27-.038.494H15a1 1 0 011 1v1a1 1 0 01-1 1H1a1 1 0 01-1-1V4a1 1 0 011-1h2.038A2.968 2.968 0 013 2.506V2.5zm1.068.5H7v-.5a1.5 1.5 0 10-3 0c0 .085.002.274.045.43a.522.522 0 00.023.07zM9 3h2.932a.56.56 0 00.023-.07c.043-.156.045-.345.045-.43a1.5 1.5 0 00-3 0V3zm6 4v7.5a1.5 1.5 0 01-1.5 1.5H9V7h6zM2.5 16A1.5 1.5 0 011 14.5V7h6v9H2.5z"/></symbol><symbol fill="currentColor" class="bi bi-github" viewBox="0 0 16 16" id="github" xmlns="http://www.w3.org/2000/svg"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0016 8c0-4.42-3.58-8-8-8z"/></symbol><symbol fill="currentColor" class="bi bi-globe" viewBox="0 0 16 16" id="globe" xmlns="http://www.w3.org/2000/svg"><path d="M0 8a8 8 0 1116 0A8 8 0 010 8zm7.5-6.923c-.67.204-1.335.82-1.887 1.855A7.97 7.97 0 005.145 4H7.5V1.077zM4.09 4a9.267 9.267 0 01.64-1.539 6.7 6.7 0 01.597-.933A7.025 7.025 0 002.255 4H4.09zm-.582 3.5c.03-.877.138-1.718.312-2.5H1.674a6.958 6.958 0 00-.656 2.5h2.49zM4.847 5a12.5 12.5 0 00-.338 2.5H7.5V5H4.847zM8.5 5v2.5h2.99a12.495 12.495 0 00-.337-2.5H8.5zM4.51 8.5a12.5 12.5 0 00.337 2.5H7.5V8.5H4.51zm3.99 0V11h2.653c.187-.765.306-1.608.338-2.5H8.5zM5.145 12c.138.386.295.744.468 1.068.552 1.035 1.218 1.65 1.887 1.855V12H5.145zm.182 2.472a6.696 6.696 0 01-.597-.933A9.268 9.268 0 014.09 12H2.255a7.024 7.024 0 003.072 2.472zM3.82 11a13.652 13.652 0 01-.312-2.5h-2.49c.062.89.291 1.733.656 2.5H3.82zm6.853 3.472A7.024 7.024 0 0013.745 12H11.91a9.27 9.27 0 01-.64 1.539 6.688 6.688 0 01-.597.933zM8.5 12v2.923c.67-.204 1.335-.82 1.887-1.855.173-.324.33-.682.468-1.068H8.5zm3.68-1h2.146c.365-.767.594-1.61.656-2.5h-2.49a13.65 13.65 0 01-.312 2.5zm2.802-3.5a6.959 6.959 0 00-.656-2.5H12.18c.174.782.282 1.623.312 2.5h2.49zM11.27 2.461c.247.464.462.98.64 1.539h1.835a7.024 7.024 0 00-3.072-2.472c.218.284.418.598.597.933zM10.855 4a7.966 7.966 0 00-.468-1.068C9.835 1.897 9.17 1.282 8.5 1.077V4h2.355z"/></symbol><symbol fill="currentColor" class="bi bi-globe2" viewBox="0 0 16 16" id="globe2" xmlns="http://www.w3.org/2000/svg"><path d="M0 8a8 8 0 1116 0A8 8 0 010 8zm7.5-6.923c-.67.204-1.335.82-1.887 1.855-.143.268-.276.56-.395.872.705.157 1.472.257 2.282.287V1.077zM4.249 3.539c.142-.384.304-.744.481-1.078a6.7 6.7 0 01.597-.933A7.01 7.01 0 003.051 3.05c.362.184.763.349 1.198.49zM3.509 7.5c.036-1.07.188-2.087.436-3.008a9.124 9.124 0 01-1.565-.667A6.964 6.964 0 001.018 7.5h2.49zm1.4-2.741a12.344 12.344 0 00-.4 2.741H7.5V5.091c-.91-.03-1.783-.145-2.591-.332zM8.5 5.09V7.5h2.99a12.342 12.342 0 00-.399-2.741c-.808.187-1.681.301-2.591.332zM4.51 8.5c.035.987.176 1.914.399 2.741A13.612 13.612 0 017.5 10.91V8.5H4.51zm3.99 0v2.409c.91.03 1.783.145 2.591.332.223-.827.364-1.754.4-2.741H8.5zm-3.282 3.696c.12.312.252.604.395.872.552 1.035 1.218 1.65 1.887 1.855V11.91c-.81.03-1.577.13-2.282.287zm.11 2.276a6.696 6.696 0 01-.598-.933 8.853 8.853 0 01-.481-1.079 8.38 8.38 0 00-1.198.49 7.01 7.01 0 002.276 1.522zm-1.383-2.964A13.36 13.36 0 013.508 8.5h-2.49a6.963 6.963 0 001.362 3.675c.47-.258.995-.482 1.565-.667zm6.728 2.964a7.009 7.009 0 002.275-1.521 8.376 8.376 0 00-1.197-.49 8.853 8.853 0 01-.481 1.078 6.688 6.688 0 01-.597.933zM8.5 11.909v3.014c.67-.204 1.335-.82 1.887-1.855.143-.268.276-.56.395-.872A12.63 12.63 0 008.5 11.91zm3.555-.401c.57.185 1.095.409 1.565.667A6.963 6.963 0 0014.982 8.5h-2.49a13.36 13.36 0 01-.437 3.008zM14.982 7.5a6.963 6.963 0 00-1.362-3.675c-.47.258-.995.482-1.565.667.248.92.4 1.938.437 3.008h2.49zM11.27 2.461c.177.334.339.694.482 1.078a8.368 8.368 0 001.196-.49 7.01 7.01 0 00-2.275-1.52c.218.283.418.597.597.932zm-.488 1.343a7.765 7.765 0 00-.395-.872C9.835 1.897 9.17 1.282 8.5 1.077V4.09c.81-.03 1.577-.13 2.282-.287z"/></symbol><symbol fill="currentColor" class="bi bi-google" viewBox="0 0 16 16" id="google" xmlns="http://www.w3.org/2000/svg"><path d="M15.545 6.558a9.42 9.42 0 01.139 1.626c0 2.434-.87 4.492-2.384 5.885h.002C11.978 15.292 10.158 16 8 16A8 8 0 118 0a7.689 7.689 0 015.352 2.082l-2.284 2.284A4.347 4.347 0 008 3.166c-2.087 0-3.86 1.408-4.492 3.304a4.792 4.792 0 000 3.063h.003c.635 1.893 2.405 3.301 4.492 3.301 1.078 0 2.004-.276 2.722-.764h-.003a3.702 3.702 0 001.599-2.431H8v-3.08h7.545z"/></symbol><symbol fill="currentColor" class="bi bi-graph-down" viewBox="0 0 16 16" id="graph-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M0 0h1v15h15v1H0V0zm10 11.5a.5.5 0 00.5.5h4a.5.5 0 00.5-.5v-4a.5.5 0 00-1 0v2.6l-3.613-4.417a.5.5 0 00-.74-.037L7.06 8.233 3.404 3.206a.5.5 0 00-.808.588l4 5.5a.5.5 0 00.758.06l2.609-2.61L13.445 11H10.5a.5.5 0 00-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-graph-up" viewBox="0 0 16 16" id="graph-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M0 0h1v15h15v1H0V0zm10 3.5a.5.5 0 01.5-.5h4a.5.5 0 01.5.5v4a.5.5 0 01-1 0V4.9l-3.613 4.417a.5.5 0 01-.74.037L7.06 6.767l-3.656 5.027a.5.5 0 01-.808-.588l4-5.5a.5.5 0 01.758-.06l2.609 2.61L13.445 4H10.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-grid" viewBox="0 0 16 16" id="grid" xmlns="http://www.w3.org/2000/svg"><path d="M1 2.5A1.5 1.5 0 012.5 1h3A1.5 1.5 0 017 2.5v3A1.5 1.5 0 015.5 7h-3A1.5 1.5 0 011 5.5v-3zM2.5 2a.5.5 0 00-.5.5v3a.5.5 0 00.5.5h3a.5.5 0 00.5-.5v-3a.5.5 0 00-.5-.5h-3zm6.5.5A1.5 1.5 0 0110.5 1h3A1.5 1.5 0 0115 2.5v3A1.5 1.5 0 0113.5 7h-3A1.5 1.5 0 019 5.5v-3zm1.5-.5a.5.5 0 00-.5.5v3a.5.5 0 00.5.5h3a.5.5 0 00.5-.5v-3a.5.5 0 00-.5-.5h-3zM1 10.5A1.5 1.5 0 012.5 9h3A1.5 1.5 0 017 10.5v3A1.5 1.5 0 015.5 15h-3A1.5 1.5 0 011 13.5v-3zm1.5-.5a.5.5 0 00-.5.5v3a.5.5 0 00.5.5h3a.5.5 0 00.5-.5v-3a.5.5 0 00-.5-.5h-3zm6.5.5A1.5 1.5 0 0110.5 9h3a1.5 1.5 0 011.5 1.5v3a1.5 1.5 0 01-1.5 1.5h-3A1.5 1.5 0 019 13.5v-3zm1.5-.5a.5.5 0 00-.5.5v3a.5.5 0 00.5.5h3a.5.5 0 00.5-.5v-3a.5.5 0 00-.5-.5h-3z"/></symbol><symbol fill="currentColor" class="bi bi-grid-1x2" viewBox="0 0 16 16" id="grid-1x2" xmlns="http://www.w3.org/2000/svg"><path d="M6 1H1v14h5V1zm9 0h-5v5h5V1zm0 9v5h-5v-5h5zM0 1a1 1 0 011-1h5a1 1 0 011 1v14a1 1 0 01-1 1H1a1 1 0 01-1-1V1zm9 0a1 1 0 011-1h5a1 1 0 011 1v5a1 1 0 01-1 1h-5a1 1 0 01-1-1V1zm1 8a1 1 0 00-1 1v5a1 1 0 001 1h5a1 1 0 001-1v-5a1 1 0 00-1-1h-5z"/></symbol><symbol fill="currentColor" class="bi bi-grid-1x2-fill" viewBox="0 0 16 16" id="grid-1x2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 1a1 1 0 011-1h5a1 1 0 011 1v14a1 1 0 01-1 1H1a1 1 0 01-1-1V1zm9 0a1 1 0 011-1h5a1 1 0 011 1v5a1 1 0 01-1 1h-5a1 1 0 01-1-1V1zm0 9a1 1 0 011-1h5a1 1 0 011 1v5a1 1 0 01-1 1h-5a1 1 0 01-1-1v-5z"/></symbol><symbol fill="currentColor" class="bi bi-grid-3x2" viewBox="0 0 16 16" id="grid-3x2" xmlns="http://www.w3.org/2000/svg"><path d="M0 3.5A1.5 1.5 0 011.5 2h13A1.5 1.5 0 0116 3.5v8a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 11.5v-8zM1.5 3a.5.5 0 00-.5.5V7h4V3H1.5zM5 8H1v3.5a.5.5 0 00.5.5H5V8zm1 0v4h4V8H6zm4-1V3H6v4h4zm1 1v4h3.5a.5.5 0 00.5-.5V8h-4zm0-1h4V3.5a.5.5 0 00-.5-.5H11v4z"/></symbol><symbol fill="currentColor" class="bi bi-grid-3x2-gap" viewBox="0 0 16 16" id="grid-3x2-gap" xmlns="http://www.w3.org/2000/svg"><path d="M4 4v2H2V4h2zm1 7V9a1 1 0 00-1-1H2a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm0-5V4a1 1 0 00-1-1H2a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm5 5V9a1 1 0 00-1-1H7a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm0-5V4a1 1 0 00-1-1H7a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zM9 4v2H7V4h2zm5 0h-2v2h2V4zM4 9v2H2V9h2zm5 0v2H7V9h2zm5 0v2h-2V9h2zm-3-5a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1h-2a1 1 0 01-1-1V4zm1 4a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1V9a1 1 0 00-1-1h-2z"/></symbol><symbol fill="currentColor" class="bi bi-grid-3x2-gap-fill" viewBox="0 0 16 16" id="grid-3x2-gap-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1 4a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H2a1 1 0 01-1-1V4zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H7a1 1 0 01-1-1V4zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1h-2a1 1 0 01-1-1V4zM1 9a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H2a1 1 0 01-1-1V9zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H7a1 1 0 01-1-1V9zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1h-2a1 1 0 01-1-1V9z"/></symbol><symbol fill="currentColor" class="bi bi-grid-3x3" viewBox="0 0 16 16" id="grid-3x3" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A1.5 1.5 0 011.5 0h13A1.5 1.5 0 0116 1.5v13a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 14.5v-13zM1.5 1a.5.5 0 00-.5.5V5h4V1H1.5zM5 6H1v4h4V6zm1 4h4V6H6v4zm-1 1H1v3.5a.5.5 0 00.5.5H5v-4zm1 0v4h4v-4H6zm5 0v4h3.5a.5.5 0 00.5-.5V11h-4zm0-1h4V6h-4v4zm0-5h4V1.5a.5.5 0 00-.5-.5H11v4zm-1 0V1H6v4h4z"/></symbol><symbol fill="currentColor" class="bi bi-grid-3x3-gap" viewBox="0 0 16 16" id="grid-3x3-gap" xmlns="http://www.w3.org/2000/svg"><path d="M4 2v2H2V2h2zm1 12v-2a1 1 0 00-1-1H2a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm0-5V7a1 1 0 00-1-1H2a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm0-5V2a1 1 0 00-1-1H2a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm5 10v-2a1 1 0 00-1-1H7a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm0-5V7a1 1 0 00-1-1H7a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zm0-5V2a1 1 0 00-1-1H7a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1zM9 2v2H7V2h2zm5 0v2h-2V2h2zM4 7v2H2V7h2zm5 0v2H7V7h2zm5 0h-2v2h2V7zM4 12v2H2v-2h2zm5 0v2H7v-2h2zm5 0v2h-2v-2h2zM12 1a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1V2a1 1 0 00-1-1h-2zm-1 6a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1h-2a1 1 0 01-1-1V7zm1 4a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1v-2a1 1 0 00-1-1h-2z"/></symbol><symbol fill="currentColor" class="bi bi-grid-3x3-gap-fill" viewBox="0 0 16 16" id="grid-3x3-gap-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1 2a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H2a1 1 0 01-1-1V2zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H7a1 1 0 01-1-1V2zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1h-2a1 1 0 01-1-1V2zM1 7a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H2a1 1 0 01-1-1V7zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H7a1 1 0 01-1-1V7zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1h-2a1 1 0 01-1-1V7zM1 12a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H2a1 1 0 01-1-1v-2zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1H7a1 1 0 01-1-1v-2zm5 0a1 1 0 011-1h2a1 1 0 011 1v2a1 1 0 01-1 1h-2a1 1 0 01-1-1v-2z"/></symbol><symbol fill="currentColor" class="bi bi-grid-fill" viewBox="0 0 16 16" id="grid-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1 2.5A1.5 1.5 0 012.5 1h3A1.5 1.5 0 017 2.5v3A1.5 1.5 0 015.5 7h-3A1.5 1.5 0 011 5.5v-3zm8 0A1.5 1.5 0 0110.5 1h3A1.5 1.5 0 0115 2.5v3A1.5 1.5 0 0113.5 7h-3A1.5 1.5 0 019 5.5v-3zm-8 8A1.5 1.5 0 012.5 9h3A1.5 1.5 0 017 10.5v3A1.5 1.5 0 015.5 15h-3A1.5 1.5 0 011 13.5v-3zm8 0A1.5 1.5 0 0110.5 9h3a1.5 1.5 0 011.5 1.5v3a1.5 1.5 0 01-1.5 1.5h-3A1.5 1.5 0 019 13.5v-3z"/></symbol><symbol fill="currentColor" class="bi bi-grip-horizontal" viewBox="0 0 16 16" id="grip-horizontal" xmlns="http://www.w3.org/2000/svg"><path d="M2 8a1 1 0 110 2 1 1 0 010-2zm0-3a1 1 0 110 2 1 1 0 010-2zm3 3a1 1 0 110 2 1 1 0 010-2zm0-3a1 1 0 110 2 1 1 0 010-2zm3 3a1 1 0 110 2 1 1 0 010-2zm0-3a1 1 0 110 2 1 1 0 010-2zm3 3a1 1 0 110 2 1 1 0 010-2zm0-3a1 1 0 110 2 1 1 0 010-2zm3 3a1 1 0 110 2 1 1 0 010-2zm0-3a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-grip-vertical" viewBox="0 0 16 16" id="grip-vertical" xmlns="http://www.w3.org/2000/svg"><path d="M7 2a1 1 0 11-2 0 1 1 0 012 0zm3 0a1 1 0 11-2 0 1 1 0 012 0zM7 5a1 1 0 11-2 0 1 1 0 012 0zm3 0a1 1 0 11-2 0 1 1 0 012 0zM7 8a1 1 0 11-2 0 1 1 0 012 0zm3 0a1 1 0 11-2 0 1 1 0 012 0zm-3 3a1 1 0 11-2 0 1 1 0 012 0zm3 0a1 1 0 11-2 0 1 1 0 012 0zm-3 3a1 1 0 11-2 0 1 1 0 012 0zm3 0a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-hammer" viewBox="0 0 16 16" id="hammer" xmlns="http://www.w3.org/2000/svg"><path d="M9.972 2.508a.5.5 0 00-.16-.556l-.178-.129a5.009 5.009 0 00-2.076-.783C6.215.862 4.504 1.229 2.84 3.133H1.786a.5.5 0 00-.354.147L.146 4.567a.5.5 0 000 .706l2.571 2.579a.5.5 0 00.708 0l1.286-1.29a.5.5 0 00.146-.353V5.57l8.387 8.873A.5.5 0 0014 14.5l1.5-1.5a.5.5 0 00.017-.689l-9.129-8.63c.747-.456 1.772-.839 3.112-.839a.5.5 0 00.472-.334z"/></symbol><symbol fill="currentColor" class="bi bi-hand-index" viewBox="0 0 16 16" id="hand-index" xmlns="http://www.w3.org/2000/svg"><path d="M6.75 1a.75.75 0 01.75.75V8a.5.5 0 001 0V5.467l.086-.004c.317-.012.637-.008.816.027.134.027.294.096.448.182.077.042.15.147.15.314V8a.5.5 0 101 0V6.435a4.9 4.9 0 01.106-.01c.316-.024.584-.01.708.04.118.046.3.207.486.43.081.096.15.19.2.259V8.5a.5.5 0 001 0v-1h.342a1 1 0 01.995 1.1l-.271 2.715a2.5 2.5 0 01-.317.991l-1.395 2.442a.5.5 0 01-.434.252H6.035a.5.5 0 01-.416-.223l-1.433-2.15a1.5 1.5 0 01-.243-.666l-.345-3.105a.5.5 0 01.399-.546L5 8.11V9a.5.5 0 001 0V1.75A.75.75 0 016.75 1zM8.5 4.466V1.75a1.75 1.75 0 10-3.5 0v5.34l-1.2.24a1.5 1.5 0 00-1.196 1.636l.345 3.106a2.5 2.5 0 00.405 1.11l1.433 2.15A1.5 1.5 0 006.035 16h6.385a1.5 1.5 0 001.302-.756l1.395-2.441a3.5 3.5 0 00.444-1.389l.271-2.715a2 2 0 00-1.99-2.199h-.581a5.114 5.114 0 00-.195-.248c-.191-.229-.51-.568-.88-.716-.364-.146-.846-.132-1.158-.108l-.132.012a1.26 1.26 0 00-.56-.642 2.632 2.632 0 00-.738-.288c-.31-.062-.739-.058-1.05-.046l-.048.002zm2.094 2.025z"/></symbol><symbol fill="currentColor" class="bi bi-hand-index-fill" viewBox="0 0 16 16" id="hand-index-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 4.466V1.75a1.75 1.75 0 10-3.5 0v5.34l-1.2.24a1.5 1.5 0 00-1.196 1.636l.345 3.106a2.5 2.5 0 00.405 1.11l1.433 2.15A1.5 1.5 0 006.035 16h6.385a1.5 1.5 0 001.302-.756l1.395-2.441a3.5 3.5 0 00.444-1.389l.271-2.715a2 2 0 00-1.99-2.199h-.581a5.114 5.114 0 00-.195-.248c-.191-.229-.51-.568-.88-.716-.364-.146-.846-.132-1.158-.108l-.132.012a1.26 1.26 0 00-.56-.642 2.632 2.632 0 00-.738-.288c-.31-.062-.739-.058-1.05-.046l-.048.002z"/></symbol><symbol fill="currentColor" class="bi bi-hand-index-thumb" viewBox="0 0 16 16" id="hand-index-thumb" xmlns="http://www.w3.org/2000/svg"><path d="M6.75 1a.75.75 0 01.75.75V8a.5.5 0 001 0V5.467l.086-.004c.317-.012.637-.008.816.027.134.027.294.096.448.182.077.042.15.147.15.314V8a.5.5 0 001 0V6.435l.106-.01c.316-.024.584-.01.708.04.118.046.3.207.486.43.081.096.15.19.2.259V8.5a.5.5 0 101 0v-1h.342a1 1 0 01.995 1.1l-.271 2.715a2.5 2.5 0 01-.317.991l-1.395 2.442a.5.5 0 01-.434.252H6.118a.5.5 0 01-.447-.276l-1.232-2.465-2.512-4.185a.517.517 0 01.809-.631l2.41 2.41A.5.5 0 006 9.5V1.75A.75.75 0 016.75 1zM8.5 4.466V1.75a1.75 1.75 0 10-3.5 0v6.543L3.443 6.736A1.517 1.517 0 001.07 8.588l2.491 4.153 1.215 2.43A1.5 1.5 0 006.118 16h6.302a1.5 1.5 0 001.302-.756l1.395-2.441a3.5 3.5 0 00.444-1.389l.271-2.715a2 2 0 00-1.99-2.199h-.581a5.114 5.114 0 00-.195-.248c-.191-.229-.51-.568-.88-.716-.364-.146-.846-.132-1.158-.108l-.132.012a1.26 1.26 0 00-.56-.642 2.632 2.632 0 00-.738-.288c-.31-.062-.739-.058-1.05-.046l-.048.002zm2.094 2.025z"/></symbol><symbol fill="currentColor" class="bi bi-hand-index-thumb-fill" viewBox="0 0 16 16" id="hand-index-thumb-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 1.75v2.716l.047-.002c.312-.012.742-.016 1.051.046.28.056.543.18.738.288.273.152.456.385.56.642l.132-.012c.312-.024.794-.038 1.158.108.37.148.689.487.88.716.075.09.141.175.195.248h.582a2 2 0 011.99 2.199l-.272 2.715a3.5 3.5 0 01-.444 1.389l-1.395 2.441A1.5 1.5 0 0112.42 16H6.118a1.5 1.5 0 01-1.342-.83l-1.215-2.43L1.07 8.589a1.517 1.517 0 012.373-1.852L5 8.293V1.75a1.75 1.75 0 013.5 0z"/></symbol><symbol fill="currentColor" class="bi bi-hand-thumbs-down" viewBox="0 0 16 16" id="hand-thumbs-down" xmlns="http://www.w3.org/2000/svg"><path d="M8.864 15.674c-.956.24-1.843-.484-1.908-1.42-.072-1.05-.23-2.015-.428-2.59-.125-.36-.479-1.012-1.04-1.638-.557-.624-1.282-1.179-2.131-1.41C2.685 8.432 2 7.85 2 7V3c0-.845.682-1.464 1.448-1.546 1.07-.113 1.564-.415 2.068-.723l.048-.029c.272-.166.578-.349.97-.484C6.931.08 7.395 0 8 0h3.5c.937 0 1.599.478 1.934 1.064.164.287.254.607.254.913 0 .152-.023.312-.077.464.201.262.38.577.488.9.11.33.172.762.004 1.15.069.13.12.268.159.403.077.27.113.567.113.856 0 .289-.036.586-.113.856-.035.12-.08.244-.138.363.394.571.418 1.2.234 1.733-.206.592-.682 1.1-1.2 1.272-.847.283-1.803.276-2.516.211a9.877 9.877 0 01-.443-.05 9.364 9.364 0 01-.062 4.51c-.138.508-.55.848-1.012.964l-.261.065zM11.5 1H8c-.51 0-.863.068-1.14.163-.281.097-.506.229-.776.393l-.04.025c-.555.338-1.198.73-2.49.868-.333.035-.554.29-.554.55V7c0 .255.226.543.62.65 1.095.3 1.977.997 2.614 1.709.635.71 1.064 1.475 1.238 1.977.243.7.407 1.768.482 2.85.025.362.36.595.667.518l.262-.065c.16-.04.258-.144.288-.255a8.34 8.34 0 00-.145-4.726.5.5 0 01.595-.643h.003l.014.004.058.013a8.912 8.912 0 001.036.157c.663.06 1.457.054 2.11-.163.175-.059.45-.301.57-.651.107-.308.087-.67-.266-1.021L12.793 7l.353-.354c.043-.042.105-.14.154-.315.048-.167.075-.37.075-.581 0-.211-.027-.414-.075-.581-.05-.174-.111-.273-.154-.315l-.353-.354.353-.354c.047-.047.109-.176.005-.488a2.224 2.224 0 00-.505-.804l-.353-.354.353-.354c.006-.005.041-.05.041-.17a.866.866 0 00-.121-.415C12.4 1.272 12.063 1 11.5 1z"/></symbol><symbol fill="currentColor" class="bi bi-hand-thumbs-down-fill" viewBox="0 0 16 16" id="hand-thumbs-down-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.956 14.534c.065.936.952 1.659 1.908 1.42l.261-.065a1.378 1.378 0 001.012-.965c.22-.816.533-2.512.062-4.51.136.02.285.037.443.051.713.065 1.669.071 2.516-.211.518-.173.994-.68 1.2-1.272a1.896 1.896 0 00-.234-1.734c.058-.118.103-.242.138-.362.077-.27.113-.568.113-.856 0-.29-.036-.586-.113-.857a2.094 2.094 0 00-.16-.403c.169-.387.107-.82-.003-1.149a3.162 3.162 0 00-.488-.9c.054-.153.076-.313.076-.465a1.86 1.86 0 00-.253-.912C13.1.757 12.437.28 11.5.28H8c-.605 0-1.07.08-1.466.217a4.823 4.823 0 00-.97.485l-.048.029c-.504.308-.999.61-2.068.723C2.682 1.815 2 2.434 2 3.279v4c0 .851.685 1.433 1.357 1.616.849.232 1.574.787 2.132 1.41.56.626.914 1.28 1.039 1.638.199.575.356 1.54.428 2.591z"/></symbol><symbol fill="currentColor" class="bi bi-hand-thumbs-up" viewBox="0 0 16 16" id="hand-thumbs-up" xmlns="http://www.w3.org/2000/svg"><path d="M8.864.046C7.908-.193 7.02.53 6.956 1.466c-.072 1.051-.23 2.016-.428 2.59-.125.36-.479 1.013-1.04 1.639-.557.623-1.282 1.178-2.131 1.41C2.685 7.288 2 7.87 2 8.72v4.001c0 .845.682 1.464 1.448 1.545 1.07.114 1.564.415 2.068.723l.048.03c.272.165.578.348.97.484.397.136.861.217 1.466.217h3.5c.937 0 1.599-.477 1.934-1.064a1.86 1.86 0 00.254-.912c0-.152-.023-.312-.077-.464.201-.263.38-.578.488-.901.11-.33.172-.762.004-1.149.069-.13.12-.269.159-.403.077-.27.113-.568.113-.857 0-.288-.036-.585-.113-.856a2.144 2.144 0 00-.138-.362 1.9 1.9 0 00.234-1.734c-.206-.592-.682-1.1-1.2-1.272-.847-.282-1.803-.276-2.516-.211a9.84 9.84 0 00-.443.05 9.365 9.365 0 00-.062-4.509A1.38 1.38 0 009.125.111L8.864.046zM11.5 14.721H8c-.51 0-.863-.069-1.14-.164-.281-.097-.506-.228-.776-.393l-.04-.024c-.555-.339-1.198-.731-2.49-.868-.333-.036-.554-.29-.554-.55V8.72c0-.254.226-.543.62-.65 1.095-.3 1.977-.996 2.614-1.708.635-.71 1.064-1.475 1.238-1.978.243-.7.407-1.768.482-2.85.025-.362.36-.594.667-.518l.262.066c.16.04.258.143.288.255a8.34 8.34 0 01-.145 4.725.5.5 0 00.595.644l.003-.001.014-.003.058-.014a8.908 8.908 0 011.036-.157c.663-.06 1.457-.054 2.11.164.175.058.45.3.57.65.107.308.087.67-.266 1.022l-.353.353.353.354c.043.043.105.141.154.315.048.167.075.37.075.581 0 .212-.027.414-.075.582-.05.174-.111.272-.154.315l-.353.353.353.354c.047.047.109.177.005.488a2.224 2.224 0 01-.505.805l-.353.353.353.354c.006.005.041.05.041.17a.866.866 0 01-.121.416c-.165.288-.503.56-1.066.56z"/></symbol><symbol fill="currentColor" class="bi bi-hand-thumbs-up-fill" viewBox="0 0 16 16" id="hand-thumbs-up-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.956 1.745C7.021.81 7.908.087 8.864.325l.261.066c.463.116.874.456 1.012.965.22.816.533 2.511.062 4.51a9.84 9.84 0 01.443-.051c.713-.065 1.669-.072 2.516.21.518.173.994.681 1.2 1.273.184.532.16 1.162-.234 1.733.058.119.103.242.138.363.077.27.113.567.113.856 0 .289-.036.586-.113.856-.039.135-.09.273-.16.404.169.387.107.819-.003 1.148a3.163 3.163 0 01-.488.901c.054.152.076.312.076.465 0 .305-.089.625-.253.912C13.1 15.522 12.437 16 11.5 16H8c-.605 0-1.07-.081-1.466-.218a4.82 4.82 0 01-.97-.484l-.048-.03c-.504-.307-.999-.609-2.068-.722C2.682 14.464 2 13.846 2 13V9c0-.85.685-1.432 1.357-1.615.849-.232 1.574-.787 2.132-1.41.56-.627.914-1.28 1.039-1.639.199-.575.356-1.539.428-2.59z"/></symbol><symbol fill="currentColor" class="bi bi-handbag" viewBox="0 0 16 16" id="handbag" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a2 2 0 012 2v2H6V3a2 2 0 012-2zm3 4V3a3 3 0 10-6 0v2H3.36a1.5 1.5 0 00-1.483 1.277L.85 13.13A2.5 2.5 0 003.322 16h9.355a2.5 2.5 0 002.473-2.87l-1.028-6.853A1.5 1.5 0 0012.64 5H11zm-1 1v1.5a.5.5 0 001 0V6h1.639a.5.5 0 01.494.426l1.028 6.851A1.5 1.5 0 0112.678 15H3.322a1.5 1.5 0 01-1.483-1.723l1.028-6.851A.5.5 0 013.36 6H5v1.5a.5.5 0 101 0V6h4z"/></symbol><symbol fill="currentColor" class="bi bi-handbag-fill" viewBox="0 0 16 16" id="handbag-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a2 2 0 00-2 2v2H5V3a3 3 0 116 0v2h-1V3a2 2 0 00-2-2zM5 5H3.36a1.5 1.5 0 00-1.483 1.277L.85 13.13A2.5 2.5 0 003.322 16h9.355a2.5 2.5 0 002.473-2.87l-1.028-6.853A1.5 1.5 0 0012.64 5H11v1.5a.5.5 0 01-1 0V5H6v1.5a.5.5 0 01-1 0V5z"/></symbol><symbol fill="currentColor" class="bi bi-hash" viewBox="0 0 16 16" id="hash" xmlns="http://www.w3.org/2000/svg"><path d="M8.39 12.648a1.32 1.32 0 00-.015.18c0 .305.21.508.5.508.266 0 .492-.172.555-.477l.554-2.703h1.204c.421 0 .617-.234.617-.547 0-.312-.188-.53-.617-.53h-.985l.516-2.524h1.265c.43 0 .618-.227.618-.547 0-.313-.188-.524-.618-.524h-1.046l.476-2.304a1.06 1.06 0 00.016-.164.51.51 0 00-.516-.516.54.54 0 00-.539.43l-.523 2.554H7.617l.477-2.304c.008-.04.015-.118.015-.164a.512.512 0 00-.523-.516.539.539 0 00-.531.43L6.53 5.484H5.414c-.43 0-.617.22-.617.532 0 .312.187.539.617.539h.906l-.515 2.523H4.609c-.421 0-.609.219-.609.531 0 .313.188.547.61.547h.976l-.516 2.492c-.008.04-.015.125-.015.18 0 .305.21.508.5.508.265 0 .492-.172.554-.477l.555-2.703h2.242l-.515 2.492zm-1-6.109h2.266l-.515 2.563H6.859l.532-2.563z"/></symbol><symbol fill="currentColor" class="bi bi-hdd" viewBox="0 0 16 16" id="hdd" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 11a.5.5 0 100-1 .5.5 0 000 1zM3 10.5a.5.5 0 11-1 0 .5.5 0 011 0z"/><path d="M16 11a2 2 0 01-2 2H2a2 2 0 01-2-2V9.51c0-.418.105-.83.305-1.197l2.472-4.531A1.5 1.5 0 014.094 3h7.812a1.5 1.5 0 011.317.782l2.472 4.53c.2.368.305.78.305 1.198V11zM3.655 4.26L1.592 8.043C1.724 8.014 1.86 8 2 8h12c.14 0 .276.014.408.042L12.345 4.26a.5.5 0 00-.439-.26H4.094a.5.5 0 00-.44.26zM1 10v1a1 1 0 001 1h12a1 1 0 001-1v-1a1 1 0 00-1-1H2a1 1 0 00-1 1z"/></symbol><symbol fill="currentColor" class="bi bi-hdd-fill" viewBox="0 0 16 16" id="hdd-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 10a2 2 0 012-2h12a2 2 0 012 2v1a2 2 0 01-2 2H2a2 2 0 01-2-2v-1zm2.5 1a.5.5 0 100-1 .5.5 0 000 1zm2 0a.5.5 0 100-1 .5.5 0 000 1zM.91 7.204A2.993 2.993 0 012 7h12c.384 0 .752.072 1.09.204l-1.867-3.422A1.5 1.5 0 0011.906 3H4.094a1.5 1.5 0 00-1.317.782L.91 7.204z"/></symbol><symbol fill="currentColor" class="bi bi-hdd-network" viewBox="0 0 16 16" id="hdd-network" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 5a.5.5 0 100-1 .5.5 0 000 1zM3 4.5a.5.5 0 11-1 0 .5.5 0 011 0z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v1a2 2 0 01-2 2H8.5v3a1.5 1.5 0 011.5 1.5h5.5a.5.5 0 010 1H10A1.5 1.5 0 018.5 14h-1A1.5 1.5 0 016 12.5H.5a.5.5 0 010-1H6A1.5 1.5 0 017.5 10V7H2a2 2 0 01-2-2V4zm1 0v1a1 1 0 001 1h12a1 1 0 001-1V4a1 1 0 00-1-1H2a1 1 0 00-1 1zm6 7.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-hdd-network-fill" viewBox="0 0 16 16" id="hdd-network-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 00-2 2v1a2 2 0 002 2h5.5v3A1.5 1.5 0 006 11.5H.5a.5.5 0 000 1H6A1.5 1.5 0 007.5 14h1a1.5 1.5 0 001.5-1.5h5.5a.5.5 0 000-1H10A1.5 1.5 0 008.5 10V7H14a2 2 0 002-2V4a2 2 0 00-2-2H2zm.5 3a.5.5 0 110-1 .5.5 0 010 1zm2 0a.5.5 0 110-1 .5.5 0 010 1z"/></symbol><symbol fill="currentColor" class="bi bi-hdd-rack" viewBox="0 0 16 16" id="hdd-rack" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 5a.5.5 0 100-1 .5.5 0 000 1zM3 4.5a.5.5 0 11-1 0 .5.5 0 011 0zm2 7a.5.5 0 11-1 0 .5.5 0 011 0zm-2.5.5a.5.5 0 100-1 .5.5 0 000 1z"/><path d="M2 2a2 2 0 00-2 2v1a2 2 0 002 2h1v2H2a2 2 0 00-2 2v1a2 2 0 002 2h12a2 2 0 002-2v-1a2 2 0 00-2-2h-1V7h1a2 2 0 002-2V4a2 2 0 00-2-2H2zm13 2v1a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12a1 1 0 011 1zm0 7v1a1 1 0 01-1 1H2a1 1 0 01-1-1v-1a1 1 0 011-1h12a1 1 0 011 1zm-3-4v2H4V7h8z"/></symbol><symbol fill="currentColor" class="bi bi-hdd-rack-fill" viewBox="0 0 16 16" id="hdd-rack-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 00-2 2v1a2 2 0 002 2h1v2H2a2 2 0 00-2 2v1a2 2 0 002 2h12a2 2 0 002-2v-1a2 2 0 00-2-2h-1V7h1a2 2 0 002-2V4a2 2 0 00-2-2H2zm.5 3a.5.5 0 110-1 .5.5 0 010 1zm2 0a.5.5 0 110-1 .5.5 0 010 1zm-2 7a.5.5 0 110-1 .5.5 0 010 1zm2 0a.5.5 0 110-1 .5.5 0 010 1zM12 7v2H4V7h8z"/></symbol><symbol fill="currentColor" class="bi bi-hdd-stack" viewBox="0 0 16 16" id="hdd-stack" xmlns="http://www.w3.org/2000/svg"><path d="M14 10a1 1 0 011 1v1a1 1 0 01-1 1H2a1 1 0 01-1-1v-1a1 1 0 011-1h12zM2 9a2 2 0 00-2 2v1a2 2 0 002 2h12a2 2 0 002-2v-1a2 2 0 00-2-2H2z"/><path d="M5 11.5a.5.5 0 11-1 0 .5.5 0 011 0zm-2 0a.5.5 0 11-1 0 .5.5 0 011 0zM14 3a1 1 0 011 1v1a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v1a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/><path d="M5 4.5a.5.5 0 11-1 0 .5.5 0 011 0zm-2 0a.5.5 0 11-1 0 .5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-hdd-stack-fill" viewBox="0 0 16 16" id="hdd-stack-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 9a2 2 0 00-2 2v1a2 2 0 002 2h12a2 2 0 002-2v-1a2 2 0 00-2-2H2zm.5 3a.5.5 0 110-1 .5.5 0 010 1zm2 0a.5.5 0 110-1 .5.5 0 010 1zM2 2a2 2 0 00-2 2v1a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2zm.5 3a.5.5 0 110-1 .5.5 0 010 1zm2 0a.5.5 0 110-1 .5.5 0 010 1z"/></symbol><symbol fill="currentColor" class="bi bi-headphones" viewBox="0 0 16 16" id="headphones" xmlns="http://www.w3.org/2000/svg"><path d="M8 3a5 5 0 00-5 5v1h1a1 1 0 011 1v3a1 1 0 01-1 1H3a1 1 0 01-1-1V8a6 6 0 1112 0v5a1 1 0 01-1 1h-1a1 1 0 01-1-1v-3a1 1 0 011-1h1V8a5 5 0 00-5-5z"/></symbol><symbol fill="currentColor" class="bi bi-headset" viewBox="0 0 16 16" id="headset" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a5 5 0 00-5 5v1h1a1 1 0 011 1v3a1 1 0 01-1 1H3a1 1 0 01-1-1V6a6 6 0 1112 0v6a2.5 2.5 0 01-2.5 2.5H9.366a1 1 0 01-.866.5h-1a1 1 0 110-2h1a1 1 0 01.866.5H11.5A1.5 1.5 0 0013 12h-1a1 1 0 01-1-1V8a1 1 0 011-1h1V6a5 5 0 00-5-5z"/></symbol><symbol fill="currentColor" class="bi bi-headset-vr" viewBox="0 0 16 16" id="headset-vr" xmlns="http://www.w3.org/2000/svg"><path d="M8 1.248c1.857 0 3.526.641 4.65 1.794a4.978 4.978 0 012.518 1.09C13.907 1.482 11.295 0 8 0 4.75 0 2.12 1.48.844 4.122a4.979 4.979 0 012.289-1.047C4.236 1.872 5.974 1.248 8 1.248z"/><path d="M12 12a3.988 3.988 0 01-2.786-1.13l-.002-.002a1.612 1.612 0 00-.276-.167A2.164 2.164 0 008 10.5c-.414 0-.729.103-.935.201a1.612 1.612 0 00-.277.167l-.002.002A4 4 0 114 4h8a4 4 0 010 8z"/></symbol><symbol fill="currentColor" class="bi bi-heart" viewBox="0 0 16 16" id="heart" xmlns="http://www.w3.org/2000/svg"><path d="M8 2.748l-.717-.737C5.6.281 2.514.878 1.4 3.053c-.523 1.023-.641 2.5.314 4.385.92 1.815 2.834 3.989 6.286 6.357 3.452-2.368 5.365-4.542 6.286-6.357.955-1.886.838-3.362.314-4.385C13.486.878 10.4.28 8.717 2.01L8 2.748zM8 15C-7.333 4.868 3.279-3.04 7.824 1.143c.06.055.119.112.176.171a3.12 3.12 0 01.176-.17C12.72-3.042 23.333 4.867 8 15z"/></symbol><symbol fill="currentColor" class="bi bi-heart-fill" viewBox="0 0 16 16" id="heart-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 1.314C12.438-3.248 23.534 4.735 8 15-7.534 4.736 3.562-3.248 8 1.314z"/></symbol><symbol fill="currentColor" class="bi bi-heart-half" viewBox="0 0 16 16" id="heart-half" xmlns="http://www.w3.org/2000/svg"><path d="M8 2.748v11.047c3.452-2.368 5.365-4.542 6.286-6.357.955-1.886.838-3.362.314-4.385C13.486.878 10.4.28 8.717 2.01L8 2.748zM8 15C-7.333 4.868 3.279-3.04 7.824 1.143c.06.055.119.112.176.171a3.12 3.12 0 01.176-.17C12.72-3.042 23.333 4.867 8 15z"/></symbol><symbol fill="currentColor" class="bi bi-heptagon" viewBox="0 0 16 16" id="heptagon" xmlns="http://www.w3.org/2000/svg"><path d="M7.779.052a.5.5 0 01.442 0l6.015 2.97a.5.5 0 01.267.34l1.485 6.676a.5.5 0 01-.093.415l-4.162 5.354a.5.5 0 01-.395.193H4.662a.5.5 0 01-.395-.193L.105 10.453a.5.5 0 01-.093-.415l1.485-6.676a.5.5 0 01.267-.34L7.779.053zM2.422 3.813l-1.383 6.212L4.907 15h6.186l3.868-4.975-1.383-6.212L8 1.058 2.422 3.813z"/></symbol><symbol fill="currentColor" class="bi bi-heptagon-fill" viewBox="0 0 16 16" id="heptagon-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.779.052a.5.5 0 01.442 0l6.015 2.97a.5.5 0 01.267.34l1.485 6.676a.5.5 0 01-.093.415l-4.162 5.354a.5.5 0 01-.395.193H4.662a.5.5 0 01-.395-.193L.105 10.453a.5.5 0 01-.093-.415l1.485-6.676a.5.5 0 01.267-.34L7.779.053z"/></symbol><symbol fill="currentColor" class="bi bi-heptagon-half" viewBox="0 0 16 16" id="heptagon-half" xmlns="http://www.w3.org/2000/svg"><path d="M7.779.052a.5.5 0 01.442 0l6.015 2.97a.5.5 0 01.267.34l1.485 6.676a.5.5 0 01-.093.415l-4.162 5.354a.5.5 0 01-.395.193H4.662a.5.5 0 01-.395-.193L.105 10.453a.5.5 0 01-.093-.415l1.485-6.676a.5.5 0 01.267-.34L7.779.053zM8 15h3.093l3.868-4.975-1.383-6.212L8 1.058V15z"/></symbol><symbol fill="currentColor" class="bi bi-hexagon" viewBox="0 0 16 16" id="hexagon" xmlns="http://www.w3.org/2000/svg"><path d="M14 4.577v6.846L8 15l-6-3.577V4.577L8 1l6 3.577zM8.5.134a1 1 0 00-1 0l-6 3.577a1 1 0 00-.5.866v6.846a1 1 0 00.5.866l6 3.577a1 1 0 001 0l6-3.577a1 1 0 00.5-.866V4.577a1 1 0 00-.5-.866L8.5.134z"/></symbol><symbol fill="currentColor" class="bi bi-hexagon-fill" viewBox="0 0 16 16" id="hexagon-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8.5.134a1 1 0 00-1 0l-6 3.577a1 1 0 00-.5.866v6.846a1 1 0 00.5.866l6 3.577a1 1 0 001 0l6-3.577a1 1 0 00.5-.866V4.577a1 1 0 00-.5-.866L8.5.134z"/></symbol><symbol fill="currentColor" class="bi bi-hexagon-half" viewBox="0 0 16 16" id="hexagon-half" xmlns="http://www.w3.org/2000/svg"><path d="M14 4.577v6.846L8 15V1l6 3.577zM8.5.134a1 1 0 00-1 0l-6 3.577a1 1 0 00-.5.866v6.846a1 1 0 00.5.866l6 3.577a1 1 0 001 0l6-3.577a1 1 0 00.5-.866V4.577a1 1 0 00-.5-.866L8.5.134z"/></symbol><symbol fill="currentColor" class="bi bi-hourglass" viewBox="0 0 16 16" id="hourglass" xmlns="http://www.w3.org/2000/svg"><path d="M2 1.5a.5.5 0 01.5-.5h11a.5.5 0 010 1h-1v1a4.5 4.5 0 01-2.557 4.06c-.29.139-.443.377-.443.59v.7c0 .213.154.451.443.59A4.5 4.5 0 0112.5 13v1h1a.5.5 0 010 1h-11a.5.5 0 110-1h1v-1a4.5 4.5 0 012.557-4.06c.29-.139.443-.377.443-.59v-.7c0-.213-.154-.451-.443-.59A4.5 4.5 0 013.5 3V2h-1a.5.5 0 01-.5-.5zm2.5.5v1a3.5 3.5 0 001.989 3.158c.533.256 1.011.791 1.011 1.491v.702c0 .7-.478 1.235-1.011 1.491A3.5 3.5 0 004.5 13v1h7v-1a3.5 3.5 0 00-1.989-3.158C8.978 9.586 8.5 9.052 8.5 8.351v-.702c0-.7.478-1.235 1.011-1.491A3.5 3.5 0 0011.5 3V2h-7z"/></symbol><symbol fill="currentColor" class="bi bi-hourglass-bottom" viewBox="0 0 16 16" id="hourglass-bottom" xmlns="http://www.w3.org/2000/svg"><path d="M2 1.5a.5.5 0 01.5-.5h11a.5.5 0 010 1h-1v1a4.5 4.5 0 01-2.557 4.06c-.29.139-.443.377-.443.59v.7c0 .213.154.451.443.59A4.5 4.5 0 0112.5 13v1h1a.5.5 0 010 1h-11a.5.5 0 110-1h1v-1a4.5 4.5 0 012.557-4.06c.29-.139.443-.377.443-.59v-.7c0-.213-.154-.451-.443-.59A4.5 4.5 0 013.5 3V2h-1a.5.5 0 01-.5-.5zm2.5.5v1a3.5 3.5 0 001.989 3.158c.533.256 1.011.791 1.011 1.491v.702s.18.149.5.149.5-.15.5-.15v-.7c0-.701.478-1.236 1.011-1.492A3.5 3.5 0 0011.5 3V2h-7z"/></symbol><symbol fill="currentColor" class="bi bi-hourglass-split" viewBox="0 0 16 16" id="hourglass-split" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 15a.5.5 0 110-1h1v-1a4.5 4.5 0 012.557-4.06c.29-.139.443-.377.443-.59v-.7c0-.213-.154-.451-.443-.59A4.5 4.5 0 013.5 3V2h-1a.5.5 0 010-1h11a.5.5 0 010 1h-1v1a4.5 4.5 0 01-2.557 4.06c-.29.139-.443.377-.443.59v.7c0 .213.154.451.443.59A4.5 4.5 0 0112.5 13v1h1a.5.5 0 010 1h-11zm2-13v1c0 .537.12 1.045.337 1.5h6.326c.216-.455.337-.963.337-1.5V2h-7zm3 6.35c0 .701-.478 1.236-1.011 1.492A3.5 3.5 0 004.5 13s.866-1.299 3-1.48V8.35zm1 0v3.17c2.134.181 3 1.48 3 1.48a3.5 3.5 0 00-1.989-3.158C8.978 9.586 8.5 9.052 8.5 8.351z"/></symbol><symbol fill="currentColor" class="bi bi-hourglass-top" viewBox="0 0 16 16" id="hourglass-top" xmlns="http://www.w3.org/2000/svg"><path d="M2 14.5a.5.5 0 00.5.5h11a.5.5 0 100-1h-1v-1a4.5 4.5 0 00-2.557-4.06c-.29-.139-.443-.377-.443-.59v-.7c0-.213.154-.451.443-.59A4.5 4.5 0 0012.5 3V2h1a.5.5 0 000-1h-11a.5.5 0 000 1h1v1a4.5 4.5 0 002.557 4.06c.29.139.443.377.443.59v.7c0 .213-.154.451-.443.59A4.5 4.5 0 003.5 13v1h-1a.5.5 0 00-.5.5zm2.5-.5v-1a3.5 3.5 0 011.989-3.158c.533-.256 1.011-.79 1.011-1.491v-.702s.18.101.5.101.5-.1.5-.1v.7c0 .701.478 1.236 1.011 1.492A3.5 3.5 0 0111.5 13v1h-7z"/></symbol><symbol fill="currentColor" class="bi bi-house" viewBox="0 0 16 16" id="house" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 13.5V7h1v6.5a.5.5 0 00.5.5h9a.5.5 0 00.5-.5V7h1v6.5a1.5 1.5 0 01-1.5 1.5h-9A1.5 1.5 0 012 13.5zm11-11V6l-2-2V2.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5z"/><path fill-rule="evenodd" d="M7.293 1.5a1 1 0 011.414 0l6.647 6.646a.5.5 0 01-.708.708L8 2.207 1.354 8.854a.5.5 0 11-.708-.708L7.293 1.5z"/></symbol><symbol fill="currentColor" class="bi bi-house-door" viewBox="0 0 16 16" id="house-door" xmlns="http://www.w3.org/2000/svg"><path d="M8.354 1.146a.5.5 0 00-.708 0l-6 6A.5.5 0 001.5 7.5v7a.5.5 0 00.5.5h4.5a.5.5 0 00.5-.5v-4h2v4a.5.5 0 00.5.5H14a.5.5 0 00.5-.5v-7a.5.5 0 00-.146-.354L13 5.793V2.5a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5v1.293L8.354 1.146zM2.5 14V7.707l5.5-5.5 5.5 5.5V14H10v-4a.5.5 0 00-.5-.5h-3a.5.5 0 00-.5.5v4H2.5z"/></symbol><symbol fill="currentColor" class="bi bi-house-door-fill" viewBox="0 0 16 16" id="house-door-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 00.5.5h4a.5.5 0 00.5-.5v-7a.5.5 0 00-.146-.354L13 5.793V2.5a.5.5 0 00-.5-.5h-1a.5.5 0 00-.5.5v1.293L8.354 1.146a.5.5 0 00-.708 0l-6 6A.5.5 0 001.5 7.5v7a.5.5 0 00.5.5h4a.5.5 0 00.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-house-fill" viewBox="0 0 16 16" id="house-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 3.293l6 6V13.5a1.5 1.5 0 01-1.5 1.5h-9A1.5 1.5 0 012 13.5V9.293l6-6zm5-.793V6l-2-2V2.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5z"/><path fill-rule="evenodd" d="M7.293 1.5a1 1 0 011.414 0l6.647 6.646a.5.5 0 01-.708.708L8 2.207 1.354 8.854a.5.5 0 11-.708-.708L7.293 1.5z"/></symbol><symbol fill="currentColor" class="bi bi-hr" viewBox="0 0 16 16" id="hr" xmlns="http://www.w3.org/2000/svg"><path d="M12 3H4a1 1 0 00-1 1v2.5H2V4a2 2 0 012-2h8a2 2 0 012 2v2.5h-1V4a1 1 0 00-1-1zM2 9.5h1V12a1 1 0 001 1h8a1 1 0 001-1V9.5h1V12a2 2 0 01-2 2H4a2 2 0 01-2-2V9.5zm-1.5-2a.5.5 0 000 1h15a.5.5 0 000-1H.5z"/></symbol><symbol fill="currentColor" class="bi bi-hurricane" viewBox="0 0 16 16" id="hurricane" xmlns="http://www.w3.org/2000/svg"><path d="M6.999 2.6A5.5 5.5 0 0115 7.5a.5.5 0 001 0 6.5 6.5 0 10-13 0 5 5 0 006.001 4.9A5.5 5.5 0 011 7.5a.5.5 0 00-1 0 6.5 6.5 0 1013 0 5 5 0 00-6.001-4.9zM10 7.5a2 2 0 11-4 0 2 2 0 014 0z"/></symbol><symbol fill="currentColor" class="bi bi-image" viewBox="0 0 16 16" id="image" xmlns="http://www.w3.org/2000/svg"><path d="M6.002 5.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/><path d="M2.002 1a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V3a2 2 0 00-2-2h-12zm12 1a1 1 0 011 1v6.5l-3.777-1.947a.5.5 0 00-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 00-.63.062L1.002 12V3a1 1 0 011-1h12z"/></symbol><symbol fill="currentColor" class="bi bi-image-alt" viewBox="0 0 16 16" id="image-alt" xmlns="http://www.w3.org/2000/svg"><path d="M7 2.5a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0zm4.225 4.053a.5.5 0 00-.577.093l-3.71 4.71-2.66-2.772a.5.5 0 00-.63.062L.002 13v2a1 1 0 001 1h14a1 1 0 001-1v-4.5l-4.777-3.947z"/></symbol><symbol fill="currentColor" class="bi bi-image-fill" viewBox="0 0 16 16" id="image-fill" xmlns="http://www.w3.org/2000/svg"><path d="M.002 3a2 2 0 012-2h12a2 2 0 012 2v10a2 2 0 01-2 2h-12a2 2 0 01-2-2V3zm1 9v1a1 1 0 001 1h12a1 1 0 001-1V9.5l-3.777-1.947a.5.5 0 00-.577.093l-3.71 3.71-2.66-1.772a.5.5 0 00-.63.062L1.002 12zm5-6.5a1.5 1.5 0 10-3 0 1.5 1.5 0 003 0z"/></symbol><symbol fill="currentColor" class="bi bi-images" viewBox="0 0 16 16" id="images" xmlns="http://www.w3.org/2000/svg"><path d="M4.502 9a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/><path d="M14.002 13a2 2 0 01-2 2h-10a2 2 0 01-2-2V5A2 2 0 012 3a2 2 0 012-2h10a2 2 0 012 2v8a2 2 0 01-1.998 2zM14 2H4a1 1 0 00-1 1h9.002a2 2 0 012 2v7A1 1 0 0015 11V3a1 1 0 00-1-1zM2.002 4a1 1 0 00-1 1v8l2.646-2.354a.5.5 0 01.63-.062l2.66 1.773 3.71-3.71a.5.5 0 01.577-.094l1.777 1.947V5a1 1 0 00-1-1h-10z"/></symbol><symbol fill="currentColor" class="bi bi-inbox" viewBox="0 0 16 16" id="inbox" xmlns="http://www.w3.org/2000/svg"><path d="M4.98 4a.5.5 0 00-.39.188L1.54 8H6a.5.5 0 01.5.5 1.5 1.5 0 103 0A.5.5 0 0110 8h4.46l-3.05-3.812A.5.5 0 0011.02 4H4.98zm9.954 5H10.45a2.5 2.5 0 01-4.9 0H1.066l.32 2.562a.5.5 0 00.497.438h12.234a.5.5 0 00.496-.438L14.933 9zM3.809 3.563A1.5 1.5 0 014.981 3h6.038a1.5 1.5 0 011.172.563l3.7 4.625a.5.5 0 01.105.374l-.39 3.124A1.5 1.5 0 0114.117 13H1.883a1.5 1.5 0 01-1.489-1.314l-.39-3.124a.5.5 0 01.106-.374l3.7-4.625z"/></symbol><symbol fill="currentColor" class="bi bi-inbox-fill" viewBox="0 0 16 16" id="inbox-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.98 4a.5.5 0 00-.39.188L1.54 8H6a.5.5 0 01.5.5 1.5 1.5 0 103 0A.5.5 0 0110 8h4.46l-3.05-3.812A.5.5 0 0011.02 4H4.98zm-1.17-.437A1.5 1.5 0 014.98 3h6.04a1.5 1.5 0 011.17.563l3.7 4.625a.5.5 0 01.106.374l-.39 3.124A1.5 1.5 0 0114.117 13H1.883a1.5 1.5 0 01-1.489-1.314l-.39-3.124a.5.5 0 01.106-.374l3.7-4.625z"/></symbol><symbol fill="currentColor" class="bi bi-inboxes" viewBox="0 0 16 16" id="inboxes" xmlns="http://www.w3.org/2000/svg"><path d="M4.98 1a.5.5 0 00-.39.188L1.54 5H6a.5.5 0 01.5.5 1.5 1.5 0 003 0A.5.5 0 0110 5h4.46l-3.05-3.812A.5.5 0 0011.02 1H4.98zm9.954 5H10.45a2.5 2.5 0 01-4.9 0H1.066l.32 2.562A.5.5 0 001.884 9h12.234a.5.5 0 00.496-.438L14.933 6zM3.809.563A1.5 1.5 0 014.981 0h6.038a1.5 1.5 0 011.172.563l3.7 4.625a.5.5 0 01.105.374l-.39 3.124A1.5 1.5 0 0114.117 10H1.883A1.5 1.5 0 01.394 8.686l-.39-3.124a.5.5 0 01.106-.374L3.81.563zM.125 11.17A.5.5 0 01.5 11H6a.5.5 0 01.5.5 1.5 1.5 0 003 0 .5.5 0 01.5-.5h5.5a.5.5 0 01.496.562l-.39 3.124A1.5 1.5 0 0114.117 16H1.883a1.5 1.5 0 01-1.489-1.314l-.39-3.124a.5.5 0 01.121-.393zm.941.83l.32 2.562a.5.5 0 00.497.438h12.234a.5.5 0 00.496-.438l.32-2.562H10.45a2.5 2.5 0 01-4.9 0H1.066z"/></symbol><symbol fill="currentColor" class="bi bi-inboxes-fill" viewBox="0 0 16 16" id="inboxes-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.98 1a.5.5 0 00-.39.188L1.54 5H6a.5.5 0 01.5.5 1.5 1.5 0 003 0A.5.5 0 0110 5h4.46l-3.05-3.812A.5.5 0 0011.02 1H4.98zM3.81.563A1.5 1.5 0 014.98 0h6.04a1.5 1.5 0 011.17.563l3.7 4.625a.5.5 0 01.106.374l-.39 3.124A1.5 1.5 0 0114.117 10H1.883A1.5 1.5 0 01.394 8.686l-.39-3.124a.5.5 0 01.106-.374L3.81.563zM.125 11.17A.5.5 0 01.5 11H6a.5.5 0 01.5.5 1.5 1.5 0 003 0 .5.5 0 01.5-.5h5.5a.5.5 0 01.496.562l-.39 3.124A1.5 1.5 0 0114.117 16H1.883a1.5 1.5 0 01-1.489-1.314l-.39-3.124a.5.5 0 01.121-.393z"/></symbol><symbol fill="currentColor" class="bi bi-info" viewBox="0 0 16 16" id="info" xmlns="http://www.w3.org/2000/svg"><path d="M8.93 6.588l-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 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-info-circle" viewBox="0 0 16 16" id="info-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M8.93 6.588l-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 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-info-circle-fill" viewBox="0 0 16 16" id="info-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zm.93-9.412l-1 4.705c-.07.34.029.533.304.533.194 0 .487-.07.686-.246l-.088.416c-.287.346-.92.598-1.465.598-.703 0-1.002-.422-.808-1.319l.738-3.468c.064-.293.006-.399-.287-.47l-.451-.081.082-.381 2.29-.287zM8 5.5a1 1 0 110-2 1 1 0 010 2z"/></symbol><symbol fill="currentColor" class="bi bi-info-lg" viewBox="0 0 16 16" id="info-lg" xmlns="http://www.w3.org/2000/svg"><path d="M10.277 5.433l-4.031.505-.145.67.794.145c.516.123.619.309.505.824L6.101 13.68c-.34 1.578.186 2.32 1.423 2.32.959 0 2.072-.443 2.577-1.052l.155-.732c-.35.31-.866.434-1.206.434-.485 0-.66-.34-.536-.939l1.763-8.278zm.122-3.673a1.76 1.76 0 11-3.52 0 1.76 1.76 0 013.52 0z"/></symbol><symbol fill="currentColor" class="bi bi-info-square" viewBox="0 0 16 16" id="info-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M8.93 6.588l-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 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-info-square-fill" viewBox="0 0 16 16" id="info-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm8.93 4.588l-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.588zM8 5.5a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-input-cursor" viewBox="0 0 16 16" id="input-cursor" xmlns="http://www.w3.org/2000/svg"><path d="M10 5h4a1 1 0 011 1v4a1 1 0 01-1 1h-4v1h4a2 2 0 002-2V6a2 2 0 00-2-2h-4v1zM6 5V4H2a2 2 0 00-2 2v4a2 2 0 002 2h4v-1H2a1 1 0 01-1-1V6a1 1 0 011-1h4z"/><path fill-rule="evenodd" d="M8 1a.5.5 0 01.5.5v13a.5.5 0 01-1 0v-13A.5.5 0 018 1z"/></symbol><symbol fill="currentColor" class="bi bi-input-cursor-text" viewBox="0 0 16 16" id="input-cursor-text" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5 2a.5.5 0 01.5-.5c.862 0 1.573.287 2.06.566.174.099.321.198.44.286.119-.088.266-.187.44-.286A4.165 4.165 0 0110.5 1.5a.5.5 0 010 1c-.638 0-1.177.213-1.564.434a3.49 3.49 0 00-.436.294V7.5H9a.5.5 0 010 1h-.5v4.272c.1.08.248.187.436.294.387.221.926.434 1.564.434a.5.5 0 010 1 4.165 4.165 0 01-2.06-.566A4.561 4.561 0 018 13.65a4.561 4.561 0 01-.44.285 4.165 4.165 0 01-2.06.566.5.5 0 010-1c.638 0 1.177-.213 1.564-.434.188-.107.335-.214.436-.294V8.5H7a.5.5 0 010-1h.5V3.228a3.49 3.49 0 00-.436-.294A3.166 3.166 0 005.5 2.5.5.5 0 015 2z"/><path d="M10 5h4a1 1 0 011 1v4a1 1 0 01-1 1h-4v1h4a2 2 0 002-2V6a2 2 0 00-2-2h-4v1zM6 5V4H2a2 2 0 00-2 2v4a2 2 0 002 2h4v-1H2a1 1 0 01-1-1V6a1 1 0 011-1h4z"/></symbol><symbol fill="currentColor" class="bi bi-instagram" viewBox="0 0 16 16" id="instagram" xmlns="http://www.w3.org/2000/svg"><path d="M8 0C5.829 0 5.556.01 4.703.048 3.85.088 3.269.222 2.76.42a3.917 3.917 0 00-1.417.923A3.927 3.927 0 00.42 2.76C.222 3.268.087 3.85.048 4.7.01 5.555 0 5.827 0 8.001c0 2.172.01 2.444.048 3.297.04.852.174 1.433.372 1.942.205.526.478.972.923 1.417.444.445.89.719 1.416.923.51.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.444-.01 3.298-.048c.851-.04 1.434-.174 1.943-.372a3.916 3.916 0 001.416-.923c.445-.445.718-.891.923-1.417.197-.509.332-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.299c-.04-.851-.175-1.433-.372-1.941a3.926 3.926 0 00-.923-1.417A3.911 3.911 0 0013.24.42c-.51-.198-1.092-.333-1.943-.372C10.443.01 10.172 0 7.998 0h.003zm-.717 1.442h.718c2.136 0 2.389.007 3.232.046.78.035 1.204.166 1.486.275.373.145.64.319.92.599.28.28.453.546.598.92.11.281.24.705.275 1.485.039.843.047 1.096.047 3.231s-.008 2.389-.047 3.232c-.035.78-.166 1.203-.275 1.485a2.47 2.47 0 01-.599.919c-.28.28-.546.453-.92.598-.28.11-.704.24-1.485.276-.843.038-1.096.047-3.232.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.478 2.478 0 01-.92-.598 2.48 2.48 0 01-.6-.92c-.109-.281-.24-.705-.275-1.485-.038-.843-.046-1.096-.046-3.233 0-2.136.008-2.388.046-3.231.036-.78.166-1.204.276-1.486.145-.373.319-.64.599-.92.28-.28.546-.453.92-.598.282-.11.705-.24 1.485-.276.738-.034 1.024-.044 2.515-.045v.002zm4.988 1.328a.96.96 0 100 1.92.96.96 0 000-1.92zm-4.27 1.122a4.109 4.109 0 100 8.217 4.109 4.109 0 000-8.217zm0 1.441a2.667 2.667 0 110 5.334 2.667 2.667 0 010-5.334z"/></symbol><symbol fill="currentColor" class="bi bi-intersect" viewBox="0 0 16 16" id="intersect" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h8a2 2 0 012 2v2h2a2 2 0 012 2v8a2 2 0 01-2 2H6a2 2 0 01-2-2v-2H2a2 2 0 01-2-2V2zm5 10v2a1 1 0 001 1h8a1 1 0 001-1V6a1 1 0 00-1-1h-2v5a2 2 0 01-2 2H5zm6-8V2a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h2V6a2 2 0 012-2h5z"/></symbol><symbol fill="currentColor" class="bi bi-journal" viewBox="0 0 16 16" id="journal" xmlns="http://www.w3.org/2000/svg"><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-album" viewBox="0 0 16 16" id="journal-album" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 4a.5.5 0 00-.5.5v5a.5.5 0 00.5.5h5a.5.5 0 00.5-.5v-5a.5.5 0 00-.5-.5h-5zm1 7a.5.5 0 000 1h3a.5.5 0 000-1h-3z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-arrow-down" viewBox="0 0 16 16" id="journal-arrow-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 5a.5.5 0 01.5.5v3.793l1.146-1.147a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 11.708-.708L7.5 9.293V5.5A.5.5 0 018 5z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-arrow-up" viewBox="0 0 16 16" id="journal-arrow-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 11a.5.5 0 00.5-.5V6.707l1.146 1.147a.5.5 0 00.708-.708l-2-2a.5.5 0 00-.708 0l-2 2a.5.5 0 10.708.708L7.5 6.707V10.5a.5.5 0 00.5.5z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-bookmark" viewBox="0 0 16 16" id="journal-bookmark" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 8V1h1v6.117L8.743 6.07a.5.5 0 01.514 0L11 7.117V1h1v7a.5.5 0 01-.757.429L9 7.083 6.757 8.43A.5.5 0 016 8z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-bookmark-fill" viewBox="0 0 16 16" id="journal-bookmark-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 1h6v7a.5.5 0 01-.757.429L9 7.083 6.757 8.43A.5.5 0 016 8V1z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-check" viewBox="0 0 16 16" id="journal-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.854 6.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 8.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-code" viewBox="0 0 16 16" id="journal-code" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8.646 5.646a.5.5 0 01.708 0l2 2a.5.5 0 010 .708l-2 2a.5.5 0 01-.708-.708L10.293 8 8.646 6.354a.5.5 0 010-.708zm-1.292 0a.5.5 0 00-.708 0l-2 2a.5.5 0 000 .708l2 2a.5.5 0 00.708-.708L5.707 8l1.647-1.646a.5.5 0 000-.708z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-medical" viewBox="0 0 16 16" id="journal-medical" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 4a.5.5 0 01.5.5v.634l.549-.317a.5.5 0 11.5.866L9 6l.549.317a.5.5 0 11-.5.866L8.5 6.866V7.5a.5.5 0 01-1 0v-.634l-.549.317a.5.5 0 11-.5-.866L7 6l-.549-.317a.5.5 0 01.5-.866l.549.317V4.5A.5.5 0 018 4zM5 9.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-minus" viewBox="0 0 16 16" id="journal-minus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.5 8a.5.5 0 01.5-.5h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-plus" viewBox="0 0 16 16" id="journal-plus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 5.5a.5.5 0 01.5.5v1.5H10a.5.5 0 010 1H8.5V10a.5.5 0 01-1 0V8.5H6a.5.5 0 010-1h1.5V6a.5.5 0 01.5-.5z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-richtext" viewBox="0 0 16 16" id="journal-richtext" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 3.75a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm-.861 1.542l1.33.886 1.854-1.855a.25.25 0 01.289-.047L11 4.75V7a.5.5 0 01-.5.5h-5A.5.5 0 015 7v-.5s1.54-1.274 1.639-1.208zM5 9.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-text" viewBox="0 0 16 16" id="journal-text" xmlns="http://www.w3.org/2000/svg"><path d="M5 10.5a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm0-2a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0-2a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0-2a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journal-x" viewBox="0 0 16 16" id="journal-x" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.146 6.146a.5.5 0 01.708 0L8 7.293l1.146-1.147a.5.5 0 11.708.708L8.707 8l1.147 1.146a.5.5 0 01-.708.708L8 8.707 6.854 9.854a.5.5 0 01-.708-.708L7.293 8 6.146 6.854a.5.5 0 010-.708z"/><path d="M3 0h10a2 2 0 012 2v12a2 2 0 01-2 2H3a2 2 0 01-2-2v-1h1v1a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3a1 1 0 00-1 1v1H1V2a2 2 0 012-2z"/><path d="M1 5v-.5a.5.5 0 011 0V5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V8h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0v.5h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-journals" viewBox="0 0 16 16" id="journals" xmlns="http://www.w3.org/2000/svg"><path d="M5 0h8a2 2 0 012 2v10a2 2 0 01-2 2 2 2 0 01-2 2H3a2 2 0 01-2-2h1a1 1 0 001 1h8a1 1 0 001-1V4a1 1 0 00-1-1H3a1 1 0 00-1 1H1a2 2 0 012-2h8a2 2 0 012 2v9a1 1 0 001-1V2a1 1 0 00-1-1H5a1 1 0 00-1 1H3a2 2 0 012-2z"/><path d="M1 6v-.5a.5.5 0 011 0V6h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 3v-.5a.5.5 0 011 0V9h.5a.5.5 0 010 1h-2a.5.5 0 010-1H1zm0 2.5v.5H.5a.5.5 0 000 1h2a.5.5 0 000-1H2v-.5a.5.5 0 00-1 0z"/></symbol><symbol fill="currentColor" class="bi bi-joystick" viewBox="0 0 16 16" id="joystick" xmlns="http://www.w3.org/2000/svg"><path d="M10 2a2 2 0 01-1.5 1.937v5.087c.863.083 1.5.377 1.5.726 0 .414-.895.75-2 .75s-2-.336-2-.75c0-.35.637-.643 1.5-.726V3.937A2 2 0 1110 2z"/><path d="M0 9.665v1.717a1 1 0 00.553.894l6.553 3.277a2 2 0 001.788 0l6.553-3.277a1 1 0 00.553-.894V9.665c0-.1-.06-.19-.152-.23L9.5 6.715v.993l5.227 2.178a.125.125 0 01.001.23l-5.94 2.546a2 2 0 01-1.576 0l-5.94-2.546a.125.125 0 01.001-.23L6.5 7.708l-.013-.988L.152 9.435a.25.25 0 00-.152.23z"/></symbol><symbol fill="currentColor" class="bi bi-justify" viewBox="0 0 16 16" id="justify" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 12.5a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-justify-left" viewBox="0 0 16 16" id="justify-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 12.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-justify-right" viewBox="0 0 16 16" id="justify-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 12.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-4-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-kanban" viewBox="0 0 16 16" id="kanban" xmlns="http://www.w3.org/2000/svg"><path d="M13.5 1a1 1 0 011 1v12a1 1 0 01-1 1h-11a1 1 0 01-1-1V2a1 1 0 011-1h11zm-11-1a2 2 0 00-2 2v12a2 2 0 002 2h11a2 2 0 002-2V2a2 2 0 00-2-2h-11z"/><path d="M6.5 3a1 1 0 011-1h1a1 1 0 011 1v3a1 1 0 01-1 1h-1a1 1 0 01-1-1V3zm-4 0a1 1 0 011-1h1a1 1 0 011 1v7a1 1 0 01-1 1h-1a1 1 0 01-1-1V3zm8 0a1 1 0 011-1h1a1 1 0 011 1v10a1 1 0 01-1 1h-1a1 1 0 01-1-1V3z"/></symbol><symbol fill="currentColor" class="bi bi-kanban-fill" viewBox="0 0 16 16" id="kanban-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 0a2 2 0 00-2 2v12a2 2 0 002 2h11a2 2 0 002-2V2a2 2 0 00-2-2h-11zm5 2h1a1 1 0 011 1v3a1 1 0 01-1 1h-1a1 1 0 01-1-1V3a1 1 0 011-1zm-5 1a1 1 0 011-1h1a1 1 0 011 1v7a1 1 0 01-1 1h-1a1 1 0 01-1-1V3zm9-1h1a1 1 0 011 1v10a1 1 0 01-1 1h-1a1 1 0 01-1-1V3a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-key" viewBox="0 0 16 16" id="key" xmlns="http://www.w3.org/2000/svg"><path d="M0 8a4 4 0 017.465-2H14a.5.5 0 01.354.146l1.5 1.5a.5.5 0 010 .708l-1.5 1.5a.5.5 0 01-.708 0L13 9.207l-.646.647a.5.5 0 01-.708 0L11 9.207l-.646.647a.5.5 0 01-.708 0L9 9.207l-.646.647A.5.5 0 018 10h-.535A4 4 0 010 8zm4-3a3 3 0 102.712 4.285A.5.5 0 017.163 9h.63l.853-.854a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 01.708 0l.646.647.793-.793-1-1h-6.63a.5.5 0 01-.451-.285A3 3 0 004 5z"/><path d="M4 8a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-key-fill" viewBox="0 0 16 16" id="key-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 11.5a3.5 3.5 0 113.163-5H14L15.5 8 14 9.5l-1-1-1 1-1-1-1 1-1-1-1 1H6.663a3.5 3.5 0 01-3.163 2zM2.5 9a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-keyboard" viewBox="0 0 16 16" id="keyboard" xmlns="http://www.w3.org/2000/svg"><path d="M14 5a1 1 0 011 1v5a1 1 0 01-1 1H2a1 1 0 01-1-1V6a1 1 0 011-1h12zM2 4a2 2 0 00-2 2v5a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2H2z"/><path d="M13 10.25a.25.25 0 01.25-.25h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5a.25.25 0 01-.25-.25v-.5zm0-2a.25.25 0 01.25-.25h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5a.25.25 0 01-.25-.25v-.5zm-5 0A.25.25 0 018.25 8h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 018 8.75v-.5zm2 0a.25.25 0 01.25-.25h1.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-1.5a.25.25 0 01-.25-.25v-.5zm1 2a.25.25 0 01.25-.25h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5a.25.25 0 01-.25-.25v-.5zm-5-2A.25.25 0 016.25 8h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 016 8.75v-.5zm-2 0A.25.25 0 014.25 8h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 014 8.75v-.5zm-2 0A.25.25 0 012.25 8h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 012 8.75v-.5zm11-2a.25.25 0 01.25-.25h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5a.25.25 0 01-.25-.25v-.5zm-2 0a.25.25 0 01.25-.25h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5a.25.25 0 01-.25-.25v-.5zm-2 0A.25.25 0 019.25 6h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 019 6.75v-.5zm-2 0A.25.25 0 017.25 6h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 017 6.75v-.5zm-2 0A.25.25 0 015.25 6h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 015 6.75v-.5zm-3 0A.25.25 0 012.25 6h1.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-1.5A.25.25 0 012 6.75v-.5zm0 4a.25.25 0 01.25-.25h.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5a.25.25 0 01-.25-.25v-.5zm2 0a.25.25 0 01.25-.25h5.5a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-5.5a.25.25 0 01-.25-.25v-.5z"/></symbol><symbol fill="currentColor" class="bi bi-keyboard-fill" viewBox="0 0 16 16" id="keyboard-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 6a2 2 0 012-2h12a2 2 0 012 2v5a2 2 0 01-2 2H2a2 2 0 01-2-2V6zm13 .25v.5c0 .138.112.25.25.25h.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-.5a.25.25 0 00-.25.25zM2.25 8a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 003 8.75v-.5A.25.25 0 002.75 8h-.5zM4 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 005 8.75v-.5A.25.25 0 004.75 8h-.5a.25.25 0 00-.25.25zM6.25 8a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 007 8.75v-.5A.25.25 0 006.75 8h-.5zM8 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 009 8.75v-.5A.25.25 0 008.75 8h-.5a.25.25 0 00-.25.25zM13.25 8a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-.5zm0 2a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-.5zm-3-2a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h1.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-1.5zm.75 2.25v.5c0 .138.112.25.25.25h.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-.5a.25.25 0 00-.25.25zM11.25 6a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-.5zM9 6.25v.5c0 .138.112.25.25.25h.5a.25.25 0 00.25-.25v-.5A.25.25 0 009.75 6h-.5a.25.25 0 00-.25.25zM7.25 6a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 008 6.75v-.5A.25.25 0 007.75 6h-.5zM5 6.25v.5c0 .138.112.25.25.25h.5A.25.25 0 006 6.75v-.5A.25.25 0 005.75 6h-.5a.25.25 0 00-.25.25zM2.25 6a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h1.5A.25.25 0 004 6.75v-.5A.25.25 0 003.75 6h-1.5zM2 10.25v.5c0 .138.112.25.25.25h.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-.5a.25.25 0 00-.25.25zM4.25 10a.25.25 0 00-.25.25v.5c0 .138.112.25.25.25h5.5a.25.25 0 00.25-.25v-.5a.25.25 0 00-.25-.25h-5.5z"/></symbol><symbol fill="currentColor" class="bi bi-ladder" viewBox="0 0 16 16" id="ladder" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 1a.5.5 0 01.5.5V2h6v-.5a.5.5 0 011 0v14a.5.5 0 01-1 0V15H5v.5a.5.5 0 01-1 0v-14a.5.5 0 01.5-.5zM5 14h6v-2H5v2zm0-3h6V9H5v2zm0-3h6V6H5v2zm0-3h6V3H5v2z"/></symbol><symbol fill="currentColor" class="bi bi-lamp" viewBox="0 0 16 16" id="lamp" xmlns="http://www.w3.org/2000/svg"><path d="M13 3v4H3V3h10zM3 2a1 1 0 00-1 1v4a1 1 0 001 1h10a1 1 0 001-1V3a1 1 0 00-1-1H3zm4.5-1l.276-.553a.25.25 0 01.448 0L8.5 1h-1zm-.012 9h1.024c.337.646.677 1.33.95 1.949.176.396.318.75.413 1.042.048.146.081.266.102.36A1.347 1.347 0 0110 13.5c0 .665-.717 1.5-2 1.5s-2-.835-2-1.5c0 0 0-.013.004-.039.003-.027.01-.063.02-.11.02-.094.053-.214.1-.36.096-.291.238-.646.413-1.042.274-.62.614-1.303.95-1.949zm1.627-1h-2.23C6.032 10.595 5 12.69 5 13.5 5 14.88 6.343 16 8 16s3-1.12 3-2.5c0-.81-1.032-2.905-1.885-4.5z"/></symbol><symbol fill="currentColor" class="bi bi-lamp-fill" viewBox="0 0 16 16" id="lamp-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 3a1 1 0 011-1h10a1 1 0 011 1v4a1 1 0 01-1 1H3a1 1 0 01-1-1V3zm5.5-2l.276-.553a.25.25 0 01.448 0L8.5 1h-1zm-.615 8h2.23C9.968 10.595 11 12.69 11 13.5c0 1.38-1.343 2.5-3 2.5s-3-1.12-3-2.5c0-.81 1.032-2.905 1.885-4.5z"/></symbol><symbol fill="currentColor" class="bi bi-laptop" viewBox="0 0 16 16" id="laptop" xmlns="http://www.w3.org/2000/svg"><path d="M13.5 3a.5.5 0 01.5.5V11H2V3.5a.5.5 0 01.5-.5h11zm-11-1A1.5 1.5 0 001 3.5V12h14V3.5A1.5 1.5 0 0013.5 2h-11zM0 12.5h16a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 12.5z"/></symbol><symbol fill="currentColor" class="bi bi-laptop-fill" viewBox="0 0 16 16" id="laptop-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 2A1.5 1.5 0 001 3.5V12h14V3.5A1.5 1.5 0 0013.5 2h-11zM0 12.5h16a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 12.5z"/></symbol><symbol fill="currentColor" class="bi bi-layer-backward" viewBox="0 0 16 16" id="layer-backward" xmlns="http://www.w3.org/2000/svg"><path d="M8.354 15.854a.5.5 0 01-.708 0l-3-3a.5.5 0 010-.708l1-1a.5.5 0 01.708 0l.646.647V4H1a1 1 0 01-1-1V1a1 1 0 011-1h14a1 1 0 011 1v2a1 1 0 01-1 1H9v7.793l.646-.647a.5.5 0 01.708 0l1 1a.5.5 0 010 .708l-3 3z"/><path d="M1 9a1 1 0 01-1-1V6a1 1 0 011-1h4.5a.5.5 0 010 1H1v2h4.5a.5.5 0 010 1H1zm9.5 0a.5.5 0 010-1H15V6h-4.5a.5.5 0 010-1H15a1 1 0 011 1v2a1 1 0 01-1 1h-4.5z"/></symbol><symbol fill="currentColor" class="bi bi-layer-forward" viewBox="0 0 16 16" id="layer-forward" xmlns="http://www.w3.org/2000/svg"><path d="M8.354.146a.5.5 0 00-.708 0l-3 3a.5.5 0 000 .708l1 1a.5.5 0 00.708 0L7 4.207V12H1a1 1 0 00-1 1v2a1 1 0 001 1h14a1 1 0 001-1v-2a1 1 0 00-1-1H9V4.207l.646.647a.5.5 0 00.708 0l1-1a.5.5 0 000-.708l-3-3z"/><path d="M1 7a1 1 0 00-1 1v2a1 1 0 001 1h4.5a.5.5 0 000-1H1V8h4.5a.5.5 0 000-1H1zm9.5 0a.5.5 0 000 1H15v2h-4.5a.5.5 0 000 1H15a1 1 0 001-1V8a1 1 0 00-1-1h-4.5z"/></symbol><symbol fill="currentColor" class="bi bi-layers" viewBox="0 0 16 16" id="layers" xmlns="http://www.w3.org/2000/svg"><path d="M8.235 1.559a.5.5 0 00-.47 0l-7.5 4a.5.5 0 000 .882L3.188 8 .264 9.559a.5.5 0 000 .882l7.5 4a.5.5 0 00.47 0l7.5-4a.5.5 0 000-.882L12.813 8l2.922-1.559a.5.5 0 000-.882l-7.5-4zm3.515 7.008L14.438 10 8 13.433 1.562 10 4.25 8.567l3.515 1.874a.5.5 0 00.47 0l3.515-1.874zM8 9.433L1.562 6 8 2.567 14.438 6 8 9.433z"/></symbol><symbol fill="currentColor" class="bi bi-layers-fill" viewBox="0 0 16 16" id="layers-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.765 1.559a.5.5 0 01.47 0l7.5 4a.5.5 0 010 .882l-7.5 4a.5.5 0 01-.47 0l-7.5-4a.5.5 0 010-.882l7.5-4z"/><path d="M2.125 8.567l-1.86.992a.5.5 0 000 .882l7.5 4a.5.5 0 00.47 0l7.5-4a.5.5 0 000-.882l-1.86-.992-5.17 2.756a1.5 1.5 0 01-1.41 0l-5.17-2.756z"/></symbol><symbol fill="currentColor" class="bi bi-layers-half" viewBox="0 0 16 16" id="layers-half" xmlns="http://www.w3.org/2000/svg"><path d="M8.235 1.559a.5.5 0 00-.47 0l-7.5 4a.5.5 0 000 .882L3.188 8 .264 9.559a.5.5 0 000 .882l7.5 4a.5.5 0 00.47 0l7.5-4a.5.5 0 000-.882L12.813 8l2.922-1.559a.5.5 0 000-.882l-7.5-4zM8 9.433L1.562 6 8 2.567 14.438 6 8 9.433z"/></symbol><symbol fill="currentColor" class="bi bi-layout-sidebar" viewBox="0 0 16 16" id="layout-sidebar" xmlns="http://www.w3.org/2000/svg"><path d="M0 3a2 2 0 012-2h12a2 2 0 012 2v10a2 2 0 01-2 2H2a2 2 0 01-2-2V3zm5-1v12h9a1 1 0 001-1V3a1 1 0 00-1-1H5zM4 2H2a1 1 0 00-1 1v10a1 1 0 001 1h2V2z"/></symbol><symbol fill="currentColor" class="bi bi-layout-sidebar-inset" viewBox="0 0 16 16" id="layout-sidebar-inset" xmlns="http://www.w3.org/2000/svg"><path d="M14 2a1 1 0 011 1v10a1 1 0 01-1 1H2a1 1 0 01-1-1V3a1 1 0 011-1h12zM2 1a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V3a2 2 0 00-2-2H2z"/><path d="M3 4a1 1 0 011-1h2a1 1 0 011 1v8a1 1 0 01-1 1H4a1 1 0 01-1-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-layout-sidebar-inset-reverse" viewBox="0 0 16 16" id="layout-sidebar-inset-reverse" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a1 1 0 00-1 1v10a1 1 0 001 1h12a1 1 0 001-1V3a1 1 0 00-1-1H2zm12-1a2 2 0 012 2v10a2 2 0 01-2 2H2a2 2 0 01-2-2V3a2 2 0 012-2h12z"/><path d="M13 4a1 1 0 00-1-1h-2a1 1 0 00-1 1v8a1 1 0 001 1h2a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-layout-sidebar-reverse" viewBox="0 0 16 16" id="layout-sidebar-reverse" xmlns="http://www.w3.org/2000/svg"><path d="M16 3a2 2 0 00-2-2H2a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V3zm-5-1v12H2a1 1 0 01-1-1V3a1 1 0 011-1h9zm1 0h2a1 1 0 011 1v10a1 1 0 01-1 1h-2V2z"/></symbol><symbol fill="currentColor" class="bi bi-layout-split" viewBox="0 0 16 16" id="layout-split" xmlns="http://www.w3.org/2000/svg"><path d="M0 3a2 2 0 012-2h12a2 2 0 012 2v10a2 2 0 01-2 2H2a2 2 0 01-2-2V3zm8.5-1v12H14a1 1 0 001-1V3a1 1 0 00-1-1H8.5zm-1 0H2a1 1 0 00-1 1v10a1 1 0 001 1h5.5V2z"/></symbol><symbol fill="currentColor" class="bi bi-layout-text-sidebar" viewBox="0 0 16 16" id="layout-text-sidebar" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 3a.5.5 0 000 1h5a.5.5 0 000-1h-5zm0 3a.5.5 0 000 1h5a.5.5 0 000-1h-5zM3 9.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm.5 2.5a.5.5 0 000 1h5a.5.5 0 000-1h-5z"/><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm12-1v14h2a1 1 0 001-1V2a1 1 0 00-1-1h-2zm-1 0H2a1 1 0 00-1 1v12a1 1 0 001 1h9V1z"/></symbol><symbol fill="currentColor" class="bi bi-layout-text-sidebar-reverse" viewBox="0 0 16 16" id="layout-text-sidebar-reverse" xmlns="http://www.w3.org/2000/svg"><path d="M12.5 3a.5.5 0 010 1h-5a.5.5 0 010-1h5zm0 3a.5.5 0 010 1h-5a.5.5 0 010-1h5zm.5 3.5a.5.5 0 00-.5-.5h-5a.5.5 0 000 1h5a.5.5 0 00.5-.5zm-.5 2.5a.5.5 0 010 1h-5a.5.5 0 010-1h5z"/><path d="M16 2a2 2 0 00-2-2H2a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2zM4 1v14H2a1 1 0 01-1-1V2a1 1 0 011-1h2zm1 0h9a1 1 0 011 1v12a1 1 0 01-1 1H5V1z"/></symbol><symbol fill="currentColor" class="bi bi-layout-text-window" viewBox="0 0 16 16" id="layout-text-window" xmlns="http://www.w3.org/2000/svg"><path d="M3 6.5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 3a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm.5 2.5a.5.5 0 000 1h5a.5.5 0 000-1h-5z"/><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm12 1a1 1 0 011 1v1H1V2a1 1 0 011-1h12zm1 3v10a1 1 0 01-1 1h-2V4h3zm-4 0v11H2a1 1 0 01-1-1V4h10z"/></symbol><symbol fill="currentColor" class="bi bi-layout-text-window-reverse" viewBox="0 0 16 16" id="layout-text-window-reverse" xmlns="http://www.w3.org/2000/svg"><path d="M13 6.5a.5.5 0 00-.5-.5h-5a.5.5 0 000 1h5a.5.5 0 00.5-.5zm0 3a.5.5 0 00-.5-.5h-5a.5.5 0 000 1h5a.5.5 0 00.5-.5zm-.5 2.5a.5.5 0 010 1h-5a.5.5 0 010-1h5z"/><path d="M14 0a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2a2 2 0 012-2h12zM2 1a1 1 0 00-1 1v1h14V2a1 1 0 00-1-1H2zM1 4v10a1 1 0 001 1h2V4H1zm4 0v11h9a1 1 0 001-1V4H5z"/></symbol><symbol fill="currentColor" class="bi bi-layout-three-columns" viewBox="0 0 16 16" id="layout-three-columns" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A1.5 1.5 0 011.5 0h13A1.5 1.5 0 0116 1.5v13a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 14.5v-13zM1.5 1a.5.5 0 00-.5.5v13a.5.5 0 00.5.5H5V1H1.5zM10 15V1H6v14h4zm1 0h3.5a.5.5 0 00.5-.5v-13a.5.5 0 00-.5-.5H11v14z"/></symbol><symbol fill="currentColor" class="bi bi-layout-wtf" viewBox="0 0 16 16" id="layout-wtf" xmlns="http://www.w3.org/2000/svg"><path d="M5 1v8H1V1h4zM1 0a1 1 0 00-1 1v8a1 1 0 001 1h4a1 1 0 001-1V1a1 1 0 00-1-1H1zm13 2v5H9V2h5zM9 1a1 1 0 00-1 1v5a1 1 0 001 1h5a1 1 0 001-1V2a1 1 0 00-1-1H9zM5 13v2H3v-2h2zm-2-1a1 1 0 00-1 1v2a1 1 0 001 1h2a1 1 0 001-1v-2a1 1 0 00-1-1H3zm12-1v2H9v-2h6zm-6-1a1 1 0 00-1 1v2a1 1 0 001 1h6a1 1 0 001-1v-2a1 1 0 00-1-1H9z"/></symbol><symbol fill="currentColor" class="bi bi-life-preserver" viewBox="0 0 16 16" id="life-preserver" xmlns="http://www.w3.org/2000/svg"><path d="M8 16A8 8 0 108 0a8 8 0 000 16zm6.43-5.228a7.025 7.025 0 01-3.658 3.658l-1.115-2.788a4.015 4.015 0 001.985-1.985l2.788 1.115zM5.228 14.43a7.025 7.025 0 01-3.658-3.658l2.788-1.115a4.015 4.015 0 001.985 1.985L5.228 14.43zm9.202-9.202l-2.788 1.115a4.015 4.015 0 00-1.985-1.985l1.115-2.788a7.025 7.025 0 013.658 3.658zm-8.087-.87a4.015 4.015 0 00-1.985 1.985L1.57 5.228A7.025 7.025 0 015.228 1.57l1.115 2.788zM8 11a3 3 0 110-6 3 3 0 010 6z"/></symbol><symbol fill="currentColor" class="bi bi-lightbulb" viewBox="0 0 16 16" id="lightbulb" xmlns="http://www.w3.org/2000/svg"><path d="M2 6a6 6 0 1110.174 4.31c-.203.196-.359.4-.453.619l-.762 1.769A.5.5 0 0110.5 13a.5.5 0 010 1 .5.5 0 010 1l-.224.447a1 1 0 01-.894.553H6.618a1 1 0 01-.894-.553L5.5 15a.5.5 0 010-1 .5.5 0 010-1 .5.5 0 01-.46-.302l-.761-1.77a1.964 1.964 0 00-.453-.618A5.984 5.984 0 012 6zm6-5a5 5 0 00-3.479 8.592c.263.254.514.564.676.941L5.83 12h4.342l.632-1.467c.162-.377.413-.687.676-.941A5 5 0 008 1z"/></symbol><symbol fill="currentColor" class="bi bi-lightbulb-fill" viewBox="0 0 16 16" id="lightbulb-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 6a6 6 0 1110.174 4.31c-.203.196-.359.4-.453.619l-.762 1.769A.5.5 0 0110.5 13h-5a.5.5 0 01-.46-.302l-.761-1.77a1.964 1.964 0 00-.453-.618A5.984 5.984 0 012 6zm3 8.5a.5.5 0 01.5-.5h5a.5.5 0 010 1l-.224.447a1 1 0 01-.894.553H6.618a1 1 0 01-.894-.553L5.5 15a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-lightbulb-off" viewBox="0 0 16 16" id="lightbulb-off" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2.23 4.35A6.004 6.004 0 002 6c0 1.691.7 3.22 1.826 4.31.203.196.359.4.453.619l.762 1.769A.5.5 0 005.5 13a.5.5 0 000 1 .5.5 0 000 1l.224.447a1 1 0 00.894.553h2.764a1 1 0 00.894-.553L10.5 15a.5.5 0 000-1 .5.5 0 000-1 .5.5 0 00.288-.091L9.878 12H5.83l-.632-1.467a2.954 2.954 0 00-.676-.941 4.984 4.984 0 01-1.455-4.405l-.837-.836zm1.588-2.653l.708.707a5 5 0 017.07 7.07l.707.707a6 6 0 00-8.484-8.484zm-2.172-.051a.5.5 0 01.708 0l12 12a.5.5 0 01-.708.708l-12-12a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-lightbulb-off-fill" viewBox="0 0 16 16" id="lightbulb-off-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 6c0-.572.08-1.125.23-1.65l8.558 8.559A.5.5 0 0110.5 13h-5a.5.5 0 01-.46-.302l-.761-1.77a1.964 1.964 0 00-.453-.618A5.984 5.984 0 012 6zm10.303 4.181L3.818 1.697a6 6 0 018.484 8.484zM5 14.5a.5.5 0 01.5-.5h5a.5.5 0 010 1l-.224.447a1 1 0 01-.894.553H6.618a1 1 0 01-.894-.553L5.5 15a.5.5 0 01-.5-.5zM2.354 1.646a.5.5 0 10-.708.708l12 12a.5.5 0 00.708-.708l-12-12z"/></symbol><symbol fill="currentColor" class="bi bi-lightning" viewBox="0 0 16 16" id="lightning" xmlns="http://www.w3.org/2000/svg"><path d="M5.52.359A.5.5 0 016 0h4a.5.5 0 01.474.658L8.694 6H12.5a.5.5 0 01.395.807l-7 9a.5.5 0 01-.873-.454L6.823 9.5H3.5a.5.5 0 01-.48-.641l2.5-8.5zM6.374 1L4.168 8.5H7.5a.5.5 0 01.478.647L6.78 13.04 11.478 7H8a.5.5 0 01-.474-.658L9.306 1H6.374z"/></symbol><symbol fill="currentColor" class="bi bi-lightning-charge" viewBox="0 0 16 16" id="lightning-charge" xmlns="http://www.w3.org/2000/svg"><path d="M11.251.068a.5.5 0 01.227.58L9.677 6.5H13a.5.5 0 01.364.843l-8 8.5a.5.5 0 01-.842-.49L6.323 9.5H3a.5.5 0 01-.364-.843l8-8.5a.5.5 0 01.615-.09zM4.157 8.5H7a.5.5 0 01.478.647L6.11 13.59l5.732-6.09H9a.5.5 0 01-.478-.647L9.89 2.41 4.157 8.5z"/></symbol><symbol fill="currentColor" class="bi bi-lightning-charge-fill" viewBox="0 0 16 16" id="lightning-charge-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.251.068a.5.5 0 01.227.58L9.677 6.5H13a.5.5 0 01.364.843l-8 8.5a.5.5 0 01-.842-.49L6.323 9.5H3a.5.5 0 01-.364-.843l8-8.5a.5.5 0 01.615-.09z"/></symbol><symbol fill="currentColor" class="bi bi-lightning-fill" viewBox="0 0 16 16" id="lightning-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.52.359A.5.5 0 016 0h4a.5.5 0 01.474.658L8.694 6H12.5a.5.5 0 01.395.807l-7 9a.5.5 0 01-.873-.454L6.823 9.5H3.5a.5.5 0 01-.48-.641l2.5-8.5z"/></symbol><symbol fill="currentColor" class="bi bi-link" viewBox="0 0 16 16" id="link" xmlns="http://www.w3.org/2000/svg"><path d="M6.354 5.5H4a3 3 0 000 6h3a3 3 0 002.83-4H9c-.086 0-.17.01-.25.031A2 2 0 017 10.5H4a2 2 0 110-4h1.535c.218-.376.495-.714.82-1z"/><path d="M9 5.5a3 3 0 00-2.83 4h1.098A2 2 0 019 6.5h3a2 2 0 110 4h-1.535a4.02 4.02 0 01-.82 1H12a3 3 0 100-6H9z"/></symbol><symbol fill="currentColor" class="bi bi-link-45deg" viewBox="0 0 16 16" id="link-45deg" xmlns="http://www.w3.org/2000/svg"><path d="M4.715 6.542L3.343 7.914a3 3 0 104.243 4.243l1.828-1.829A3 3 0 008.586 5.5L8 6.086a1.002 1.002 0 00-.154.199 2 2 0 01.861 3.337L6.88 11.45a2 2 0 11-2.83-2.83l.793-.792a4.018 4.018 0 01-.128-1.287z"/><path d="M6.586 4.672A3 3 0 007.414 9.5l.775-.776a2 2 0 01-.896-3.346L9.12 3.55a2 2 0 112.83 2.83l-.793.792c.112.42.155.855.128 1.287l1.372-1.372a3 3 0 10-4.243-4.243L6.586 4.672z"/></symbol><symbol fill="currentColor" class="bi bi-linkedin" viewBox="0 0 16 16" id="linkedin" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.146C0 .513.526 0 1.175 0h13.65C15.474 0 16 .513 16 1.146v13.708c0 .633-.526 1.146-1.175 1.146H1.175C.526 16 0 15.487 0 14.854V1.146zm4.943 12.248V6.169H2.542v7.225h2.401zm-1.2-8.212c.837 0 1.358-.554 1.358-1.248-.015-.709-.52-1.248-1.342-1.248-.822 0-1.359.54-1.359 1.248 0 .694.521 1.248 1.327 1.248h.016zm4.908 8.212V9.359c0-.216.016-.432.08-.586.173-.431.568-.878 1.232-.878.869 0 1.216.662 1.216 1.634v3.865h2.401V9.25c0-2.22-1.184-3.252-2.764-3.252-1.274 0-1.845.7-2.165 1.193v.025h-.016a5.54 5.54 0 01.016-.025V6.169h-2.4c.03.678 0 7.225 0 7.225h2.4z"/></symbol><symbol fill="currentColor" class="bi bi-list" viewBox="0 0 16 16" id="list" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2.5 12a.5.5 0 01.5-.5h10a.5.5 0 010 1H3a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h10a.5.5 0 010 1H3a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h10a.5.5 0 010 1H3a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-list-check" viewBox="0 0 16 16" id="list-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5 11.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM3.854 2.146a.5.5 0 010 .708l-1.5 1.5a.5.5 0 01-.708 0l-.5-.5a.5.5 0 11.708-.708L2 3.293l1.146-1.147a.5.5 0 01.708 0zm0 4a.5.5 0 010 .708l-1.5 1.5a.5.5 0 01-.708 0l-.5-.5a.5.5 0 11.708-.708L2 7.293l1.146-1.147a.5.5 0 01.708 0zm0 4a.5.5 0 010 .708l-1.5 1.5a.5.5 0 01-.708 0l-.5-.5a.5.5 0 01.708-.708l.146.147 1.146-1.147a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-list-nested" viewBox="0 0 16 16" id="list-nested" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4.5 11.5A.5.5 0 015 11h10a.5.5 0 010 1H5a.5.5 0 01-.5-.5zm-2-4A.5.5 0 013 7h10a.5.5 0 010 1H3a.5.5 0 01-.5-.5zm-2-4A.5.5 0 011 3h10a.5.5 0 010 1H1a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-list-ol" viewBox="0 0 16 16" id="list-ol" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5 11.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5z"/><path d="M1.713 11.865v-.474H2c.217 0 .363-.137.363-.317 0-.185-.158-.31-.361-.31-.223 0-.367.152-.373.31h-.59c.016-.467.373-.787.986-.787.588-.002.954.291.957.703a.595.595 0 01-.492.594v.033a.615.615 0 01.569.631c.003.533-.502.8-1.051.8-.656 0-1-.37-1.008-.794h.582c.008.178.186.306.422.309.254 0 .424-.145.422-.35-.002-.195-.155-.348-.414-.348h-.3zm-.004-4.699h-.604v-.035c0-.408.295-.844.958-.844.583 0 .96.326.96.756 0 .389-.257.617-.476.848l-.537.572v.03h1.054V9H1.143v-.395l.957-.99c.138-.142.293-.304.293-.508 0-.18-.147-.32-.342-.32a.33.33 0 00-.342.338v.041zM2.564 5h-.635V2.924h-.031l-.598.42v-.567l.629-.443h.635V5z"/></symbol><symbol fill="currentColor" class="bi bi-list-stars" viewBox="0 0 16 16" id="list-stars" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5 11.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5z"/><path d="M2.242 2.194a.27.27 0 01.516 0l.162.53c.035.115.14.194.258.194h.551c.259 0 .37.333.164.493l-.468.363a.277.277 0 00-.094.3l.173.569c.078.256-.213.462-.423.3l-.417-.324a.267.267 0 00-.328 0l-.417.323c-.21.163-.5-.043-.423-.299l.173-.57a.277.277 0 00-.094-.299l-.468-.363c-.206-.16-.095-.493.164-.493h.55a.271.271 0 00.259-.194l.162-.53zm0 4a.27.27 0 01.516 0l.162.53c.035.115.14.194.258.194h.551c.259 0 .37.333.164.493l-.468.363a.277.277 0 00-.094.3l.173.569c.078.255-.213.462-.423.3l-.417-.324a.267.267 0 00-.328 0l-.417.323c-.21.163-.5-.043-.423-.299l.173-.57a.277.277 0 00-.094-.299l-.468-.363c-.206-.16-.095-.493.164-.493h.55a.271.271 0 00.259-.194l.162-.53zm0 4a.27.27 0 01.516 0l.162.53c.035.115.14.194.258.194h.551c.259 0 .37.333.164.493l-.468.363a.277.277 0 00-.094.3l.173.569c.078.255-.213.462-.423.3l-.417-.324a.267.267 0 00-.328 0l-.417.323c-.21.163-.5-.043-.423-.299l.173-.57a.277.277 0 00-.094-.299l-.468-.363c-.206-.16-.095-.493.164-.493h.55a.271.271 0 00.259-.194l.162-.53z"/></symbol><symbol fill="currentColor" class="bi bi-list-task" viewBox="0 0 16 16" id="list-task" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 2.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5V3a.5.5 0 00-.5-.5H2zM3 3H2v1h1V3z"/><path d="M5 3.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zM5.5 7a.5.5 0 000 1h9a.5.5 0 000-1h-9zm0 4a.5.5 0 000 1h9a.5.5 0 000-1h-9z"/><path fill-rule="evenodd" d="M1.5 7a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5H2a.5.5 0 01-.5-.5V7zM2 7h1v1H2V7zm0 3.5a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5H2zm1 .5H2v1h1v-1z"/></symbol><symbol fill="currentColor" class="bi bi-list-ul" viewBox="0 0 16 16" id="list-ul" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5 11.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0-4a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm-3 1a1 1 0 100-2 1 1 0 000 2zm0 4a1 1 0 100-2 1 1 0 000 2zm0 4a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-lock" viewBox="0 0 16 16" id="lock" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a2 2 0 012 2v4H6V3a2 2 0 012-2zm3 6V3a3 3 0 00-6 0v4a2 2 0 00-2 2v5a2 2 0 002 2h6a2 2 0 002-2V9a2 2 0 00-2-2zM5 8h6a1 1 0 011 1v5a1 1 0 01-1 1H5a1 1 0 01-1-1V9a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-lock-fill" viewBox="0 0 16 16" id="lock-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a2 2 0 012 2v4H6V3a2 2 0 012-2zm3 6V3a3 3 0 00-6 0v4a2 2 0 00-2 2v5a2 2 0 002 2h6a2 2 0 002-2V9a2 2 0 00-2-2z"/></symbol><symbol fill="currentColor" class="bi bi-mailbox" viewBox="0 0 16 16" id="mailbox" xmlns="http://www.w3.org/2000/svg"><path d="M4 4a3 3 0 00-3 3v6h6V7a3 3 0 00-3-3zm0-1h8a4 4 0 014 4v6a1 1 0 01-1 1H1a1 1 0 01-1-1V7a4 4 0 014-4zm2.646 1A3.99 3.99 0 018 7v6h7V7a3 3 0 00-3-3H6.646z"/><path d="M11.793 8.5H9v-1h5a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.354-.146l-.853-.854zM5 7c0 .552-.448 0-1 0s-1 .552-1 0a1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-mailbox2" viewBox="0 0 16 16" id="mailbox2" xmlns="http://www.w3.org/2000/svg"><path d="M9 8.5h2.793l.853.854A.5.5 0 0013 9.5h1a.5.5 0 00.5-.5V8a.5.5 0 00-.5-.5H9v1z"/><path d="M12 3H4a4 4 0 00-4 4v6a1 1 0 001 1h14a1 1 0 001-1V7a4 4 0 00-4-4zM8 7a3.99 3.99 0 00-1.354-3H12a3 3 0 013 3v6H8V7zm-3.415.157C4.42 7.087 4.218 7 4 7c-.218 0-.42.086-.585.157C3.164 7.264 3 7.334 3 7a1 1 0 012 0c0 .334-.164.264-.415.157z"/></symbol><symbol fill="currentColor" class="bi bi-map" viewBox="0 0 16 16" id="map" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15.817.113A.5.5 0 0116 .5v14a.5.5 0 01-.402.49l-5 1a.502.502 0 01-.196 0L5.5 15.01l-4.902.98A.5.5 0 010 15.5v-14a.5.5 0 01.402-.49l5-1a.5.5 0 01.196 0L10.5.99l4.902-.98a.5.5 0 01.415.103zM10 1.91l-4-.8v12.98l4 .8V1.91zm1 12.98l4-.8V1.11l-4 .8v12.98zm-6-.8V1.11l-4 .8v12.98l4-.8z"/></symbol><symbol fill="currentColor" class="bi bi-map-fill" viewBox="0 0 16 16" id="map-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M16 .5a.5.5 0 00-.598-.49L10.5.99 5.598.01a.5.5 0 00-.196 0l-5 1A.5.5 0 000 1.5v14a.5.5 0 00.598.49l4.902-.98 4.902.98a.502.502 0 00.196 0l5-1A.5.5 0 0016 14.5V.5zM5 14.09V1.11l.5-.1.5.1v12.98l-.402-.08a.498.498 0 00-.196 0L5 14.09zm5 .8V1.91l.402.08a.5.5 0 00.196 0L11 1.91v12.98l-.5.1-.5-.1z"/></symbol><symbol fill="currentColor" class="bi bi-markdown" viewBox="0 0 16 16" id="markdown" xmlns="http://www.w3.org/2000/svg"><path d="M14 3a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4a1 1 0 011-1h12zM2 2a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2z"/><path fill-rule="evenodd" d="M9.146 8.146a.5.5 0 01.708 0L11.5 9.793l1.646-1.647a.5.5 0 01.708.708l-2 2a.5.5 0 01-.708 0l-2-2a.5.5 0 010-.708z"/><path fill-rule="evenodd" d="M11.5 5a.5.5 0 01.5.5v4a.5.5 0 01-1 0v-4a.5.5 0 01.5-.5z"/><path d="M3.56 11V7.01h.056l1.428 3.239h.774l1.42-3.24h.056V11h1.073V5.001h-1.2l-1.71 3.894h-.039l-1.71-3.894H2.5V11h1.06z"/></symbol><symbol fill="currentColor" class="bi bi-markdown-fill" viewBox="0 0 16 16" id="markdown-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm11.5 1a.5.5 0 00-.5.5v3.793L9.854 8.146a.5.5 0 10-.708.708l2 2a.5.5 0 00.708 0l2-2a.5.5 0 00-.708-.708L12 9.293V5.5a.5.5 0 00-.5-.5zM3.56 7.01h.056l1.428 3.239h.774l1.42-3.24h.056V11h1.073V5.001h-1.2l-1.71 3.894h-.039l-1.71-3.894H2.5V11h1.06V7.01z"/></symbol><symbol fill="currentColor" class="bi bi-mask" viewBox="0 0 16 16" id="mask" xmlns="http://www.w3.org/2000/svg"><path d="M6.225 1.227A7.5 7.5 0 0110.5 8a7.5 7.5 0 01-4.275 6.773 7 7 0 100-13.546zM4.187.966a8 8 0 117.627 14.069A8 8 0 014.186.964z"/></symbol><symbol fill="currentColor" class="bi bi-mastodon" viewBox="0 0 16 16" id="mastodon" xmlns="http://www.w3.org/2000/svg"><path d="M11.19 12.195c2.016-.24 3.77-1.475 3.99-2.603.348-1.778.32-4.339.32-4.339 0-3.47-2.286-4.488-2.286-4.488C12.062.238 10.083.017 8.027 0h-.05C5.92.017 3.942.238 2.79.765c0 0-2.285 1.017-2.285 4.488l-.002.662c-.004.64-.007 1.35.011 2.091.083 3.394.626 6.74 3.78 7.57 1.454.383 2.703.463 3.709.408 1.823-.1 2.847-.647 2.847-.647l-.06-1.317s-1.303.41-2.767.36c-1.45-.05-2.98-.156-3.215-1.928a3.614 3.614 0 01-.033-.496s1.424.346 3.228.428c1.103.05 2.137-.064 3.188-.189zm1.613-2.47H11.13v-4.08c0-.859-.364-1.295-1.091-1.295-.804 0-1.207.517-1.207 1.541v2.233H7.168V5.89c0-1.024-.403-1.541-1.207-1.541-.727 0-1.091.436-1.091 1.296v4.079H3.197V5.522c0-.859.22-1.541.66-2.046.456-.505 1.052-.764 1.793-.764.856 0 1.504.328 1.933.983L8 4.39l.417-.695c.429-.655 1.077-.983 1.934-.983.74 0 1.336.259 1.791.764.442.505.661 1.187.661 2.046v4.203z"/></symbol><symbol fill="currentColor" class="bi bi-megaphone" viewBox="0 0 16 16" id="megaphone" xmlns="http://www.w3.org/2000/svg"><path d="M13 2.5a1.5 1.5 0 013 0v11a1.5 1.5 0 01-3 0v-.214c-2.162-1.241-4.49-1.843-6.912-2.083l.405 2.712A1 1 0 015.51 15.1h-.548a1 1 0 01-.916-.599l-1.85-3.49a68.14 68.14 0 00-.202-.003A2.014 2.014 0 010 9V7a2.02 2.02 0 011.992-2.013 74.663 74.663 0 002.483-.075c3.043-.154 6.148-.849 8.525-2.199V2.5zm1 0v11a.5.5 0 001 0v-11a.5.5 0 00-1 0zm-1 1.35c-2.344 1.205-5.209 1.842-8 2.033v4.233c.18.01.359.022.537.036 2.568.189 5.093.744 7.463 1.993V3.85zm-9 6.215v-4.13a95.09 95.09 0 01-1.992.052A1.02 1.02 0 001 7v2c0 .55.448 1.002 1.006 1.009A60.49 60.49 0 014 10.065zm-.657.975l1.609 3.037.01.024h.548l-.002-.014-.443-2.966a68.019 68.019 0 00-1.722-.082z"/></symbol><symbol fill="currentColor" class="bi bi-megaphone-fill" viewBox="0 0 16 16" id="megaphone-fill" xmlns="http://www.w3.org/2000/svg"><path d="M13 2.5a1.5 1.5 0 013 0v11a1.5 1.5 0 01-3 0v-11zm-1 .724c-2.067.95-4.539 1.481-7 1.656v6.237a25.222 25.222 0 011.088.085c2.053.204 4.038.668 5.912 1.56V3.224zm-8 7.841V4.934c-.68.027-1.399.043-2.008.053A2.02 2.02 0 000 7v2c0 1.106.896 1.996 1.994 2.009a68.14 68.14 0 01.496.008 64 64 0 011.51.048zm1.39 1.081c.285.021.569.047.85.078l.253 1.69a1 1 0 01-.983 1.187h-.548a1 1 0 01-.916-.599l-1.314-2.48a65.81 65.81 0 011.692.064c.327.017.65.037.966.06z"/></symbol><symbol fill="currentColor" class="bi bi-menu-app" viewBox="0 0 16 16" id="menu-app" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A1.5 1.5 0 011.5 0h2A1.5 1.5 0 015 1.5v2A1.5 1.5 0 013.5 5h-2A1.5 1.5 0 010 3.5v-2zM1.5 1a.5.5 0 00-.5.5v2a.5.5 0 00.5.5h2a.5.5 0 00.5-.5v-2a.5.5 0 00-.5-.5h-2zM0 8a2 2 0 012-2h12a2 2 0 012 2v5a2 2 0 01-2 2H2a2 2 0 01-2-2V8zm1 3v2a1 1 0 001 1h12a1 1 0 001-1v-2H1zm14-1V8a1 1 0 00-1-1H2a1 1 0 00-1 1v2h14zM2 8.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-menu-app-fill" viewBox="0 0 16 16" id="menu-app-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A1.5 1.5 0 011.5 0h2A1.5 1.5 0 015 1.5v2A1.5 1.5 0 013.5 5h-2A1.5 1.5 0 010 3.5v-2zM0 8a2 2 0 012-2h12a2 2 0 012 2v5a2 2 0 01-2 2H2a2 2 0 01-2-2V8zm1 3v2a1 1 0 001 1h12a1 1 0 001-1v-2H1zm14-1V8a1 1 0 00-1-1H2a1 1 0 00-1 1v2h14zM2 8.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-menu-button" viewBox="0 0 16 16" id="menu-button" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A1.5 1.5 0 011.5 0h8A1.5 1.5 0 0111 1.5v2A1.5 1.5 0 019.5 5h-8A1.5 1.5 0 010 3.5v-2zM1.5 1a.5.5 0 00-.5.5v2a.5.5 0 00.5.5h8a.5.5 0 00.5-.5v-2a.5.5 0 00-.5-.5h-8z"/><path d="M7.823 2.823l-.396-.396A.25.25 0 017.604 2h.792a.25.25 0 01.177.427l-.396.396a.25.25 0 01-.354 0zM0 8a2 2 0 012-2h12a2 2 0 012 2v5a2 2 0 01-2 2H2a2 2 0 01-2-2V8zm1 3v2a1 1 0 001 1h12a1 1 0 001-1v-2H1zm14-1V8a1 1 0 00-1-1H2a1 1 0 00-1 1v2h14zM2 8.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-menu-button-fill" viewBox="0 0 16 16" id="menu-button-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 0A1.5 1.5 0 000 1.5v2A1.5 1.5 0 001.5 5h8A1.5 1.5 0 0011 3.5v-2A1.5 1.5 0 009.5 0h-8zm5.927 2.427A.25.25 0 017.604 2h.792a.25.25 0 01.177.427l-.396.396a.25.25 0 01-.354 0l-.396-.396zM0 8a2 2 0 012-2h12a2 2 0 012 2v5a2 2 0 01-2 2H2a2 2 0 01-2-2V8zm1 3v2a1 1 0 001 1h12a1 1 0 001-1v-2H1zm14-1V8a1 1 0 00-1-1H2a1 1 0 00-1 1v2h14zM2 8.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-menu-button-wide" viewBox="0 0 16 16" id="menu-button-wide" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5A1.5 1.5 0 011.5 0h13A1.5 1.5 0 0116 1.5v2A1.5 1.5 0 0114.5 5h-13A1.5 1.5 0 010 3.5v-2zM1.5 1a.5.5 0 00-.5.5v2a.5.5 0 00.5.5h13a.5.5 0 00.5-.5v-2a.5.5 0 00-.5-.5h-13z"/><path d="M2 2.5a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3a.5.5 0 01-.5-.5zm10.823.323l-.396-.396A.25.25 0 0112.604 2h.792a.25.25 0 01.177.427l-.396.396a.25.25 0 01-.354 0zM0 8a2 2 0 012-2h12a2 2 0 012 2v5a2 2 0 01-2 2H2a2 2 0 01-2-2V8zm1 3v2a1 1 0 001 1h12a1 1 0 001-1v-2H1zm14-1V8a1 1 0 00-1-1H2a1 1 0 00-1 1v2h14zM2 8.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-menu-button-wide-fill" viewBox="0 0 16 16" id="menu-button-wide-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 0A1.5 1.5 0 000 1.5v2A1.5 1.5 0 001.5 5h13A1.5 1.5 0 0016 3.5v-2A1.5 1.5 0 0014.5 0h-13zm1 2h3a.5.5 0 010 1h-3a.5.5 0 010-1zm9.927.427A.25.25 0 0112.604 2h.792a.25.25 0 01.177.427l-.396.396a.25.25 0 01-.354 0l-.396-.396zM0 8a2 2 0 012-2h12a2 2 0 012 2v5a2 2 0 01-2 2H2a2 2 0 01-2-2V8zm1 3v2a1 1 0 001 1h12a1 1 0 001-1v-2H1zm14-1V8a1 1 0 00-1-1H2a1 1 0 00-1 1v2h14zM2 8.5a.5.5 0 01.5-.5h9a.5.5 0 010 1h-9a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-menu-down" viewBox="0 0 16 16" id="menu-down" xmlns="http://www.w3.org/2000/svg"><path d="M7.646.146a.5.5 0 01.708 0L10.207 2H14a2 2 0 012 2v9a2 2 0 01-2 2H2a2 2 0 01-2-2V4a2 2 0 012-2h3.793L7.646.146zM1 7v3h14V7H1zm14-1V4a1 1 0 00-1-1h-3.793a1 1 0 01-.707-.293L8 1.207l-1.5 1.5A1 1 0 015.793 3H2a1 1 0 00-1 1v2h14zm0 5H1v2a1 1 0 001 1h12a1 1 0 001-1v-2zM2 4.5a.5.5 0 01.5-.5h8a.5.5 0 010 1h-8a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0 4a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-menu-up" viewBox="0 0 16 16" id="menu-up" xmlns="http://www.w3.org/2000/svg"><path d="M7.646 15.854a.5.5 0 00.708 0L10.207 14H14a2 2 0 002-2V3a2 2 0 00-2-2H2a2 2 0 00-2 2v9a2 2 0 002 2h3.793l1.853 1.854zM1 9V6h14v3H1zm14 1v2a1 1 0 01-1 1h-3.793a1 1 0 00-.707.293l-1.5 1.5-1.5-1.5A1 1 0 005.793 13H2a1 1 0 01-1-1v-2h14zm0-5H1V3a1 1 0 011-1h12a1 1 0 011 1v2zM2 11.5a.5.5 0 00.5.5h8a.5.5 0 000-1h-8a.5.5 0 00-.5.5zm0-4a.5.5 0 00.5.5h11a.5.5 0 000-1h-11a.5.5 0 00-.5.5zm0-4a.5.5 0 00.5.5h6a.5.5 0 000-1h-6a.5.5 0 00-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-messenger" viewBox="0 0 16 16" id="messenger" xmlns="http://www.w3.org/2000/svg"><path d="M0 7.76C0 3.301 3.493 0 8 0s8 3.301 8 7.76-3.493 7.76-8 7.76c-.81 0-1.586-.107-2.316-.307a.639.639 0 00-.427.03l-1.588.702a.64.64 0 01-.898-.566l-.044-1.423a.639.639 0 00-.215-.456C.956 12.108 0 10.092 0 7.76zm5.546-1.459l-2.35 3.728c-.225.358.214.761.551.506l2.525-1.916a.48.48 0 01.578-.002l1.869 1.402a1.2 1.2 0 001.735-.32l2.35-3.728c.226-.358-.214-.761-.551-.506L9.728 7.381a.48.48 0 01-.578.002L7.281 5.98a1.2 1.2 0 00-1.735.32z"/></symbol><symbol fill="currentColor" class="bi bi-mic" viewBox="0 0 16 16" id="mic" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 6.5A.5.5 0 014 7v1a4 4 0 008 0V7a.5.5 0 011 0v1a5 5 0 01-4.5 4.975V15h3a.5.5 0 010 1h-7a.5.5 0 010-1h3v-2.025A5 5 0 013 8V7a.5.5 0 01.5-.5z"/><path d="M10 8a2 2 0 11-4 0V3a2 2 0 114 0v5zM8 0a3 3 0 00-3 3v5a3 3 0 006 0V3a3 3 0 00-3-3z"/></symbol><symbol fill="currentColor" class="bi bi-mic-fill" viewBox="0 0 16 16" id="mic-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5 3a3 3 0 016 0v5a3 3 0 01-6 0V3z"/><path d="M3.5 6.5A.5.5 0 014 7v1a4 4 0 008 0V7a.5.5 0 011 0v1a5 5 0 01-4.5 4.975V15h3a.5.5 0 010 1h-7a.5.5 0 010-1h3v-2.025A5 5 0 013 8V7a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-mic-mute" viewBox="0 0 16 16" id="mic-mute" xmlns="http://www.w3.org/2000/svg"><path d="M13 8c0 .564-.094 1.107-.266 1.613l-.814-.814A4.02 4.02 0 0012 8V7a.5.5 0 011 0v1zm-5 4c.818 0 1.578-.245 2.212-.667l.718.719a4.973 4.973 0 01-2.43.923V15h3a.5.5 0 010 1h-7a.5.5 0 010-1h3v-2.025A5 5 0 013 8V7a.5.5 0 011 0v1a4 4 0 004 4zm3-9v4.879l-1-1V3a2 2 0 00-3.997-.118l-.845-.845A3.001 3.001 0 0111 3z"/><path d="M9.486 10.607l-.748-.748A2 2 0 016 8v-.878l-1-1V8a3 3 0 004.486 2.607zm-7.84-9.253l12 12 .708-.708-12-12-.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-mic-mute-fill" viewBox="0 0 16 16" id="mic-mute-fill" xmlns="http://www.w3.org/2000/svg"><path d="M13 8c0 .564-.094 1.107-.266 1.613l-.814-.814A4.02 4.02 0 0012 8V7a.5.5 0 011 0v1zm-5 4c.818 0 1.578-.245 2.212-.667l.718.719a4.973 4.973 0 01-2.43.923V15h3a.5.5 0 010 1h-7a.5.5 0 010-1h3v-2.025A5 5 0 013 8V7a.5.5 0 011 0v1a4 4 0 004 4zm3-9v4.879L5.158 2.037A3.001 3.001 0 0111 3z"/><path d="M9.486 10.607L5 6.12V8a3 3 0 004.486 2.607zm-7.84-9.253l12 12 .708-.708-12-12-.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-minecart" viewBox="0 0 16 16" id="minecart" xmlns="http://www.w3.org/2000/svg"><path d="M4 15a1 1 0 110-2 1 1 0 010 2zm0 1a2 2 0 100-4 2 2 0 000 4zm8-1a1 1 0 110-2 1 1 0 010 2zm0 1a2 2 0 100-4 2 2 0 000 4zM.115 3.18A.5.5 0 01.5 3h15a.5.5 0 01.491.592l-1.5 8A.5.5 0 0114 12H2a.5.5 0 01-.491-.408l-1.5-8a.5.5 0 01.106-.411zm.987.82l1.313 7h11.17l1.313-7H1.102z"/></symbol><symbol fill="currentColor" class="bi bi-minecart-loaded" viewBox="0 0 16 16" id="minecart-loaded" xmlns="http://www.w3.org/2000/svg"><path d="M4 15a1 1 0 110-2 1 1 0 010 2zm0 1a2 2 0 100-4 2 2 0 000 4zm8-1a1 1 0 110-2 1 1 0 010 2zm0 1a2 2 0 100-4 2 2 0 000 4zM.115 3.18A.5.5 0 01.5 3h15a.5.5 0 01.491.592l-1.5 8A.5.5 0 0114 12H2a.5.5 0 01-.491-.408l-1.5-8a.5.5 0 01.106-.411zm.987.82l1.313 7h11.17l1.313-7H1.102z"/><path fill-rule="evenodd" d="M6 1a2.498 2.498 0 014 0c.818 0 1.545.394 2 1 .67 0 1.552.57 2 1h-2c-.314 0-.611-.15-.8-.4-.274-.365-.71-.6-1.2-.6-.314 0-.611-.15-.8-.4a1.497 1.497 0 00-2.4 0c-.189.25-.486.4-.8.4-.507 0-.955.251-1.228.638-.09.13-.194.25-.308.362H3c.13-.147.401-.432.562-.545a1.63 1.63 0 00.393-.393A2.498 2.498 0 016 1z"/></symbol><symbol fill="currentColor" class="bi bi-moisture" viewBox="0 0 16 16" id="moisture" xmlns="http://www.w3.org/2000/svg"><path d="M13.5 0a.5.5 0 000 1H15v2.75h-.5a.5.5 0 000 1h.5V7.5h-1.5a.5.5 0 000 1H15v2.75h-.5a.5.5 0 000 1h.5V15h-1.5a.5.5 0 000 1h2a.5.5 0 00.5-.5V.5a.5.5 0 00-.5-.5h-2zM7 1.5l.364-.343a.5.5 0 00-.728 0l-.002.002-.006.007-.022.023-.08.088a28.458 28.458 0 00-1.274 1.517c-.769.983-1.714 2.325-2.385 3.727C2.368 7.564 2 8.682 2 9.733 2 12.614 4.212 15 7 15s5-2.386 5-5.267c0-1.05-.368-2.169-.867-3.212-.671-1.402-1.616-2.744-2.385-3.727a28.458 28.458 0 00-1.354-1.605l-.022-.023-.006-.007-.002-.001L7 1.5zm0 0l-.364-.343L7 1.5zm-.016.766L7 2.247l.016.019c.24.274.572.667.944 1.144.611.781 1.32 1.776 1.901 2.827H4.14c.58-1.051 1.29-2.046 1.9-2.827.373-.477.706-.87.945-1.144zM3 9.733c0-.755.244-1.612.638-2.496h6.724c.395.884.638 1.741.638 2.496C11 12.117 9.182 14 7 14s-4-1.883-4-4.267z"/></symbol><symbol fill="currentColor" class="bi bi-moon" viewBox="0 0 16 16" id="moon" xmlns="http://www.w3.org/2000/svg"><path d="M6 .278a.768.768 0 01.08.858 7.208 7.208 0 00-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 01.81.316.733.733 0 01-.031.893A8.349 8.349 0 018.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 016 .278zM4.858 1.311A7.269 7.269 0 001.025 7.71c0 4.02 3.279 7.276 7.319 7.276a7.316 7.316 0 005.205-2.162c-.337.042-.68.063-1.029.063-4.61 0-8.343-3.714-8.343-8.29 0-1.167.242-2.278.681-3.286z"/></symbol><symbol fill="currentColor" class="bi bi-moon-fill" viewBox="0 0 16 16" id="moon-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 .278a.768.768 0 01.08.858 7.208 7.208 0 00-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 01.81.316.733.733 0 01-.031.893A8.349 8.349 0 018.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 016 .278z"/></symbol><symbol fill="currentColor" class="bi bi-moon-stars" viewBox="0 0 16 16" id="moon-stars" xmlns="http://www.w3.org/2000/svg"><path d="M6 .278a.768.768 0 01.08.858 7.208 7.208 0 00-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 01.81.316.733.733 0 01-.031.893A8.349 8.349 0 018.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 016 .278zM4.858 1.311A7.269 7.269 0 001.025 7.71c0 4.02 3.279 7.276 7.319 7.276a7.316 7.316 0 005.205-2.162c-.337.042-.68.063-1.029.063-4.61 0-8.343-3.714-8.343-8.29 0-1.167.242-2.278.681-3.286z"/><path d="M10.794 3.148a.217.217 0 01.412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 010 .412l-1.162.387a1.734 1.734 0 00-1.097 1.097l-.387 1.162a.217.217 0 01-.412 0l-.387-1.162A1.734 1.734 0 009.31 6.593l-1.162-.387a.217.217 0 010-.412l1.162-.387a1.734 1.734 0 001.097-1.097l.387-1.162zM13.863.099a.145.145 0 01.274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 010 .274l-.774.258a1.156 1.156 0 00-.732.732l-.258.774a.145.145 0 01-.274 0l-.258-.774a1.156 1.156 0 00-.732-.732l-.774-.258a.145.145 0 010-.274l.774-.258c.346-.115.617-.386.732-.732L13.863.1z"/></symbol><symbol fill="currentColor" class="bi bi-moon-stars-fill" viewBox="0 0 16 16" id="moon-stars-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 .278a.768.768 0 01.08.858 7.208 7.208 0 00-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 01.81.316.733.733 0 01-.031.893A8.349 8.349 0 018.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 016 .278z"/><path d="M10.794 3.148a.217.217 0 01.412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 010 .412l-1.162.387a1.734 1.734 0 00-1.097 1.097l-.387 1.162a.217.217 0 01-.412 0l-.387-1.162A1.734 1.734 0 009.31 6.593l-1.162-.387a.217.217 0 010-.412l1.162-.387a1.734 1.734 0 001.097-1.097l.387-1.162zM13.863.099a.145.145 0 01.274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 010 .274l-.774.258a1.156 1.156 0 00-.732.732l-.258.774a.145.145 0 01-.274 0l-.258-.774a1.156 1.156 0 00-.732-.732l-.774-.258a.145.145 0 010-.274l.774-.258c.346-.115.617-.386.732-.732L13.863.1z"/></symbol><symbol fill="currentColor" class="bi bi-mouse" viewBox="0 0 16 16" id="mouse" xmlns="http://www.w3.org/2000/svg"><path d="M8 3a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 3zm4 8a4 4 0 01-8 0V5a4 4 0 118 0v6zM8 0a5 5 0 00-5 5v6a5 5 0 0010 0V5a5 5 0 00-5-5z"/></symbol><symbol fill="currentColor" class="bi bi-mouse-fill" viewBox="0 0 16 16" id="mouse-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 5a5 5 0 0110 0v6a5 5 0 01-10 0V5zm5.5-1.5a.5.5 0 00-1 0v2a.5.5 0 001 0v-2z"/></symbol><symbol fill="currentColor" class="bi bi-mouse2" viewBox="0 0 16 16" id="mouse2" xmlns="http://www.w3.org/2000/svg"><path d="M3 5.188C3 2.341 5.22 0 8 0s5 2.342 5 5.188v5.625C13 13.658 10.78 16 8 16s-5-2.342-5-5.188V5.189zm4.5-4.155C5.541 1.289 4 3.035 4 5.188V5.5h3.5V1.033zm1 0V5.5H12v-.313c0-2.152-1.541-3.898-3.5-4.154zM12 6.5H4v4.313C4 13.145 5.81 15 8 15s4-1.855 4-4.188V6.5z"/></symbol><symbol fill="currentColor" class="bi bi-mouse2-fill" viewBox="0 0 16 16" id="mouse2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.5.026C4.958.286 3 2.515 3 5.188V5.5h4.5V.026zm1 0V5.5H13v-.312C13 2.515 11.042.286 8.5.026zM13 6.5H3v4.313C3 13.658 5.22 16 8 16s5-2.342 5-5.188V6.5z"/></symbol><symbol fill="currentColor" class="bi bi-mouse3" viewBox="0 0 16 16" id="mouse3" xmlns="http://www.w3.org/2000/svg"><path d="M7 0c-.593 0-1.104.157-1.527.463-.418.302-.717.726-.93 1.208C4.123 2.619 4 3.879 4 5.187v.504L3.382 6A2.5 2.5 0 002 8.236v2.576C2 13.659 4.22 16 7 16h2c2.78 0 5-2.342 5-5.188V7.51a.71.71 0 000-.02V5.186c0-1.13-.272-2.044-.748-2.772-.474-.726-1.13-1.235-1.849-1.59C9.981.123 8.26 0 7 0zm2.5 6.099V1.232c.51.11 1.008.267 1.46.49.596.293 1.099.694 1.455 1.24.355.543.585 1.262.585 2.225v1.69l-3.5-.778zm-1-5.025v4.803L5 5.099c.006-1.242.134-2.293.457-3.024.162-.366.363-.63.602-.801C6.292 1.105 6.593 1 7 1c.468 0 .98.018 1.5.074zM5 6.124L13 7.9v2.912C13 13.145 11.19 15 9 15H7c-2.19 0-4-1.855-4-4.188V8.236a1.5 1.5 0 01.83-1.342l.187-.093c.01.265.024.58.047.92.062.938.19 2.12.462 2.937a.5.5 0 10.948-.316c-.227-.683-.35-1.75-.413-2.688a29.17 29.17 0 01-.06-1.528v-.002z"/></symbol><symbol fill="currentColor" class="bi bi-mouse3-fill" viewBox="0 0 16 16" id="mouse3-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5.069A15.328 15.328 0 007 0c-.593 0-1.104.157-1.527.463-.418.302-.717.726-.93 1.208-.386.873-.522 2.01-.54 3.206l4.497 1V.069zM3.71 5.836L3.381 6A2.5 2.5 0 002 8.236v2.576C2 13.659 4.22 16 7 16h2c2.78 0 5-2.342 5-5.188V8.123l-9-2v.003l.008.353c.007.3.023.715.053 1.175.063.937.186 2.005.413 2.688a.5.5 0 11-.948.316c-.273-.817-.4-2-.462-2.937A30.16 30.16 0 014 6.003c0-.034.003-.067.01-.1l-.3-.067zM14 7.1V5.187c0-1.13-.272-2.044-.748-2.772-.474-.726-1.13-1.235-1.849-1.59A7.495 7.495 0 009.5.212v5.887l4.5 1z"/></symbol><symbol fill="currentColor" class="bi bi-music-note" viewBox="0 0 16 16" id="music-note" xmlns="http://www.w3.org/2000/svg"><path d="M9 13c0 1.105-1.12 2-2.5 2S4 14.105 4 13s1.12-2 2.5-2 2.5.895 2.5 2z"/><path fill-rule="evenodd" d="M9 3v10H8V3h1z"/><path d="M8 2.82a1 1 0 01.804-.98l3-.6A1 1 0 0113 2.22V4L8 5V2.82z"/></symbol><symbol fill="currentColor" class="bi bi-music-note-beamed" viewBox="0 0 16 16" id="music-note-beamed" xmlns="http://www.w3.org/2000/svg"><path d="M6 13c0 1.105-1.12 2-2.5 2S1 14.105 1 13c0-1.104 1.12-2 2.5-2s2.5.896 2.5 2zm9-2c0 1.105-1.12 2-2.5 2s-2.5-.895-2.5-2 1.12-2 2.5-2 2.5.895 2.5 2z"/><path fill-rule="evenodd" d="M14 11V2h1v9h-1zM6 3v10H5V3h1z"/><path d="M5 2.905a1 1 0 01.9-.995l8-.8a1 1 0 011.1.995V3L5 4V2.905z"/></symbol><symbol fill="currentColor" class="bi bi-music-note-list" viewBox="0 0 16 16" id="music-note-list" xmlns="http://www.w3.org/2000/svg"><path d="M12 13c0 1.105-1.12 2-2.5 2S7 14.105 7 13s1.12-2 2.5-2 2.5.895 2.5 2z"/><path fill-rule="evenodd" d="M12 3v10h-1V3h1z"/><path d="M11 2.82a1 1 0 01.804-.98l3-.6A1 1 0 0116 2.22V4l-5 1V2.82z"/><path fill-rule="evenodd" d="M0 11.5a.5.5 0 01.5-.5H4a.5.5 0 010 1H.5a.5.5 0 01-.5-.5zm0-4A.5.5 0 01.5 7H8a.5.5 0 010 1H.5a.5.5 0 01-.5-.5zm0-4A.5.5 0 01.5 3H8a.5.5 0 010 1H.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-music-player" viewBox="0 0 16 16" id="music-player" xmlns="http://www.w3.org/2000/svg"><path d="M4 3a1 1 0 011-1h6a1 1 0 011 1v3a1 1 0 01-1 1H5a1 1 0 01-1-1V3zm1 0v3h6V3H5zm3 9a1 1 0 100-2 1 1 0 000 2z"/><path d="M11 11a3 3 0 11-6 0 3 3 0 016 0zm-3 2a2 2 0 100-4 2 2 0 000 4z"/><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm2-1a1 1 0 00-1 1v12a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1H4z"/></symbol><symbol fill="currentColor" class="bi bi-music-player-fill" viewBox="0 0 16 16" id="music-player-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 12a1 1 0 100-2 1 1 0 000 2z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm1 2h6a1 1 0 011 1v2.5a1 1 0 01-1 1H5a1 1 0 01-1-1V3a1 1 0 011-1zm3 12a3 3 0 110-6 3 3 0 010 6z"/></symbol><symbol fill="currentColor" class="bi bi-newspaper" viewBox="0 0 16 16" id="newspaper" xmlns="http://www.w3.org/2000/svg"><path d="M0 2.5A1.5 1.5 0 011.5 1h11A1.5 1.5 0 0114 2.5v10.528c0 .3-.05.654-.238.972h.738a.5.5 0 00.5-.5v-9a.5.5 0 011 0v9a1.5 1.5 0 01-1.5 1.5H1.497A1.497 1.497 0 010 13.5v-11zM12 14c.37 0 .654-.211.853-.441.092-.106.147-.279.147-.531V2.5a.5.5 0 00-.5-.5h-11a.5.5 0 00-.5.5v11c0 .278.223.5.497.5H12z"/><path d="M2 3h10v2H2V3zm0 3h4v3H2V6zm0 4h4v1H2v-1zm0 2h4v1H2v-1zm5-6h2v1H7V6zm3 0h2v1h-2V6zM7 8h2v1H7V8zm3 0h2v1h-2V8zm-3 2h2v1H7v-1zm3 0h2v1h-2v-1zm-3 2h2v1H7v-1zm3 0h2v1h-2v-1z"/></symbol><symbol fill="currentColor" class="bi bi-node-minus" viewBox="0 0 16 16" id="node-minus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11 4a4 4 0 100 8 4 4 0 000-8zM6.025 7.5a5 5 0 110 1H4A1.5 1.5 0 012.5 10h-1A1.5 1.5 0 010 8.5v-1A1.5 1.5 0 011.5 6h1A1.5 1.5 0 014 7.5h2.025zM1.5 7a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1zM8 8a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5A.5.5 0 018 8z"/></symbol><symbol fill="currentColor" class="bi bi-node-minus-fill" viewBox="0 0 16 16" id="node-minus-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M16 8a5 5 0 01-9.975.5H4A1.5 1.5 0 012.5 10h-1A1.5 1.5 0 010 8.5v-1A1.5 1.5 0 011.5 6h1A1.5 1.5 0 014 7.5h2.025A5 5 0 0116 8zm-2 0a.5.5 0 00-.5-.5h-5a.5.5 0 000 1h5A.5.5 0 0014 8z"/></symbol><symbol fill="currentColor" class="bi bi-node-plus" viewBox="0 0 16 16" id="node-plus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11 4a4 4 0 100 8 4 4 0 000-8zM6.025 7.5a5 5 0 110 1H4A1.5 1.5 0 012.5 10h-1A1.5 1.5 0 010 8.5v-1A1.5 1.5 0 011.5 6h1A1.5 1.5 0 014 7.5h2.025zM11 5a.5.5 0 01.5.5v2h2a.5.5 0 010 1h-2v2a.5.5 0 01-1 0v-2h-2a.5.5 0 010-1h2v-2A.5.5 0 0111 5zM1.5 7a.5.5 0 00-.5.5v1a.5.5 0 00.5.5h1a.5.5 0 00.5-.5v-1a.5.5 0 00-.5-.5h-1z"/></symbol><symbol fill="currentColor" class="bi bi-node-plus-fill" viewBox="0 0 16 16" id="node-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11 13a5 5 0 10-4.975-5.5H4A1.5 1.5 0 002.5 6h-1A1.5 1.5 0 000 7.5v1A1.5 1.5 0 001.5 10h1A1.5 1.5 0 004 8.5h2.025A5 5 0 0011 13zm.5-7.5v2h2a.5.5 0 010 1h-2v2a.5.5 0 01-1 0v-2h-2a.5.5 0 010-1h2v-2a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-nut" viewBox="0 0 16 16" id="nut" xmlns="http://www.w3.org/2000/svg"><path d="M11.42 2l3.428 6-3.428 6H4.58L1.152 8 4.58 2h6.84zM4.58 1a1 1 0 00-.868.504l-3.428 6a1 1 0 000 .992l3.428 6A1 1 0 004.58 15h6.84a1 1 0 00.868-.504l3.429-6a1 1 0 000-.992l-3.429-6A1 1 0 0011.42 1H4.58z"/><path d="M6.848 5.933a2.5 2.5 0 102.5 4.33 2.5 2.5 0 00-2.5-4.33zm-1.78 3.915a3.5 3.5 0 116.061-3.5 3.5 3.5 0 01-6.062 3.5z"/></symbol><symbol fill="currentColor" class="bi bi-nut-fill" viewBox="0 0 16 16" id="nut-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.58 1a1 1 0 00-.868.504l-3.428 6a1 1 0 000 .992l3.428 6A1 1 0 004.58 15h6.84a1 1 0 00.868-.504l3.429-6a1 1 0 000-.992l-3.429-6A1 1 0 0011.42 1H4.58zm5.018 9.696a3 3 0 11-3-5.196 3 3 0 013 5.196z"/></symbol><symbol fill="currentColor" class="bi bi-octagon" viewBox="0 0 16 16" id="octagon" xmlns="http://www.w3.org/2000/svg"><path d="M4.54.146A.5.5 0 014.893 0h6.214a.5.5 0 01.353.146l4.394 4.394a.5.5 0 01.146.353v6.214a.5.5 0 01-.146.353l-4.394 4.394a.5.5 0 01-.353.146H4.893a.5.5 0 01-.353-.146L.146 11.46A.5.5 0 010 11.107V4.893a.5.5 0 01.146-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z"/></symbol><symbol fill="currentColor" class="bi bi-octagon-fill" viewBox="0 0 16 16" id="octagon-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.107 0a.5.5 0 01.353.146l4.394 4.394a.5.5 0 01.146.353v6.214a.5.5 0 01-.146.353l-4.394 4.394a.5.5 0 01-.353.146H4.893a.5.5 0 01-.353-.146L.146 11.46A.5.5 0 010 11.107V4.893a.5.5 0 01.146-.353L4.54.146A.5.5 0 014.893 0h6.214z"/></symbol><symbol fill="currentColor" class="bi bi-octagon-half" viewBox="0 0 16 16" id="octagon-half" xmlns="http://www.w3.org/2000/svg"><path d="M4.54.146A.5.5 0 014.893 0h6.214a.5.5 0 01.353.146l4.394 4.394a.5.5 0 01.146.353v6.214a.5.5 0 01-.146.353l-4.394 4.394a.5.5 0 01-.353.146H4.893a.5.5 0 01-.353-.146L.146 11.46A.5.5 0 010 11.107V4.893a.5.5 0 01.146-.353L4.54.146zM8 15h2.9l4.1-4.1V5.1L10.9 1H8v14z"/></symbol><symbol fill="currentColor" class="bi bi-option" viewBox="0 0 16 16" id="option" xmlns="http://www.w3.org/2000/svg"><path d="M1 2.5a.5.5 0 01.5-.5h3.797a.5.5 0 01.439.26L11 13h3.5a.5.5 0 010 1h-3.797a.5.5 0 01-.439-.26L5 3H1.5a.5.5 0 01-.5-.5zm10 0a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-outlet" viewBox="0 0 16 16" id="outlet" xmlns="http://www.w3.org/2000/svg"><path d="M3.34 2.994c.275-.338.68-.494 1.074-.494h7.172c.393 0 .798.156 1.074.494.578.708 1.84 2.534 1.84 5.006 0 2.472-1.262 4.297-1.84 5.006-.276.338-.68.494-1.074.494H4.414c-.394 0-.799-.156-1.074-.494C2.762 12.297 1.5 10.472 1.5 8c0-2.472 1.262-4.297 1.84-5.006zm1.074.506a.376.376 0 00-.299.126C3.599 4.259 2.5 5.863 2.5 8c0 2.137 1.099 3.74 1.615 4.374.06.073.163.126.3.126h7.17c.137 0 .24-.053.3-.126.516-.633 1.615-2.237 1.615-4.374 0-2.137-1.099-3.74-1.615-4.374a.376.376 0 00-.3-.126h-7.17z"/><path d="M6 5.5a.5.5 0 01.5.5v1.5a.5.5 0 01-1 0V6a.5.5 0 01.5-.5zm4 0a.5.5 0 01.5.5v1.5a.5.5 0 01-1 0V6a.5.5 0 01.5-.5zM7 10v1h2v-1a1 1 0 00-2 0z"/></symbol><symbol fill="currentColor" class="bi bi-paint-bucket" viewBox="0 0 16 16" id="paint-bucket" xmlns="http://www.w3.org/2000/svg"><path d="M6.192 2.78c-.458-.677-.927-1.248-1.35-1.643a2.972 2.972 0 00-.71-.515c-.217-.104-.56-.205-.882-.02-.367.213-.427.63-.43.896-.003.304.064.664.173 1.044.196.687.556 1.528 1.035 2.402L.752 8.22c-.277.277-.269.656-.218.918.055.283.187.593.36.903.348.627.92 1.361 1.626 2.068.707.707 1.441 1.278 2.068 1.626.31.173.62.305.903.36.262.05.64.059.918-.218l5.615-5.615c.118.257.092.512.05.939-.03.292-.068.665-.073 1.176v.123h.003a1 1 0 001.993 0H14v-.057a1.01 1.01 0 00-.004-.117c-.055-1.25-.7-2.738-1.86-3.494a4.322 4.322 0 00-.211-.434c-.349-.626-.92-1.36-1.627-2.067-.707-.707-1.441-1.279-2.068-1.627-.31-.172-.62-.304-.903-.36-.262-.05-.64-.058-.918.219l-.217.216zM4.16 1.867c.381.356.844.922 1.311 1.632l-.704.705c-.382-.727-.66-1.402-.813-1.938a3.283 3.283 0 01-.131-.673c.091.061.204.15.337.274zm.394 3.965c.54.852 1.107 1.567 1.607 2.033a.5.5 0 10.682-.732c-.453-.422-1.017-1.136-1.564-2.027l1.088-1.088c.054.12.115.243.183.365.349.627.92 1.361 1.627 2.068.706.707 1.44 1.278 2.068 1.626.122.068.244.13.365.183l-4.861 4.862a.571.571 0 01-.068-.01c-.137-.027-.342-.104-.608-.252-.524-.292-1.186-.8-1.846-1.46-.66-.66-1.168-1.32-1.46-1.846-.147-.265-.225-.47-.251-.607a.573.573 0 01-.01-.068l3.048-3.047zm2.87-1.935a2.44 2.44 0 01-.241-.561c.135.033.324.11.562.241.524.292 1.186.8 1.846 1.46.45.45.83.901 1.118 1.31a3.497 3.497 0 00-1.066.091 11.27 11.27 0 01-.76-.694c-.66-.66-1.167-1.322-1.458-1.847z"/></symbol><symbol fill="currentColor" class="bi bi-palette" viewBox="0 0 16 16" id="palette" xmlns="http://www.w3.org/2000/svg"><path d="M8 5a1.5 1.5 0 100-3 1.5 1.5 0 000 3zm4 3a1.5 1.5 0 100-3 1.5 1.5 0 000 3zM5.5 7a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm.5 6a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/><path d="M16 8c0 3.15-1.866 2.585-3.567 2.07C11.42 9.763 10.465 9.473 10 10c-.603.683-.475 1.819-.351 2.92C9.826 14.495 9.996 16 8 16a8 8 0 118-8zm-8 7c.611 0 .654-.171.655-.176.078-.146.124-.464.07-1.119-.014-.168-.037-.37-.061-.591-.052-.464-.112-1.005-.118-1.462-.01-.707.083-1.61.704-2.314.369-.417.845-.578 1.272-.618.404-.038.812.026 1.16.104.343.077.702.186 1.025.284l.028.008c.346.105.658.199.953.266.653.148.904.083.991.024C14.717 9.38 15 9.161 15 8a7 7 0 10-7 7z"/></symbol><symbol fill="currentColor" class="bi bi-palette-fill" viewBox="0 0 16 16" id="palette-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12.433 10.07C14.133 10.585 16 11.15 16 8a8 8 0 10-8 8c1.996 0 1.826-1.504 1.649-3.08-.124-1.101-.252-2.237.351-2.92.465-.527 1.42-.237 2.433.07zM8 5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm4.5 3a1.5 1.5 0 110-3 1.5 1.5 0 010 3zM5 6.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm.5 6.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-palette2" viewBox="0 0 16 16" id="palette2" xmlns="http://www.w3.org/2000/svg"><path d="M0 .5A.5.5 0 01.5 0h5a.5.5 0 01.5.5v5.277l4.147-4.131a.5.5 0 01.707 0l3.535 3.536a.5.5 0 010 .708L10.261 10H15.5a.5.5 0 01.5.5v5a.5.5 0 01-.5.5H3a2.99 2.99 0 01-2.121-.879A2.99 2.99 0 010 13.044m6-.21l7.328-7.3-2.829-2.828L6 7.188v5.647zM4.5 13a1.5 1.5 0 10-3 0 1.5 1.5 0 003 0zM15 15v-4H9.258l-4.015 4H15zM0 .5v12.495V.5z"/><path d="M0 12.995V13a3.07 3.07 0 000-.005z"/></symbol><symbol fill="currentColor" class="bi bi-paperclip" viewBox="0 0 16 16" id="paperclip" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 3a2.5 2.5 0 015 0v9a1.5 1.5 0 01-3 0V5a.5.5 0 011 0v7a.5.5 0 001 0V3a1.5 1.5 0 10-3 0v9a2.5 2.5 0 005 0V5a.5.5 0 011 0v7a3.5 3.5 0 11-7 0V3z"/></symbol><symbol fill="currentColor" class="bi bi-paragraph" viewBox="0 0 16 16" id="paragraph" xmlns="http://www.w3.org/2000/svg"><path d="M10.5 15a.5.5 0 01-.5-.5V2H9v12.5a.5.5 0 01-1 0V9H7a4 4 0 110-8h5.5a.5.5 0 010 1H11v12.5a.5.5 0 01-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-patch-check" viewBox="0 0 16 16" id="patch-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.354 6.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7 8.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M10.273 2.513l-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 012.924 2.924l-.01.89.636.622a2.89 2.89 0 010 4.134l-.637.622.011.89a2.89 2.89 0 01-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 01-4.134 0l-.622-.637-.89.011a2.89 2.89 0 01-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 010-4.134l.637-.622-.011-.89a2.89 2.89 0 012.924-2.924l.89.01.622-.636a2.89 2.89 0 014.134 0l-.715.698a1.89 1.89 0 00-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 00-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 000 2.704l.944.92-.016 1.32a1.89 1.89 0 001.912 1.911l1.318-.016.921.944a1.89 1.89 0 002.704 0l.92-.944 1.32.016a1.89 1.89 0 001.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 000-2.704l-.944-.92.016-1.32a1.89 1.89 0 00-1.912-1.911l-1.318.016z"/></symbol><symbol fill="currentColor" class="bi bi-patch-check-fill" viewBox="0 0 16 16" id="patch-check-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.067.87a2.89 2.89 0 00-4.134 0l-.622.638-.89-.011a2.89 2.89 0 00-2.924 2.924l.01.89-.636.622a2.89 2.89 0 000 4.134l.637.622-.011.89a2.89 2.89 0 002.924 2.924l.89-.01.622.636a2.89 2.89 0 004.134 0l.622-.637.89.011a2.89 2.89 0 002.924-2.924l-.01-.89.636-.622a2.89 2.89 0 000-4.134l-.637-.622.011-.89a2.89 2.89 0 00-2.924-2.924l-.89.01-.622-.636zm.287 5.984l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7 8.793l2.646-2.647a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-patch-exclamation" viewBox="0 0 16 16" id="patch-exclamation" xmlns="http://www.w3.org/2000/svg"><path d="M7.001 11a1 1 0 112 0 1 1 0 01-2 0zM7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.553.553 0 01-1.1 0L7.1 4.995z"/><path d="M10.273 2.513l-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 012.924 2.924l-.01.89.636.622a2.89 2.89 0 010 4.134l-.637.622.011.89a2.89 2.89 0 01-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 01-4.134 0l-.622-.637-.89.011a2.89 2.89 0 01-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 010-4.134l.637-.622-.011-.89a2.89 2.89 0 012.924-2.924l.89.01.622-.636a2.89 2.89 0 014.134 0l-.715.698a1.89 1.89 0 00-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 00-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 000 2.704l.944.92-.016 1.32a1.89 1.89 0 001.912 1.911l1.318-.016.921.944a1.89 1.89 0 002.704 0l.92-.944 1.32.016a1.89 1.89 0 001.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 000-2.704l-.944-.92.016-1.32a1.89 1.89 0 00-1.912-1.911l-1.318.016z"/></symbol><symbol fill="currentColor" class="bi bi-patch-exclamation-fill" viewBox="0 0 16 16" id="patch-exclamation-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.067.87a2.89 2.89 0 00-4.134 0l-.622.638-.89-.011a2.89 2.89 0 00-2.924 2.924l.01.89-.636.622a2.89 2.89 0 000 4.134l.637.622-.011.89a2.89 2.89 0 002.924 2.924l.89-.01.622.636a2.89 2.89 0 004.134 0l.622-.637.89.011a2.89 2.89 0 002.924-2.924l-.01-.89.636-.622a2.89 2.89 0 000-4.134l-.637-.622.011-.89a2.89 2.89 0 00-2.924-2.924l-.89.01-.622-.636zM8 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 01-1.1 0L7.1 4.995A.905.905 0 018 4zm.002 6a1 1 0 110 2 1 1 0 010-2z"/></symbol><symbol fill="currentColor" class="bi bi-patch-minus" viewBox="0 0 16 16" id="patch-minus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M5.5 8a.5.5 0 01.5-.5h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/><path d="M10.273 2.513l-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 012.924 2.924l-.01.89.636.622a2.89 2.89 0 010 4.134l-.637.622.011.89a2.89 2.89 0 01-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 01-4.134 0l-.622-.637-.89.011a2.89 2.89 0 01-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 010-4.134l.637-.622-.011-.89a2.89 2.89 0 012.924-2.924l.89.01.622-.636a2.89 2.89 0 014.134 0l-.715.698a1.89 1.89 0 00-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 00-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 000 2.704l.944.92-.016 1.32a1.89 1.89 0 001.912 1.911l1.318-.016.921.944a1.89 1.89 0 002.704 0l.92-.944 1.32.016a1.89 1.89 0 001.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 000-2.704l-.944-.92.016-1.32a1.89 1.89 0 00-1.912-1.911l-1.318.016z"/></symbol><symbol fill="currentColor" class="bi bi-patch-minus-fill" viewBox="0 0 16 16" id="patch-minus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.067.87a2.89 2.89 0 00-4.134 0l-.622.638-.89-.011a2.89 2.89 0 00-2.924 2.924l.01.89-.636.622a2.89 2.89 0 000 4.134l.637.622-.011.89a2.89 2.89 0 002.924 2.924l.89-.01.622.636a2.89 2.89 0 004.134 0l.622-.637.89.011a2.89 2.89 0 002.924-2.924l-.01-.89.636-.622a2.89 2.89 0 000-4.134l-.637-.622.011-.89a2.89 2.89 0 00-2.924-2.924l-.89.01-.622-.636zM6 7.5h4a.5.5 0 010 1H6a.5.5 0 010-1z"/></symbol><symbol fill="currentColor" class="bi bi-patch-plus" viewBox="0 0 16 16" id="patch-plus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 5.5a.5.5 0 01.5.5v1.5H10a.5.5 0 010 1H8.5V10a.5.5 0 01-1 0V8.5H6a.5.5 0 010-1h1.5V6a.5.5 0 01.5-.5z"/><path d="M10.273 2.513l-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 012.924 2.924l-.01.89.636.622a2.89 2.89 0 010 4.134l-.637.622.011.89a2.89 2.89 0 01-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 01-4.134 0l-.622-.637-.89.011a2.89 2.89 0 01-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 010-4.134l.637-.622-.011-.89a2.89 2.89 0 012.924-2.924l.89.01.622-.636a2.89 2.89 0 014.134 0l-.715.698a1.89 1.89 0 00-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 00-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 000 2.704l.944.92-.016 1.32a1.89 1.89 0 001.912 1.911l1.318-.016.921.944a1.89 1.89 0 002.704 0l.92-.944 1.32.016a1.89 1.89 0 001.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 000-2.704l-.944-.92.016-1.32a1.89 1.89 0 00-1.912-1.911l-1.318.016z"/></symbol><symbol fill="currentColor" class="bi bi-patch-plus-fill" viewBox="0 0 16 16" id="patch-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.067.87a2.89 2.89 0 00-4.134 0l-.622.638-.89-.011a2.89 2.89 0 00-2.924 2.924l.01.89-.636.622a2.89 2.89 0 000 4.134l.637.622-.011.89a2.89 2.89 0 002.924 2.924l.89-.01.622.636a2.89 2.89 0 004.134 0l.622-.637.89.011a2.89 2.89 0 002.924-2.924l-.01-.89.636-.622a2.89 2.89 0 000-4.134l-.637-.622.011-.89a2.89 2.89 0 00-2.924-2.924l-.89.01-.622-.636zM8.5 6v1.5H10a.5.5 0 010 1H8.5V10a.5.5 0 01-1 0V8.5H6a.5.5 0 010-1h1.5V6a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-patch-question" viewBox="0 0 16 16" id="patch-question" xmlns="http://www.w3.org/2000/svg"><path d="M8.05 9.6c.336 0 .504-.24.554-.627.04-.534.198-.815.847-1.26.673-.475 1.049-1.09 1.049-1.986 0-1.325-.92-2.227-2.262-2.227-1.02 0-1.792.492-2.1 1.29A1.71 1.71 0 006 5.48c0 .393.203.64.545.64.272 0 .455-.147.564-.51.158-.592.525-.915 1.074-.915.61 0 1.03.446 1.03 1.084 0 .563-.208.885-.822 1.325-.619.433-.926.914-.926 1.64v.111c0 .428.208.745.585.745z"/><path d="M10.273 2.513l-.921-.944.715-.698.622.637.89-.011a2.89 2.89 0 012.924 2.924l-.01.89.636.622a2.89 2.89 0 010 4.134l-.637.622.011.89a2.89 2.89 0 01-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 01-4.134 0l-.622-.637-.89.011a2.89 2.89 0 01-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 010-4.134l.637-.622-.011-.89a2.89 2.89 0 012.924-2.924l.89.01.622-.636a2.89 2.89 0 014.134 0l-.715.698a1.89 1.89 0 00-2.704 0l-.92.944-1.32-.016a1.89 1.89 0 00-1.911 1.912l.016 1.318-.944.921a1.89 1.89 0 000 2.704l.944.92-.016 1.32a1.89 1.89 0 001.912 1.911l1.318-.016.921.944a1.89 1.89 0 002.704 0l.92-.944 1.32.016a1.89 1.89 0 001.911-1.912l-.016-1.318.944-.921a1.89 1.89 0 000-2.704l-.944-.92.016-1.32a1.89 1.89 0 00-1.912-1.911l-1.318.016z"/><path d="M7.001 11a1 1 0 112 0 1 1 0 01-2 0z"/></symbol><symbol fill="currentColor" class="bi bi-patch-question-fill" viewBox="0 0 16 16" id="patch-question-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.933.87a2.89 2.89 0 014.134 0l.622.638.89-.011a2.89 2.89 0 012.924 2.924l-.01.89.636.622a2.89 2.89 0 010 4.134l-.637.622.011.89a2.89 2.89 0 01-2.924 2.924l-.89-.01-.622.636a2.89 2.89 0 01-4.134 0l-.622-.637-.89.011a2.89 2.89 0 01-2.924-2.924l.01-.89-.636-.622a2.89 2.89 0 010-4.134l.637-.622-.011-.89a2.89 2.89 0 012.924-2.924l.89.01.622-.636zM7.002 11a1 1 0 102 0 1 1 0 00-2 0zm1.602-2.027c.04-.534.198-.815.846-1.26.674-.475 1.05-1.09 1.05-1.986 0-1.325-.92-2.227-2.262-2.227-1.02 0-1.792.492-2.1 1.29A1.71 1.71 0 006 5.48c0 .393.203.64.545.64.272 0 .455-.147.564-.51.158-.592.525-.915 1.074-.915.61 0 1.03.446 1.03 1.084 0 .563-.208.885-.822 1.325-.619.433-.926.914-.926 1.64v.111c0 .428.208.745.585.745.336 0 .504-.24.554-.627z"/></symbol><symbol fill="currentColor" class="bi bi-pause" viewBox="0 0 16 16" id="pause" xmlns="http://www.w3.org/2000/svg"><path d="M6 3.5a.5.5 0 01.5.5v8a.5.5 0 01-1 0V4a.5.5 0 01.5-.5zm4 0a.5.5 0 01.5.5v8a.5.5 0 01-1 0V4a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-pause-btn" viewBox="0 0 16 16" id="pause-btn" xmlns="http://www.w3.org/2000/svg"><path d="M6.25 5C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 102.5 0v-3.5C7.5 5.56 6.94 5 6.25 5zm3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 102.5 0v-3.5C11 5.56 10.44 5 9.75 5z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-pause-btn-fill" viewBox="0 0 16 16" id="pause-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm6.25-7C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 102.5 0v-3.5C7.5 5.56 6.94 5 6.25 5zm3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 102.5 0v-3.5C11 5.56 10.44 5 9.75 5z"/></symbol><symbol fill="currentColor" class="bi bi-pause-circle" viewBox="0 0 16 16" id="pause-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M5 6.25a1.25 1.25 0 112.5 0v3.5a1.25 1.25 0 11-2.5 0v-3.5zm3.5 0a1.25 1.25 0 112.5 0v3.5a1.25 1.25 0 11-2.5 0v-3.5z"/></symbol><symbol fill="currentColor" class="bi bi-pause-circle-fill" viewBox="0 0 16 16" id="pause-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM6.25 5C5.56 5 5 5.56 5 6.25v3.5a1.25 1.25 0 102.5 0v-3.5C7.5 5.56 6.94 5 6.25 5zm3.5 0c-.69 0-1.25.56-1.25 1.25v3.5a1.25 1.25 0 102.5 0v-3.5C11 5.56 10.44 5 9.75 5z"/></symbol><symbol fill="currentColor" class="bi bi-pause-fill" viewBox="0 0 16 16" id="pause-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 3.5A1.5 1.5 0 017 5v6a1.5 1.5 0 01-3 0V5a1.5 1.5 0 011.5-1.5zm5 0A1.5 1.5 0 0112 5v6a1.5 1.5 0 01-3 0V5a1.5 1.5 0 011.5-1.5z"/></symbol><symbol fill="currentColor" class="bi bi-peace" viewBox="0 0 16 16" id="peace" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 1.018a7 7 0 00-4.79 11.566L7.5 7.793V1.018zm1 0v6.775l4.79 4.79A7 7 0 008.5 1.018zm4.084 12.273L8.5 9.207v5.775a6.97 6.97 0 004.084-1.691zM7.5 14.982V9.207l-4.084 4.084A6.97 6.97 0 007.5 14.982zM0 8a8 8 0 1116 0A8 8 0 010 8z"/></symbol><symbol fill="currentColor" class="bi bi-peace-fill" viewBox="0 0 16 16" id="peace-fill" xmlns="http://www.w3.org/2000/svg"><path d="M14 13.292A8 8 0 008.5.015v7.778l5.5 5.5zm-.708.708L8.5 9.206v6.778a7.967 7.967 0 004.792-1.986zM7.5 15.985V9.207L2.708 14A7.967 7.967 0 007.5 15.985zM2 13.292A8 8 0 017.5.015v7.778l-5.5 5.5z"/></symbol><symbol fill="currentColor" class="bi bi-pen" viewBox="0 0 16 16" id="pen" xmlns="http://www.w3.org/2000/svg"><path d="M13.498.795l.149-.149a1.207 1.207 0 111.707 1.708l-.149.148a1.5 1.5 0 01-.059 2.059L4.854 14.854a.5.5 0 01-.233.131l-4 1a.5.5 0 01-.606-.606l1-4a.5.5 0 01.131-.232l9.642-9.642a.5.5 0 00-.642.056L6.854 4.854a.5.5 0 11-.708-.708L9.44.854A1.5 1.5 0 0111.5.796a1.5 1.5 0 011.998-.001zm-.644.766a.5.5 0 00-.707 0L1.95 11.756l-.764 3.057 3.057-.764L14.44 3.854a.5.5 0 000-.708l-1.585-1.585z"/></symbol><symbol fill="currentColor" class="bi bi-pen-fill" viewBox="0 0 16 16" id="pen-fill" xmlns="http://www.w3.org/2000/svg"><path d="M13.498.795l.149-.149a1.207 1.207 0 111.707 1.708l-.149.148a1.5 1.5 0 01-.059 2.059L4.854 14.854a.5.5 0 01-.233.131l-4 1a.5.5 0 01-.606-.606l1-4a.5.5 0 01.131-.232l9.642-9.642a.5.5 0 00-.642.056L6.854 4.854a.5.5 0 11-.708-.708L9.44.854A1.5 1.5 0 0111.5.796a1.5 1.5 0 011.998-.001z"/></symbol><symbol fill="currentColor" class="bi bi-pencil" viewBox="0 0 16 16" id="pencil" xmlns="http://www.w3.org/2000/svg"><path d="M12.146.146a.5.5 0 01.708 0l3 3a.5.5 0 010 .708l-10 10a.5.5 0 01-.168.11l-5 2a.5.5 0 01-.65-.65l2-5a.5.5 0 01.11-.168l10-10zM11.207 2.5L13.5 4.793 14.793 3.5 12.5 1.207 11.207 2.5zm1.586 3L10.5 3.207 4 9.707V10h.5a.5.5 0 01.5.5v.5h.5a.5.5 0 01.5.5v.5h.293l6.5-6.5zm-9.761 5.175l-.106.106-1.528 3.821 3.821-1.528.106-.106A.5.5 0 015 12.5V12h-.5a.5.5 0 01-.5-.5V11h-.5a.5.5 0 01-.468-.325z"/></symbol><symbol fill="currentColor" class="bi bi-pencil-fill" viewBox="0 0 16 16" id="pencil-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12.854.146a.5.5 0 00-.707 0L10.5 1.793 14.207 5.5l1.647-1.646a.5.5 0 000-.708l-3-3zm.646 6.061L9.793 2.5 3.293 9H3.5a.5.5 0 01.5.5v.5h.5a.5.5 0 01.5.5v.5h.5a.5.5 0 01.5.5v.5h.5a.5.5 0 01.5.5v.207l6.5-6.5zm-7.468 7.468A.5.5 0 016 13.5V13h-.5a.5.5 0 01-.5-.5V12h-.5a.5.5 0 01-.5-.5V11h-.5a.5.5 0 01-.5-.5V10h-.5a.499.499 0 01-.175-.032l-.179.178a.5.5 0 00-.11.168l-2 5a.5.5 0 00.65.65l5-2a.5.5 0 00.168-.11l.178-.178z"/></symbol><symbol fill="currentColor" class="bi bi-pencil-square" viewBox="0 0 16 16" id="pencil-square" xmlns="http://www.w3.org/2000/svg"><path d="M15.502 1.94a.5.5 0 010 .706L14.459 3.69l-2-2L13.502.646a.5.5 0 01.707 0l1.293 1.293zm-1.75 2.456l-2-2L4.939 9.21a.5.5 0 00-.121.196l-.805 2.414a.25.25 0 00.316.316l2.414-.805a.5.5 0 00.196-.12l6.813-6.814z"/><path fill-rule="evenodd" d="M1 13.5A1.5 1.5 0 002.5 15h11a1.5 1.5 0 001.5-1.5v-6a.5.5 0 00-1 0v6a.5.5 0 01-.5.5h-11a.5.5 0 01-.5-.5v-11a.5.5 0 01.5-.5H9a.5.5 0 000-1H2.5A1.5 1.5 0 001 2.5v11z"/></symbol><symbol fill="currentColor" class="bi bi-pentagon" viewBox="0 0 16 16" id="pentagon" xmlns="http://www.w3.org/2000/svg"><path d="M8 1.288l6.842 5.56L12.267 15H3.733L1.158 6.847 8 1.288zM16 6.5L8 0 0 6.5 3 16h10l3-9.5z"/></symbol><symbol fill="currentColor" class="bi bi-pentagon-fill" viewBox="0 0 16 16" id="pentagon-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 0l8 6.5-3 9.5H3L0 6.5 8 0z"/></symbol><symbol fill="currentColor" class="bi bi-pentagon-half" viewBox="0 0 16 16" id="pentagon-half" xmlns="http://www.w3.org/2000/svg"><path d="M8 1.288l6.842 5.56L12.267 15H8V1.288zM16 6.5L8 0 0 6.5 3 16h10l3-9.5z"/></symbol><symbol fill="currentColor" class="bi bi-people" viewBox="0 0 16 16" id="people" xmlns="http://www.w3.org/2000/svg"><path d="M15 14s1 0 1-1-1-4-5-4-5 3-5 4 1 1 1 1h8zm-7.978-1A.261.261 0 017 12.996c.001-.264.167-1.03.76-1.72C8.312 10.629 9.282 10 11 10c1.717 0 2.687.63 3.24 1.276.593.69.758 1.457.76 1.72l-.008.002a.274.274 0 01-.014.002H7.022zM11 7a2 2 0 100-4 2 2 0 000 4zm3-2a3 3 0 11-6 0 3 3 0 016 0zM6.936 9.28a5.88 5.88 0 00-1.23-.247A7.35 7.35 0 005 9c-4 0-5 3-5 4 0 .667.333 1 1 1h4.216A2.238 2.238 0 015 13c0-1.01.377-2.042 1.09-2.904.243-.294.526-.569.846-.816zM4.92 10A5.493 5.493 0 004 13H1c0-.26.164-1.03.76-1.724.545-.636 1.492-1.256 3.16-1.275zM1.5 5.5a3 3 0 116 0 3 3 0 01-6 0zm3-2a2 2 0 100 4 2 2 0 000-4z"/></symbol><symbol fill="currentColor" class="bi bi-people-fill" viewBox="0 0 16 16" id="people-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1H7zm4-6a3 3 0 100-6 3 3 0 000 6z"/><path fill-rule="evenodd" d="M5.216 14A2.238 2.238 0 015 13c0-1.355.68-2.75 1.936-3.72A6.325 6.325 0 005 9c-4 0-5 3-5 4s1 1 1 1h4.216z"/><path d="M4.5 8a2.5 2.5 0 100-5 2.5 2.5 0 000 5z"/></symbol><symbol fill="currentColor" class="bi bi-percent" viewBox="0 0 16 16" id="percent" xmlns="http://www.w3.org/2000/svg"><path d="M13.442 2.558a.625.625 0 010 .884l-10 10a.625.625 0 11-.884-.884l10-10a.625.625 0 01.884 0zM4.5 6a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm0 1a2.5 2.5 0 100-5 2.5 2.5 0 000 5zm7 6a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm0 1a2.5 2.5 0 100-5 2.5 2.5 0 000 5z"/></symbol><symbol fill="currentColor" class="bi bi-person" viewBox="0 0 16 16" id="person" xmlns="http://www.w3.org/2000/svg"><path d="M8 8a3 3 0 100-6 3 3 0 000 6zm2-3a2 2 0 11-4 0 2 2 0 014 0zm4 8c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4zm-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10z"/></symbol><symbol fill="currentColor" class="bi bi-person-badge" viewBox="0 0 16 16" id="person-badge" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 2a.5.5 0 000 1h3a.5.5 0 000-1h-3zM11 8a3 3 0 11-6 0 3 3 0 016 0z"/><path d="M4.5 0A2.5 2.5 0 002 2.5V14a2 2 0 002 2h8a2 2 0 002-2V2.5A2.5 2.5 0 0011.5 0h-7zM3 2.5A1.5 1.5 0 014.5 1h7A1.5 1.5 0 0113 2.5v10.795a4.2 4.2 0 00-.776-.492C11.392 12.387 10.063 12 8 12s-3.392.387-4.224.803a4.2 4.2 0 00-.776.492V2.5z"/></symbol><symbol fill="currentColor" class="bi bi-person-badge-fill" viewBox="0 0 16 16" id="person-badge-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm4.5 0a.5.5 0 000 1h3a.5.5 0 000-1h-3zM8 11a3 3 0 100-6 3 3 0 000 6zm5 2.755C12.146 12.825 10.623 12 8 12s-4.146.826-5 1.755V14a1 1 0 001 1h8a1 1 0 001-1v-.245z"/></symbol><symbol fill="currentColor" class="bi bi-person-bounding-box" viewBox="0 0 16 16" id="person-bounding-box" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 1a.5.5 0 00-.5.5v3a.5.5 0 01-1 0v-3A1.5 1.5 0 011.5 0h3a.5.5 0 010 1h-3zM11 .5a.5.5 0 01.5-.5h3A1.5 1.5 0 0116 1.5v3a.5.5 0 01-1 0v-3a.5.5 0 00-.5-.5h-3a.5.5 0 01-.5-.5zM.5 11a.5.5 0 01.5.5v3a.5.5 0 00.5.5h3a.5.5 0 010 1h-3A1.5 1.5 0 010 14.5v-3a.5.5 0 01.5-.5zm15 0a.5.5 0 01.5.5v3a1.5 1.5 0 01-1.5 1.5h-3a.5.5 0 010-1h3a.5.5 0 00.5-.5v-3a.5.5 0 01.5-.5z"/><path d="M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H3zm8-9a3 3 0 11-6 0 3 3 0 016 0z"/></symbol><symbol fill="currentColor" class="bi bi-person-check" viewBox="0 0 16 16" id="person-check" xmlns="http://www.w3.org/2000/svg"><path d="M6 8a3 3 0 100-6 3 3 0 000 6zm2-3a2 2 0 11-4 0 2 2 0 014 0zm4 8c0 1-1 1-1 1H1s-1 0-1-1 1-4 6-4 6 3 6 4zm-1-.004c-.001-.246-.154-.986-.832-1.664C9.516 10.68 8.289 10 6 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10z"/><path fill-rule="evenodd" d="M15.854 5.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 01.708-.708L12.5 7.793l2.646-2.647a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-person-check-fill" viewBox="0 0 16 16" id="person-check-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15.854 5.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 01.708-.708L12.5 7.793l2.646-2.647a.5.5 0 01.708 0z"/><path d="M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 100-6 3 3 0 000 6z"/></symbol><symbol fill="currentColor" class="bi bi-person-circle" viewBox="0 0 16 16" id="person-circle" xmlns="http://www.w3.org/2000/svg"><path d="M11 6a3 3 0 11-6 0 3 3 0 016 0z"/><path fill-rule="evenodd" d="M0 8a8 8 0 1116 0A8 8 0 010 8zm8-7a7 7 0 00-5.468 11.37C3.242 11.226 4.805 10 8 10s4.757 1.225 5.468 2.37A7 7 0 008 1z"/></symbol><symbol fill="currentColor" class="bi bi-person-dash" viewBox="0 0 16 16" id="person-dash" xmlns="http://www.w3.org/2000/svg"><path d="M6 8a3 3 0 100-6 3 3 0 000 6zm2-3a2 2 0 11-4 0 2 2 0 014 0zm4 8c0 1-1 1-1 1H1s-1 0-1-1 1-4 6-4 6 3 6 4zm-1-.004c-.001-.246-.154-.986-.832-1.664C9.516 10.68 8.289 10 6 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10z"/><path fill-rule="evenodd" d="M11 7.5a.5.5 0 01.5-.5h4a.5.5 0 010 1h-4a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-person-dash-fill" viewBox="0 0 16 16" id="person-dash-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11 7.5a.5.5 0 01.5-.5h4a.5.5 0 010 1h-4a.5.5 0 01-.5-.5z"/><path d="M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 100-6 3 3 0 000 6z"/></symbol><symbol fill="currentColor" class="bi bi-person-fill" viewBox="0 0 16 16" id="person-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H3zm5-6a3 3 0 100-6 3 3 0 000 6z"/></symbol><symbol fill="currentColor" class="bi bi-person-lines-fill" viewBox="0 0 16 16" id="person-lines-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 8a3 3 0 100-6 3 3 0 000 6zm-5 6s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zM11 3.5a.5.5 0 01.5-.5h4a.5.5 0 010 1h-4a.5.5 0 01-.5-.5zm.5 2.5a.5.5 0 000 1h4a.5.5 0 000-1h-4zm2 3a.5.5 0 000 1h2a.5.5 0 000-1h-2zm0 3a.5.5 0 000 1h2a.5.5 0 000-1h-2z"/></symbol><symbol fill="currentColor" class="bi bi-person-plus" viewBox="0 0 16 16" id="person-plus" xmlns="http://www.w3.org/2000/svg"><path d="M6 8a3 3 0 100-6 3 3 0 000 6zm2-3a2 2 0 11-4 0 2 2 0 014 0zm4 8c0 1-1 1-1 1H1s-1 0-1-1 1-4 6-4 6 3 6 4zm-1-.004c-.001-.246-.154-.986-.832-1.664C9.516 10.68 8.289 10 6 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10z"/><path fill-rule="evenodd" d="M13.5 5a.5.5 0 01.5.5V7h1.5a.5.5 0 010 1H14v1.5a.5.5 0 01-1 0V8h-1.5a.5.5 0 010-1H13V5.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-person-plus-fill" viewBox="0 0 16 16" id="person-plus-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 100-6 3 3 0 000 6z"/><path fill-rule="evenodd" d="M13.5 5a.5.5 0 01.5.5V7h1.5a.5.5 0 010 1H14v1.5a.5.5 0 01-1 0V8h-1.5a.5.5 0 010-1H13V5.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-person-square" viewBox="0 0 16 16" id="person-square" xmlns="http://www.w3.org/2000/svg"><path d="M11 6a3 3 0 11-6 0 3 3 0 016 0z"/><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm12 1a1 1 0 011 1v12a1 1 0 01-1 1v-1c0-1-1-4-6-4s-6 3-6 4v1a1 1 0 01-1-1V2a1 1 0 011-1h12z"/></symbol><symbol fill="currentColor" class="bi bi-person-x" viewBox="0 0 16 16" id="person-x" xmlns="http://www.w3.org/2000/svg"><path d="M6 8a3 3 0 100-6 3 3 0 000 6zm2-3a2 2 0 11-4 0 2 2 0 014 0zm4 8c0 1-1 1-1 1H1s-1 0-1-1 1-4 6-4 6 3 6 4zm-1-.004c-.001-.246-.154-.986-.832-1.664C9.516 10.68 8.289 10 6 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10z"/><path fill-rule="evenodd" d="M12.146 5.146a.5.5 0 01.708 0L14 6.293l1.146-1.147a.5.5 0 01.708.708L14.707 7l1.147 1.146a.5.5 0 01-.708.708L14 7.707l-1.146 1.147a.5.5 0 01-.708-.708L13.293 7l-1.147-1.146a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-person-x-fill" viewBox="0 0 16 16" id="person-x-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H1zm5-6a3 3 0 100-6 3 3 0 000 6zm6.146-2.854a.5.5 0 01.708 0L14 6.293l1.146-1.147a.5.5 0 01.708.708L14.707 7l1.147 1.146a.5.5 0 01-.708.708L14 7.707l-1.146 1.147a.5.5 0 01-.708-.708L13.293 7l-1.147-1.146a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-phone" viewBox="0 0 16 16" id="phone" xmlns="http://www.w3.org/2000/svg"><path d="M11 1a1 1 0 011 1v12a1 1 0 01-1 1H5a1 1 0 01-1-1V2a1 1 0 011-1h6zM5 0a2 2 0 00-2 2v12a2 2 0 002 2h6a2 2 0 002-2V2a2 2 0 00-2-2H5z"/><path d="M8 14a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-phone-fill" viewBox="0 0 16 16" id="phone-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3 2a2 2 0 012-2h6a2 2 0 012 2v12a2 2 0 01-2 2H5a2 2 0 01-2-2V2zm6 11a1 1 0 10-2 0 1 1 0 002 0z"/></symbol><symbol fill="currentColor" class="bi bi-phone-landscape" viewBox="0 0 16 16" id="phone-landscape" xmlns="http://www.w3.org/2000/svg"><path d="M1 4.5a1 1 0 011-1h12a1 1 0 011 1v6a1 1 0 01-1 1H2a1 1 0 01-1-1v-6zm-1 6a2 2 0 002 2h12a2 2 0 002-2v-6a2 2 0 00-2-2H2a2 2 0 00-2 2v6z"/><path d="M14 7.5a1 1 0 10-2 0 1 1 0 002 0z"/></symbol><symbol fill="currentColor" class="bi bi-phone-landscape-fill" viewBox="0 0 16 16" id="phone-landscape-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 12.5a2 2 0 01-2-2v-6a2 2 0 012-2h12a2 2 0 012 2v6a2 2 0 01-2 2H2zm11-6a1 1 0 100 2 1 1 0 000-2z"/></symbol><symbol fill="currentColor" class="bi bi-phone-vibrate" viewBox="0 0 16 16" id="phone-vibrate" xmlns="http://www.w3.org/2000/svg"><path d="M10 3a1 1 0 011 1v8a1 1 0 01-1 1H6a1 1 0 01-1-1V4a1 1 0 011-1h4zM6 2a2 2 0 00-2 2v8a2 2 0 002 2h4a2 2 0 002-2V4a2 2 0 00-2-2H6z"/><path d="M8 12a1 1 0 100-2 1 1 0 000 2zM1.599 4.058a.5.5 0 01.208.676A6.967 6.967 0 001 8c0 1.18.292 2.292.807 3.266a.5.5 0 01-.884.468A7.968 7.968 0 010 8c0-1.347.334-2.619.923-3.734a.5.5 0 01.676-.208zm12.802 0a.5.5 0 01.676.208A7.967 7.967 0 0116 8a7.967 7.967 0 01-.923 3.734.5.5 0 01-.884-.468A6.967 6.967 0 0015 8c0-1.18-.292-2.292-.807-3.266a.5.5 0 01.208-.676zM3.057 5.534a.5.5 0 01.284.648A4.986 4.986 0 003 8c0 .642.12 1.255.34 1.818a.5.5 0 11-.93.364A5.986 5.986 0 012 8c0-.769.145-1.505.41-2.182a.5.5 0 01.647-.284zm9.886 0a.5.5 0 01.648.284C13.855 6.495 14 7.231 14 8c0 .769-.145 1.505-.41 2.182a.5.5 0 01-.93-.364C12.88 9.255 13 8.642 13 8c0-.642-.12-1.255-.34-1.818a.5.5 0 01.283-.648z"/></symbol><symbol fill="currentColor" class="bi bi-phone-vibrate-fill" viewBox="0 0 16 16" id="phone-vibrate-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 4a2 2 0 012-2h4a2 2 0 012 2v8a2 2 0 01-2 2H6a2 2 0 01-2-2V4zm5 7a1 1 0 10-2 0 1 1 0 002 0zM1.807 4.734a.5.5 0 10-.884-.468A7.967 7.967 0 000 8c0 1.347.334 2.618.923 3.734a.5.5 0 10.884-.468A6.967 6.967 0 011 8c0-1.18.292-2.292.807-3.266zm13.27-.468a.5.5 0 00-.884.468C14.708 5.708 15 6.819 15 8c0 1.18-.292 2.292-.807 3.266a.5.5 0 00.884.468A7.967 7.967 0 0016 8a7.967 7.967 0 00-.923-3.734zM3.34 6.182a.5.5 0 10-.93-.364A5.986 5.986 0 002 8c0 .769.145 1.505.41 2.182a.5.5 0 10.93-.364A4.986 4.986 0 013 8c0-.642.12-1.255.34-1.818zm10.25-.364a.5.5 0 00-.93.364c.22.563.34 1.176.34 1.818 0 .642-.12 1.255-.34 1.818a.5.5 0 00.93.364C13.856 9.505 14 8.769 14 8c0-.769-.145-1.505-.41-2.182z"/></symbol><symbol fill="currentColor" class="bi bi-pie-chart" viewBox="0 0 16 16" id="pie-chart" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 1.018a7 7 0 00-4.79 11.566L7.5 7.793V1.018zm1 0V7.5h6.482A7.001 7.001 0 008.5 1.018zM14.982 8.5H8.207l-4.79 4.79A7 7 0 0014.982 8.5zM0 8a8 8 0 1116 0A8 8 0 010 8z"/></symbol><symbol fill="currentColor" class="bi bi-pie-chart-fill" viewBox="0 0 16 16" id="pie-chart-fill" xmlns="http://www.w3.org/2000/svg"><path d="M15.985 8.5H8.207l-5.5 5.5a8 8 0 0013.277-5.5zM2 13.292A8 8 0 017.5.015v7.778l-5.5 5.5zM8.5.015V7.5h7.485A8.001 8.001 0 008.5.015z"/></symbol><symbol fill="currentColor" class="bi bi-piggy-bank" viewBox="0 0 16 16" id="piggy-bank" xmlns="http://www.w3.org/2000/svg"><path d="M5 6.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm1.138-1.496A6.613 6.613 0 017.964 4.5c.666 0 1.303.097 1.893.273a.5.5 0 00.286-.958A7.602 7.602 0 007.964 3.5c-.734 0-1.441.103-2.102.292a.5.5 0 10.276.962z"/><path fill-rule="evenodd" d="M7.964 1.527c-2.977 0-5.571 1.704-6.32 4.125h-.55A1 1 0 00.11 6.824l.254 1.46a1.5 1.5 0 001.478 1.243h.263c.3.513.688.978 1.145 1.382l-.729 2.477a.5.5 0 00.48.641h2a.5.5 0 00.471-.332l.482-1.351c.635.173 1.31.267 2.011.267.707 0 1.388-.095 2.028-.272l.543 1.372a.5.5 0 00.465.316h2a.5.5 0 00.478-.645l-.761-2.506C13.81 9.895 14.5 8.559 14.5 7.069c0-.145-.007-.29-.02-.431.261-.11.508-.266.705-.444.315.306.815.306.815-.417 0 .223-.5.223-.461-.026a.95.95 0 00.09-.255.7.7 0 00-.202-.645.58.58 0 00-.707-.098.735.735 0 00-.375.562c-.024.243.082.48.32.654a2.112 2.112 0 01-.259.153c-.534-2.664-3.284-4.595-6.442-4.595zM2.516 6.26c.455-2.066 2.667-3.733 5.448-3.733 3.146 0 5.536 2.114 5.536 4.542 0 1.254-.624 2.41-1.67 3.248a.5.5 0 00-.165.535l.66 2.175h-.985l-.59-1.487a.5.5 0 00-.629-.288c-.661.23-1.39.359-2.157.359a6.558 6.558 0 01-2.157-.359.5.5 0 00-.635.304l-.525 1.471h-.979l.633-2.15a.5.5 0 00-.17-.534 4.649 4.649 0 01-1.284-1.541.5.5 0 00-.446-.275h-.56a.5.5 0 01-.492-.414l-.254-1.46h.933a.5.5 0 00.488-.393zm12.621-.857a.565.565 0 01-.098.21.704.704 0 01-.044-.025c-.146-.09-.157-.175-.152-.223a.236.236 0 01.117-.173c.049-.027.08-.021.113.012a.202.202 0 01.064.199z"/></symbol><symbol fill="currentColor" class="bi bi-piggy-bank-fill" viewBox="0 0 16 16" id="piggy-bank-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.964 1.527c-2.977 0-5.571 1.704-6.32 4.125h-.55A1 1 0 00.11 6.824l.254 1.46a1.5 1.5 0 001.478 1.243h.263c.3.513.688.978 1.145 1.382l-.729 2.477a.5.5 0 00.48.641h2a.5.5 0 00.471-.332l.482-1.351c.635.173 1.31.267 2.011.267.707 0 1.388-.095 2.028-.272l.543 1.372a.5.5 0 00.465.316h2a.5.5 0 00.478-.645l-.761-2.506C13.81 9.895 14.5 8.559 14.5 7.069c0-.145-.007-.29-.02-.431.261-.11.508-.266.705-.444.315.306.815.306.815-.417 0 .223-.5.223-.461-.026a.95.95 0 00.09-.255.7.7 0 00-.202-.645.58.58 0 00-.707-.098.735.735 0 00-.375.562c-.024.243.082.48.32.654a2.112 2.112 0 01-.259.153c-.534-2.664-3.284-4.595-6.442-4.595zm7.173 3.876a.565.565 0 01-.098.21.704.704 0 01-.044-.025c-.146-.09-.157-.175-.152-.223a.236.236 0 01.117-.173c.049-.027.08-.021.113.012a.202.202 0 01.064.199zm-8.999-.65A6.613 6.613 0 017.964 4.5c.666 0 1.303.097 1.893.273a.5.5 0 10.286-.958A7.601 7.601 0 007.964 3.5c-.734 0-1.441.103-2.102.292a.5.5 0 10.276.962zM5 6.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0z"/></symbol><symbol fill="currentColor" class="bi bi-pin" viewBox="0 0 16 16" id="pin" xmlns="http://www.w3.org/2000/svg"><path d="M4.146.146A.5.5 0 014.5 0h7a.5.5 0 01.5.5c0 .68-.342 1.174-.646 1.479-.126.125-.25.224-.354.298v4.431l.078.048c.203.127.476.314.751.555C12.36 7.775 13 8.527 13 9.5a.5.5 0 01-.5.5h-4v4.5c0 .276-.224 1.5-.5 1.5s-.5-1.224-.5-1.5V10h-4a.5.5 0 01-.5-.5c0-.973.64-1.725 1.17-2.189A5.921 5.921 0 015 6.708V2.277a2.77 2.77 0 01-.354-.298C4.342 1.674 4 1.179 4 .5a.5.5 0 01.146-.354zm1.58 1.408l-.002-.001.002.001zm-.002-.001l.002.001A.5.5 0 016 2v5a.5.5 0 01-.276.447h-.002l-.012.007-.054.03a4.922 4.922 0 00-.827.58c-.318.278-.585.596-.725.936h7.792c-.14-.34-.407-.658-.725-.936a4.915 4.915 0 00-.881-.61l-.012-.006h-.002A.5.5 0 0110 7V2a.5.5 0 01.295-.458 1.775 1.775 0 00.351-.271c.08-.08.155-.17.214-.271H5.14c.06.1.133.191.214.271a1.78 1.78 0 00.37.282z"/></symbol><symbol fill="currentColor" class="bi bi-pin-angle" viewBox="0 0 16 16" id="pin-angle" xmlns="http://www.w3.org/2000/svg"><path d="M9.828.722a.5.5 0 01.354.146l4.95 4.95a.5.5 0 010 .707c-.48.48-1.072.588-1.503.588-.177 0-.335-.018-.46-.039l-3.134 3.134a5.927 5.927 0 01.16 1.013c.046.702-.032 1.687-.72 2.375a.5.5 0 01-.707 0l-2.829-2.828-3.182 3.182c-.195.195-1.219.902-1.414.707-.195-.195.512-1.22.707-1.414l3.182-3.182-2.828-2.829a.5.5 0 010-.707c.688-.688 1.673-.767 2.375-.72a5.922 5.922 0 011.013.16l3.134-3.133a2.772 2.772 0 01-.04-.461c0-.43.108-1.022.589-1.503a.5.5 0 01.353-.146zm.122 2.112v-.002.002zm0-.002v.002a.5.5 0 01-.122.51L6.293 6.878a.5.5 0 01-.511.12H5.78l-.014-.004a4.507 4.507 0 00-.288-.076 4.922 4.922 0 00-.765-.116c-.422-.028-.836.008-1.175.15l5.51 5.509c.141-.34.177-.753.149-1.175a4.924 4.924 0 00-.192-1.054l-.004-.013v-.001a.5.5 0 01.12-.512l3.536-3.535a.5.5 0 01.532-.115l.096.022c.087.017.208.034.344.034.114 0 .23-.011.343-.04L9.927 2.028c-.029.113-.04.23-.04.343a1.779 1.779 0 00.062.46z"/></symbol><symbol fill="currentColor" class="bi bi-pin-angle-fill" viewBox="0 0 16 16" id="pin-angle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.828.722a.5.5 0 01.354.146l4.95 4.95a.5.5 0 010 .707c-.48.48-1.072.588-1.503.588-.177 0-.335-.018-.46-.039l-3.134 3.134a5.927 5.927 0 01.16 1.013c.046.702-.032 1.687-.72 2.375a.5.5 0 01-.707 0l-2.829-2.828-3.182 3.182c-.195.195-1.219.902-1.414.707-.195-.195.512-1.22.707-1.414l3.182-3.182-2.828-2.829a.5.5 0 010-.707c.688-.688 1.673-.767 2.375-.72a5.922 5.922 0 011.013.16l3.134-3.133a2.772 2.772 0 01-.04-.461c0-.43.108-1.022.589-1.503a.5.5 0 01.353-.146z"/></symbol><symbol fill="currentColor" class="bi bi-pin-fill" viewBox="0 0 16 16" id="pin-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4.146.146A.5.5 0 014.5 0h7a.5.5 0 01.5.5c0 .68-.342 1.174-.646 1.479-.126.125-.25.224-.354.298v4.431l.078.048c.203.127.476.314.751.555C12.36 7.775 13 8.527 13 9.5a.5.5 0 01-.5.5h-4v4.5c0 .276-.224 1.5-.5 1.5s-.5-1.224-.5-1.5V10h-4a.5.5 0 01-.5-.5c0-.973.64-1.725 1.17-2.189A5.921 5.921 0 015 6.708V2.277a2.77 2.77 0 01-.354-.298C4.342 1.674 4 1.179 4 .5a.5.5 0 01.146-.354z"/></symbol><symbol fill="currentColor" class="bi bi-pin-map" viewBox="0 0 16 16" id="pin-map" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.1 11.2a.5.5 0 01.4-.2H6a.5.5 0 010 1H3.75L1.5 15h13l-2.25-3H10a.5.5 0 010-1h2.5a.5.5 0 01.4.2l3 4a.5.5 0 01-.4.8H.5a.5.5 0 01-.4-.8l3-4z"/><path fill-rule="evenodd" d="M8 1a3 3 0 100 6 3 3 0 000-6zM4 4a4 4 0 114.5 3.969V13.5a.5.5 0 01-1 0V7.97A4 4 0 014 3.999z"/></symbol><symbol fill="currentColor" class="bi bi-pin-map-fill" viewBox="0 0 16 16" id="pin-map-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M3.1 11.2a.5.5 0 01.4-.2H6a.5.5 0 010 1H3.75L1.5 15h13l-2.25-3H10a.5.5 0 010-1h2.5a.5.5 0 01.4.2l3 4a.5.5 0 01-.4.8H.5a.5.5 0 01-.4-.8l3-4z"/><path fill-rule="evenodd" d="M4 4a4 4 0 114.5 3.969V13.5a.5.5 0 01-1 0V7.97A4 4 0 014 3.999z"/></symbol><symbol fill="currentColor" class="bi bi-pip" viewBox="0 0 16 16" id="pip" xmlns="http://www.w3.org/2000/svg"><path d="M0 3.5A1.5 1.5 0 011.5 2h13A1.5 1.5 0 0116 3.5v9a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 12.5v-9zM1.5 3a.5.5 0 00-.5.5v9a.5.5 0 00.5.5h13a.5.5 0 00.5-.5v-9a.5.5 0 00-.5-.5h-13z"/><path d="M8 8.5a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v3a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-3z"/></symbol><symbol fill="currentColor" class="bi bi-pip-fill" viewBox="0 0 16 16" id="pip-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 2A1.5 1.5 0 000 3.5v9A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-9A1.5 1.5 0 0014.5 2h-13zm7 6h5a.5.5 0 01.5.5v3a.5.5 0 01-.5.5h-5a.5.5 0 01-.5-.5v-3a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-play" viewBox="0 0 16 16" id="play" xmlns="http://www.w3.org/2000/svg"><path d="M10.804 8L5 4.633v6.734L10.804 8zm.792-.696a.802.802 0 010 1.392l-6.363 3.692C4.713 12.69 4 12.345 4 11.692V4.308c0-.653.713-.998 1.233-.696l6.363 3.692z"/></symbol><symbol fill="currentColor" class="bi bi-play-btn" viewBox="0 0 16 16" id="play-btn" xmlns="http://www.w3.org/2000/svg"><path d="M6.79 5.093A.5.5 0 006 5.5v5a.5.5 0 00.79.407l3.5-2.5a.5.5 0 000-.814l-3.5-2.5z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-play-btn-fill" viewBox="0 0 16 16" id="play-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm6.79-6.907A.5.5 0 006 5.5v5a.5.5 0 00.79.407l3.5-2.5a.5.5 0 000-.814l-3.5-2.5z"/></symbol><symbol fill="currentColor" class="bi bi-play-circle" viewBox="0 0 16 16" id="play-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M6.271 5.055a.5.5 0 01.52.038l3.5 2.5a.5.5 0 010 .814l-3.5 2.5A.5.5 0 016 10.5v-5a.5.5 0 01.271-.445z"/></symbol><symbol fill="currentColor" class="bi bi-play-circle-fill" viewBox="0 0 16 16" id="play-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM6.79 5.093A.5.5 0 006 5.5v5a.5.5 0 00.79.407l3.5-2.5a.5.5 0 000-.814l-3.5-2.5z"/></symbol><symbol fill="currentColor" class="bi bi-play-fill" viewBox="0 0 16 16" id="play-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.596 8.697l-6.363 3.692c-.54.313-1.233-.066-1.233-.697V4.308c0-.63.692-1.01 1.233-.696l6.363 3.692a.802.802 0 010 1.393z"/></symbol><symbol fill="currentColor" class="bi bi-plug" viewBox="0 0 16 16" id="plug" xmlns="http://www.w3.org/2000/svg"><path d="M6 0a.5.5 0 01.5.5V3h3V.5a.5.5 0 011 0V3h1a.5.5 0 01.5.5v3A3.5 3.5 0 018.5 10c-.002.434-.01.845-.04 1.22-.041.514-.126 1.003-.317 1.424a2.083 2.083 0 01-.97 1.028C6.725 13.9 6.169 14 5.5 14c-.998 0-1.61.33-1.974.718A1.922 1.922 0 003 16H2c0-.616.232-1.367.797-1.968C3.374 13.42 4.261 13 5.5 13c.581 0 .962-.088 1.218-.219.241-.123.4-.3.514-.55.121-.266.193-.621.23-1.09.027-.34.035-.718.037-1.141A3.5 3.5 0 014 6.5v-3a.5.5 0 01.5-.5h1V.5A.5.5 0 016 0zM5 4v2.5A2.5 2.5 0 007.5 9h1A2.5 2.5 0 0011 6.5V4H5z"/></symbol><symbol fill="currentColor" class="bi bi-plug-fill" viewBox="0 0 16 16" id="plug-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6 0a.5.5 0 01.5.5V3h3V.5a.5.5 0 011 0V3h1a.5.5 0 01.5.5v3A3.5 3.5 0 018.5 10c-.002.434-.01.845-.04 1.22-.041.514-.126 1.003-.317 1.424a2.083 2.083 0 01-.97 1.028C6.725 13.9 6.169 14 5.5 14c-.998 0-1.61.33-1.974.718A1.922 1.922 0 003 16H2c0-.616.232-1.367.797-1.968C3.374 13.42 4.261 13 5.5 13c.581 0 .962-.088 1.218-.219.241-.123.4-.3.514-.55.121-.266.193-.621.23-1.09.027-.34.035-.718.037-1.141A3.5 3.5 0 014 6.5v-3a.5.5 0 01.5-.5h1V.5A.5.5 0 016 0z"/></symbol><symbol fill="currentColor" class="bi bi-plus" viewBox="0 0 16 16" id="plus" xmlns="http://www.w3.org/2000/svg"><path d="M8 4a.5.5 0 01.5.5v3h3a.5.5 0 010 1h-3v3a.5.5 0 01-1 0v-3h-3a.5.5 0 010-1h3v-3A.5.5 0 018 4z"/></symbol><symbol fill="currentColor" class="bi bi-plus-circle" viewBox="0 0 16 16" id="plus-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M8 4a.5.5 0 01.5.5v3h3a.5.5 0 010 1h-3v3a.5.5 0 01-1 0v-3h-3a.5.5 0 010-1h3v-3A.5.5 0 018 4z"/></symbol><symbol fill="currentColor" class="bi bi-plus-circle-dotted" viewBox="0 0 16 16" id="plus-circle-dotted" xmlns="http://www.w3.org/2000/svg"><path d="M8 0c-.176 0-.35.006-.523.017l.064.998a7.117 7.117 0 01.918 0l.064-.998A8.113 8.113 0 008 0zM6.44.152c-.346.069-.684.16-1.012.27l.321.948c.287-.098.582-.177.884-.237L6.44.153zm4.132.271a7.946 7.946 0 00-1.011-.27l-.194.98c.302.06.597.14.884.237l.321-.947zm1.873.925a8 8 0 00-.906-.524l-.443.896c.275.136.54.29.793.459l.556-.831zM4.46.824c-.314.155-.616.33-.905.524l.556.83a7.07 7.07 0 01.793-.458L4.46.824zM2.725 1.985c-.262.23-.51.478-.74.74l.752.66c.202-.23.418-.446.648-.648l-.66-.752zm11.29.74a8.058 8.058 0 00-.74-.74l-.66.752c.23.202.447.418.648.648l.752-.66zm1.161 1.735a7.98 7.98 0 00-.524-.905l-.83.556c.169.253.322.518.458.793l.896-.443zM1.348 3.555c-.194.289-.37.591-.524.906l.896.443c.136-.275.29-.54.459-.793l-.831-.556zM.423 5.428a7.945 7.945 0 00-.27 1.011l.98.194c.06-.302.14-.597.237-.884l-.947-.321zM15.848 6.44a7.943 7.943 0 00-.27-1.012l-.948.321c.098.287.177.582.237.884l.98-.194zM.017 7.477a8.113 8.113 0 000 1.046l.998-.064a7.117 7.117 0 010-.918l-.998-.064zM16 8a8.1 8.1 0 00-.017-.523l-.998.064a7.11 7.11 0 010 .918l.998.064A8.1 8.1 0 0016 8zM.152 9.56c.069.346.16.684.27 1.012l.948-.321a6.944 6.944 0 01-.237-.884l-.98.194zm15.425 1.012c.112-.328.202-.666.27-1.011l-.98-.194c-.06.302-.14.597-.237.884l.947.321zM.824 11.54a8 8 0 00.524.905l.83-.556a6.999 6.999 0 01-.458-.793l-.896.443zm13.828.905c.194-.289.37-.591.524-.906l-.896-.443c-.136.275-.29.54-.459.793l.831.556zm-12.667.83c.23.262.478.51.74.74l.66-.752a7.047 7.047 0 01-.648-.648l-.752.66zm11.29.74c.262-.23.51-.478.74-.74l-.752-.66c-.201.23-.418.447-.648.648l.66.752zm-1.735 1.161c.314-.155.616-.33.905-.524l-.556-.83a7.07 7.07 0 01-.793.458l.443.896zm-7.985-.524c.289.194.591.37.906.524l.443-.896a6.998 6.998 0 01-.793-.459l-.556.831zm1.873.925c.328.112.666.202 1.011.27l.194-.98a6.953 6.953 0 01-.884-.237l-.321.947zm4.132.271a7.944 7.944 0 001.012-.27l-.321-.948a6.954 6.954 0 01-.884.237l.194.98zm-2.083.135a8.1 8.1 0 001.046 0l-.064-.998a7.11 7.11 0 01-.918 0l-.064.998zM8.5 4.5a.5.5 0 00-1 0v3h-3a.5.5 0 000 1h3v3a.5.5 0 001 0v-3h3a.5.5 0 000-1h-3v-3z"/></symbol><symbol fill="currentColor" class="bi bi-plus-circle-fill" viewBox="0 0 16 16" id="plus-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM8.5 4.5a.5.5 0 00-1 0v3h-3a.5.5 0 000 1h3v3a.5.5 0 001 0v-3h3a.5.5 0 000-1h-3v-3z"/></symbol><symbol fill="currentColor" class="bi bi-plus-lg" viewBox="0 0 16 16" id="plus-lg" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a1 1 0 011 1v6h6a1 1 0 110 2H9v6a1 1 0 11-2 0V9H1a1 1 0 010-2h6V1a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-plus-square" viewBox="0 0 16 16" id="plus-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M8 4a.5.5 0 01.5.5v3h3a.5.5 0 010 1h-3v3a.5.5 0 01-1 0v-3h-3a.5.5 0 010-1h3v-3A.5.5 0 018 4z"/></symbol><symbol fill="currentColor" class="bi bi-plus-square-dotted" viewBox="0 0 16 16" id="plus-square-dotted" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 0c-.166 0-.33.016-.487.048l.194.98A1.51 1.51 0 012.5 1h.458V0H2.5zm2.292 0h-.917v1h.917V0zm1.833 0h-.917v1h.917V0zm1.833 0h-.916v1h.916V0zm1.834 0h-.917v1h.917V0zm1.833 0h-.917v1h.917V0zM13.5 0h-.458v1h.458c.1 0 .199.01.293.029l.194-.981A2.51 2.51 0 0013.5 0zm2.079 1.11a2.511 2.511 0 00-.69-.689l-.556.831c.164.11.305.251.415.415l.83-.556zM1.11.421a2.511 2.511 0 00-.689.69l.831.556c.11-.164.251-.305.415-.415L1.11.422zM16 2.5c0-.166-.016-.33-.048-.487l-.98.194c.018.094.028.192.028.293v.458h1V2.5zM.048 2.013A2.51 2.51 0 000 2.5v.458h1V2.5c0-.1.01-.199.029-.293l-.981-.194zM0 3.875v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zM0 5.708v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zM0 7.542v.916h1v-.916H0zm15 .916h1v-.916h-1v.916zM0 9.375v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zm-16 .916v.917h1v-.917H0zm16 .917v-.917h-1v.917h1zm-16 .917v.458c0 .166.016.33.048.487l.98-.194A1.51 1.51 0 011 13.5v-.458H0zm16 .458v-.458h-1v.458c0 .1-.01.199-.029.293l.981.194c.032-.158.048-.32.048-.487zM.421 14.89c.183.272.417.506.69.689l.556-.831a1.51 1.51 0 01-.415-.415l-.83.556zm14.469.689c.272-.183.506-.417.689-.69l-.831-.556c-.11.164-.251.305-.415.415l.556.83zm-12.877.373c.158.032.32.048.487.048h.458v-1H2.5c-.1 0-.199-.01-.293-.029l-.194.981zM13.5 16c.166 0 .33-.016.487-.048l-.194-.98A1.51 1.51 0 0113.5 15h-.458v1h.458zm-9.625 0h.917v-1h-.917v1zm1.833 0h.917v-1h-.917v1zm1.834-1v1h.916v-1h-.916zm1.833 1h.917v-1h-.917v1zm1.833 0h.917v-1h-.917v1zM8.5 4.5a.5.5 0 00-1 0v3h-3a.5.5 0 000 1h3v3a.5.5 0 001 0v-3h3a.5.5 0 000-1h-3v-3z"/></symbol><symbol fill="currentColor" class="bi bi-plus-square-fill" viewBox="0 0 16 16" id="plus-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm6.5 4.5v3h3a.5.5 0 010 1h-3v3a.5.5 0 01-1 0v-3h-3a.5.5 0 010-1h3v-3a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-power" viewBox="0 0 16 16" id="power" xmlns="http://www.w3.org/2000/svg"><path d="M7.5 1v7h1V1h-1z"/><path d="M3 8.812a4.999 4.999 0 012.578-4.375l-.485-.874A6 6 0 1011 3.616l-.501.865A5 5 0 113 8.812z"/></symbol><symbol fill="currentColor" class="bi bi-printer" viewBox="0 0 16 16" id="printer" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 8a.5.5 0 100-1 .5.5 0 000 1z"/><path d="M5 1a2 2 0 00-2 2v2H2a2 2 0 00-2 2v3a2 2 0 002 2h1v1a2 2 0 002 2h6a2 2 0 002-2v-1h1a2 2 0 002-2V7a2 2 0 00-2-2h-1V3a2 2 0 00-2-2H5zM4 3a1 1 0 011-1h6a1 1 0 011 1v2H4V3zm1 5a2 2 0 00-2 2v1H2a1 1 0 01-1-1V7a1 1 0 011-1h12a1 1 0 011 1v3a1 1 0 01-1 1h-1v-1a2 2 0 00-2-2H5zm7 2v3a1 1 0 01-1 1H5a1 1 0 01-1-1v-3a1 1 0 011-1h6a1 1 0 011 1z"/></symbol><symbol fill="currentColor" class="bi bi-printer-fill" viewBox="0 0 16 16" id="printer-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5 1a2 2 0 00-2 2v1h10V3a2 2 0 00-2-2H5zm6 8H5a1 1 0 00-1 1v3a1 1 0 001 1h6a1 1 0 001-1v-3a1 1 0 00-1-1z"/><path d="M0 7a2 2 0 012-2h12a2 2 0 012 2v3a2 2 0 01-2 2h-1v-2a2 2 0 00-2-2H5a2 2 0 00-2 2v2H2a2 2 0 01-2-2V7zm2.5 1a.5.5 0 100-1 .5.5 0 000 1z"/></symbol><symbol fill="currentColor" class="bi bi-puzzle" viewBox="0 0 16 16" id="puzzle" xmlns="http://www.w3.org/2000/svg"><path d="M3.112 3.645A1.5 1.5 0 014.605 2H7a.5.5 0 01.5.5v.382c0 .696-.497 1.182-.872 1.469a.459.459 0 00-.115.118.113.113 0 00-.012.025L6.5 4.5v.003l.003.01c.004.01.014.028.036.053a.86.86 0 00.27.194C7.09 4.9 7.51 5 8 5c.492 0 .912-.1 1.19-.24a.86.86 0 00.271-.194.213.213 0 00.039-.063v-.009a.112.112 0 00-.012-.025.459.459 0 00-.115-.118c-.375-.287-.872-.773-.872-1.469V2.5A.5.5 0 019 2h2.395a1.5 1.5 0 011.493 1.645L12.645 6.5h.237c.195 0 .42-.147.675-.48.21-.274.528-.52.943-.52.568 0 .947.447 1.154.862C15.877 6.807 16 7.387 16 8s-.123 1.193-.346 1.638c-.207.415-.586.862-1.154.862-.415 0-.733-.246-.943-.52-.255-.333-.48-.48-.675-.48h-.237l.243 2.855A1.5 1.5 0 0111.395 14H9a.5.5 0 01-.5-.5v-.382c0-.696.497-1.182.872-1.469a.459.459 0 00.115-.118.113.113 0 00.012-.025L9.5 11.5v-.003a.214.214 0 00-.039-.064.859.859 0 00-.27-.193C8.91 11.1 8.49 11 8 11c-.491 0-.912.1-1.19.24a.859.859 0 00-.271.194.214.214 0 00-.039.063v.003l.001.006a.113.113 0 00.012.025c.016.027.05.068.115.118.375.287.872.773.872 1.469v.382a.5.5 0 01-.5.5H4.605a1.5 1.5 0 01-1.493-1.645L3.356 9.5h-.238c-.195 0-.42.147-.675.48-.21.274-.528.52-.943.52-.568 0-.947-.447-1.154-.862C.123 9.193 0 8.613 0 8s.123-1.193.346-1.638C.553 5.947.932 5.5 1.5 5.5c.415 0 .733.246.943.52.255.333.48.48.675.48h.238l-.244-2.855zM4.605 3a.5.5 0 00-.498.55l.001.007.29 3.4A.5.5 0 013.9 7.5h-.782c-.696 0-1.182-.497-1.469-.872a.459.459 0 00-.118-.115.112.112 0 00-.025-.012L1.5 6.5h-.003a.213.213 0 00-.064.039.86.86 0 00-.193.27C1.1 7.09 1 7.51 1 8c0 .491.1.912.24 1.19.07.14.14.225.194.271a.213.213 0 00.063.039H1.5l.006-.001a.112.112 0 00.025-.012.459.459 0 00.118-.115c.287-.375.773-.872 1.469-.872H3.9a.5.5 0 01.498.542l-.29 3.408a.5.5 0 00.497.55h1.878c-.048-.166-.195-.352-.463-.557-.274-.21-.52-.528-.52-.943 0-.568.447-.947.862-1.154C6.807 10.123 7.387 10 8 10s1.193.123 1.638.346c.415.207.862.586.862 1.154 0 .415-.246.733-.52.943-.268.205-.415.39-.463.557h1.878a.5.5 0 00.498-.55l-.001-.007-.29-3.4A.5.5 0 0112.1 8.5h.782c.696 0 1.182.497 1.469.872.05.065.091.099.118.115.013.008.021.01.025.012a.02.02 0 00.006.001h.003a.214.214 0 00.064-.039.86.86 0 00.193-.27c.14-.28.24-.7.24-1.191 0-.492-.1-.912-.24-1.19a.86.86 0 00-.194-.271.215.215 0 00-.063-.039H14.5l-.006.001a.113.113 0 00-.025.012.459.459 0 00-.118.115c-.287.375-.773.872-1.469.872H12.1a.5.5 0 01-.498-.543l.29-3.407a.5.5 0 00-.497-.55H9.517c.048.166.195.352.463.557.274.21.52.528.52.943 0 .568-.447.947-.862 1.154C9.193 5.877 8.613 6 8 6s-1.193-.123-1.638-.346C5.947 5.447 5.5 5.068 5.5 4.5c0-.415.246-.733.52-.943.268-.205.415-.39.463-.557H4.605z"/></symbol><symbol fill="currentColor" class="bi bi-puzzle-fill" viewBox="0 0 16 16" id="puzzle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.112 3.645A1.5 1.5 0 014.605 2H7a.5.5 0 01.5.5v.382c0 .696-.497 1.182-.872 1.469a.459.459 0 00-.115.118.113.113 0 00-.012.025L6.5 4.5v.003l.003.01c.004.01.014.028.036.053a.86.86 0 00.27.194C7.09 4.9 7.51 5 8 5c.492 0 .912-.1 1.19-.24a.86.86 0 00.271-.194.213.213 0 00.036-.054l.003-.01v-.008a.112.112 0 00-.012-.025.459.459 0 00-.115-.118c-.375-.287-.872-.773-.872-1.469V2.5A.5.5 0 019 2h2.395a1.5 1.5 0 011.493 1.645L12.645 6.5h.237c.195 0 .42-.147.675-.48.21-.274.528-.52.943-.52.568 0 .947.447 1.154.862C15.877 6.807 16 7.387 16 8s-.123 1.193-.346 1.638c-.207.415-.586.862-1.154.862-.415 0-.733-.246-.943-.52-.255-.333-.48-.48-.675-.48h-.237l.243 2.855A1.5 1.5 0 0111.395 14H9a.5.5 0 01-.5-.5v-.382c0-.696.497-1.182.872-1.469a.459.459 0 00.115-.118.113.113 0 00.012-.025L9.5 11.5v-.003l-.003-.01a.214.214 0 00-.036-.053.859.859 0 00-.27-.194C8.91 11.1 8.49 11 8 11c-.491 0-.912.1-1.19.24a.859.859 0 00-.271.194.214.214 0 00-.036.054l-.003.01v.002l.001.006a.113.113 0 00.012.025c.016.027.05.068.115.118.375.287.872.773.872 1.469v.382a.5.5 0 01-.5.5H4.605a1.5 1.5 0 01-1.493-1.645L3.356 9.5h-.238c-.195 0-.42.147-.675.48-.21.274-.528.52-.943.52-.568 0-.947-.447-1.154-.862C.123 9.193 0 8.613 0 8s.123-1.193.346-1.638C.553 5.947.932 5.5 1.5 5.5c.415 0 .733.246.943.52.255.333.48.48.675.48h.238l-.244-2.855z"/></symbol><symbol fill="currentColor" class="bi bi-question" viewBox="0 0 16 16" id="question" xmlns="http://www.w3.org/2000/svg"><path d="M5.255 5.786a.237.237 0 00.241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 00.25.246h.811a.25.25 0 00.25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z"/></symbol><symbol fill="currentColor" class="bi bi-question-circle" viewBox="0 0 16 16" id="question-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M5.255 5.786a.237.237 0 00.241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 00.25.246h.811a.25.25 0 00.25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z"/></symbol><symbol fill="currentColor" class="bi bi-question-circle-fill" viewBox="0 0 16 16" id="question-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM5.496 6.033h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 00.25.246h.811a.25.25 0 00.25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286a.237.237 0 00.241.247zm2.325 6.443c.61 0 1.029-.394 1.029-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94 0 .533.425.927 1.01.927z"/></symbol><symbol fill="currentColor" class="bi bi-question-diamond" viewBox="0 0 16 16" id="question-diamond" xmlns="http://www.w3.org/2000/svg"><path d="M6.95.435c.58-.58 1.52-.58 2.1 0l6.515 6.516c.58.58.58 1.519 0 2.098L9.05 15.565c-.58.58-1.519.58-2.098 0L.435 9.05a1.482 1.482 0 010-2.098L6.95.435zm1.4.7a.495.495 0 00-.7 0L1.134 7.65a.495.495 0 000 .7l6.516 6.516a.495.495 0 00.7 0l6.516-6.516a.495.495 0 000-.7L8.35 1.134z"/><path d="M5.255 5.786a.237.237 0 00.241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 00.25.246h.811a.25.25 0 00.25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z"/></symbol><symbol fill="currentColor" class="bi bi-question-diamond-fill" viewBox="0 0 16 16" id="question-diamond-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.05.435c-.58-.58-1.52-.58-2.1 0L.436 6.95c-.58.58-.58 1.519 0 2.098l6.516 6.516c.58.58 1.519.58 2.098 0l6.516-6.516c.58-.58.58-1.519 0-2.098L9.05.435zM5.495 6.033a.237.237 0 01-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 01-.25.25h-.81a.25.25 0 01-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25h-.825zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927z"/></symbol><symbol fill="currentColor" class="bi bi-question-lg" viewBox="0 0 16 16" id="question-lg" xmlns="http://www.w3.org/2000/svg"><path d="M3 4.075a.423.423 0 00.43.44H4.9c.247 0 .442-.2.475-.445.159-1.17.962-2.022 2.393-2.022 1.222 0 2.342.611 2.342 2.082 0 1.132-.668 1.652-1.72 2.444-1.2.872-2.15 1.89-2.082 3.542l.005.386c.003.244.202.44.446.44h1.445c.247 0 .446-.2.446-.446v-.188c0-1.278.487-1.652 1.8-2.647 1.086-.826 2.217-1.743 2.217-3.667C12.667 1.301 10.393 0 7.903 0 5.645 0 3.17 1.053 3.001 4.075zm2.776 10.273c0 .95.758 1.652 1.8 1.652 1.085 0 1.832-.702 1.832-1.652 0-.985-.747-1.675-1.833-1.675-1.04 0-1.799.69-1.799 1.675z"/></symbol><symbol fill="currentColor" class="bi bi-question-octagon" viewBox="0 0 16 16" id="question-octagon" xmlns="http://www.w3.org/2000/svg"><path d="M4.54.146A.5.5 0 014.893 0h6.214a.5.5 0 01.353.146l4.394 4.394a.5.5 0 01.146.353v6.214a.5.5 0 01-.146.353l-4.394 4.394a.5.5 0 01-.353.146H4.893a.5.5 0 01-.353-.146L.146 11.46A.5.5 0 010 11.107V4.893a.5.5 0 01.146-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z"/><path d="M5.255 5.786a.237.237 0 00.241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 00.25.246h.811a.25.25 0 00.25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z"/></symbol><symbol fill="currentColor" class="bi bi-question-octagon-fill" viewBox="0 0 16 16" id="question-octagon-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.46.146A.5.5 0 0011.107 0H4.893a.5.5 0 00-.353.146L.146 4.54A.5.5 0 000 4.893v6.214a.5.5 0 00.146.353l4.394 4.394a.5.5 0 00.353.146h6.214a.5.5 0 00.353-.146l4.394-4.394a.5.5 0 00.146-.353V4.893a.5.5 0 00-.146-.353L11.46.146zM5.496 6.033a.237.237 0 01-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 01-.25.25h-.81a.25.25 0 01-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25h-.825zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927z"/></symbol><symbol fill="currentColor" class="bi bi-question-square" viewBox="0 0 16 16" id="question-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M5.255 5.786a.237.237 0 00.241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 00.25.246h.811a.25.25 0 00.25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z"/></symbol><symbol fill="currentColor" class="bi bi-question-square-fill" viewBox="0 0 16 16" id="question-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm3.496 6.033a.237.237 0 01-.24-.247C5.35 4.091 6.737 3.5 8.005 3.5c1.396 0 2.672.73 2.672 2.24 0 1.08-.635 1.594-1.244 2.057-.737.559-1.01.768-1.01 1.486v.105a.25.25 0 01-.25.25h-.81a.25.25 0 01-.25-.246l-.004-.217c-.038-.927.495-1.498 1.168-1.987.59-.444.965-.736.965-1.371 0-.825-.628-1.168-1.314-1.168-.803 0-1.253.478-1.342 1.134-.018.137-.128.25-.266.25h-.825zm2.325 6.443c-.584 0-1.009-.394-1.009-.927 0-.552.425-.94 1.01-.94.609 0 1.028.388 1.028.94 0 .533-.42.927-1.029.927z"/></symbol><symbol fill="currentColor" class="bi bi-rainbow" viewBox="0 0 16 16" id="rainbow" xmlns="http://www.w3.org/2000/svg"><path d="M8 4.5a7 7 0 00-7 7 .5.5 0 01-1 0 8 8 0 1116 0 .5.5 0 01-1 0 7 7 0 00-7-7zm0 2a5 5 0 00-5 5 .5.5 0 01-1 0 6 6 0 1112 0 .5.5 0 01-1 0 5 5 0 00-5-5zm0 2a3 3 0 00-3 3 .5.5 0 01-1 0 4 4 0 118 0 .5.5 0 01-1 0 3 3 0 00-3-3zm0 2a1 1 0 00-1 1 .5.5 0 01-1 0 2 2 0 114 0 .5.5 0 01-1 0 1 1 0 00-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-receipt" viewBox="0 0 16 16" id="receipt" xmlns="http://www.w3.org/2000/svg"><path d="M1.92.506a.5.5 0 01.434.14L3 1.293l.646-.647a.5.5 0 01.708 0L5 1.293l.646-.647a.5.5 0 01.708 0L7 1.293l.646-.647a.5.5 0 01.708 0L9 1.293l.646-.647a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 01.708 0l.646.647.646-.647a.5.5 0 01.801.13l.5 1A.5.5 0 0115 2v12a.5.5 0 01-.053.224l-.5 1a.5.5 0 01-.8.13L13 14.707l-.646.647a.5.5 0 01-.708 0L11 14.707l-.646.647a.5.5 0 01-.708 0L9 14.707l-.646.647a.5.5 0 01-.708 0L7 14.707l-.646.647a.5.5 0 01-.708 0L5 14.707l-.646.647a.5.5 0 01-.708 0L3 14.707l-.646.647a.5.5 0 01-.801-.13l-.5-1A.5.5 0 011 14V2a.5.5 0 01.053-.224l.5-1a.5.5 0 01.367-.27zm.217 1.338L2 2.118v11.764l.137.274.51-.51a.5.5 0 01.707 0l.646.647.646-.646a.5.5 0 01.708 0l.646.646.646-.646a.5.5 0 01.708 0l.646.646.646-.646a.5.5 0 01.708 0l.646.646.646-.646a.5.5 0 01.708 0l.646.646.646-.646a.5.5 0 01.708 0l.509.509.137-.274V2.118l-.137-.274-.51.51a.5.5 0 01-.707 0L12 1.707l-.646.647a.5.5 0 01-.708 0L10 1.707l-.646.647a.5.5 0 01-.708 0L8 1.707l-.646.647a.5.5 0 01-.708 0L6 1.707l-.646.647a.5.5 0 01-.708 0L4 1.707l-.646.647a.5.5 0 01-.708 0l-.509-.51z"/><path d="M3 4.5a.5.5 0 01.5-.5h6a.5.5 0 110 1h-6a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 110 1h-6a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 110 1h-6a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zm8-6a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h1a.5.5 0 010 1h-1a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-receipt-cutoff" viewBox="0 0 16 16" id="receipt-cutoff" xmlns="http://www.w3.org/2000/svg"><path d="M3 4.5a.5.5 0 01.5-.5h6a.5.5 0 110 1h-6a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 110 1h-6a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 110 1h-6a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zm0 2a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zM11.5 4a.5.5 0 000 1h1a.5.5 0 000-1h-1zm0 2a.5.5 0 000 1h1a.5.5 0 000-1h-1zm0 2a.5.5 0 000 1h1a.5.5 0 000-1h-1zm0 2a.5.5 0 000 1h1a.5.5 0 000-1h-1zm0 2a.5.5 0 000 1h1a.5.5 0 000-1h-1z"/><path d="M2.354.646a.5.5 0 00-.801.13l-.5 1A.5.5 0 001 2v13H.5a.5.5 0 000 1h15a.5.5 0 000-1H15V2a.5.5 0 00-.053-.224l-.5-1a.5.5 0 00-.8-.13L13 1.293l-.646-.647a.5.5 0 00-.708 0L11 1.293l-.646-.647a.5.5 0 00-.708 0L9 1.293 8.354.646a.5.5 0 00-.708 0L7 1.293 6.354.646a.5.5 0 00-.708 0L5 1.293 4.354.646a.5.5 0 00-.708 0L3 1.293 2.354.646zm-.217 1.198l.51.51a.5.5 0 00.707 0L4 1.707l.646.647a.5.5 0 00.708 0L6 1.707l.646.647a.5.5 0 00.708 0L8 1.707l.646.647a.5.5 0 00.708 0L10 1.707l.646.647a.5.5 0 00.708 0L12 1.707l.646.647a.5.5 0 00.708 0l.509-.51.137.274V15H2V2.118l.137-.274z"/></symbol><symbol fill="currentColor" class="bi bi-reception-0" viewBox="0 0 16 16" id="reception-0" xmlns="http://www.w3.org/2000/svg"><path d="M0 13.5a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm4 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm4 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm4 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-reception-1" viewBox="0 0 16 16" id="reception-1" xmlns="http://www.w3.org/2000/svg"><path d="M0 11.5a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-2zm4 2a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm4 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm4 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-reception-2" viewBox="0 0 16 16" id="reception-2" xmlns="http://www.w3.org/2000/svg"><path d="M0 11.5a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-2zm4-3a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v5a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-5zm4 5a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5zm4 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-reception-3" viewBox="0 0 16 16" id="reception-3" xmlns="http://www.w3.org/2000/svg"><path d="M0 11.5a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-2zm4-3a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v5a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-5zm4-3a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-8zm4 8a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-reception-4" viewBox="0 0 16 16" id="reception-4" xmlns="http://www.w3.org/2000/svg"><path d="M0 11.5a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v2a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-2zm4-3a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v5a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-5zm4-3a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-8zm4-3a.5.5 0 01.5-.5h2a.5.5 0 01.5.5v11a.5.5 0 01-.5.5h-2a.5.5 0 01-.5-.5v-11z"/></symbol><symbol fill="currentColor" class="bi bi-record" viewBox="0 0 16 16" id="record" xmlns="http://www.w3.org/2000/svg"><path d="M8 12a4 4 0 110-8 4 4 0 010 8zm0 1A5 5 0 108 3a5 5 0 000 10z"/></symbol><symbol fill="currentColor" class="bi bi-record-btn" viewBox="0 0 16 16" id="record-btn" xmlns="http://www.w3.org/2000/svg"><path d="M8 11a3 3 0 100-6 3 3 0 000 6z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-record-btn-fill" viewBox="0 0 16 16" id="record-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm8-1a3 3 0 100-6 3 3 0 000 6z"/></symbol><symbol fill="currentColor" class="bi bi-record-circle" viewBox="0 0 16 16" id="record-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M11 8a3 3 0 11-6 0 3 3 0 016 0z"/></symbol><symbol fill="currentColor" class="bi bi-record-circle-fill" viewBox="0 0 16 16" id="record-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-8 3a3 3 0 100-6 3 3 0 000 6z"/></symbol><symbol fill="currentColor" class="bi bi-record-fill" viewBox="0 0 16 16" id="record-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 13A5 5 0 108 3a5 5 0 000 10z"/></symbol><symbol fill="currentColor" class="bi bi-record2" viewBox="0 0 16 16" id="record2" xmlns="http://www.w3.org/2000/svg"><path d="M8 12a4 4 0 110-8 4 4 0 010 8zm0 1A5 5 0 108 3a5 5 0 000 10z"/><path d="M10 8a2 2 0 11-4 0 2 2 0 014 0z"/></symbol><symbol fill="currentColor" class="bi bi-record2-fill" viewBox="0 0 16 16" id="record2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10 8a2 2 0 11-4 0 2 2 0 014 0z"/><path d="M8 13A5 5 0 108 3a5 5 0 000 10zm0-2a3 3 0 110-6 3 3 0 010 6z"/></symbol><symbol fill="currentColor" class="bi bi-recycle" viewBox="0 0 16 16" id="recycle" xmlns="http://www.w3.org/2000/svg"><path d="M9.302 1.256a1.5 1.5 0 00-2.604 0l-1.704 2.98a.5.5 0 00.869.497l1.703-2.981a.5.5 0 01.868 0l2.54 4.444-1.256-.337a.5.5 0 10-.26.966l2.415.647a.5.5 0 00.613-.353l.647-2.415a.5.5 0 10-.966-.259l-.333 1.242-2.532-4.431zM2.973 7.773l-1.255.337a.5.5 0 11-.26-.966l2.416-.647a.5.5 0 01.612.353l.647 2.415a.5.5 0 01-.966.259l-.333-1.242-2.545 4.454a.5.5 0 00.434.748H5a.5.5 0 010 1H1.723A1.5 1.5 0 01.421 12.24l2.552-4.467zm10.89 1.463a.5.5 0 10-.868.496l1.716 3.004a.5.5 0 01-.434.748h-5.57l.647-.646a.5.5 0 10-.708-.707l-1.5 1.5a.498.498 0 000 .707l1.5 1.5a.5.5 0 10.708-.707l-.647-.647h5.57a1.5 1.5 0 001.302-2.244l-1.716-3.004z"/></symbol><symbol fill="currentColor" class="bi bi-reddit" viewBox="0 0 16 16" id="reddit" xmlns="http://www.w3.org/2000/svg"><path d="M6.167 8a.831.831 0 00-.83.83c0 .459.372.84.83.831a.831.831 0 000-1.661zm1.843 3.647c.315 0 1.403-.038 1.976-.611a.232.232 0 000-.306.213.213 0 00-.306 0c-.353.363-1.126.487-1.67.487-.545 0-1.308-.124-1.671-.487a.213.213 0 00-.306 0 .213.213 0 000 .306c.564.563 1.652.61 1.977.61zm.992-2.807c0 .458.373.83.831.83.458 0 .83-.381.83-.83a.831.831 0 00-1.66 0z"/><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-3.828-1.165c-.315 0-.602.124-.812.325-.801-.573-1.9-.945-3.121-.993l.534-2.501 1.738.372a.83.83 0 10.83-.869.83.83 0 00-.744.468l-1.938-.41a.203.203 0 00-.153.028.186.186 0 00-.086.134l-.592 2.788c-1.24.038-2.358.41-3.17.992-.21-.2-.496-.324-.81-.324a1.163 1.163 0 00-.478 2.224c-.02.115-.029.23-.029.353 0 1.795 2.091 3.256 4.669 3.256 2.577 0 4.668-1.451 4.668-3.256 0-.114-.01-.238-.029-.353.401-.181.688-.592.688-1.069 0-.65-.525-1.165-1.165-1.165z"/></symbol><symbol fill="currentColor" class="bi bi-reply" viewBox="0 0 16 16" id="reply" xmlns="http://www.w3.org/2000/svg"><path d="M6.598 5.013a.144.144 0 01.202.134V6.3a.5.5 0 00.5.5c.667 0 2.013.005 3.3.822.984.624 1.99 1.76 2.595 3.876-1.02-.983-2.185-1.516-3.205-1.799a8.74 8.74 0 00-1.921-.306 7.404 7.404 0 00-.798.008h-.013l-.005.001h-.001L7.3 9.9l-.05-.498a.5.5 0 00-.45.498v1.153c0 .108-.11.176-.202.134L2.614 8.254a.503.503 0 00-.042-.028.147.147 0 010-.252.499.499 0 00.042-.028l3.984-2.933zM7.8 10.386c.068 0 .143.003.223.006.434.02 1.034.086 1.7.271 1.326.368 2.896 1.202 3.94 3.08a.5.5 0 00.933-.305c-.464-3.71-1.886-5.662-3.46-6.66-1.245-.79-2.527-.942-3.336-.971v-.66a1.144 1.144 0 00-1.767-.96l-3.994 2.94a1.147 1.147 0 000 1.946l3.994 2.94a1.144 1.144 0 001.767-.96v-.667z"/></symbol><symbol fill="currentColor" class="bi bi-reply-all" viewBox="0 0 16 16" id="reply-all" xmlns="http://www.w3.org/2000/svg"><path d="M8.098 5.013a.144.144 0 01.202.134V6.3a.5.5 0 00.5.5c.667 0 2.013.005 3.3.822.984.624 1.99 1.76 2.595 3.876-1.02-.983-2.185-1.516-3.205-1.799a8.74 8.74 0 00-1.921-.306 7.404 7.404 0 00-.798.008h-.013l-.005.001h-.001L8.8 9.9l-.05-.498a.5.5 0 00-.45.498v1.153c0 .108-.11.176-.202.134L4.114 8.254a.502.502 0 00-.042-.028.147.147 0 010-.252.497.497 0 00.042-.028l3.984-2.933zM9.3 10.386c.068 0 .143.003.223.006.434.02 1.034.086 1.7.271 1.326.368 2.896 1.202 3.94 3.08a.5.5 0 00.933-.305c-.464-3.71-1.886-5.662-3.46-6.66-1.245-.79-2.527-.942-3.336-.971v-.66a1.144 1.144 0 00-1.767-.96l-3.994 2.94a1.147 1.147 0 000 1.946l3.994 2.94a1.144 1.144 0 001.767-.96v-.667z"/><path d="M5.232 4.293a.5.5 0 00-.7-.106L.54 7.127a1.147 1.147 0 000 1.946l3.994 2.94a.5.5 0 10.593-.805L1.114 8.254a.503.503 0 00-.042-.028.147.147 0 010-.252.5.5 0 00.042-.028l4.012-2.954a.5.5 0 00.106-.699z"/></symbol><symbol fill="currentColor" class="bi bi-reply-all-fill" viewBox="0 0 16 16" id="reply-all-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.021 11.9L3.453 8.62a.719.719 0 010-1.238L8.021 4.1a.716.716 0 011.079.619V6c1.5 0 6 0 7 8-2.5-4.5-7-4-7-4v1.281c0 .56-.606.898-1.079.62z"/><path d="M5.232 4.293a.5.5 0 01-.106.7L1.114 7.945a.5.5 0 01-.042.028.147.147 0 000 .252.503.503 0 01.042.028l4.012 2.954a.5.5 0 11-.593.805L.539 9.073a1.147 1.147 0 010-1.946l3.994-2.94a.5.5 0 01.699.106z"/></symbol><symbol fill="currentColor" class="bi bi-reply-fill" viewBox="0 0 16 16" id="reply-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.921 11.9L1.353 8.62a.719.719 0 010-1.238L5.921 4.1A.716.716 0 017 4.719V6c1.5 0 6 0 7 8-2.5-4.5-7-4-7-4v1.281c0 .56-.606.898-1.079.62z"/></symbol><symbol fill="currentColor" class="bi bi-rss" viewBox="0 0 16 16" id="rss" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M5.5 12a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm-3-8.5a1 1 0 011-1c5.523 0 10 4.477 10 10a1 1 0 11-2 0 8 8 0 00-8-8 1 1 0 01-1-1zm0 4a1 1 0 011-1 6 6 0 016 6 1 1 0 11-2 0 4 4 0 00-4-4 1 1 0 01-1-1z"/></symbol><symbol fill="currentColor" class="bi bi-rss-fill" viewBox="0 0 16 16" id="rss-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm1.5 2.5c5.523 0 10 4.477 10 10a1 1 0 11-2 0 8 8 0 00-8-8 1 1 0 010-2zm0 4a6 6 0 016 6 1 1 0 11-2 0 4 4 0 00-4-4 1 1 0 010-2zm.5 7a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-rulers" viewBox="0 0 16 16" id="rulers" xmlns="http://www.w3.org/2000/svg"><path d="M1 0a1 1 0 00-1 1v14a1 1 0 001 1h5v-1H2v-1h4v-1H4v-1h2v-1H2v-1h4V9H4V8h2V7H2V6h4V2h1v4h1V4h1v2h1V2h1v4h1V4h1v2h1V2h1v4h1V1a1 1 0 00-1-1H1z"/></symbol><symbol fill="currentColor" class="bi bi-safe" viewBox="0 0 16 16" id="safe" xmlns="http://www.w3.org/2000/svg"><path d="M1 1.5A1.5 1.5 0 012.5 0h12A1.5 1.5 0 0116 1.5v13a1.5 1.5 0 01-1.5 1.5h-12A1.5 1.5 0 011 14.5V13H.5a.5.5 0 010-1H1V8.5H.5a.5.5 0 010-1H1V4H.5a.5.5 0 010-1H1V1.5zM2.5 1a.5.5 0 00-.5.5v13a.5.5 0 00.5.5h12a.5.5 0 00.5-.5v-13a.5.5 0 00-.5-.5h-12z"/><path d="M13.5 6a.5.5 0 01.5.5v3a.5.5 0 01-1 0v-3a.5.5 0 01.5-.5zM4.828 4.464a.5.5 0 01.708 0l1.09 1.09a3.003 3.003 0 013.476 0l1.09-1.09a.5.5 0 11.707.708l-1.09 1.09c.74 1.037.74 2.44 0 3.476l1.09 1.09a.5.5 0 11-.707.708l-1.09-1.09a3.002 3.002 0 01-3.476 0l-1.09 1.09a.5.5 0 11-.708-.708l1.09-1.09a3.003 3.003 0 010-3.476l-1.09-1.09a.5.5 0 010-.708zM6.95 6.586a2 2 0 102.828 2.828A2 2 0 006.95 6.586z"/></symbol><symbol fill="currentColor" class="bi bi-safe-fill" viewBox="0 0 16 16" id="safe-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.778 9.414A2 2 0 116.95 6.586a2 2 0 012.828 2.828z"/><path d="M2.5 0A1.5 1.5 0 001 1.5V3H.5a.5.5 0 000 1H1v3.5H.5a.5.5 0 000 1H1V12H.5a.5.5 0 000 1H1v1.5A1.5 1.5 0 002.5 16h12a1.5 1.5 0 001.5-1.5v-13A1.5 1.5 0 0014.5 0h-12zm3.036 4.464l1.09 1.09a3.003 3.003 0 013.476 0l1.09-1.09a.5.5 0 11.707.708l-1.09 1.09c.74 1.037.74 2.44 0 3.476l1.09 1.09a.5.5 0 11-.707.708l-1.09-1.09a3.002 3.002 0 01-3.476 0l-1.09 1.09a.5.5 0 11-.708-.708l1.09-1.09a3.003 3.003 0 010-3.476l-1.09-1.09a.5.5 0 11.708-.708zM14 6.5v3a.5.5 0 01-1 0v-3a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-safe2" viewBox="0 0 16 16" id="safe2" xmlns="http://www.w3.org/2000/svg"><path d="M1 2.5A1.5 1.5 0 012.5 1h12A1.5 1.5 0 0116 2.5v12a1.5 1.5 0 01-1.5 1.5h-12A1.5 1.5 0 011 14.5V14H.5a.5.5 0 010-1H1V9H.5a.5.5 0 010-1H1V4H.5a.5.5 0 010-1H1v-.5zM2.5 2a.5.5 0 00-.5.5v12a.5.5 0 00.5.5h12a.5.5 0 00.5-.5v-12a.5.5 0 00-.5-.5h-12z"/><path d="M5.035 8h1.528c.047-.184.12-.357.214-.516l-1.08-1.08A3.482 3.482 0 005.035 8zm1.369-2.303l1.08 1.08c.16-.094.332-.167.516-.214V5.035a3.482 3.482 0 00-1.596.662zM9 5.035v1.528c.184.047.357.12.516.214l1.08-1.08A3.482 3.482 0 009 5.035zm2.303 1.369l-1.08 1.08c.094.16.167.332.214.516h1.528a3.483 3.483 0 00-.662-1.596zM11.965 9h-1.528c-.047.184-.12.357-.214.516l1.08 1.08A3.483 3.483 0 0011.965 9zm-1.369 2.303l-1.08-1.08c-.16.094-.332.167-.516.214v1.528a3.483 3.483 0 001.596-.662zM8 11.965v-1.528a1.989 1.989 0 01-.516-.214l-1.08 1.08A3.483 3.483 0 008 11.965zm-2.303-1.369l1.08-1.08A1.988 1.988 0 016.563 9H5.035c.085.593.319 1.138.662 1.596zM4 8.5a4.5 4.5 0 119 0 4.5 4.5 0 01-9 0zm4.5-1a1 1 0 100 2 1 1 0 000-2z"/></symbol><symbol fill="currentColor" class="bi bi-safe2-fill" viewBox="0 0 16 16" id="safe2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.563 8H5.035a3.482 3.482 0 01.662-1.596l1.08 1.08c-.094.16-.167.332-.214.516zm.921-1.223l-1.08-1.08A3.482 3.482 0 018 5.035v1.528c-.184.047-.357.12-.516.214zM9 6.563V5.035a3.482 3.482 0 011.596.662l-1.08 1.08A1.988 1.988 0 009 6.563zm1.223.921l1.08-1.08c.343.458.577 1.003.662 1.596h-1.528a1.989 1.989 0 00-.214-.516zM10.437 9h1.528a3.483 3.483 0 01-.662 1.596l-1.08-1.08c.094-.16.167-.332.214-.516zm-.921 1.223l1.08 1.08A3.483 3.483 0 019 11.965v-1.528c.184-.047.357-.12.516-.214zM8 10.437v1.528a3.483 3.483 0 01-1.596-.662l1.08-1.08c.16.094.332.167.516.214zm-1.223-.921l-1.08 1.08A3.482 3.482 0 015.035 9h1.528c.047.184.12.357.214.516zM7.5 8.5a1 1 0 112 0 1 1 0 01-2 0z"/><path d="M2.5 1A1.5 1.5 0 001 2.5V3H.5a.5.5 0 000 1H1v4H.5a.5.5 0 000 1H1v4H.5a.5.5 0 000 1H1v.5A1.5 1.5 0 002.5 16h12a1.5 1.5 0 001.5-1.5v-12A1.5 1.5 0 0014.5 1h-12zm6 3a4.5 4.5 0 110 9 4.5 4.5 0 010-9z"/></symbol><symbol fill="currentColor" class="bi bi-save" viewBox="0 0 16 16" id="save" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2a1 1 0 00-1-1H9.5a1 1 0 00-1 1v7.293l2.646-2.647a.5.5 0 01.708.708l-3.5 3.5a.5.5 0 01-.708 0l-3.5-3.5a.5.5 0 11.708-.708L7.5 9.293V2a2 2 0 012-2H14a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2a2 2 0 012-2h2.5a.5.5 0 010 1H2z"/></symbol><symbol fill="currentColor" class="bi bi-save-fill" viewBox="0 0 16 16" id="save-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 1.5A1.5 1.5 0 0110 0h4a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2a2 2 0 012-2h6c-.314.418-.5.937-.5 1.5v7.793L4.854 6.646a.5.5 0 10-.708.708l3.5 3.5a.5.5 0 00.708 0l3.5-3.5a.5.5 0 00-.708-.708L8.5 9.293V1.5z"/></symbol><symbol fill="currentColor" class="bi bi-save2" viewBox="0 0 16 16" id="save2" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 00-1 1v12a1 1 0 001 1h12a1 1 0 001-1V2a1 1 0 00-1-1H9.5a1 1 0 00-1 1v4.5h2a.5.5 0 01.354.854l-2.5 2.5a.5.5 0 01-.708 0l-2.5-2.5A.5.5 0 015.5 6.5h2V2a2 2 0 012-2H14a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2a2 2 0 012-2h2.5a.5.5 0 010 1H2z"/></symbol><symbol fill="currentColor" class="bi bi-save2-fill" viewBox="0 0 16 16" id="save2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 1.5A1.5 1.5 0 0110 0h4a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2a2 2 0 012-2h6c-.314.418-.5.937-.5 1.5v6h-2a.5.5 0 00-.354.854l2.5 2.5a.5.5 0 00.708 0l2.5-2.5A.5.5 0 0010.5 7.5h-2v-6z"/></symbol><symbol fill="currentColor" class="bi bi-scissors" viewBox="0 0 16 16" id="scissors" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 3.5c-.614-.884-.074-1.962.858-2.5L8 7.226 11.642 1c.932.538 1.472 1.616.858 2.5L8.81 8.61l1.556 2.661a2.5 2.5 0 11-.794.637L8 9.73l-1.572 2.177a2.5 2.5 0 11-.794-.637L7.19 8.61 3.5 3.5zm2.5 10a1.5 1.5 0 10-3 0 1.5 1.5 0 003 0zm7 0a1.5 1.5 0 10-3 0 1.5 1.5 0 003 0z"/></symbol><symbol fill="currentColor" class="bi bi-screwdriver" viewBox="0 0 16 16" id="screwdriver" xmlns="http://www.w3.org/2000/svg"><path d="M0 1l1-1 3.081 2.2a1 1 0 01.419.815v.07a1 1 0 00.293.708L10.5 9.5l.914-.305a1 1 0 011.023.242l3.356 3.356a1 1 0 010 1.414l-1.586 1.586a1 1 0 01-1.414 0l-3.356-3.356a1 1 0 01-.242-1.023L9.5 10.5 3.793 4.793a1 1 0 00-.707-.293h-.071a1 1 0 01-.814-.419L0 1zm11.354 9.646a.5.5 0 00-.708.708l3 3a.5.5 0 00.708-.708l-3-3z"/></symbol><symbol fill="currentColor" class="bi bi-sd-card" viewBox="0 0 16 16" id="sd-card" xmlns="http://www.w3.org/2000/svg"><path d="M6.25 3.5a.75.75 0 00-1.5 0v2a.75.75 0 001.5 0v-2zm2 0a.75.75 0 00-1.5 0v2a.75.75 0 001.5 0v-2zm2 0a.75.75 0 00-1.5 0v2a.75.75 0 001.5 0v-2zm2 0a.75.75 0 00-1.5 0v2a.75.75 0 001.5 0v-2z"/><path fill-rule="evenodd" d="M5.914 0H12.5A1.5 1.5 0 0114 1.5v13a1.5 1.5 0 01-1.5 1.5h-9A1.5 1.5 0 012 14.5V3.914c0-.398.158-.78.44-1.06L4.853.439A1.5 1.5 0 015.914 0zM13 1.5a.5.5 0 00-.5-.5H5.914a.5.5 0 00-.353.146L3.146 3.561A.5.5 0 003 3.914V14.5a.5.5 0 00.5.5h9a.5.5 0 00.5-.5v-13z"/></symbol><symbol fill="currentColor" class="bi bi-sd-card-fill" viewBox="0 0 16 16" id="sd-card-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M12.5 0H5.914a1.5 1.5 0 00-1.06.44L2.439 2.853A1.5 1.5 0 002 3.914V14.5A1.5 1.5 0 003.5 16h9a1.5 1.5 0 001.5-1.5v-13A1.5 1.5 0 0012.5 0zm-7 2.75a.75.75 0 01.75.75v2a.75.75 0 01-1.5 0v-2a.75.75 0 01.75-.75zm2 0a.75.75 0 01.75.75v2a.75.75 0 01-1.5 0v-2a.75.75 0 01.75-.75zm2.75.75a.75.75 0 00-1.5 0v2a.75.75 0 001.5 0v-2zm1.25-.75a.75.75 0 01.75.75v2a.75.75 0 01-1.5 0v-2a.75.75 0 01.75-.75z"/></symbol><symbol fill="currentColor" class="bi bi-search" viewBox="0 0 16 16" id="search" xmlns="http://www.w3.org/2000/svg"><path d="M11.742 10.344a6.5 6.5 0 10-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 001.415-1.414l-3.85-3.85a1.007 1.007 0 00-.115-.1zM12 6.5a5.5 5.5 0 11-11 0 5.5 5.5 0 0111 0z"/></symbol><symbol fill="currentColor" class="bi bi-segmented-nav" viewBox="0 0 16 16" id="segmented-nav" xmlns="http://www.w3.org/2000/svg"><path d="M0 6a2 2 0 012-2h12a2 2 0 012 2v2a2 2 0 01-2 2H2a2 2 0 01-2-2V6zm6 3h4V5H6v4zm9-1V6a1 1 0 00-1-1h-3v4h3a1 1 0 001-1z"/></symbol><symbol fill="currentColor" class="bi bi-server" viewBox="0 0 16 16" id="server" xmlns="http://www.w3.org/2000/svg"><path d="M1.333 2.667C1.333 1.194 4.318 0 8 0s6.667 1.194 6.667 2.667V4c0 1.473-2.985 2.667-6.667 2.667S1.333 5.473 1.333 4V2.667z"/><path d="M1.333 6.334v3C1.333 10.805 4.318 12 8 12s6.667-1.194 6.667-2.667V6.334a6.51 6.51 0 01-1.458.79C11.81 7.684 9.967 8 8 8c-1.966 0-3.809-.317-5.208-.876a6.508 6.508 0 01-1.458-.79z"/><path d="M14.667 11.668a6.51 6.51 0 01-1.458.789c-1.4.56-3.242.876-5.21.876-1.966 0-3.809-.316-5.208-.876a6.51 6.51 0 01-1.458-.79v1.666C1.333 14.806 4.318 16 8 16s6.667-1.194 6.667-2.667v-1.665z"/></symbol><symbol fill="currentColor" class="bi bi-share" viewBox="0 0 16 16" id="share" xmlns="http://www.w3.org/2000/svg"><path d="M13.5 1a1.5 1.5 0 100 3 1.5 1.5 0 000-3zM11 2.5a2.5 2.5 0 11.603 1.628l-6.718 3.12a2.499 2.499 0 010 1.504l6.718 3.12a2.5 2.5 0 11-.488.876l-6.718-3.12a2.5 2.5 0 110-3.256l6.718-3.12A2.5 2.5 0 0111 2.5zm-8.5 4a1.5 1.5 0 100 3 1.5 1.5 0 000-3zm11 5.5a1.5 1.5 0 100 3 1.5 1.5 0 000-3z"/></symbol><symbol fill="currentColor" class="bi bi-share-fill" viewBox="0 0 16 16" id="share-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11 2.5a2.5 2.5 0 11.603 1.628l-6.718 3.12a2.499 2.499 0 010 1.504l6.718 3.12a2.5 2.5 0 11-.488.876l-6.718-3.12a2.5 2.5 0 110-3.256l6.718-3.12A2.5 2.5 0 0111 2.5z"/></symbol><symbol fill="currentColor" class="bi bi-shield" viewBox="0 0 16 16" id="shield" xmlns="http://www.w3.org/2000/svg"><path d="M5.338 1.59a61.44 61.44 0 00-2.837.856.481.481 0 00-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 002.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 00.101.025.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/></symbol><symbol fill="currentColor" class="bi bi-shield-check" viewBox="0 0 16 16" id="shield-check" xmlns="http://www.w3.org/2000/svg"><path d="M5.338 1.59a61.44 61.44 0 00-2.837.856.481.481 0 00-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 002.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 00.101.025.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/><path d="M10.854 5.146a.5.5 0 010 .708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 7.793l2.646-2.647a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-shield-exclamation" viewBox="0 0 16 16" id="shield-exclamation" xmlns="http://www.w3.org/2000/svg"><path d="M5.338 1.59a61.44 61.44 0 00-2.837.856.481.481 0 00-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 002.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 00.101.025.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/><path d="M7.001 11a1 1 0 112 0 1 1 0 01-2 0zM7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.553.553 0 01-1.1 0L7.1 4.995z"/></symbol><symbol fill="currentColor" class="bi bi-shield-fill" viewBox="0 0 16 16" id="shield-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/></symbol><symbol fill="currentColor" class="bi bi-shield-fill-check" viewBox="0 0 16 16" id="shield-fill-check" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 00-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.775 11.775 0 002.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 00-1.044-1.263 62.467 62.467 0 00-2.887-.87C9.843.266 8.69 0 8 0zm2.146 5.146a.5.5 0 01.708.708l-3 3a.5.5 0 01-.708 0l-1.5-1.5a.5.5 0 11.708-.708L7.5 7.793l2.646-2.647z"/></symbol><symbol fill="currentColor" class="bi bi-shield-fill-exclamation" viewBox="0 0 16 16" id="shield-fill-exclamation" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 00-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.775 11.775 0 002.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 00-1.044-1.263 62.467 62.467 0 00-2.887-.87C9.843.266 8.69 0 8 0zm-.55 8.502L7.1 4.995a.905.905 0 111.8 0l-.35 3.507a.552.552 0 01-1.1 0zM8.002 12a1 1 0 110-2 1 1 0 010 2z"/></symbol><symbol fill="currentColor" class="bi bi-shield-fill-minus" viewBox="0 0 16 16" id="shield-fill-minus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 00-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.775 11.775 0 002.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 00-1.044-1.263 62.467 62.467 0 00-2.887-.87C9.843.266 8.69 0 8 0zM6 7.5a.5.5 0 010-1h4a.5.5 0 010 1H6z"/></symbol><symbol fill="currentColor" class="bi bi-shield-fill-plus" viewBox="0 0 16 16" id="shield-fill-plus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 00-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.775 11.775 0 002.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 00-1.044-1.263 62.467 62.467 0 00-2.887-.87C9.843.266 8.69 0 8 0zm-.5 5a.5.5 0 011 0v1.5H10a.5.5 0 010 1H8.5V9a.5.5 0 01-1 0V7.5H6a.5.5 0 010-1h1.5V5z"/></symbol><symbol fill="currentColor" class="bi bi-shield-fill-x" viewBox="0 0 16 16" id="shield-fill-x" xmlns="http://www.w3.org/2000/svg"><path d="M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 00-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.775 11.775 0 002.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 00-1.044-1.263 62.467 62.467 0 00-2.887-.87C9.843.266 8.69 0 8 0zM6.854 5.146L8 6.293l1.146-1.147a.5.5 0 11.708.708L8.707 7l1.147 1.146a.5.5 0 01-.708.708L8 7.707 6.854 8.854a.5.5 0 11-.708-.708L7.293 7 6.146 5.854a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-shield-lock" viewBox="0 0 16 16" id="shield-lock" xmlns="http://www.w3.org/2000/svg"><path d="M5.338 1.59a61.44 61.44 0 00-2.837.856.481.481 0 00-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 002.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 00.101.025.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/><path d="M9.5 6.5a1.5 1.5 0 01-1 1.415l.385 1.99a.5.5 0 01-.491.595h-.788a.5.5 0 01-.49-.595l.384-1.99a1.5 1.5 0 112-1.415z"/></symbol><symbol fill="currentColor" class="bi bi-shield-lock-fill" viewBox="0 0 16 16" id="shield-lock-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0c-.69 0-1.843.265-2.928.56-1.11.3-2.229.655-2.887.87a1.54 1.54 0 00-1.044 1.262c-.596 4.477.787 7.795 2.465 9.99a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.775 11.775 0 002.517-2.453c1.678-2.195 3.061-5.513 2.465-9.99a1.541 1.541 0 00-1.044-1.263 62.467 62.467 0 00-2.887-.87C9.843.266 8.69 0 8 0zm0 5a1.5 1.5 0 01.5 2.915l.385 1.99a.5.5 0 01-.491.595h-.788a.5.5 0 01-.49-.595l.384-1.99A1.5 1.5 0 018 5z"/></symbol><symbol fill="currentColor" class="bi bi-shield-minus" viewBox="0 0 16 16" id="shield-minus" xmlns="http://www.w3.org/2000/svg"><path d="M5.338 1.59a61.44 61.44 0 00-2.837.856.481.481 0 00-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 002.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 00.101.025.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/><path d="M5.5 7a.5.5 0 01.5-.5h4a.5.5 0 010 1H6a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-shield-plus" viewBox="0 0 16 16" id="shield-plus" xmlns="http://www.w3.org/2000/svg"><path d="M5.338 1.59a61.44 61.44 0 00-2.837.856.481.481 0 00-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 002.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 00.101.025.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/><path d="M8 4.5a.5.5 0 01.5.5v1.5H10a.5.5 0 010 1H8.5V9a.5.5 0 01-1 0V7.5H6a.5.5 0 010-1h1.5V5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-shield-shaded" viewBox="0 0 16 16" id="shield-shaded" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 14.933a.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067v13.866zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/></symbol><symbol fill="currentColor" class="bi bi-shield-slash" viewBox="0 0 16 16" id="shield-slash" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.093 3.093c-.465 4.275.885 7.46 2.513 9.589a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.32 11.32 0 001.733-1.525l-.745-.745a10.27 10.27 0 01-1.578 1.392c-.346.244-.652.42-.893.533-.12.057-.218.095-.293.118a.55.55 0 01-.101.025.615.615 0 01-.1-.025 2.348 2.348 0 01-.294-.118 6.141 6.141 0 01-.893-.533 10.725 10.725 0 01-2.287-2.233C3.053 10.228 1.879 7.594 2.06 4.06l-.967-.967zM3.98 1.98l-.852-.852A58.935 58.935 0 015.072.559C6.157.266 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.483 3.626-.332 6.491-1.551 8.616l-.77-.77c1.042-1.915 1.72-4.469 1.29-7.702a.48.48 0 00-.33-.39c-.65-.213-1.75-.56-2.836-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524a49.7 49.7 0 00-1.357.39zm9.666 12.374l-13-13 .708-.708 13 13-.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-shield-slash-fill" viewBox="0 0 16 16" id="shield-slash-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.093 3.093c-.465 4.275.885 7.46 2.513 9.589a11.777 11.777 0 002.517 2.453c.386.273.744.482 1.048.625.28.132.581.24.829.24s.548-.108.829-.24a7.159 7.159 0 001.048-.625 11.32 11.32 0 001.733-1.525L1.093 3.093zm12.215 8.215L3.128 1.128A61.369 61.369 0 015.073.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.483 3.626-.332 6.491-1.551 8.616zm.338 3.046l-13-13 .708-.708 13 13-.707.707z"/></symbol><symbol fill="currentColor" class="bi bi-shield-x" viewBox="0 0 16 16" id="shield-x" xmlns="http://www.w3.org/2000/svg"><path d="M5.338 1.59a61.44 61.44 0 00-2.837.856.481.481 0 00-.328.39c-.554 4.157.726 7.19 2.253 9.188a10.725 10.725 0 002.287 2.233c.346.244.652.42.893.533.12.057.218.095.293.118a.55.55 0 00.101.025.615.615 0 00.1-.025c.076-.023.174-.061.294-.118.24-.113.547-.29.893-.533a10.726 10.726 0 002.287-2.233c1.527-1.997 2.807-5.031 2.253-9.188a.48.48 0 00-.328-.39c-.651-.213-1.75-.56-2.837-.855C9.552 1.29 8.531 1.067 8 1.067c-.53 0-1.552.223-2.662.524zM5.072.56C6.157.265 7.31 0 8 0s1.843.265 2.928.56c1.11.3 2.229.655 2.887.87a1.54 1.54 0 011.044 1.262c.596 4.477-.787 7.795-2.465 9.99a11.775 11.775 0 01-2.517 2.453 7.159 7.159 0 01-1.048.625c-.28.132-.581.24-.829.24s-.548-.108-.829-.24a7.158 7.158 0 01-1.048-.625 11.777 11.777 0 01-2.517-2.453C1.928 10.487.545 7.169 1.141 2.692A1.54 1.54 0 012.185 1.43 62.456 62.456 0 015.072.56z"/><path d="M6.146 5.146a.5.5 0 01.708 0L8 6.293l1.146-1.147a.5.5 0 11.708.708L8.707 7l1.147 1.146a.5.5 0 01-.708.708L8 7.707 6.854 8.854a.5.5 0 11-.708-.708L7.293 7 6.146 5.854a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-shift" viewBox="0 0 16 16" id="shift" xmlns="http://www.w3.org/2000/svg"><path d="M7.27 2.047a1 1 0 011.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v3a1 1 0 01-1 1h-5a1 1 0 01-1-1v-3H1.654C.78 10.5.326 9.455.924 8.816L7.27 2.047zM14.346 9.5L8 2.731 1.654 9.5H4.5a1 1 0 011 1v3h5v-3a1 1 0 011-1h2.846z"/></symbol><symbol fill="currentColor" class="bi bi-shift-fill" viewBox="0 0 16 16" id="shift-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.27 2.047a1 1 0 011.46 0l6.345 6.77c.6.638.146 1.683-.73 1.683H11.5v3a1 1 0 01-1 1h-5a1 1 0 01-1-1v-3H1.654C.78 10.5.326 9.455.924 8.816L7.27 2.047z"/></symbol><symbol fill="currentColor" class="bi bi-shop" viewBox="0 0 16 16" id="shop" xmlns="http://www.w3.org/2000/svg"><path d="M2.97 1.35A1 1 0 013.73 1h8.54a1 1 0 01.76.35l2.609 3.044A1.5 1.5 0 0116 5.37v.255a2.375 2.375 0 01-4.25 1.458A2.371 2.371 0 019.875 8 2.37 2.37 0 018 7.083 2.37 2.37 0 016.125 8a2.37 2.37 0 01-1.875-.917A2.375 2.375 0 010 5.625V5.37a1.5 1.5 0 01.361-.976l2.61-3.045zm1.78 4.275a1.375 1.375 0 002.75 0 .5.5 0 011 0 1.375 1.375 0 002.75 0 .5.5 0 011 0 1.375 1.375 0 102.75 0V5.37a.5.5 0 00-.12-.325L12.27 2H3.73L1.12 5.045A.5.5 0 001 5.37v.255a1.375 1.375 0 002.75 0 .5.5 0 011 0zM1.5 8.5A.5.5 0 012 9v6h1v-5a1 1 0 011-1h3a1 1 0 011 1v5h6V9a.5.5 0 011 0v6h.5a.5.5 0 010 1H.5a.5.5 0 010-1H1V9a.5.5 0 01.5-.5zM4 15h3v-5H4v5zm5-5a1 1 0 011-1h2a1 1 0 011 1v3a1 1 0 01-1 1h-2a1 1 0 01-1-1v-3zm3 0h-2v3h2v-3z"/></symbol><symbol fill="currentColor" class="bi bi-shop-window" viewBox="0 0 16 16" id="shop-window" xmlns="http://www.w3.org/2000/svg"><path d="M2.97 1.35A1 1 0 013.73 1h8.54a1 1 0 01.76.35l2.609 3.044A1.5 1.5 0 0116 5.37v.255a2.375 2.375 0 01-4.25 1.458A2.371 2.371 0 019.875 8 2.37 2.37 0 018 7.083 2.37 2.37 0 016.125 8a2.37 2.37 0 01-1.875-.917A2.375 2.375 0 010 5.625V5.37a1.5 1.5 0 01.361-.976l2.61-3.045zm1.78 4.275a1.375 1.375 0 002.75 0 .5.5 0 011 0 1.375 1.375 0 002.75 0 .5.5 0 011 0 1.375 1.375 0 102.75 0V5.37a.5.5 0 00-.12-.325L12.27 2H3.73L1.12 5.045A.5.5 0 001 5.37v.255a1.375 1.375 0 002.75 0 .5.5 0 011 0zM1.5 8.5A.5.5 0 012 9v6h12V9a.5.5 0 011 0v6h.5a.5.5 0 010 1H.5a.5.5 0 010-1H1V9a.5.5 0 01.5-.5zm2 .5a.5.5 0 01.5.5V13h8V9.5a.5.5 0 011 0V13a1 1 0 01-1 1H4a1 1 0 01-1-1V9.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-shuffle" viewBox="0 0 16 16" id="shuffle" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M0 3.5A.5.5 0 01.5 3H1c2.202 0 3.827 1.24 4.874 2.418.49.552.865 1.102 1.126 1.532.26-.43.636-.98 1.126-1.532C9.173 4.24 10.798 3 13 3v1c-1.798 0-3.173 1.01-4.126 2.082A9.624 9.624 0 007.556 8a9.624 9.624 0 001.317 1.918C9.828 10.99 11.204 12 13 12v1c-2.202 0-3.827-1.24-4.874-2.418A10.595 10.595 0 017 9.05c-.26.43-.636.98-1.126 1.532C4.827 11.76 3.202 13 1 13H.5a.5.5 0 010-1H1c1.798 0 3.173-1.01 4.126-2.082A9.624 9.624 0 006.444 8a9.624 9.624 0 00-1.317-1.918C4.172 5.01 2.796 4 1 4H.5a.5.5 0 01-.5-.5z"/><path d="M13 5.466V1.534a.25.25 0 01.41-.192l2.36 1.966c.12.1.12.284 0 .384l-2.36 1.966a.25.25 0 01-.41-.192zm0 9v-3.932a.25.25 0 01.41-.192l2.36 1.966c.12.1.12.284 0 .384l-2.36 1.966a.25.25 0 01-.41-.192z"/></symbol><symbol fill="currentColor" class="bi bi-signpost" viewBox="0 0 16 16" id="signpost" xmlns="http://www.w3.org/2000/svg"><path d="M7 1.414V4H2a1 1 0 00-1 1v4a1 1 0 001 1h5v6h2v-6h3.532a1 1 0 00.768-.36l1.933-2.32a.5.5 0 000-.64L13.3 4.36a1 1 0 00-.768-.36H9V1.414a1 1 0 00-2 0zM12.532 5l1.666 2-1.666 2H2V5h10.532z"/></symbol><symbol fill="currentColor" class="bi bi-signpost-2" viewBox="0 0 16 16" id="signpost-2" xmlns="http://www.w3.org/2000/svg"><path d="M7 1.414V2H2a1 1 0 00-1 1v2a1 1 0 001 1h5v1H2.5a1 1 0 00-.8.4L.725 8.7a.5.5 0 000 .6l.975 1.3a1 1 0 00.8.4H7v5h2v-5h5a1 1 0 001-1V8a1 1 0 00-1-1H9V6h4.5a1 1 0 00.8-.4l.975-1.3a.5.5 0 000-.6L14.3 2.4a1 1 0 00-.8-.4H9v-.586a1 1 0 00-2 0zM13.5 3l.75 1-.75 1H2V3h11.5zm.5 5v2H2.5l-.75-1 .75-1H14z"/></symbol><symbol fill="currentColor" class="bi bi-signpost-2-fill" viewBox="0 0 16 16" id="signpost-2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.293.707A1 1 0 007 1.414V2H2a1 1 0 00-1 1v2a1 1 0 001 1h5v1H2.5a1 1 0 00-.8.4L.725 8.7a.5.5 0 000 .6l.975 1.3a1 1 0 00.8.4H7v5h2v-5h5a1 1 0 001-1V8a1 1 0 00-1-1H9V6h4.5a1 1 0 00.8-.4l.975-1.3a.5.5 0 000-.6L14.3 2.4a1 1 0 00-.8-.4H9v-.586A1 1 0 007.293.707z"/></symbol><symbol fill="currentColor" class="bi bi-signpost-fill" viewBox="0 0 16 16" id="signpost-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.293.707A1 1 0 007 1.414V4H2a1 1 0 00-1 1v4a1 1 0 001 1h5v6h2v-6h3.532a1 1 0 00.768-.36l1.933-2.32a.5.5 0 000-.64L13.3 4.36a1 1 0 00-.768-.36H9V1.414A1 1 0 007.293.707z"/></symbol><symbol fill="currentColor" class="bi bi-signpost-split" viewBox="0 0 16 16" id="signpost-split" xmlns="http://www.w3.org/2000/svg"><path d="M7 7V1.414a1 1 0 012 0V2h5a1 1 0 01.8.4l.975 1.3a.5.5 0 010 .6L14.8 5.6a1 1 0 01-.8.4H9v10H7v-5H2a1 1 0 01-.8-.4L.225 9.3a.5.5 0 010-.6L1.2 7.4A1 1 0 012 7h5zm1 3V8H2l-.75 1L2 10h6zm0-5h6l.75-1L14 3H8v2z"/></symbol><symbol fill="currentColor" class="bi bi-signpost-split-fill" viewBox="0 0 16 16" id="signpost-split-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7 16h2V6h5a1 1 0 00.8-.4l.975-1.3a.5.5 0 000-.6L14.8 2.4A1 1 0 0014 2H9v-.586a1 1 0 00-2 0V7H2a1 1 0 00-.8.4L.225 8.7a.5.5 0 000 .6l.975 1.3a1 1 0 00.8.4h5v5z"/></symbol><symbol fill="currentColor" class="bi bi-sim" viewBox="0 0 16 16" id="sim" xmlns="http://www.w3.org/2000/svg"><path d="M2 1.5A1.5 1.5 0 013.5 0h7.086a1.5 1.5 0 011.06.44l1.915 1.914A1.5 1.5 0 0114 3.414V14.5a1.5 1.5 0 01-1.5 1.5h-9A1.5 1.5 0 012 14.5v-13zM3.5 1a.5.5 0 00-.5.5v13a.5.5 0 00.5.5h9a.5.5 0 00.5-.5V3.414a.5.5 0 00-.146-.353l-1.915-1.915A.5.5 0 0010.586 1H3.5z"/><path d="M5.5 4a.5.5 0 00-.5.5V6h2.5V4h-2zm3 0v2H11V4.5a.5.5 0 00-.5-.5h-2zM11 7H5v2h6V7zm0 3H8.5v2h2a.5.5 0 00.5-.5V10zm-3.5 2v-2H5v1.5a.5.5 0 00.5.5h2zM4 4.5A1.5 1.5 0 015.5 3h5A1.5 1.5 0 0112 4.5v7a1.5 1.5 0 01-1.5 1.5h-5A1.5 1.5 0 014 11.5v-7z"/></symbol><symbol fill="currentColor" class="bi bi-sim-fill" viewBox="0 0 16 16" id="sim-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5 4.5a.5.5 0 01.5-.5h2v2H5V4.5zM8.5 6V4h2a.5.5 0 01.5.5V6H8.5zM5 7h6v2H5V7zm3.5 3H11v1.5a.5.5 0 01-.5.5h-2v-2zm-1 0v2h-2a.5.5 0 01-.5-.5V10h2.5z"/><path d="M3.5 0A1.5 1.5 0 002 1.5v13A1.5 1.5 0 003.5 16h9a1.5 1.5 0 001.5-1.5V3.414a1.5 1.5 0 00-.44-1.06L11.647.439A1.5 1.5 0 0010.586 0H3.5zm2 3h5A1.5 1.5 0 0112 4.5v7a1.5 1.5 0 01-1.5 1.5h-5A1.5 1.5 0 014 11.5v-7A1.5 1.5 0 015.5 3z"/></symbol><symbol fill="currentColor" class="bi bi-skip-backward" viewBox="0 0 16 16" id="skip-backward" xmlns="http://www.w3.org/2000/svg"><path d="M.5 3.5A.5.5 0 011 4v3.248l6.267-3.636c.52-.302 1.233.043 1.233.696v2.94l6.267-3.636c.52-.302 1.233.043 1.233.696v7.384c0 .653-.713.998-1.233.696L8.5 8.752v2.94c0 .653-.713.998-1.233.696L1 8.752V12a.5.5 0 01-1 0V4a.5.5 0 01.5-.5zm7 1.133L1.696 8 7.5 11.367V4.633zm7.5 0L9.196 8 15 11.367V4.633z"/></symbol><symbol fill="currentColor" class="bi bi-skip-backward-btn" viewBox="0 0 16 16" id="skip-backward-btn" xmlns="http://www.w3.org/2000/svg"><path d="M11.21 5.093A.5.5 0 0112 5.5v5a.5.5 0 01-.79.407L8.5 8.972V10.5a.5.5 0 01-.79.407L5 8.972V10.5a.5.5 0 01-1 0v-5a.5.5 0 011 0v1.528l2.71-1.935a.5.5 0 01.79.407v1.528l2.71-1.935z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-skip-backward-btn-fill" viewBox="0 0 16 16" id="skip-backward-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm11.21-6.907L8.5 7.028V5.5a.5.5 0 00-.79-.407L5 7.028V5.5a.5.5 0 00-1 0v5a.5.5 0 001 0V8.972l2.71 1.935a.5.5 0 00.79-.407V8.972l2.71 1.935A.5.5 0 0012 10.5v-5a.5.5 0 00-.79-.407z"/></symbol><symbol fill="currentColor" class="bi bi-skip-backward-circle" viewBox="0 0 16 16" id="skip-backward-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M11.729 5.055a.5.5 0 00-.52.038L8.5 7.028V5.5a.5.5 0 00-.79-.407L5 7.028V5.5a.5.5 0 00-1 0v5a.5.5 0 001 0V8.972l2.71 1.935a.5.5 0 00.79-.407V8.972l2.71 1.935A.5.5 0 0012 10.5v-5a.5.5 0 00-.271-.445z"/></symbol><symbol fill="currentColor" class="bi bi-skip-backward-circle-fill" viewBox="0 0 16 16" id="skip-backward-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-4.79-2.907L8.5 7.028V5.5a.5.5 0 00-.79-.407L5 7.028V5.5a.5.5 0 00-1 0v5a.5.5 0 001 0V8.972l2.71 1.935a.5.5 0 00.79-.407V8.972l2.71 1.935A.5.5 0 0012 10.5v-5a.5.5 0 00-.79-.407z"/></symbol><symbol fill="currentColor" class="bi bi-skip-backward-fill" viewBox="0 0 16 16" id="skip-backward-fill" xmlns="http://www.w3.org/2000/svg"><path d="M.5 3.5A.5.5 0 000 4v8a.5.5 0 001 0V8.753l6.267 3.636c.54.313 1.233-.066 1.233-.697v-2.94l6.267 3.636c.54.314 1.233-.065 1.233-.696V4.308c0-.63-.693-1.01-1.233-.696L8.5 7.248v-2.94c0-.63-.692-1.01-1.233-.696L1 7.248V4a.5.5 0 00-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-skip-end" viewBox="0 0 16 16" id="skip-end" xmlns="http://www.w3.org/2000/svg"><path d="M12.5 4a.5.5 0 00-1 0v3.248L5.233 3.612C4.713 3.31 4 3.655 4 4.308v7.384c0 .653.713.998 1.233.696L11.5 8.752V12a.5.5 0 001 0V4zM5 4.633L10.804 8 5 11.367V4.633z"/></symbol><symbol fill="currentColor" class="bi bi-skip-end-btn" viewBox="0 0 16 16" id="skip-end-btn" xmlns="http://www.w3.org/2000/svg"><path d="M6.79 5.093L9.5 7.028V5.5a.5.5 0 011 0v5a.5.5 0 01-1 0V8.972l-2.71 1.935A.5.5 0 016 10.5v-5a.5.5 0 01.79-.407z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-skip-end-btn-fill" viewBox="0 0 16 16" id="skip-end-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm6.79-6.907A.5.5 0 006 5.5v5a.5.5 0 00.79.407L9.5 8.972V10.5a.5.5 0 001 0v-5a.5.5 0 00-1 0v1.528L6.79 5.093z"/></symbol><symbol fill="currentColor" class="bi bi-skip-end-circle" viewBox="0 0 16 16" id="skip-end-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M6.271 5.055a.5.5 0 01.52.038L9.5 7.028V5.5a.5.5 0 011 0v5a.5.5 0 01-1 0V8.972l-2.71 1.935A.5.5 0 016 10.5v-5a.5.5 0 01.271-.445z"/></symbol><symbol fill="currentColor" class="bi bi-skip-end-circle-fill" viewBox="0 0 16 16" id="skip-end-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM6.79 5.093A.5.5 0 006 5.5v5a.5.5 0 00.79.407L9.5 8.972V10.5a.5.5 0 001 0v-5a.5.5 0 00-1 0v1.528L6.79 5.093z"/></symbol><symbol fill="currentColor" class="bi bi-skip-end-fill" viewBox="0 0 16 16" id="skip-end-fill" xmlns="http://www.w3.org/2000/svg"><path d="M12.5 4a.5.5 0 00-1 0v3.248L5.233 3.612C4.693 3.3 4 3.678 4 4.308v7.384c0 .63.692 1.01 1.233.697L11.5 8.753V12a.5.5 0 001 0V4z"/></symbol><symbol fill="currentColor" class="bi bi-skip-forward" viewBox="0 0 16 16" id="skip-forward" xmlns="http://www.w3.org/2000/svg"><path d="M15.5 3.5a.5.5 0 01.5.5v8a.5.5 0 01-1 0V8.752l-6.267 3.636c-.52.302-1.233-.043-1.233-.696v-2.94l-6.267 3.636C.713 12.69 0 12.345 0 11.692V4.308c0-.653.713-.998 1.233-.696L7.5 7.248v-2.94c0-.653.713-.998 1.233-.696L15 7.248V4a.5.5 0 01.5-.5zM1 4.633v6.734L6.804 8 1 4.633zm7.5 0v6.734L14.304 8 8.5 4.633z"/></symbol><symbol fill="currentColor" class="bi bi-skip-forward-btn" viewBox="0 0 16 16" id="skip-forward-btn" xmlns="http://www.w3.org/2000/svg"><path d="M4.79 5.093A.5.5 0 004 5.5v5a.5.5 0 00.79.407L7.5 8.972V10.5a.5.5 0 00.79.407L11 8.972V10.5a.5.5 0 001 0v-5a.5.5 0 00-1 0v1.528L8.29 5.093a.5.5 0 00-.79.407v1.528L4.79 5.093z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-skip-forward-btn-fill" viewBox="0 0 16 16" id="skip-forward-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 10V2a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm4.79-6.907A.5.5 0 004 3.5v5a.5.5 0 00.79.407L7.5 6.972V8.5a.5.5 0 00.79.407L11 6.972V8.5a.5.5 0 001 0v-5a.5.5 0 00-1 0v1.528L8.29 3.093a.5.5 0 00-.79.407v1.528L4.79 3.093z"/></symbol><symbol fill="currentColor" class="bi bi-skip-forward-circle" viewBox="0 0 16 16" id="skip-forward-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4.271 5.055a.5.5 0 01.52.038L7.5 7.028V5.5a.5.5 0 01.79-.407L11 7.028V5.5a.5.5 0 011 0v5a.5.5 0 01-1 0V8.972l-2.71 1.935a.5.5 0 01-.79-.407V8.972l-2.71 1.935A.5.5 0 014 10.5v-5a.5.5 0 01.271-.445z"/></symbol><symbol fill="currentColor" class="bi bi-skip-forward-circle-fill" viewBox="0 0 16 16" id="skip-forward-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM4.79 5.093A.5.5 0 004 5.5v5a.5.5 0 00.79.407L7.5 8.972V10.5a.5.5 0 00.79.407L11 8.972V10.5a.5.5 0 001 0v-5a.5.5 0 00-1 0v1.528L8.29 5.093a.5.5 0 00-.79.407v1.528L4.79 5.093z"/></symbol><symbol fill="currentColor" class="bi bi-skip-forward-fill" viewBox="0 0 16 16" id="skip-forward-fill" xmlns="http://www.w3.org/2000/svg"><path d="M15.5 3.5a.5.5 0 01.5.5v8a.5.5 0 01-1 0V8.753l-6.267 3.636c-.54.313-1.233-.066-1.233-.697v-2.94l-6.267 3.636C.693 12.703 0 12.324 0 11.693V4.308c0-.63.693-1.01 1.233-.696L7.5 7.248v-2.94c0-.63.693-1.01 1.233-.696L15 7.248V4a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-skip-start" viewBox="0 0 16 16" id="skip-start" xmlns="http://www.w3.org/2000/svg"><path d="M4 4a.5.5 0 011 0v3.248l6.267-3.636c.52-.302 1.233.043 1.233.696v7.384c0 .653-.713.998-1.233.696L5 8.752V12a.5.5 0 01-1 0V4zm7.5.633L5.696 8l5.804 3.367V4.633z"/></symbol><symbol fill="currentColor" class="bi bi-skip-start-btn" viewBox="0 0 16 16" id="skip-start-btn" xmlns="http://www.w3.org/2000/svg"><path d="M9.71 5.093a.5.5 0 01.79.407v5a.5.5 0 01-.79.407L7 8.972V10.5a.5.5 0 01-1 0v-5a.5.5 0 011 0v1.528l2.71-1.935z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-skip-start-btn-fill" viewBox="0 0 16 16" id="skip-start-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm9.71-6.907L7 7.028V5.5a.5.5 0 00-1 0v5a.5.5 0 001 0V8.972l2.71 1.935a.5.5 0 00.79-.407v-5a.5.5 0 00-.79-.407z"/></symbol><symbol fill="currentColor" class="bi bi-skip-start-circle" viewBox="0 0 16 16" id="skip-start-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M10.229 5.055a.5.5 0 00-.52.038L7 7.028V5.5a.5.5 0 00-1 0v5a.5.5 0 001 0V8.972l2.71 1.935a.5.5 0 00.79-.407v-5a.5.5 0 00-.271-.445z"/></symbol><symbol fill="currentColor" class="bi bi-skip-start-circle-fill" viewBox="0 0 16 16" id="skip-start-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM9.71 5.093L7 7.028V5.5a.5.5 0 00-1 0v5a.5.5 0 001 0V8.972l2.71 1.935a.5.5 0 00.79-.407v-5a.5.5 0 00-.79-.407z"/></symbol><symbol fill="currentColor" class="bi bi-skip-start-fill" viewBox="0 0 16 16" id="skip-start-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 4a.5.5 0 011 0v3.248l6.267-3.636c.54-.313 1.232.066 1.232.696v7.384c0 .63-.692 1.01-1.232.697L5 8.753V12a.5.5 0 01-1 0V4z"/></symbol><symbol fill="currentColor" class="bi bi-skype" viewBox="0 0 16 16" id="skype" xmlns="http://www.w3.org/2000/svg"><path d="M4.671 0c.88 0 1.733.247 2.468.702a7.423 7.423 0 016.02 2.118 7.372 7.372 0 012.167 5.215c0 .344-.024.687-.072 1.026a4.662 4.662 0 01.6 2.281 4.645 4.645 0 01-1.37 3.294A4.673 4.673 0 0111.18 16c-.84 0-1.658-.226-2.37-.644a7.423 7.423 0 01-6.114-2.107A7.374 7.374 0 01.529 8.035c0-.363.026-.724.08-1.081a4.644 4.644 0 01.76-5.59A4.68 4.68 0 014.67 0zm.447 7.01c.18.309.43.572.729.769a7.07 7.07 0 001.257.653c.492.205.873.38 1.145.523.229.112.437.264.615.448.135.142.21.331.21.528a.872.872 0 01-.335.723c-.291.196-.64.289-.99.264a2.618 2.618 0 01-1.048-.206 11.44 11.44 0 01-.532-.253 1.284 1.284 0 00-.587-.15.717.717 0 00-.501.176.63.63 0 00-.195.491.796.796 0 00.148.482 1.2 1.2 0 00.456.354 5.113 5.113 0 002.212.419 4.554 4.554 0 001.624-.265 2.296 2.296 0 001.08-.801c.267-.39.402-.855.386-1.327a2.09 2.09 0 00-.279-1.101 2.53 2.53 0 00-.772-.792A7.198 7.198 0 008.486 7.3a1.05 1.05 0 00-.145-.058 18.182 18.182 0 01-1.013-.447 1.827 1.827 0 01-.54-.387.727.727 0 01-.2-.508.805.805 0 01.385-.723 1.76 1.76 0 01.968-.247c.26-.003.52.03.772.096.274.079.542.177.802.293.105.049.22.075.336.076a.6.6 0 00.453-.19.69.69 0 00.18-.496.717.717 0 00-.17-.476 1.374 1.374 0 00-.556-.354 3.69 3.69 0 00-.708-.183 5.963 5.963 0 00-1.022-.078 4.53 4.53 0 00-1.536.258 2.71 2.71 0 00-1.174.784 1.91 1.91 0 00-.45 1.287c-.01.37.076.736.25 1.063z"/></symbol><symbol fill="currentColor" class="bi bi-slack" viewBox="0 0 16 16" id="slack" xmlns="http://www.w3.org/2000/svg"><path d="M3.362 10.11c0 .926-.756 1.681-1.681 1.681S0 11.036 0 10.111C0 9.186.756 8.43 1.68 8.43h1.682v1.68zm.846 0c0-.924.756-1.68 1.681-1.68s1.681.756 1.681 1.68v4.21c0 .924-.756 1.68-1.68 1.68a1.685 1.685 0 01-1.682-1.68v-4.21zM5.89 3.362c-.926 0-1.682-.756-1.682-1.681S4.964 0 5.89 0s1.68.756 1.68 1.68v1.682H5.89zm0 .846c.924 0 1.68.756 1.68 1.681S6.814 7.57 5.89 7.57H1.68C.757 7.57 0 6.814 0 5.89c0-.926.756-1.682 1.68-1.682h4.21zm6.749 1.682c0-.926.755-1.682 1.68-1.682.925 0 1.681.756 1.681 1.681s-.756 1.681-1.68 1.681h-1.681V5.89zm-.848 0c0 .924-.755 1.68-1.68 1.68A1.685 1.685 0 018.43 5.89V1.68C8.43.757 9.186 0 10.11 0c.926 0 1.681.756 1.681 1.68v4.21zm-1.681 6.748c.926 0 1.682.756 1.682 1.681S11.036 16 10.11 16s-1.681-.756-1.681-1.68v-1.682h1.68zm0-.847c-.924 0-1.68-.755-1.68-1.68 0-.925.756-1.681 1.68-1.681h4.21c.924 0 1.68.756 1.68 1.68 0 .926-.756 1.681-1.68 1.681h-4.21z"/></symbol><symbol fill="currentColor" class="bi bi-slash" viewBox="0 0 16 16" id="slash" xmlns="http://www.w3.org/2000/svg"><path d="M11.354 4.646a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708l6-6a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-slash-circle" viewBox="0 0 16 16" id="slash-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M11.354 4.646a.5.5 0 00-.708 0l-6 6a.5.5 0 00.708.708l6-6a.5.5 0 000-.708z"/></symbol><symbol fill="currentColor" class="bi bi-slash-circle-fill" viewBox="0 0 16 16" id="slash-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zm-4.646-2.646a.5.5 0 00-.708-.708l-6 6a.5.5 0 00.708.708l6-6z"/></symbol><symbol fill="currentColor" class="bi bi-slash-lg" viewBox="0 0 16 16" id="slash-lg" xmlns="http://www.w3.org/2000/svg"><path d="M14.707 1.293a1 1 0 010 1.414l-12 12a1 1 0 01-1.414-1.414l12-12a1 1 0 011.414 0z"/></symbol><symbol fill="currentColor" class="bi bi-slash-square" viewBox="0 0 16 16" id="slash-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M11.354 4.646a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708l6-6a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-slash-square-fill" viewBox="0 0 16 16" id="slash-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm9.354 5.354l-6 6a.5.5 0 01-.708-.708l6-6a.5.5 0 01.708.708z"/></symbol><symbol fill="currentColor" class="bi bi-sliders" viewBox="0 0 16 16" id="sliders" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11.5 2a1.5 1.5 0 100 3 1.5 1.5 0 000-3zM9.05 3a2.5 2.5 0 014.9 0H16v1h-2.05a2.5 2.5 0 01-4.9 0H0V3h9.05zM4.5 7a1.5 1.5 0 100 3 1.5 1.5 0 000-3zM2.05 8a2.5 2.5 0 014.9 0H16v1H6.95a2.5 2.5 0 01-4.9 0H0V8h2.05zm9.45 4a1.5 1.5 0 100 3 1.5 1.5 0 000-3zm-2.45 1a2.5 2.5 0 014.9 0H16v1h-2.05a2.5 2.5 0 01-4.9 0H0v-1h9.05z"/></symbol><symbol fill="currentColor" class="bi bi-smartwatch" viewBox="0 0 16 16" id="smartwatch" xmlns="http://www.w3.org/2000/svg"><path d="M9 5a.5.5 0 00-1 0v3H6a.5.5 0 000 1h2.5a.5.5 0 00.5-.5V5z"/><path d="M4 1.667v.383A2.5 2.5 0 002 4.5v7a2.5 2.5 0 002 2.45v.383C4 15.253 4.746 16 5.667 16h4.666c.92 0 1.667-.746 1.667-1.667v-.383a2.5 2.5 0 002-2.45V8h.5a.5.5 0 00.5-.5v-2a.5.5 0 00-.5-.5H14v-.5a2.5 2.5 0 00-2-2.45v-.383C12 .747 11.254 0 10.333 0H5.667C4.747 0 4 .746 4 1.667zM4.5 3h7A1.5 1.5 0 0113 4.5v7a1.5 1.5 0 01-1.5 1.5h-7A1.5 1.5 0 013 11.5v-7A1.5 1.5 0 014.5 3z"/></symbol><symbol fill="currentColor" class="bi bi-snow" viewBox="0 0 16 16" id="snow" xmlns="http://www.w3.org/2000/svg"><path d="M8 16a.5.5 0 01-.5-.5v-1.293l-.646.647a.5.5 0 01-.707-.708L7.5 12.793V8.866l-3.4 1.963-.496 1.85a.5.5 0 11-.966-.26l.237-.882-1.12.646a.5.5 0 01-.5-.866l1.12-.646-.884-.237a.5.5 0 11.26-.966l1.848.495L7 8 3.6 6.037l-1.85.495a.5.5 0 01-.258-.966l.883-.237-1.12-.646a.5.5 0 11.5-.866l1.12.646-.237-.883a.5.5 0 11.966-.258l.495 1.849L7.5 7.134V3.207L6.147 1.854a.5.5 0 11.707-.708l.646.647V.5a.5.5 0 111 0v1.293l.647-.647a.5.5 0 11.707.708L8.5 3.207v3.927l3.4-1.963.496-1.85a.5.5 0 11.966.26l-.236.882 1.12-.646a.5.5 0 01.5.866l-1.12.646.883.237a.5.5 0 11-.26.966l-1.848-.495L9 8l3.4 1.963 1.849-.495a.5.5 0 01.259.966l-.883.237 1.12.646a.5.5 0 01-.5.866l-1.12-.646.236.883a.5.5 0 11-.966.258l-.495-1.849-3.4-1.963v3.927l1.353 1.353a.5.5 0 01-.707.708l-.647-.647V15.5a.5.5 0 01-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-snow2" viewBox="0 0 16 16" id="snow2" xmlns="http://www.w3.org/2000/svg"><path d="M8 16a.5.5 0 01-.5-.5v-1.293l-.646.647a.5.5 0 01-.707-.708L7.5 12.793v-1.086l-.646.647a.5.5 0 01-.707-.708L7.5 10.293V8.866l-1.236.713-.495 1.85a.5.5 0 11-.966-.26l.237-.882-.94.542-.496 1.85a.5.5 0 11-.966-.26l.237-.882-1.12.646a.5.5 0 01-.5-.866l1.12-.646-.884-.237a.5.5 0 11.26-.966l1.848.495.94-.542-.882-.237a.5.5 0 11.258-.966l1.85.495L7 8l-1.236-.713-1.849.495a.5.5 0 11-.258-.966l.883-.237-.94-.542-1.85.495a.5.5 0 01-.258-.966l.883-.237-1.12-.646a.5.5 0 11.5-.866l1.12.646-.237-.883a.5.5 0 01.966-.258l.495 1.849.94.542-.236-.883a.5.5 0 01.966-.258l.495 1.849 1.236.713V5.707L6.147 4.354a.5.5 0 11.707-.708l.646.647V3.207L6.147 1.854a.5.5 0 11.707-.708l.646.647V.5a.5.5 0 011 0v1.293l.647-.647a.5.5 0 11.707.708L8.5 3.207v1.086l.647-.647a.5.5 0 11.707.708L8.5 5.707v1.427l1.236-.713.495-1.85a.5.5 0 11.966.26l-.236.882.94-.542.495-1.85a.5.5 0 11.966.26l-.236.882 1.12-.646a.5.5 0 01.5.866l-1.12.646.883.237a.5.5 0 11-.26.966l-1.848-.495-.94.542.883.237a.5.5 0 11-.26.966l-1.848-.495L9 8l1.236.713 1.849-.495a.5.5 0 01.259.966l-.883.237.94.542 1.849-.495a.5.5 0 01.259.966l-.883.237 1.12.646a.5.5 0 01-.5.866l-1.12-.646.236.883a.5.5 0 11-.966.258l-.495-1.849-.94-.542.236.883a.5.5 0 01-.966.258L9.736 9.58 8.5 8.866v1.427l1.354 1.353a.5.5 0 01-.707.708l-.647-.647v1.086l1.354 1.353a.5.5 0 01-.707.708l-.647-.647V15.5a.5.5 0 01-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-snow3" viewBox="0 0 16 16" id="snow3" xmlns="http://www.w3.org/2000/svg"><path d="M8 7.5a.5.5 0 100 1 .5.5 0 000-1z"/><path d="M8 16a.5.5 0 01-.5-.5v-1.293l-.646.647a.5.5 0 01-.707-.708L7.5 12.793v-1.51l-2.053-1.232-1.348.778-.495 1.85a.5.5 0 11-.966-.26l.237-.882-1.12.646a.5.5 0 01-.5-.866l1.12-.646-.883-.237a.5.5 0 11.258-.966l1.85.495L5 9.155v-2.31l-1.4-.808-1.85.495a.5.5 0 11-.259-.966l.884-.237-1.12-.646a.5.5 0 01.5-.866l1.12.646-.237-.883a.5.5 0 11.966-.258l.495 1.849 1.348.778L7.5 4.717v-1.51L6.147 1.854a.5.5 0 11.707-.708l.646.647V.5a.5.5 0 011 0v1.293l.647-.647a.5.5 0 11.707.708L8.5 3.207v1.51l2.053 1.232 1.348-.778.495-1.85a.5.5 0 11.966.26l-.236.882 1.12-.646a.5.5 0 01.5.866l-1.12.646.883.237a.5.5 0 11-.26.966l-1.848-.495-1.4.808v2.31l1.4.808 1.849-.495a.5.5 0 11.259.966l-.883.237 1.12.646a.5.5 0 01-.5.866l-1.12-.646.236.883a.5.5 0 11-.966.258l-.495-1.849-1.348-.778L8.5 11.283v1.51l1.354 1.353a.5.5 0 01-.707.708l-.647-.647V15.5a.5.5 0 01-.5.5zm2-6.783V6.783l-2-1.2-2 1.2v2.434l2 1.2 2-1.2z"/></symbol><symbol fill="currentColor" class="bi bi-sort-alpha-down" viewBox="0 0 16 16" id="sort-alpha-down" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.082 5.629L9.664 7H8.598l1.789-5.332h1.234L13.402 7h-1.12l-.419-1.371h-1.781zm1.57-.785L11 2.687h-.047l-.652 2.157h1.351z"/><path d="M12.96 14H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645V14zM4.5 2.5a.5.5 0 00-1 0v9.793l-1.146-1.147a.5.5 0 00-.708.708l2 1.999.007.007a.497.497 0 00.7-.006l2-2a.5.5 0 00-.707-.708L4.5 12.293V2.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-alpha-down-alt" viewBox="0 0 16 16" id="sort-alpha-down-alt" xmlns="http://www.w3.org/2000/svg"><path d="M12.96 7H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645V7z"/><path fill-rule="evenodd" d="M10.082 12.629L9.664 14H8.598l1.789-5.332h1.234L13.402 14h-1.12l-.419-1.371h-1.781zm1.57-.785L11 9.688h-.047l-.652 2.156h1.351z"/><path d="M4.5 2.5a.5.5 0 00-1 0v9.793l-1.146-1.147a.5.5 0 00-.708.708l2 1.999.007.007a.497.497 0 00.7-.006l2-2a.5.5 0 00-.707-.708L4.5 12.293V2.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-alpha-up" viewBox="0 0 16 16" id="sort-alpha-up" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.082 5.629L9.664 7H8.598l1.789-5.332h1.234L13.402 7h-1.12l-.419-1.371h-1.781zm1.57-.785L11 2.687h-.047l-.652 2.157h1.351z"/><path d="M12.96 14H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645V14zm-8.46-.5a.5.5 0 01-1 0V3.707L2.354 4.854a.5.5 0 11-.708-.708l2-1.999.007-.007a.498.498 0 01.7.006l2 2a.5.5 0 11-.707.708L4.5 3.707V13.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-alpha-up-alt" viewBox="0 0 16 16" id="sort-alpha-up-alt" xmlns="http://www.w3.org/2000/svg"><path d="M12.96 7H9.028v-.691l2.579-3.72v-.054H9.098v-.867h3.785v.691l-2.567 3.72v.054h2.645V7z"/><path fill-rule="evenodd" d="M10.082 12.629L9.664 14H8.598l1.789-5.332h1.234L13.402 14h-1.12l-.419-1.371h-1.781zm1.57-.785L11 9.688h-.047l-.652 2.156h1.351z"/><path d="M4.5 13.5a.5.5 0 01-1 0V3.707L2.354 4.854a.5.5 0 11-.708-.708l2-1.999.007-.007a.498.498 0 01.7.006l2 2a.5.5 0 11-.707.708L4.5 3.707V13.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-down" viewBox="0 0 16 16" id="sort-down" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 2.5a.5.5 0 00-1 0v8.793l-1.146-1.147a.5.5 0 00-.708.708l2 1.999.007.007a.497.497 0 00.7-.006l2-2a.5.5 0 00-.707-.708L3.5 11.293V2.5zm3.5 1a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zM7.5 6a.5.5 0 000 1h5a.5.5 0 000-1h-5zm0 3a.5.5 0 000 1h3a.5.5 0 000-1h-3zm0 3a.5.5 0 000 1h1a.5.5 0 000-1h-1z"/></symbol><symbol fill="currentColor" class="bi bi-sort-down-alt" viewBox="0 0 16 16" id="sort-down-alt" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 3.5a.5.5 0 00-1 0v8.793l-1.146-1.147a.5.5 0 00-.708.708l2 1.999.007.007a.497.497 0 00.7-.006l2-2a.5.5 0 00-.707-.708L3.5 12.293V3.5zm4 .5a.5.5 0 010-1h1a.5.5 0 010 1h-1zm0 3a.5.5 0 010-1h3a.5.5 0 010 1h-3zm0 3a.5.5 0 010-1h5a.5.5 0 010 1h-5zM7 12.5a.5.5 0 00.5.5h7a.5.5 0 000-1h-7a.5.5 0 00-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-numeric-down" viewBox="0 0 16 16" id="sort-numeric-down" xmlns="http://www.w3.org/2000/svg"><path d="M12.438 1.668V7H11.39V2.684h-.051l-1.211.859v-.969l1.262-.906h1.046z"/><path fill-rule="evenodd" d="M11.36 14.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.835 1.973-1.835 1.09 0 2.063.636 2.063 2.687 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98z"/><path d="M4.5 2.5a.5.5 0 00-1 0v9.793l-1.146-1.147a.5.5 0 00-.708.708l2 1.999.007.007a.497.497 0 00.7-.006l2-2a.5.5 0 00-.707-.708L4.5 12.293V2.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-numeric-down-alt" viewBox="0 0 16 16" id="sort-numeric-down-alt" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11.36 7.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.836 1.973-1.836 1.09 0 2.063.637 2.063 2.688 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98z"/><path d="M12.438 8.668V14H11.39V9.684h-.051l-1.211.859v-.969l1.262-.906h1.046zM4.5 2.5a.5.5 0 00-1 0v9.793l-1.146-1.147a.5.5 0 00-.708.708l2 1.999.007.007a.497.497 0 00.7-.006l2-2a.5.5 0 00-.707-.708L4.5 12.293V2.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-numeric-up" viewBox="0 0 16 16" id="sort-numeric-up" xmlns="http://www.w3.org/2000/svg"><path d="M12.438 1.668V7H11.39V2.684h-.051l-1.211.859v-.969l1.262-.906h1.046z"/><path fill-rule="evenodd" d="M11.36 14.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.835 1.973-1.835 1.09 0 2.063.636 2.063 2.687 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98z"/><path d="M4.5 13.5a.5.5 0 01-1 0V3.707L2.354 4.854a.5.5 0 11-.708-.708l2-1.999.007-.007a.498.498 0 01.7.006l2 2a.5.5 0 11-.707.708L4.5 3.707V13.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-numeric-up-alt" viewBox="0 0 16 16" id="sort-numeric-up-alt" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M11.36 7.098c-1.137 0-1.708-.657-1.762-1.278h1.004c.058.223.343.45.773.45.824 0 1.164-.829 1.133-1.856h-.059c-.148.39-.57.742-1.261.742-.91 0-1.72-.613-1.72-1.758 0-1.148.848-1.836 1.973-1.836 1.09 0 2.063.637 2.063 2.688 0 1.867-.723 2.848-2.145 2.848zm.062-2.735c.504 0 .933-.336.933-.972 0-.633-.398-1.008-.94-1.008-.52 0-.927.375-.927 1 0 .64.418.98.934.98z"/><path d="M12.438 8.668V14H11.39V9.684h-.051l-1.211.859v-.969l1.262-.906h1.046zM4.5 13.5a.5.5 0 01-1 0V3.707L2.354 4.854a.5.5 0 11-.708-.708l2-1.999.007-.007a.498.498 0 01.7.006l2 2a.5.5 0 11-.707.708L4.5 3.707V13.5z"/></symbol><symbol fill="currentColor" class="bi bi-sort-up" viewBox="0 0 16 16" id="sort-up" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 12.5a.5.5 0 01-1 0V3.707L1.354 4.854a.5.5 0 11-.708-.708l2-1.999.007-.007a.498.498 0 01.7.006l2 2a.5.5 0 11-.707.708L3.5 3.707V12.5zm3.5-9a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zM7.5 6a.5.5 0 000 1h5a.5.5 0 000-1h-5zm0 3a.5.5 0 000 1h3a.5.5 0 000-1h-3zm0 3a.5.5 0 000 1h1a.5.5 0 000-1h-1z"/></symbol><symbol fill="currentColor" class="bi bi-sort-up-alt" viewBox="0 0 16 16" id="sort-up-alt" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 13.5a.5.5 0 01-1 0V4.707L1.354 5.854a.5.5 0 11-.708-.708l2-1.999.007-.007a.498.498 0 01.7.006l2 2a.5.5 0 11-.707.708L3.5 4.707V13.5zm4-9.5a.5.5 0 010-1h1a.5.5 0 010 1h-1zm0 3a.5.5 0 010-1h3a.5.5 0 010 1h-3zm0 3a.5.5 0 010-1h5a.5.5 0 010 1h-5zM7 12.5a.5.5 0 00.5.5h7a.5.5 0 000-1h-7a.5.5 0 00-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-soundwave" viewBox="0 0 16 16" id="soundwave" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8.5 2a.5.5 0 01.5.5v11a.5.5 0 01-1 0v-11a.5.5 0 01.5-.5zm-2 2a.5.5 0 01.5.5v7a.5.5 0 01-1 0v-7a.5.5 0 01.5-.5zm4 0a.5.5 0 01.5.5v7a.5.5 0 01-1 0v-7a.5.5 0 01.5-.5zm-6 1.5A.5.5 0 015 6v4a.5.5 0 01-1 0V6a.5.5 0 01.5-.5zm8 0a.5.5 0 01.5.5v4a.5.5 0 01-1 0V6a.5.5 0 01.5-.5zm-10 1A.5.5 0 013 7v2a.5.5 0 01-1 0V7a.5.5 0 01.5-.5zm12 0a.5.5 0 01.5.5v2a.5.5 0 01-1 0V7a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-speaker" viewBox="0 0 16 16" id="speaker" xmlns="http://www.w3.org/2000/svg"><path d="M12 1a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h8zM4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4z"/><path d="M8 4.75a.75.75 0 110-1.5.75.75 0 010 1.5zM8 6a2 2 0 100-4 2 2 0 000 4zm0 3a1.5 1.5 0 100 3 1.5 1.5 0 000-3zm-3.5 1.5a3.5 3.5 0 117 0 3.5 3.5 0 01-7 0z"/></symbol><symbol fill="currentColor" class="bi bi-speaker-fill" viewBox="0 0 16 16" id="speaker-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9 4a1 1 0 11-2 0 1 1 0 012 0zm-2.5 6.5a1.5 1.5 0 113 0 1.5 1.5 0 01-3 0z"/><path d="M4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4zm6 4a2 2 0 11-4 0 2 2 0 014 0zM8 7a3.5 3.5 0 110 7 3.5 3.5 0 010-7z"/></symbol><symbol fill="currentColor" class="bi bi-speedometer" viewBox="0 0 16 16" id="speedometer" xmlns="http://www.w3.org/2000/svg"><path d="M8 2a.5.5 0 01.5.5V4a.5.5 0 01-1 0V2.5A.5.5 0 018 2zM3.732 3.732a.5.5 0 01.707 0l.915.914a.5.5 0 11-.708.708l-.914-.915a.5.5 0 010-.707zM2 8a.5.5 0 01.5-.5h1.586a.5.5 0 010 1H2.5A.5.5 0 012 8zm9.5 0a.5.5 0 01.5-.5h1.5a.5.5 0 010 1H12a.5.5 0 01-.5-.5zm.754-4.246a.389.389 0 00-.527-.02L7.547 7.31A.91.91 0 108.85 8.569l3.434-4.297a.389.389 0 00-.029-.518z"/><path fill-rule="evenodd" d="M6.664 15.889A8 8 0 119.336.11a8 8 0 01-2.672 15.78zm-4.665-4.283A11.945 11.945 0 018 10c2.186 0 4.236.585 6.001 1.606a7 7 0 10-12.002 0z"/></symbol><symbol fill="currentColor" class="bi bi-speedometer2" viewBox="0 0 16 16" id="speedometer2" xmlns="http://www.w3.org/2000/svg"><path d="M8 4a.5.5 0 01.5.5V6a.5.5 0 01-1 0V4.5A.5.5 0 018 4zM3.732 5.732a.5.5 0 01.707 0l.915.914a.5.5 0 11-.708.708l-.914-.915a.5.5 0 010-.707zM2 10a.5.5 0 01.5-.5h1.586a.5.5 0 010 1H2.5A.5.5 0 012 10zm9.5 0a.5.5 0 01.5-.5h1.5a.5.5 0 010 1H12a.5.5 0 01-.5-.5zm.754-4.246a.389.389 0 00-.527-.02L7.547 9.31a.91.91 0 101.302 1.258l3.434-4.297a.389.389 0 00-.029-.518z"/><path fill-rule="evenodd" d="M0 10a8 8 0 1115.547 2.661c-.442 1.253-1.845 1.602-2.932 1.25C11.309 13.488 9.475 13 8 13c-1.474 0-3.31.488-4.615.911-1.087.352-2.49.003-2.932-1.25A7.988 7.988 0 010 10zm8-7a7 7 0 00-6.603 9.329c.203.575.923.876 1.68.63C4.397 12.533 6.358 12 8 12s3.604.532 4.923.96c.757.245 1.477-.056 1.68-.631A7 7 0 008 3z"/></symbol><symbol fill="currentColor" class="bi bi-spellcheck" viewBox="0 0 16 16" id="spellcheck" xmlns="http://www.w3.org/2000/svg"><path d="M8.217 11.068c1.216 0 1.948-.869 1.948-2.31v-.702c0-1.44-.727-2.305-1.929-2.305-.742 0-1.328.347-1.499.889h-.063V3.983h-1.29V11h1.27v-.791h.064c.21.532.776.86 1.499.86zm-.43-1.025c-.66 0-1.113-.518-1.113-1.28V8.12c0-.825.42-1.343 1.098-1.343.684 0 1.075.518 1.075 1.416v.45c0 .888-.386 1.401-1.06 1.401zm-5.583 1.035c.767 0 1.201-.356 1.406-.737h.059V11h1.216V7.519c0-1.314-.947-1.783-2.11-1.783C1.355 5.736.75 6.42.69 7.27h1.216c.064-.323.313-.552.84-.552.527 0 .864.249.864.771v.464H2.346C1.145 7.953.5 8.568.5 9.496c0 .977.693 1.582 1.704 1.582zm.42-.947c-.44 0-.845-.235-.845-.718 0-.395.269-.684.84-.684h.991v.538c0 .503-.444.864-.986.864zm8.897.567c-.577-.4-.9-1.088-.9-1.983v-.65c0-1.42.894-2.338 2.305-2.338 1.352 0 2.119.82 2.139 1.806h-1.187c-.04-.351-.283-.776-.918-.776-.674 0-1.045.517-1.045 1.328v.625c0 .468.121.834.343 1.067l-.737.92z"/><path d="M14.469 9.414a.75.75 0 01.117 1.055l-4 5a.75.75 0 01-1.116.061l-2.5-2.5a.75.75 0 111.06-1.06l1.908 1.907 3.476-4.346a.75.75 0 011.055-.117z"/></symbol><symbol fill="currentColor" class="bi bi-square" viewBox="0 0 16 16" id="square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/></symbol><symbol fill="currentColor" class="bi bi-square-fill" viewBox="0 0 16 16" id="square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2z"/></symbol><symbol fill="currentColor" class="bi bi-square-half" viewBox="0 0 16 16" id="square-half" xmlns="http://www.w3.org/2000/svg"><path d="M8 15V1h6a1 1 0 011 1v12a1 1 0 01-1 1H8zm6 1a2 2 0 002-2V2a2 2 0 00-2-2H2a2 2 0 00-2 2v12a2 2 0 002 2h12z"/></symbol><symbol fill="currentColor" class="bi bi-stack" viewBox="0 0 16 16" id="stack" xmlns="http://www.w3.org/2000/svg"><path d="M14.12 10.163l1.715.858c.22.11.22.424 0 .534L8.267 15.34a.598.598 0 01-.534 0L.165 11.555a.299.299 0 010-.534l1.716-.858 5.317 2.659c.505.252 1.1.252 1.604 0l5.317-2.66zM7.733.063a.598.598 0 01.534 0l7.568 3.784a.3.3 0 010 .535L8.267 8.165a.598.598 0 01-.534 0L.165 4.382a.299.299 0 010-.535L7.733.063z"/><path d="M14.12 6.576l1.715.858c.22.11.22.424 0 .534l-7.568 3.784a.598.598 0 01-.534 0L.165 7.968a.299.299 0 010-.534l1.716-.858 5.317 2.659c.505.252 1.1.252 1.604 0l5.317-2.659z"/></symbol><symbol fill="currentColor" class="bi bi-star" viewBox="0 0 16 16" id="star" xmlns="http://www.w3.org/2000/svg"><path d="M2.866 14.85c-.078.444.36.791.746.593l4.39-2.256 4.389 2.256c.386.198.824-.149.746-.592l-.83-4.73 3.522-3.356c.33-.314.16-.888-.282-.95l-4.898-.696L8.465.792a.513.513 0 00-.927 0L5.354 5.12l-4.898.696c-.441.062-.612.636-.283.95l3.523 3.356-.83 4.73zm4.905-2.767l-3.686 1.894.694-3.957a.565.565 0 00-.163-.505L1.71 6.745l4.052-.576a.525.525 0 00.393-.288L8 2.223l1.847 3.658a.525.525 0 00.393.288l4.052.575-2.906 2.77a.565.565 0 00-.163.506l.694 3.957-3.686-1.894a.503.503 0 00-.461 0z"/></symbol><symbol fill="currentColor" class="bi bi-star-fill" viewBox="0 0 16 16" id="star-fill" xmlns="http://www.w3.org/2000/svg"><path d="M3.612 15.443c-.386.198-.824-.149-.746-.592l.83-4.73L.173 6.765c-.329-.314-.158-.888.283-.95l4.898-.696L7.538.792c.197-.39.73-.39.927 0l2.184 4.327 4.898.696c.441.062.612.636.282.95l-3.522 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256z"/></symbol><symbol fill="currentColor" class="bi bi-star-half" viewBox="0 0 16 16" id="star-half" xmlns="http://www.w3.org/2000/svg"><path d="M5.354 5.119L7.538.792A.516.516 0 018 .5c.183 0 .366.097.465.292l2.184 4.327 4.898.696A.537.537 0 0116 6.32a.548.548 0 01-.17.445l-3.523 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256a.52.52 0 01-.146.05c-.342.06-.668-.254-.6-.642l.83-4.73L.173 6.765a.55.55 0 01-.172-.403.58.58 0 01.085-.302.513.513 0 01.37-.245l4.898-.696zM8 12.027a.5.5 0 01.232.056l3.686 1.894-.694-3.957a.565.565 0 01.162-.505l2.907-2.77-4.052-.576a.525.525 0 01-.393-.288L8.001 2.223 8 2.226v9.8z"/></symbol><symbol fill="currentColor" class="bi bi-stars" viewBox="0 0 16 16" id="stars" xmlns="http://www.w3.org/2000/svg"><path d="M7.657 6.247c.11-.33.576-.33.686 0l.645 1.937a2.89 2.89 0 001.829 1.828l1.936.645c.33.11.33.576 0 .686l-1.937.645a2.89 2.89 0 00-1.828 1.829l-.645 1.936a.361.361 0 01-.686 0l-.645-1.937a2.89 2.89 0 00-1.828-1.828l-1.937-.645a.361.361 0 010-.686l1.937-.645a2.89 2.89 0 001.828-1.828l.645-1.937zM3.794 1.148a.217.217 0 01.412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 010 .412l-1.162.387A1.734 1.734 0 004.593 5.69l-.387 1.162a.217.217 0 01-.412 0L3.407 5.69A1.734 1.734 0 002.31 4.593l-1.162-.387a.217.217 0 010-.412l1.162-.387A1.734 1.734 0 003.407 2.31l.387-1.162zM10.863.099a.145.145 0 01.274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 010 .274l-.774.258a1.156 1.156 0 00-.732.732l-.258.774a.145.145 0 01-.274 0l-.258-.774a1.156 1.156 0 00-.732-.732L9.1 2.137a.145.145 0 010-.274l.774-.258c.346-.115.617-.386.732-.732L10.863.1z"/></symbol><symbol fill="currentColor" class="bi bi-stickies" viewBox="0 0 16 16" id="stickies" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 0A1.5 1.5 0 000 1.5V13a1 1 0 001 1V1.5a.5.5 0 01.5-.5H14a1 1 0 00-1-1H1.5z"/><path d="M3.5 2A1.5 1.5 0 002 3.5v11A1.5 1.5 0 003.5 16h6.086a1.5 1.5 0 001.06-.44l4.915-4.914A1.5 1.5 0 0016 9.586V3.5A1.5 1.5 0 0014.5 2h-11zM3 3.5a.5.5 0 01.5-.5h11a.5.5 0 01.5.5V9h-4.5A1.5 1.5 0 009 10.5V15H3.5a.5.5 0 01-.5-.5v-11zm7 11.293V10.5a.5.5 0 01.5-.5h4.293L10 14.793z"/></symbol><symbol fill="currentColor" class="bi bi-stickies-fill" viewBox="0 0 16 16" id="stickies-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 1.5V13a1 1 0 001 1V1.5a.5.5 0 01.5-.5H14a1 1 0 00-1-1H1.5A1.5 1.5 0 000 1.5z"/><path d="M3.5 2A1.5 1.5 0 002 3.5v11A1.5 1.5 0 003.5 16h6.086a1.5 1.5 0 001.06-.44l4.915-4.914A1.5 1.5 0 0016 9.586V3.5A1.5 1.5 0 0014.5 2h-11zm6 8.5a1 1 0 011-1h4.396a.25.25 0 01.177.427l-5.146 5.146a.25.25 0 01-.427-.177V10.5z"/></symbol><symbol fill="currentColor" class="bi bi-sticky" viewBox="0 0 16 16" id="sticky" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 1A1.5 1.5 0 001 2.5v11A1.5 1.5 0 002.5 15h6.086a1.5 1.5 0 001.06-.44l4.915-4.914A1.5 1.5 0 0015 8.586V2.5A1.5 1.5 0 0013.5 1h-11zM2 2.5a.5.5 0 01.5-.5h11a.5.5 0 01.5.5V8H9.5A1.5 1.5 0 008 9.5V14H2.5a.5.5 0 01-.5-.5v-11zm7 11.293V9.5a.5.5 0 01.5-.5h4.293L9 13.793z"/></symbol><symbol fill="currentColor" class="bi bi-sticky-fill" viewBox="0 0 16 16" id="sticky-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 1A1.5 1.5 0 001 2.5v11A1.5 1.5 0 002.5 15h6.086a1.5 1.5 0 001.06-.44l4.915-4.914A1.5 1.5 0 0015 8.586V2.5A1.5 1.5 0 0013.5 1h-11zm6 8.5a1 1 0 011-1h4.396a.25.25 0 01.177.427l-5.146 5.146a.25.25 0 01-.427-.177V9.5z"/></symbol><symbol fill="currentColor" class="bi bi-stop" viewBox="0 0 16 16" id="stop" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 5A1.5 1.5 0 015 3.5h6A1.5 1.5 0 0112.5 5v6a1.5 1.5 0 01-1.5 1.5H5A1.5 1.5 0 013.5 11V5zM5 4.5a.5.5 0 00-.5.5v6a.5.5 0 00.5.5h6a.5.5 0 00.5-.5V5a.5.5 0 00-.5-.5H5z"/></symbol><symbol fill="currentColor" class="bi bi-stop-btn" viewBox="0 0 16 16" id="stop-btn" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 5A1.5 1.5 0 005 6.5v3A1.5 1.5 0 006.5 11h3A1.5 1.5 0 0011 9.5v-3A1.5 1.5 0 009.5 5h-3z"/><path d="M0 4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2V4zm15 0a1 1 0 00-1-1H2a1 1 0 00-1 1v8a1 1 0 001 1h12a1 1 0 001-1V4z"/></symbol><symbol fill="currentColor" class="bi bi-stop-btn-fill" viewBox="0 0 16 16" id="stop-btn-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 12V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2a2 2 0 01-2-2zm6.5-7A1.5 1.5 0 005 6.5v3A1.5 1.5 0 006.5 11h3A1.5 1.5 0 0011 9.5v-3A1.5 1.5 0 009.5 5h-3z"/></symbol><symbol fill="currentColor" class="bi bi-stop-circle" viewBox="0 0 16 16" id="stop-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M5 6.5A1.5 1.5 0 016.5 5h3A1.5 1.5 0 0111 6.5v3A1.5 1.5 0 019.5 11h-3A1.5 1.5 0 015 9.5v-3z"/></symbol><symbol fill="currentColor" class="bi bi-stop-circle-fill" viewBox="0 0 16 16" id="stop-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM6.5 5A1.5 1.5 0 005 6.5v3A1.5 1.5 0 006.5 11h3A1.5 1.5 0 0011 9.5v-3A1.5 1.5 0 009.5 5h-3z"/></symbol><symbol fill="currentColor" class="bi bi-stop-fill" viewBox="0 0 16 16" id="stop-fill" xmlns="http://www.w3.org/2000/svg"><path d="M5 3.5h6A1.5 1.5 0 0112.5 5v6a1.5 1.5 0 01-1.5 1.5H5A1.5 1.5 0 013.5 11V5A1.5 1.5 0 015 3.5z"/></symbol><symbol fill="currentColor" class="bi bi-stoplights" viewBox="0 0 16 16" id="stoplights" xmlns="http://www.w3.org/2000/svg"><path d="M8 5a1.5 1.5 0 100-3 1.5 1.5 0 000 3zm0 4a1.5 1.5 0 100-3 1.5 1.5 0 000 3zm1.5 2.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/><path d="M4 2a2 2 0 012-2h4a2 2 0 012 2h2c-.167.5-.8 1.6-2 2v2h2c-.167.5-.8 1.6-2 2v2h2c-.167.5-.8 1.6-2 2v1a2 2 0 01-2 2H6a2 2 0 01-2-2v-1c-1.2-.4-1.833-1.5-2-2h2V8c-1.2-.4-1.833-1.5-2-2h2V4c-1.2-.4-1.833-1.5-2-2h2zm2-1a1 1 0 00-1 1v11a1 1 0 001 1h4a1 1 0 001-1V2a1 1 0 00-1-1H6z"/></symbol><symbol fill="currentColor" class="bi bi-stoplights-fill" viewBox="0 0 16 16" id="stoplights-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 0a2 2 0 00-2 2H2c.167.5.8 1.6 2 2v2H2c.167.5.8 1.6 2 2v2H2c.167.5.8 1.6 2 2v1a2 2 0 002 2h4a2 2 0 002-2v-1c1.2-.4 1.833-1.5 2-2h-2V8c1.2-.4 1.833-1.5 2-2h-2V4c1.2-.4 1.833-1.5 2-2h-2a2 2 0 00-2-2H6zm3.5 3.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0 4a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM8 13a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-stopwatch" viewBox="0 0 16 16" id="stopwatch" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 5.6a.5.5 0 10-1 0v2.9h-3a.5.5 0 000 1H8a.5.5 0 00.5-.5V5.6z"/><path d="M6.5 1A.5.5 0 017 .5h2a.5.5 0 010 1v.57c1.36.196 2.594.78 3.584 1.64a.715.715 0 01.012-.013l.354-.354-.354-.353a.5.5 0 01.707-.708l1.414 1.415a.5.5 0 11-.707.707l-.353-.354-.354.354a.512.512 0 01-.013.012A7 7 0 117 2.071V1.5a.5.5 0 01-.5-.5zM8 3a6 6 0 10.001 12A6 6 0 008 3z"/></symbol><symbol fill="currentColor" class="bi bi-stopwatch-fill" viewBox="0 0 16 16" id="stopwatch-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 0a.5.5 0 000 1H7v1.07A7.001 7.001 0 008 16a7 7 0 005.29-11.584.531.531 0 00.013-.012l.354-.354.353.354a.5.5 0 10.707-.707l-1.414-1.415a.5.5 0 10-.707.707l.354.354-.354.354a.717.717 0 00-.012.012A6.973 6.973 0 009 2.071V1h.5a.5.5 0 000-1h-3zm2 5.6V9a.5.5 0 01-.5.5H4.5a.5.5 0 010-1h3V5.6a.5.5 0 111 0z"/></symbol><symbol fill="currentColor" class="bi bi-subtract" viewBox="0 0 16 16" id="subtract" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h8a2 2 0 012 2v2h2a2 2 0 012 2v8a2 2 0 01-2 2H6a2 2 0 01-2-2v-2H2a2 2 0 01-2-2V2zm2-1a1 1 0 00-1 1v8a1 1 0 001 1h8a1 1 0 001-1V2a1 1 0 00-1-1H2z"/></symbol><symbol fill="currentColor" class="bi bi-suit-club" viewBox="0 0 16 16" id="suit-club" xmlns="http://www.w3.org/2000/svg"><path d="M8 1a3.25 3.25 0 00-3.25 3.25c0 .186 0 .29.016.41.014.12.045.27.12.527l.19.665-.692-.028a3.25 3.25 0 102.357 5.334.5.5 0 01.844.518l-.003.005-.006.015-.024.055a21.893 21.893 0 01-.438.92 22.38 22.38 0 01-1.266 2.197c-.013.018-.02.05.001.09.01.02.021.03.03.036A.036.036 0 005.9 15h4.2c.01 0 .016-.002.022-.006a.092.092 0 00.029-.035c.02-.04.014-.073.001-.091a22.875 22.875 0 01-1.704-3.117l-.024-.054-.006-.015-.002-.004a.5.5 0 01.838-.524c.601.7 1.516 1.168 2.496 1.168a3.25 3.25 0 10-.139-6.498l-.699.03.199-.671c.14-.47.14-.745.139-.927V4.25A3.25 3.25 0 008 1zm2.207 12.024c.225.405.487.848.78 1.294C11.437 15 10.975 16 10.1 16H5.9c-.876 0-1.338-1-.887-1.683.291-.442.552-.88.776-1.283a4.25 4.25 0 11-2.007-8.187 2.79 2.79 0 01-.009-.064c-.023-.187-.023-.348-.023-.52V4.25a4.25 4.25 0 018.5 0c0 .14 0 .333-.04.596a4.25 4.25 0 01-.46 8.476 4.186 4.186 0 01-1.543-.298z"/></symbol><symbol fill="currentColor" class="bi bi-suit-club-fill" viewBox="0 0 16 16" id="suit-club-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.5 12.5a3.493 3.493 0 01-2.684-1.254 19.92 19.92 0 001.582 2.907c.231.35-.02.847-.438.847H6.04c-.419 0-.67-.497-.438-.847a19.919 19.919 0 001.582-2.907 3.5 3.5 0 11-2.538-5.743 3.5 3.5 0 116.708 0A3.5 3.5 0 1111.5 12.5z"/></symbol><symbol fill="currentColor" class="bi bi-suit-diamond" viewBox="0 0 16 16" id="suit-diamond" xmlns="http://www.w3.org/2000/svg"><path d="M8.384 1.226a.463.463 0 00-.768 0l-4.56 6.468a.537.537 0 000 .612l4.56 6.469a.463.463 0 00.768 0l4.56-6.469a.537.537 0 000-.612l-4.56-6.468zM6.848.613a1.39 1.39 0 012.304 0l4.56 6.468a1.61 1.61 0 010 1.838l-4.56 6.468a1.39 1.39 0 01-2.304 0L2.288 8.92a1.61 1.61 0 010-1.838L6.848.613z"/></symbol><symbol fill="currentColor" class="bi bi-suit-diamond-fill" viewBox="0 0 16 16" id="suit-diamond-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.45 7.4L7.2 1.067a1 1 0 011.6 0L13.55 7.4a1 1 0 010 1.2L8.8 14.933a1 1 0 01-1.6 0L2.45 8.6a1 1 0 010-1.2z"/></symbol><symbol fill="currentColor" class="bi bi-suit-heart" viewBox="0 0 16 16" id="suit-heart" xmlns="http://www.w3.org/2000/svg"><path d="M8 6.236l-.894-1.789c-.222-.443-.607-1.08-1.152-1.595C5.418 2.345 4.776 2 4 2 2.324 2 1 3.326 1 4.92c0 1.211.554 2.066 1.868 3.37.337.334.721.695 1.146 1.093C5.122 10.423 6.5 11.717 8 13.447c1.5-1.73 2.878-3.024 3.986-4.064.425-.398.81-.76 1.146-1.093C14.446 6.986 15 6.131 15 4.92 15 3.326 13.676 2 12 2c-.777 0-1.418.345-1.954.852-.545.515-.93 1.152-1.152 1.595L8 6.236zm.392 8.292a.513.513 0 01-.784 0c-1.601-1.902-3.05-3.262-4.243-4.381C1.3 8.208 0 6.989 0 4.92 0 2.755 1.79 1 4 1c1.6 0 2.719 1.05 3.404 2.008.26.365.458.716.596.992a7.55 7.55 0 01.596-.992C9.281 2.049 10.4 1 12 1c2.21 0 4 1.755 4 3.92 0 2.069-1.3 3.288-3.365 5.227-1.193 1.12-2.642 2.48-4.243 4.38z"/></symbol><symbol fill="currentColor" class="bi bi-suit-heart-fill" viewBox="0 0 16 16" id="suit-heart-fill" xmlns="http://www.w3.org/2000/svg"><path d="M4 1c2.21 0 4 1.755 4 3.92C8 2.755 9.79 1 12 1s4 1.755 4 3.92c0 3.263-3.234 4.414-7.608 9.608a.513.513 0 01-.784 0C3.234 9.334 0 8.183 0 4.92 0 2.755 1.79 1 4 1z"/></symbol><symbol fill="currentColor" class="bi bi-suit-spade" viewBox="0 0 16 16" id="suit-spade" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a.5.5 0 01.429.243c1.359 2.265 2.925 3.682 4.25 4.882.096.086.19.17.282.255C14.308 6.604 15.5 7.747 15.5 9.5a4 4 0 01-5.406 3.746c.235.39.491.782.722 1.131.434.659-.01 1.623-.856 1.623H6.04c-.845 0-1.29-.964-.856-1.623.263-.397.51-.777.728-1.134A4 4 0 01.5 9.5c0-1.753 1.192-2.896 2.539-4.12l.281-.255c1.326-1.2 2.892-2.617 4.251-4.882A.5.5 0 018 0zM3.711 6.12C2.308 7.396 1.5 8.253 1.5 9.5a3 3 0 005.275 1.956.5.5 0 01.868.43c-.094.438-.33.932-.611 1.428a29.247 29.247 0 01-1.013 1.614.03.03 0 00-.005.018.074.074 0 00.024.054h3.924a.074.074 0 00.024-.054.03.03 0 00-.005-.018c-.3-.455-.658-1.005-.96-1.535-.294-.514-.57-1.064-.664-1.507a.5.5 0 01.868-.43A3 3 0 0014.5 9.5c0-1.247-.808-2.104-2.211-3.38L12 5.86c-1.196-1.084-2.668-2.416-4-4.424-1.332 2.008-2.804 3.34-4 4.422l-.289.261z"/></symbol><symbol fill="currentColor" class="bi bi-suit-spade-fill" viewBox="0 0 16 16" id="suit-spade-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.184 11.246A3.5 3.5 0 011 9c0-1.602 1.14-2.633 2.66-4.008C4.986 3.792 6.602 2.33 8 0c1.398 2.33 3.014 3.792 4.34 4.992C13.86 6.367 15 7.398 15 9a3.5 3.5 0 01-6.184 2.246 19.92 19.92 0 001.582 2.907c.231.35-.02.847-.438.847H6.04c-.419 0-.67-.497-.438-.847a19.919 19.919 0 001.582-2.907z"/></symbol><symbol fill="currentColor" class="bi bi-sun" viewBox="0 0 16 16" id="sun" xmlns="http://www.w3.org/2000/svg"><path d="M8 11a3 3 0 110-6 3 3 0 010 6zm0 1a4 4 0 100-8 4 4 0 000 8zM8 0a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 0zm0 13a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 13zm8-5a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2a.5.5 0 01.5.5zM3 8a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2A.5.5 0 013 8zm10.657-5.657a.5.5 0 010 .707l-1.414 1.415a.5.5 0 11-.707-.708l1.414-1.414a.5.5 0 01.707 0zm-9.193 9.193a.5.5 0 010 .707L3.05 13.657a.5.5 0 01-.707-.707l1.414-1.414a.5.5 0 01.707 0zm9.193 2.121a.5.5 0 01-.707 0l-1.414-1.414a.5.5 0 01.707-.707l1.414 1.414a.5.5 0 010 .707zM4.464 4.465a.5.5 0 01-.707 0L2.343 3.05a.5.5 0 11.707-.707l1.414 1.414a.5.5 0 010 .708z"/></symbol><symbol fill="currentColor" class="bi bi-sun-fill" viewBox="0 0 16 16" id="sun-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 12a4 4 0 100-8 4 4 0 000 8zM8 0a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 0zm0 13a.5.5 0 01.5.5v2a.5.5 0 01-1 0v-2A.5.5 0 018 13zm8-5a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2a.5.5 0 01.5.5zM3 8a.5.5 0 01-.5.5h-2a.5.5 0 010-1h2A.5.5 0 013 8zm10.657-5.657a.5.5 0 010 .707l-1.414 1.415a.5.5 0 11-.707-.708l1.414-1.414a.5.5 0 01.707 0zm-9.193 9.193a.5.5 0 010 .707L3.05 13.657a.5.5 0 01-.707-.707l1.414-1.414a.5.5 0 01.707 0zm9.193 2.121a.5.5 0 01-.707 0l-1.414-1.414a.5.5 0 01.707-.707l1.414 1.414a.5.5 0 010 .707zM4.464 4.465a.5.5 0 01-.707 0L2.343 3.05a.5.5 0 11.707-.707l1.414 1.414a.5.5 0 010 .708z"/></symbol><symbol fill="currentColor" class="bi bi-sunglasses" viewBox="0 0 16 16" id="sunglasses" xmlns="http://www.w3.org/2000/svg"><path d="M3 5a2 2 0 00-2 2v.5H.5a.5.5 0 000 1H1V9a2 2 0 002 2h1a3 3 0 003-3 1 1 0 112 0 3 3 0 003 3h1a2 2 0 002-2v-.5h.5a.5.5 0 000-1H15V7a2 2 0 00-2-2h-2a2 2 0 00-1.888 1.338A1.99 1.99 0 008 6a1.99 1.99 0 00-1.112.338A2 2 0 005 5H3zm0 1h.941c.264 0 .348.356.112.474l-.457.228a2 2 0 00-.894.894l-.228.457C2.356 8.289 2 8.205 2 7.94V7a1 1 0 011-1z"/></symbol><symbol fill="currentColor" class="bi bi-sunrise" viewBox="0 0 16 16" id="sunrise" xmlns="http://www.w3.org/2000/svg"><path d="M7.646 1.146a.5.5 0 01.708 0l1.5 1.5a.5.5 0 01-.708.708L8.5 2.707V4.5a.5.5 0 01-1 0V2.707l-.646.647a.5.5 0 11-.708-.708l1.5-1.5zM2.343 4.343a.5.5 0 01.707 0l1.414 1.414a.5.5 0 01-.707.707L2.343 5.05a.5.5 0 010-.707zm11.314 0a.5.5 0 010 .707l-1.414 1.414a.5.5 0 11-.707-.707l1.414-1.414a.5.5 0 01.707 0zM8 7a3 3 0 012.599 4.5H5.4A3 3 0 018 7zm3.71 4.5a4 4 0 10-7.418 0H.499a.5.5 0 000 1h15a.5.5 0 000-1h-3.79zM0 10a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2A.5.5 0 010 10zm13 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-sunrise-fill" viewBox="0 0 16 16" id="sunrise-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.646 1.146a.5.5 0 01.708 0l1.5 1.5a.5.5 0 01-.708.708L8.5 2.707V4.5a.5.5 0 01-1 0V2.707l-.646.647a.5.5 0 11-.708-.708l1.5-1.5zM2.343 4.343a.5.5 0 01.707 0l1.414 1.414a.5.5 0 01-.707.707L2.343 5.05a.5.5 0 010-.707zm11.314 0a.5.5 0 010 .707l-1.414 1.414a.5.5 0 11-.707-.707l1.414-1.414a.5.5 0 01.707 0zM11.709 11.5a4 4 0 10-7.418 0H.5a.5.5 0 000 1h15a.5.5 0 000-1h-3.79zM0 10a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2A.5.5 0 010 10zm13 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-sunset" viewBox="0 0 16 16" id="sunset" xmlns="http://www.w3.org/2000/svg"><path d="M7.646 4.854a.5.5 0 00.708 0l1.5-1.5a.5.5 0 00-.708-.708l-.646.647V1.5a.5.5 0 00-1 0v1.793l-.646-.647a.5.5 0 10-.708.708l1.5 1.5zm-5.303-.51a.5.5 0 01.707 0l1.414 1.413a.5.5 0 01-.707.707L2.343 5.05a.5.5 0 010-.707zm11.314 0a.5.5 0 010 .706l-1.414 1.414a.5.5 0 11-.707-.707l1.414-1.414a.5.5 0 01.707 0zM8 7a3 3 0 012.599 4.5H5.4A3 3 0 018 7zm3.71 4.5a4 4 0 10-7.418 0H.499a.5.5 0 000 1h15a.5.5 0 000-1h-3.79zM0 10a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2A.5.5 0 010 10zm13 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-sunset-fill" viewBox="0 0 16 16" id="sunset-fill" xmlns="http://www.w3.org/2000/svg"><path d="M7.646 4.854a.5.5 0 00.708 0l1.5-1.5a.5.5 0 00-.708-.708l-.646.647V1.5a.5.5 0 00-1 0v1.793l-.646-.647a.5.5 0 10-.708.708l1.5 1.5zm-5.303-.51a.5.5 0 01.707 0l1.414 1.413a.5.5 0 01-.707.707L2.343 5.05a.5.5 0 010-.707zm11.314 0a.5.5 0 010 .706l-1.414 1.414a.5.5 0 11-.707-.707l1.414-1.414a.5.5 0 01.707 0zM11.709 11.5a4 4 0 10-7.418 0H.5a.5.5 0 000 1h15a.5.5 0 000-1h-3.79zM0 10a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2A.5.5 0 010 10zm13 0a.5.5 0 01.5-.5h2a.5.5 0 010 1h-2a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-symmetry-horizontal" viewBox="0 0 16 16" id="symmetry-horizontal" xmlns="http://www.w3.org/2000/svg"><path d="M13.5 7a.5.5 0 00.24-.939l-11-6A.5.5 0 002 .5v6a.5.5 0 00.5.5h11zm.485 2.376a.5.5 0 01-.246.563l-11 6A.5.5 0 012 15.5v-6a.5.5 0 01.5-.5h11a.5.5 0 01.485.376zM11.539 10H3v4.658L11.54 10z"/></symbol><symbol fill="currentColor" class="bi bi-symmetry-vertical" viewBox="0 0 16 16" id="symmetry-vertical" xmlns="http://www.w3.org/2000/svg"><path d="M7 2.5a.5.5 0 00-.939-.24l-6 11A.5.5 0 00.5 14h6a.5.5 0 00.5-.5v-11zm2.376-.484a.5.5 0 01.563.245l6 11A.5.5 0 0115.5 14h-6a.5.5 0 01-.5-.5v-11a.5.5 0 01.376-.484zM10 4.46V13h4.658L10 4.46z"/></symbol><symbol fill="currentColor" class="bi bi-table" viewBox="0 0 16 16" id="table" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h12a2 2 0 012 2v12a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm15 2h-4v3h4V4zm0 4h-4v3h4V8zm0 4h-4v3h3a1 1 0 001-1v-2zm-5 3v-3H6v3h4zm-5 0v-3H1v2a1 1 0 001 1h3zm-4-4h4V8H1v3zm0-4h4V4H1v3zm5-3v3h4V4H6zm4 4H6v3h4V8z"/></symbol><symbol fill="currentColor" class="bi bi-tablet" viewBox="0 0 16 16" id="tablet" xmlns="http://www.w3.org/2000/svg"><path d="M12 1a1 1 0 011 1v12a1 1 0 01-1 1H4a1 1 0 01-1-1V2a1 1 0 011-1h8zM4 0a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V2a2 2 0 00-2-2H4z"/><path d="M8 14a1 1 0 100-2 1 1 0 000 2z"/></symbol><symbol fill="currentColor" class="bi bi-tablet-fill" viewBox="0 0 16 16" id="tablet-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a2 2 0 012-2h8a2 2 0 012 2v12a2 2 0 01-2 2H4a2 2 0 01-2-2V2zm7 11a1 1 0 10-2 0 1 1 0 002 0z"/></symbol><symbol fill="currentColor" class="bi bi-tablet-landscape" viewBox="0 0 16 16" id="tablet-landscape" xmlns="http://www.w3.org/2000/svg"><path d="M1 4a1 1 0 011-1h12a1 1 0 011 1v8a1 1 0 01-1 1H2a1 1 0 01-1-1V4zm-1 8a2 2 0 002 2h12a2 2 0 002-2V4a2 2 0 00-2-2H2a2 2 0 00-2 2v8z"/><path d="M14 8a1 1 0 10-2 0 1 1 0 002 0z"/></symbol><symbol fill="currentColor" class="bi bi-tablet-landscape-fill" viewBox="0 0 16 16" id="tablet-landscape-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 14a2 2 0 01-2-2V4a2 2 0 012-2h12a2 2 0 012 2v8a2 2 0 01-2 2H2zm11-7a1 1 0 100 2 1 1 0 000-2z"/></symbol><symbol fill="currentColor" class="bi bi-tag" viewBox="0 0 16 16" id="tag" xmlns="http://www.w3.org/2000/svg"><path d="M6 4.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm-1 0a.5.5 0 10-1 0 .5.5 0 001 0z"/><path d="M2 1h4.586a1 1 0 01.707.293l7 7a1 1 0 010 1.414l-4.586 4.586a1 1 0 01-1.414 0l-7-7A1 1 0 011 6.586V2a1 1 0 011-1zm0 5.586l7 7L13.586 9l-7-7H2v4.586z"/></symbol><symbol fill="currentColor" class="bi bi-tag-fill" viewBox="0 0 16 16" id="tag-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 1a1 1 0 00-1 1v4.586a1 1 0 00.293.707l7 7a1 1 0 001.414 0l4.586-4.586a1 1 0 000-1.414l-7-7A1 1 0 006.586 1H2zm4 3.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-tags" viewBox="0 0 16 16" id="tags" xmlns="http://www.w3.org/2000/svg"><path d="M3 2v4.586l7 7L14.586 9l-7-7H3zM2 2a1 1 0 011-1h4.586a1 1 0 01.707.293l7 7a1 1 0 010 1.414l-4.586 4.586a1 1 0 01-1.414 0l-7-7A1 1 0 012 6.586V2z"/><path d="M5.5 5a.5.5 0 110-1 .5.5 0 010 1zm0 1a1.5 1.5 0 100-3 1.5 1.5 0 000 3zM1 7.086a1 1 0 00.293.707L8.75 15.25l-.043.043a1 1 0 01-1.414 0l-7-7A1 1 0 010 7.586V3a1 1 0 011-1v5.086z"/></symbol><symbol fill="currentColor" class="bi bi-tags-fill" viewBox="0 0 16 16" id="tags-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 2a1 1 0 011-1h4.586a1 1 0 01.707.293l7 7a1 1 0 010 1.414l-4.586 4.586a1 1 0 01-1.414 0l-7-7A1 1 0 012 6.586V2zm3.5 4a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/><path d="M1.293 7.793A1 1 0 011 7.086V2a1 1 0 00-1 1v4.586a1 1 0 00.293.707l7 7a1 1 0 001.414 0l.043-.043-7.457-7.457z"/></symbol><symbol fill="currentColor" class="bi bi-telegram" viewBox="0 0 16 16" id="telegram" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM8.287 5.906c-.778.324-2.334.994-4.666 2.01-.378.15-.577.298-.595.442-.03.243.275.339.69.47l.175.055c.408.133.958.288 1.243.294.26.006.549-.1.868-.32 2.179-1.471 3.304-2.214 3.374-2.23.05-.012.12-.026.166.016.047.041.042.12.037.141-.03.129-1.227 1.241-1.846 1.817-.193.18-.33.307-.358.336a8.154 8.154 0 01-.188.186c-.38.366-.664.64.015 1.088.327.216.589.393.85.571.284.194.568.387.936.629.093.06.183.125.27.187.331.236.63.448.997.414.214-.02.435-.22.547-.82.265-1.417.786-4.486.906-5.751a1.426 1.426 0 00-.013-.315.337.337 0 00-.114-.217.526.526 0 00-.31-.093c-.3.005-.763.166-2.984 1.09z"/></symbol><symbol fill="currentColor" class="bi bi-telephone" viewBox="0 0 16 16" id="telephone" xmlns="http://www.w3.org/2000/svg"><path d="M3.654 1.328a.678.678 0 00-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 004.168 6.608 17.569 17.569 0 006.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 00-.063-1.015l-2.307-1.794a.678.678 0 00-.58-.122l-2.19.547a1.745 1.745 0 01-1.657-.459L5.482 8.062a1.745 1.745 0 01-.46-1.657l.548-2.19a.678.678 0 00-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 012.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-fill" viewBox="0 0 16 16" id="telephone-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.885.511a1.745 1.745 0 012.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-forward" viewBox="0 0 16 16" id="telephone-forward" xmlns="http://www.w3.org/2000/svg"><path d="M3.654 1.328a.678.678 0 00-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 004.168 6.608 17.569 17.569 0 006.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 00-.063-1.015l-2.307-1.794a.678.678 0 00-.58-.122l-2.19.547a1.745 1.745 0 01-1.657-.459L5.482 8.062a1.745 1.745 0 01-.46-1.657l.548-2.19a.678.678 0 00-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 012.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zm10.762.135a.5.5 0 01.708 0l2.5 2.5a.5.5 0 010 .708l-2.5 2.5a.5.5 0 01-.708-.708L14.293 4H9.5a.5.5 0 010-1h4.793l-1.647-1.646a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-forward-fill" viewBox="0 0 16 16" id="telephone-forward-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.885.511a1.745 1.745 0 012.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zm10.761.135a.5.5 0 01.708 0l2.5 2.5a.5.5 0 010 .708l-2.5 2.5a.5.5 0 01-.708-.708L14.293 4H9.5a.5.5 0 010-1h4.793l-1.647-1.646a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-inbound" viewBox="0 0 16 16" id="telephone-inbound" xmlns="http://www.w3.org/2000/svg"><path d="M15.854.146a.5.5 0 010 .708L11.707 5H14.5a.5.5 0 010 1h-4a.5.5 0 01-.5-.5v-4a.5.5 0 011 0v2.793L15.146.146a.5.5 0 01.708 0zm-12.2 1.182a.678.678 0 00-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 004.168 6.608 17.569 17.569 0 006.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 00-.063-1.015l-2.307-1.794a.678.678 0 00-.58-.122l-2.19.547a1.745 1.745 0 01-1.657-.459L5.482 8.062a1.745 1.745 0 01-.46-1.657l.548-2.19a.678.678 0 00-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 012.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-inbound-fill" viewBox="0 0 16 16" id="telephone-inbound-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.885.511a1.745 1.745 0 012.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM15.854.146a.5.5 0 010 .708L11.707 5H14.5a.5.5 0 010 1h-4a.5.5 0 01-.5-.5v-4a.5.5 0 011 0v2.793L15.146.146a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-minus" viewBox="0 0 16 16" id="telephone-minus" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10 3.5a.5.5 0 01.5-.5h4a.5.5 0 010 1h-4a.5.5 0 01-.5-.5z"/><path d="M3.654 1.328a.678.678 0 00-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 004.168 6.608 17.569 17.569 0 006.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 00-.063-1.015l-2.307-1.794a.678.678 0 00-.58-.122l-2.19.547a1.745 1.745 0 01-1.657-.459L5.482 8.062a1.745 1.745 0 01-.46-1.657l.548-2.19a.678.678 0 00-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 012.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-minus-fill" viewBox="0 0 16 16" id="telephone-minus-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.885.511a1.745 1.745 0 012.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM10 3.5a.5.5 0 01.5-.5h4a.5.5 0 010 1h-4a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-outbound" viewBox="0 0 16 16" id="telephone-outbound" xmlns="http://www.w3.org/2000/svg"><path d="M3.654 1.328a.678.678 0 00-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 004.168 6.608 17.569 17.569 0 006.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 00-.063-1.015l-2.307-1.794a.678.678 0 00-.58-.122l-2.19.547a1.745 1.745 0 01-1.657-.459L5.482 8.062a1.745 1.745 0 01-.46-1.657l.548-2.19a.678.678 0 00-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 012.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM11 .5a.5.5 0 01.5-.5h4a.5.5 0 01.5.5v4a.5.5 0 01-1 0V1.707l-4.146 4.147a.5.5 0 01-.708-.708L14.293 1H11.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-outbound-fill" viewBox="0 0 16 16" id="telephone-outbound-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.885.511a1.745 1.745 0 012.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM11 .5a.5.5 0 01.5-.5h4a.5.5 0 01.5.5v4a.5.5 0 01-1 0V1.707l-4.146 4.147a.5.5 0 01-.708-.708L14.293 1H11.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-plus" viewBox="0 0 16 16" id="telephone-plus" xmlns="http://www.w3.org/2000/svg"><path d="M3.654 1.328a.678.678 0 00-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 004.168 6.608 17.569 17.569 0 006.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 00-.063-1.015l-2.307-1.794a.678.678 0 00-.58-.122l-2.19.547a1.745 1.745 0 01-1.657-.459L5.482 8.062a1.745 1.745 0 01-.46-1.657l.548-2.19a.678.678 0 00-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 012.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z"/><path fill-rule="evenodd" d="M12.5 1a.5.5 0 01.5.5V3h1.5a.5.5 0 010 1H13v1.5a.5.5 0 01-1 0V4h-1.5a.5.5 0 010-1H12V1.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-plus-fill" viewBox="0 0 16 16" id="telephone-plus-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.885.511a1.745 1.745 0 012.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zM12.5 1a.5.5 0 01.5.5V3h1.5a.5.5 0 010 1H13v1.5a.5.5 0 01-1 0V4h-1.5a.5.5 0 010-1H12V1.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-x" viewBox="0 0 16 16" id="telephone-x" xmlns="http://www.w3.org/2000/svg"><path d="M3.654 1.328a.678.678 0 00-1.015-.063L1.605 2.3c-.483.484-.661 1.169-.45 1.77a17.568 17.568 0 004.168 6.608 17.569 17.569 0 006.608 4.168c.601.211 1.286.033 1.77-.45l1.034-1.034a.678.678 0 00-.063-1.015l-2.307-1.794a.678.678 0 00-.58-.122l-2.19.547a1.745 1.745 0 01-1.657-.459L5.482 8.062a1.745 1.745 0 01-.46-1.657l.548-2.19a.678.678 0 00-.122-.58L3.654 1.328zM1.884.511a1.745 1.745 0 012.612.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511z"/><path fill-rule="evenodd" d="M11.146 1.646a.5.5 0 01.708 0L13 2.793l1.146-1.147a.5.5 0 01.708.708L13.707 3.5l1.147 1.146a.5.5 0 01-.708.708L13 4.207l-1.146 1.147a.5.5 0 01-.708-.708L12.293 3.5l-1.147-1.146a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-telephone-x-fill" viewBox="0 0 16 16" id="telephone-x-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M1.885.511a1.745 1.745 0 012.61.163L6.29 2.98c.329.423.445.974.315 1.494l-.547 2.19a.678.678 0 00.178.643l2.457 2.457a.678.678 0 00.644.178l2.189-.547a1.745 1.745 0 011.494.315l2.306 1.794c.829.645.905 1.87.163 2.611l-1.034 1.034c-.74.74-1.846 1.065-2.877.702a18.634 18.634 0 01-7.01-4.42 18.634 18.634 0 01-4.42-7.009c-.362-1.03-.037-2.137.703-2.877L1.885.511zm9.261 1.135a.5.5 0 01.708 0L13 2.793l1.146-1.147a.5.5 0 01.708.708L13.707 3.5l1.147 1.146a.5.5 0 01-.708.708L13 4.207l-1.146 1.147a.5.5 0 01-.708-.708L12.293 3.5l-1.147-1.146a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-terminal" viewBox="0 0 16 16" id="terminal" xmlns="http://www.w3.org/2000/svg"><path d="M6 9a.5.5 0 01.5-.5h3a.5.5 0 010 1h-3A.5.5 0 016 9zM3.854 4.146a.5.5 0 10-.708.708L4.793 6.5 3.146 8.146a.5.5 0 10.708.708l2-2a.5.5 0 000-.708l-2-2z"/><path d="M2 1a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V3a2 2 0 00-2-2H2zm12 1a1 1 0 011 1v10a1 1 0 01-1 1H2a1 1 0 01-1-1V3a1 1 0 011-1h12z"/></symbol><symbol fill="currentColor" class="bi bi-terminal-fill" viewBox="0 0 16 16" id="terminal-fill" xmlns="http://www.w3.org/2000/svg"><path d="M0 3a2 2 0 012-2h12a2 2 0 012 2v10a2 2 0 01-2 2H2a2 2 0 01-2-2V3zm9.5 5.5h-3a.5.5 0 000 1h3a.5.5 0 000-1zm-6.354-.354a.5.5 0 10.708.708l2-2a.5.5 0 000-.708l-2-2a.5.5 0 10-.708.708L4.793 6.5 3.146 8.146z"/></symbol><symbol fill="currentColor" class="bi bi-text-center" viewBox="0 0 16 16" id="text-center" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M4 12.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm2-3a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-2-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-text-indent-left" viewBox="0 0 16 16" id="text-indent-left" xmlns="http://www.w3.org/2000/svg"><path d="M2 3.5a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm.646 2.146a.5.5 0 01.708 0l2 2a.5.5 0 010 .708l-2 2a.5.5 0 01-.708-.708L4.293 8 2.646 6.354a.5.5 0 010-.708zM7 6.5a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zm0 3a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zm-5 3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-text-indent-right" viewBox="0 0 16 16" id="text-indent-right" xmlns="http://www.w3.org/2000/svg"><path d="M2 3.5a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm10.646 2.146a.5.5 0 01.708.708L11.707 8l1.647 1.646a.5.5 0 01-.708.708l-2-2a.5.5 0 010-.708l2-2zM2 6.5a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zm0 3a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5zm0 3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-text-left" viewBox="0 0 16 16" id="text-left" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 12.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-text-paragraph" viewBox="0 0 16 16" id="text-paragraph" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M2 12.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm0-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm4-3a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-text-right" viewBox="0 0 16 16" id="text-right" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6 12.5a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-4-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5zm4-3a.5.5 0 01.5-.5h7a.5.5 0 010 1h-7a.5.5 0 01-.5-.5zm-4-3a.5.5 0 01.5-.5h11a.5.5 0 010 1h-11a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-textarea" viewBox="0 0 16 16" id="textarea" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 2.5A1.5 1.5 0 013 1h10a1.5 1.5 0 011.5 1.5v3.563a2 2 0 010 3.874V13.5A1.5 1.5 0 0113 15H3a1.5 1.5 0 01-1.5-1.5V9.937a2 2 0 010-3.874V2.5zm1 3.563a2 2 0 010 3.874V13.5a.5.5 0 00.5.5h10a.5.5 0 00.5-.5V9.937a2 2 0 010-3.874V2.5A.5.5 0 0013 2H3a.5.5 0 00-.5.5v3.563zM2 7a1 1 0 100 2 1 1 0 000-2zm12 0a1 1 0 100 2 1 1 0 000-2z"/></symbol><symbol fill="currentColor" class="bi bi-textarea-resize" viewBox="0 0 16 16" id="textarea-resize" xmlns="http://www.w3.org/2000/svg"><path d="M.5 4A2.5 2.5 0 013 1.5h12A2.5 2.5 0 0117.5 4v8a2.5 2.5 0 01-2.5 2.5H3A2.5 2.5 0 01.5 12V4zM3 2.5A1.5 1.5 0 001.5 4v8A1.5 1.5 0 003 13.5h12a1.5 1.5 0 001.5-1.5V4A1.5 1.5 0 0015 2.5H3zm11.854 5.646a.5.5 0 010 .708l-3 3a.5.5 0 01-.708-.708l3-3a.5.5 0 01.708 0zm0 2.5a.5.5 0 010 .708l-.5.5a.5.5 0 01-.708-.708l.5-.5a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-textarea-t" viewBox="0 0 16 16" id="textarea-t" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 2.5A1.5 1.5 0 013 1h10a1.5 1.5 0 011.5 1.5v3.563a2 2 0 010 3.874V13.5A1.5 1.5 0 0113 15H3a1.5 1.5 0 01-1.5-1.5V9.937a2 2 0 010-3.874V2.5zm1 3.563a2 2 0 010 3.874V13.5a.5.5 0 00.5.5h10a.5.5 0 00.5-.5V9.937a2 2 0 010-3.874V2.5A.5.5 0 0013 2H3a.5.5 0 00-.5.5v3.563zM2 7a1 1 0 100 2 1 1 0 000-2zm12 0a1 1 0 100 2 1 1 0 000-2z"/><path d="M11.434 4H4.566L4.5 5.994h.386c.21-1.252.612-1.446 2.173-1.495l.343-.011v6.343c0 .537-.116.665-1.049.748V12h3.294v-.421c-.938-.083-1.054-.21-1.054-.748V4.488l.348.01c1.56.05 1.963.244 2.173 1.496h.386L11.434 4z"/></symbol><symbol fill="currentColor" class="bi bi-thermometer" viewBox="0 0 16 16" id="thermometer" xmlns="http://www.w3.org/2000/svg"><path d="M8 14a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"/><path d="M8 0a2.5 2.5 0 00-2.5 2.5v7.55a3.5 3.5 0 105 0V2.5A2.5 2.5 0 008 0zM6.5 2.5a1.5 1.5 0 113 0v7.987l.167.15a2.5 2.5 0 11-3.333 0l.166-.15V2.5z"/></symbol><symbol fill="currentColor" class="bi bi-thermometer-half" viewBox="0 0 16 16" id="thermometer-half" xmlns="http://www.w3.org/2000/svg"><path d="M9.5 12.5a1.5 1.5 0 11-2-1.415V6.5a.5.5 0 011 0v4.585a1.5 1.5 0 011 1.415z"/><path d="M5.5 2.5a2.5 2.5 0 015 0v7.55a3.5 3.5 0 11-5 0V2.5zM8 1a1.5 1.5 0 00-1.5 1.5v7.987l-.167.15a2.5 2.5 0 103.333 0l-.166-.15V2.5A1.5 1.5 0 008 1z"/></symbol><symbol fill="currentColor" class="bi bi-thermometer-high" viewBox="0 0 16 16" id="thermometer-high" xmlns="http://www.w3.org/2000/svg"><path d="M9.5 12.5a1.5 1.5 0 11-2-1.415V2.5a.5.5 0 011 0v8.585a1.5 1.5 0 011 1.415z"/><path d="M5.5 2.5a2.5 2.5 0 015 0v7.55a3.5 3.5 0 11-5 0V2.5zM8 1a1.5 1.5 0 00-1.5 1.5v7.987l-.167.15a2.5 2.5 0 103.333 0l-.166-.15V2.5A1.5 1.5 0 008 1z"/></symbol><symbol fill="currentColor" class="bi bi-thermometer-low" viewBox="0 0 16 16" id="thermometer-low" xmlns="http://www.w3.org/2000/svg"><path d="M9.5 12.5a1.5 1.5 0 11-2-1.415V9.5a.5.5 0 011 0v1.585a1.5 1.5 0 011 1.415z"/><path d="M5.5 2.5a2.5 2.5 0 015 0v7.55a3.5 3.5 0 11-5 0V2.5zM8 1a1.5 1.5 0 00-1.5 1.5v7.987l-.167.15a2.5 2.5 0 103.333 0l-.166-.15V2.5A1.5 1.5 0 008 1z"/></symbol><symbol fill="currentColor" class="bi bi-thermometer-snow" viewBox="0 0 16 16" id="thermometer-snow" xmlns="http://www.w3.org/2000/svg"><path d="M5 12.5a1.5 1.5 0 11-2-1.415V9.5a.5.5 0 011 0v1.585A1.5 1.5 0 015 12.5z"/><path d="M1 2.5a2.5 2.5 0 015 0v7.55a3.5 3.5 0 11-5 0V2.5zM3.5 1A1.5 1.5 0 002 2.5v7.987l-.167.15a2.5 2.5 0 103.333 0L5 10.486V2.5A1.5 1.5 0 003.5 1zm5 1a.5.5 0 01.5.5v1.293l.646-.647a.5.5 0 01.708.708L9 5.207v1.927l1.669-.963.495-1.85a.5.5 0 11.966.26l-.237.882 1.12-.646a.5.5 0 01.5.866l-1.12.646.884.237a.5.5 0 11-.26.966l-1.848-.495L9.5 8l1.669.963 1.849-.495a.5.5 0 11.258.966l-.883.237 1.12.646a.5.5 0 01-.5.866l-1.12-.646.237.883a.5.5 0 11-.966.258L10.67 9.83 9 8.866v1.927l1.354 1.353a.5.5 0 01-.708.708L9 12.207V13.5a.5.5 0 01-1 0v-11a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-thermometer-sun" viewBox="0 0 16 16" id="thermometer-sun" xmlns="http://www.w3.org/2000/svg"><path d="M5 12.5a1.5 1.5 0 11-2-1.415V2.5a.5.5 0 011 0v8.585A1.5 1.5 0 015 12.5z"/><path d="M1 2.5a2.5 2.5 0 015 0v7.55a3.5 3.5 0 11-5 0V2.5zM3.5 1A1.5 1.5 0 002 2.5v7.987l-.167.15a2.5 2.5 0 103.333 0L5 10.486V2.5A1.5 1.5 0 003.5 1zm5 1a.5.5 0 01.5.5v1a.5.5 0 01-1 0v-1a.5.5 0 01.5-.5zm4.243 1.757a.5.5 0 010 .707l-.707.708a.5.5 0 11-.708-.708l.708-.707a.5.5 0 01.707 0zM8 5.5a.5.5 0 01.5-.5 3 3 0 110 6 .5.5 0 010-1 2 2 0 000-4 .5.5 0 01-.5-.5zM12.5 8a.5.5 0 01.5-.5h1a.5.5 0 110 1h-1a.5.5 0 01-.5-.5zm-1.172 2.828a.5.5 0 01.708 0l.707.708a.5.5 0 01-.707.707l-.708-.707a.5.5 0 010-.708zM8.5 12a.5.5 0 01.5.5v1a.5.5 0 01-1 0v-1a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-three-dots" viewBox="0 0 16 16" id="three-dots" xmlns="http://www.w3.org/2000/svg"><path d="M3 9.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm5 0a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm5 0a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-three-dots-vertical" viewBox="0 0 16 16" id="three-dots-vertical" xmlns="http://www.w3.org/2000/svg"><path d="M9.5 13a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0-5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zm0-5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0z"/></symbol><symbol fill="currentColor" class="bi bi-toggle-off" viewBox="0 0 16 16" id="toggle-off" xmlns="http://www.w3.org/2000/svg"><path d="M11 4a4 4 0 010 8H8a4.992 4.992 0 002-4 4.992 4.992 0 00-2-4h3zm-6 8a4 4 0 110-8 4 4 0 010 8zM0 8a5 5 0 005 5h6a5 5 0 000-10H5a5 5 0 00-5 5z"/></symbol><symbol fill="currentColor" class="bi bi-toggle-on" viewBox="0 0 16 16" id="toggle-on" xmlns="http://www.w3.org/2000/svg"><path d="M5 3a5 5 0 000 10h6a5 5 0 000-10H5zm6 9a4 4 0 110-8 4 4 0 010 8z"/></symbol><symbol fill="currentColor" class="bi bi-toggle2-off" viewBox="0 0 16 16" id="toggle2-off" xmlns="http://www.w3.org/2000/svg"><path d="M9 11c.628-.836 1-1.874 1-3a4.978 4.978 0 00-1-3h4a3 3 0 110 6H9z"/><path d="M5 12a4 4 0 110-8 4 4 0 010 8zm0 1A5 5 0 105 3a5 5 0 000 10z"/></symbol><symbol fill="currentColor" class="bi bi-toggle2-on" viewBox="0 0 16 16" id="toggle2-on" xmlns="http://www.w3.org/2000/svg"><path d="M7 5H3a3 3 0 000 6h4a4.995 4.995 0 01-.584-1H3a2 2 0 110-4h3.416c.156-.357.352-.692.584-1z"/><path d="M16 8A5 5 0 116 8a5 5 0 0110 0z"/></symbol><symbol fill="currentColor" class="bi bi-toggles" viewBox="0 0 16 16" id="toggles" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 9a3.5 3.5 0 100 7h7a3.5 3.5 0 100-7h-7zm7 6a2.5 2.5 0 110-5 2.5 2.5 0 010 5zm-7-14a2.5 2.5 0 100 5 2.5 2.5 0 000-5zm2.45 0A3.49 3.49 0 018 3.5 3.49 3.49 0 016.95 6h4.55a2.5 2.5 0 000-5H6.95zM4.5 0h7a3.5 3.5 0 110 7h-7a3.5 3.5 0 110-7z"/></symbol><symbol fill="currentColor" class="bi bi-toggles2" viewBox="0 0 16 16" id="toggles2" xmlns="http://www.w3.org/2000/svg"><path d="M9.465 10H12a2 2 0 110 4H9.465c.34-.588.535-1.271.535-2 0-.729-.195-1.412-.535-2z"/><path d="M6 15a3 3 0 100-6 3 3 0 000 6zm0 1a4 4 0 110-8 4 4 0 010 8zm.535-10a3.975 3.975 0 01-.409-1H4a1 1 0 010-2h2.126c.091-.355.23-.69.41-1H4a2 2 0 100 4h2.535z"/><path d="M14 4a4 4 0 11-8 0 4 4 0 018 0z"/></symbol><symbol fill="currentColor" class="bi bi-tools" viewBox="0 0 16 16" id="tools" xmlns="http://www.w3.org/2000/svg"><path d="M1 0L0 1l2.2 3.081a1 1 0 00.815.419h.07a1 1 0 01.708.293l2.675 2.675-2.617 2.654A3.003 3.003 0 000 13a3 3 0 105.878-.851l2.654-2.617.968.968-.305.914a1 1 0 00.242 1.023l3.356 3.356a1 1 0 001.414 0l1.586-1.586a1 1 0 000-1.414l-3.356-3.356a1 1 0 00-1.023-.242L10.5 9.5l-.96-.96 2.68-2.643A3.005 3.005 0 0016 3c0-.269-.035-.53-.102-.777l-2.14 2.141L12 4l-.364-1.757L13.777.102a3 3 0 00-3.675 3.68L7.462 6.46 4.793 3.793a1 1 0 01-.293-.707v-.071a1 1 0 00-.419-.814L1 0zm9.646 10.646a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708l-3-3a.5.5 0 010-.708zM3 11l.471.242.529.026.287.445.445.287.026.529L5 13l-.242.471-.026.529-.445.287-.287.445-.529.026L3 15l-.471-.242L2 14.732l-.287-.445L1.268 14l-.026-.529L1 13l.242-.471.026-.529.445-.287.287-.445.529-.026L3 11z"/></symbol><symbol fill="currentColor" class="bi bi-tornado" viewBox="0 0 16 16" id="tornado" xmlns="http://www.w3.org/2000/svg"><path d="M1.125 2.45A.892.892 0 011 2c0-.26.116-.474.258-.634a1.9 1.9 0 01.513-.389c.387-.21.913-.385 1.52-.525C4.514.17 6.18 0 8 0c1.821 0 3.486.17 4.709.452.607.14 1.133.314 1.52.525.193.106.374.233.513.389.141.16.258.374.258.634 0 1.011-.35 1.612-.634 2.102-.04.07-.08.137-.116.203a2.55 2.55 0 00-.313.809 2.938 2.938 0 00-.011.891.5.5 0 01.428.849c-.06.06-.133.126-.215.195.204 1.116.088 1.99-.3 2.711-.453.84-1.231 1.383-2.02 1.856-.204.123-.412.243-.62.364-1.444.832-2.928 1.689-3.735 3.706a.5.5 0 01-.748.226l-.001-.001-.002-.001-.004-.003-.01-.008a2.142 2.142 0 01-.147-.115 4.095 4.095 0 01-1.179-1.656 3.786 3.786 0 01-.247-1.296A.498.498 0 015 12.5v-.018a.62.62 0 01.008-.079.728.728 0 01.188-.386c.09-.489.272-1.014.573-1.574a.5.5 0 01.073-.918 3.29 3.29 0 01.617-.144l.15-.193c.285-.356.404-.639.437-.861a.948.948 0 00-.122-.619c-.249-.455-.815-.903-1.613-1.43-.193-.127-.398-.258-.609-.394l-.119-.076a12.307 12.307 0 01-1.241-.334.5.5 0 01-.285-.707l-.23-.18C2.117 4.01 1.463 3.32 1.125 2.45zm1.973 1.051c.113.104.233.207.358.308.472.381.99.722 1.515 1.06 1.54.317 3.632.5 5.43.14a.5.5 0 01.197.981c-1.216.244-2.537.26-3.759.157.399.326.744.682.963 1.081.203.373.302.79.233 1.247-.05.33-.182.657-.39.985.075.017.148.035.22.053l.006.002c.481.12.863.213 1.47.01a.5.5 0 11.317.95c-.888.295-1.505.141-2.023.012l-.006-.002a3.894 3.894 0 00-.644-.123c-.37.55-.598 1.05-.726 1.497.142.045.296.11.465.194a.5.5 0 11-.448.894 3.11 3.11 0 00-.148-.07c.012.345.084.643.18.895.14.369.342.666.528.886.992-1.903 2.583-2.814 3.885-3.56.203-.116.399-.228.584-.34.775-.464 1.34-.89 1.653-1.472.212-.393.33-.9.26-1.617A6.74 6.74 0 0110 8.5a.5.5 0 010-1 5.76 5.76 0 003.017-.872.515.515 0 01-.007-.03c-.135-.673-.14-1.207-.056-1.665.084-.46.253-.81.421-1.113l.131-.23c.065-.112.126-.22.182-.327-.29.107-.62.202-.98.285C11.487 3.83 9.822 4 8 4c-1.821 0-3.486-.17-4.709-.452-.065-.015-.13-.03-.193-.047zM13.964 2a1.12 1.12 0 00-.214-.145c-.272-.148-.697-.297-1.266-.428C11.354 1.166 9.769 1 8 1c-1.769 0-3.354.166-4.484.427-.569.13-.994.28-1.266.428A1.12 1.12 0 002.036 2c.04.038.109.087.214.145.272.148.697.297 1.266.428C4.646 2.834 6.231 3 8 3c1.769 0 3.354-.166 4.484-.427.569-.13.994-.28 1.266-.428A1.12 1.12 0 0013.964 2z"/></symbol><symbol fill="currentColor" class="bi bi-translate" viewBox="0 0 16 16" id="translate" xmlns="http://www.w3.org/2000/svg"><path d="M4.545 6.714L4.11 8H3l1.862-5h1.284L8 8H6.833l-.435-1.286H4.545zm1.634-.736L5.5 3.956h-.049l-.679 2.022H6.18z"/><path d="M0 2a2 2 0 012-2h7a2 2 0 012 2v3h3a2 2 0 012 2v7a2 2 0 01-2 2H7a2 2 0 01-2-2v-3H2a2 2 0 01-2-2V2zm2-1a1 1 0 00-1 1v7a1 1 0 001 1h7a1 1 0 001-1V2a1 1 0 00-1-1H2zm7.138 9.995c.193.301.402.583.63.846-.748.575-1.673 1.001-2.768 1.292.178.217.451.635.555.867 1.125-.359 2.08-.844 2.886-1.494.777.665 1.739 1.165 2.93 1.472.133-.254.414-.673.629-.89-1.125-.253-2.057-.694-2.82-1.284.681-.747 1.222-1.651 1.621-2.757H14V8h-3v1.047h.765c-.318.844-.74 1.546-1.272 2.13a6.066 6.066 0 01-.415-.492 1.988 1.988 0 01-.94.31z"/></symbol><symbol fill="currentColor" class="bi bi-trash" viewBox="0 0 16 16" id="trash" xmlns="http://www.w3.org/2000/svg"><path d="M5.5 5.5A.5.5 0 016 6v6a.5.5 0 01-1 0V6a.5.5 0 01.5-.5zm2.5 0a.5.5 0 01.5.5v6a.5.5 0 01-1 0V6a.5.5 0 01.5-.5zm3 .5a.5.5 0 00-1 0v6a.5.5 0 001 0V6z"/><path fill-rule="evenodd" d="M14.5 3a1 1 0 01-1 1H13v9a2 2 0 01-2 2H5a2 2 0 01-2-2V4h-.5a1 1 0 01-1-1V2a1 1 0 011-1H6a1 1 0 011-1h2a1 1 0 011 1h3.5a1 1 0 011 1v1zM4.118 4L4 4.059V13a1 1 0 001 1h6a1 1 0 001-1V4.059L11.882 4H4.118zM2.5 3V2h11v1h-11z"/></symbol><symbol fill="currentColor" class="bi bi-trash-fill" viewBox="0 0 16 16" id="trash-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 1a1 1 0 00-1 1v1a1 1 0 001 1H3v9a2 2 0 002 2h6a2 2 0 002-2V4h.5a1 1 0 001-1V2a1 1 0 00-1-1H10a1 1 0 00-1-1H7a1 1 0 00-1 1H2.5zm3 4a.5.5 0 01.5.5v7a.5.5 0 01-1 0v-7a.5.5 0 01.5-.5zM8 5a.5.5 0 01.5.5v7a.5.5 0 01-1 0v-7A.5.5 0 018 5zm3 .5v7a.5.5 0 01-1 0v-7a.5.5 0 011 0z"/></symbol><symbol fill="currentColor" class="bi bi-trash2" viewBox="0 0 16 16" id="trash2" xmlns="http://www.w3.org/2000/svg"><path d="M14 3a.702.702 0 01-.037.225l-1.684 10.104A2 2 0 0110.305 15H5.694a2 2 0 01-1.973-1.671L2.037 3.225A.703.703 0 012 3c0-1.105 2.686-2 6-2s6 .895 6 2zM3.215 4.207l1.493 8.957a1 1 0 00.986.836h4.612a1 1 0 00.986-.836l1.493-8.957C11.69 4.689 9.954 5 8 5c-1.954 0-3.69-.311-4.785-.793z"/></symbol><symbol fill="currentColor" class="bi bi-trash2-fill" viewBox="0 0 16 16" id="trash2-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.037 3.225A.703.703 0 012 3c0-1.105 2.686-2 6-2s6 .895 6 2a.702.702 0 01-.037.225l-1.684 10.104A2 2 0 0110.305 15H5.694a2 2 0 01-1.973-1.671L2.037 3.225zm9.89-.69C10.966 2.214 9.578 2 8 2c-1.58 0-2.968.215-3.926.534-.477.16-.795.327-.975.466.18.14.498.307.975.466C5.032 3.786 6.42 4 8 4s2.967-.215 3.926-.534c.477-.16.795-.327.975-.466-.18-.14-.498-.307-.975-.466z"/></symbol><symbol fill="currentColor" class="bi bi-tree" viewBox="0 0 16 16" id="tree" xmlns="http://www.w3.org/2000/svg"><path d="M8.416.223a.5.5 0 00-.832 0l-3 4.5A.5.5 0 005 5.5h.098L3.076 8.735A.5.5 0 003.5 9.5h.191l-1.638 3.276a.5.5 0 00.447.724H7V16h2v-2.5h4.5a.5.5 0 00.447-.724L12.31 9.5h.191a.5.5 0 00.424-.765L10.902 5.5H11a.5.5 0 00.416-.777l-3-4.5zM6.437 4.758A.5.5 0 006 4.5h-.066L8 1.401 10.066 4.5H10a.5.5 0 00-.424.765L11.598 8.5H11.5a.5.5 0 00-.447.724L12.69 12.5H3.309l1.638-3.276A.5.5 0 004.5 8.5h-.098l2.022-3.235a.5.5 0 00.013-.507z"/></symbol><symbol fill="currentColor" class="bi bi-tree-fill" viewBox="0 0 16 16" id="tree-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8.416.223a.5.5 0 00-.832 0l-3 4.5A.5.5 0 005 5.5h.098L3.076 8.735A.5.5 0 003.5 9.5h.191l-1.638 3.276a.5.5 0 00.447.724H7V16h2v-2.5h4.5a.5.5 0 00.447-.724L12.31 9.5h.191a.5.5 0 00.424-.765L10.902 5.5H11a.5.5 0 00.416-.777l-3-4.5z"/></symbol><symbol fill="currentColor" class="bi bi-triangle" viewBox="0 0 16 16" id="triangle" xmlns="http://www.w3.org/2000/svg"><path d="M7.938 2.016A.13.13 0 018.002 2a.13.13 0 01.063.016.146.146 0 01.054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 01-.054.06.116.116 0 01-.066.017H1.146a.115.115 0 01-.066-.017.163.163 0 01-.054-.06.176.176 0 01.002-.183L7.884 2.073a.147.147 0 01.054-.057zm1.044-.45a1.13 1.13 0 00-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"/></symbol><symbol fill="currentColor" class="bi bi-triangle-fill" viewBox="0 0 16 16" id="triangle-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M7.022 1.566a1.13 1.13 0 011.96 0l6.857 11.667c.457.778-.092 1.767-.98 1.767H1.144c-.889 0-1.437-.99-.98-1.767L7.022 1.566z"/></symbol><symbol fill="currentColor" class="bi bi-triangle-half" viewBox="0 0 16 16" id="triangle-half" xmlns="http://www.w3.org/2000/svg"><path d="M8.065 2.016A.13.13 0 008.002 2v11.983l6.856.017a.12.12 0 00.066-.017.162.162 0 00.054-.06.176.176 0 00-.002-.183L8.12 2.073a.146.146 0 00-.054-.057zm-1.043-.45a1.13 1.13 0 011.96 0l6.856 11.667c.458.778-.091 1.767-.98 1.767H1.146c-.889 0-1.437-.99-.98-1.767L7.022 1.566z"/></symbol><symbol fill="currentColor" class="bi bi-trophy" viewBox="0 0 16 16" id="trophy" xmlns="http://www.w3.org/2000/svg"><path d="M2.5.5A.5.5 0 013 0h10a.5.5 0 01.5.5c0 .538-.012 1.05-.034 1.536a3 3 0 11-1.133 5.89c-.79 1.865-1.878 2.777-2.833 3.011v2.173l1.425.356c.194.048.377.135.537.255L13.3 15.1a.5.5 0 01-.3.9H3a.5.5 0 01-.3-.9l1.838-1.379c.16-.12.343-.207.537-.255L6.5 13.11v-2.173c-.955-.234-2.043-1.146-2.833-3.012a3 3 0 11-1.132-5.89A33.076 33.076 0 012.5.5zm.099 2.54a2 2 0 00.72 3.935c-.333-1.05-.588-2.346-.72-3.935zm10.083 3.935a2 2 0 00.72-3.935c-.133 1.59-.388 2.885-.72 3.935zM3.504 1c.007.517.026 1.006.056 1.469.13 2.028.457 3.546.87 4.667C5.294 9.48 6.484 10 7 10a.5.5 0 01.5.5v2.61a1 1 0 01-.757.97l-1.426.356a.5.5 0 00-.179.085L4.5 15h7l-.638-.479a.501.501 0 00-.18-.085l-1.425-.356a1 1 0 01-.757-.97V10.5A.5.5 0 019 10c.516 0 1.706-.52 2.57-2.864.413-1.12.74-2.64.87-4.667.03-.463.049-.952.056-1.469H3.504z"/></symbol><symbol fill="currentColor" class="bi bi-trophy-fill" viewBox="0 0 16 16" id="trophy-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.5.5A.5.5 0 013 0h10a.5.5 0 01.5.5c0 .538-.012 1.05-.034 1.536a3 3 0 11-1.133 5.89c-.79 1.865-1.878 2.777-2.833 3.011v2.173l1.425.356c.194.048.377.135.537.255L13.3 15.1a.5.5 0 01-.3.9H3a.5.5 0 01-.3-.9l1.838-1.379c.16-.12.343-.207.537-.255L6.5 13.11v-2.173c-.955-.234-2.043-1.146-2.833-3.012a3 3 0 11-1.132-5.89A33.076 33.076 0 012.5.5zm.099 2.54a2 2 0 00.72 3.935c-.333-1.05-.588-2.346-.72-3.935zm10.083 3.935a2 2 0 00.72-3.935c-.133 1.59-.388 2.885-.72 3.935z"/></symbol><symbol fill="currentColor" class="bi bi-tropical-storm" viewBox="0 0 16 16" id="tropical-storm" xmlns="http://www.w3.org/2000/svg"><path d="M8 9.5a2 2 0 100-4 2 2 0 000 4z"/><path d="M9.5 2c-.9 0-1.75.216-2.501.6A5 5 0 0113 7.5a6.5 6.5 0 11-13 0 .5.5 0 011 0 5.5 5.5 0 008.001 4.9A5 5 0 013 7.5a6.5 6.5 0 0113 0 .5.5 0 01-1 0A5.5 5.5 0 009.5 2zM8 3.5a4 4 0 100 8 4 4 0 000-8z"/></symbol><symbol fill="currentColor" class="bi bi-truck" viewBox="0 0 16 16" id="truck" xmlns="http://www.w3.org/2000/svg"><path d="M0 3.5A1.5 1.5 0 011.5 2h9A1.5 1.5 0 0112 3.5V5h1.02a1.5 1.5 0 011.17.563l1.481 1.85a1.5 1.5 0 01.329.938V10.5a1.5 1.5 0 01-1.5 1.5H14a2 2 0 11-4 0H5a2 2 0 11-3.998-.085A1.5 1.5 0 010 10.5v-7zm1.294 7.456A1.999 1.999 0 014.732 11h5.536a2.01 2.01 0 01.732-.732V3.5a.5.5 0 00-.5-.5h-9a.5.5 0 00-.5.5v7a.5.5 0 00.294.456zM12 10a2 2 0 011.732 1h.768a.5.5 0 00.5-.5V8.35a.5.5 0 00-.11-.312l-1.48-1.85A.5.5 0 0013.02 6H12v4zm-9 1a1 1 0 100 2 1 1 0 000-2zm9 0a1 1 0 100 2 1 1 0 000-2z"/></symbol><symbol fill="currentColor" class="bi bi-truck-flatbed" viewBox="0 0 16 16" id="truck-flatbed" xmlns="http://www.w3.org/2000/svg"><path d="M11.5 4a.5.5 0 01.5.5V5h1.02a1.5 1.5 0 011.17.563l1.481 1.85a1.5 1.5 0 01.329.938V10.5a1.5 1.5 0 01-1.5 1.5H14a2 2 0 11-4 0H5a2 2 0 11-4 0 1 1 0 01-1-1v-1h11V4.5a.5.5 0 01.5-.5zM3 11a1 1 0 100 2 1 1 0 000-2zm9 0a1 1 0 100 2 1 1 0 000-2zm1.732 0h.768a.5.5 0 00.5-.5V8.35a.5.5 0 00-.11-.312l-1.48-1.85A.5.5 0 0013.02 6H12v4a2 2 0 011.732 1z"/></symbol><symbol fill="currentColor" class="bi bi-tsunami" viewBox="0 0 16 16" id="tsunami" xmlns="http://www.w3.org/2000/svg"><path d="M.036 12.314a.5.5 0 01.65-.278l1.757.703a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.757-.703a.5.5 0 11.372.928l-1.758.703a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.757-.703a.5.5 0 01-.278-.65zm0 2a.5.5 0 01.65-.278l1.757.703a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.757-.703a.5.5 0 11.372.928l-1.758.703a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.757-.703a.5.5 0 01-.278-.65zM2.662 8.08c-.456 1.063-.994 2.098-1.842 2.804a.5.5 0 01-.64-.768c.652-.544 1.114-1.384 1.564-2.43.14-.328.281-.68.427-1.044.302-.754.624-1.559 1.01-2.308C3.763 3.2 4.528 2.105 5.7 1.299 6.877.49 8.418 0 10.5 0c1.463 0 2.511.4 3.179 1.058.67.66.893 1.518.819 2.302-.074.771-.441 1.516-1.02 1.965a1.878 1.878 0 01-1.904.27c-.65.642-.907 1.679-.71 2.614C11.076 9.215 11.784 10 13 10h2.5a.5.5 0 010 1H13c-1.784 0-2.826-1.215-3.114-2.585-.232-1.1.005-2.373.758-3.284L10.5 5.06l-.777.388a.5.5 0 01-.447 0l-1-.5a.5.5 0 01.447-.894l.777.388.776-.388a.5.5 0 01.447 0l1 .5a.493.493 0 01.034.018c.44.264.81.195 1.108-.036.328-.255.586-.729.637-1.27.05-.529-.1-1.076-.525-1.495-.426-.42-1.19-.77-2.477-.77-1.918 0-3.252.448-4.232 1.123C5.283 2.8 4.61 3.738 4.07 4.79c-.365.71-.655 1.433-.945 2.16-.15.376-.301.753-.463 1.13z"/></symbol><symbol fill="currentColor" class="bi bi-tv" viewBox="0 0 16 16" id="tv" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 13.5A.5.5 0 013 13h10a.5.5 0 010 1H3a.5.5 0 01-.5-.5zM13.991 3l.024.001a1.46 1.46 0 01.538.143.757.757 0 01.302.254c.067.1.145.277.145.602v5.991l-.001.024a1.464 1.464 0 01-.143.538.758.758 0 01-.254.302c-.1.067-.277.145-.602.145H2.009l-.024-.001a1.464 1.464 0 01-.538-.143.758.758 0 01-.302-.254C1.078 10.502 1 10.325 1 10V4.009l.001-.024a1.46 1.46 0 01.143-.538.758.758 0 01.254-.302C1.498 3.078 1.675 3 2 3h11.991zM14 2H2C0 2 0 4 0 4v6c0 2 2 2 2 2h12c2 0 2-2 2-2V4c0-2-2-2-2-2z"/></symbol><symbol fill="currentColor" class="bi bi-tv-fill" viewBox="0 0 16 16" id="tv-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 13.5A.5.5 0 013 13h10a.5.5 0 010 1H3a.5.5 0 01-.5-.5zM2 2h12s2 0 2 2v6s0 2-2 2H2s-2 0-2-2V4s0-2 2-2z"/></symbol><symbol fill="currentColor" class="bi bi-twitch" viewBox="0 0 16 16" id="twitch" xmlns="http://www.w3.org/2000/svg"><path d="M3.857 0L1 2.857v10.286h3.429V16l2.857-2.857H9.57L14.714 8V0H3.857zm9.714 7.429l-2.285 2.285H9l-2 2v-2H4.429V1.143h9.142v6.286z"/><path d="M11.857 3.143h-1.143V6.57h1.143V3.143zm-3.143 0H7.571V6.57h1.143V3.143z"/></symbol><symbol fill="currentColor" class="bi bi-twitter" viewBox="0 0 16 16" id="twitter" xmlns="http://www.w3.org/2000/svg"><path d="M5.026 15c6.038 0 9.341-5.003 9.341-9.334 0-.14 0-.282-.006-.422A6.685 6.685 0 0016 3.542a6.658 6.658 0 01-1.889.518 3.301 3.301 0 001.447-1.817 6.533 6.533 0 01-2.087.793A3.286 3.286 0 007.875 6.03a9.325 9.325 0 01-6.767-3.429 3.289 3.289 0 001.018 4.382A3.323 3.323 0 01.64 6.575v.045a3.288 3.288 0 002.632 3.218 3.203 3.203 0 01-.865.115 3.23 3.23 0 01-.614-.057 3.283 3.283 0 003.067 2.277A6.588 6.588 0 01.78 13.58a6.32 6.32 0 01-.78-.045A9.344 9.344 0 005.026 15z"/></symbol><symbol fill="currentColor" class="bi bi-type" viewBox="0 0 16 16" id="type" xmlns="http://www.w3.org/2000/svg"><path d="M2.244 13.081l.943-2.803H6.66l.944 2.803H8.86L5.54 3.75H4.322L1 13.081h1.244zm2.7-7.923L6.34 9.314H3.51l1.4-4.156h.034zm9.146 7.027h.035v.896h1.128V8.125c0-1.51-1.114-2.345-2.646-2.345-1.736 0-2.59.916-2.666 2.174h1.108c.068-.718.595-1.19 1.517-1.19.971 0 1.518.52 1.518 1.464v.731H12.19c-1.647.007-2.522.8-2.522 2.058 0 1.319.957 2.18 2.345 2.18 1.06 0 1.716-.43 2.078-1.011zm-1.763.035c-.752 0-1.456-.397-1.456-1.244 0-.65.424-1.115 1.408-1.115h1.805v.834c0 .896-.752 1.525-1.757 1.525z"/></symbol><symbol fill="currentColor" class="bi bi-type-bold" viewBox="0 0 16 16" id="type-bold" xmlns="http://www.w3.org/2000/svg"><path d="M8.21 13c2.106 0 3.412-1.087 3.412-2.823 0-1.306-.984-2.283-2.324-2.386v-.055a2.176 2.176 0 001.852-2.14c0-1.51-1.162-2.46-3.014-2.46H3.843V13H8.21zM5.908 4.674h1.696c.963 0 1.517.451 1.517 1.244 0 .834-.629 1.32-1.73 1.32H5.908V4.673zm0 6.788V8.598h1.73c1.217 0 1.88.492 1.88 1.415 0 .943-.643 1.449-1.832 1.449H5.907z"/></symbol><symbol fill="currentColor" class="bi bi-type-h1" viewBox="0 0 16 16" id="type-h1" xmlns="http://www.w3.org/2000/svg"><path d="M8.637 13V3.669H7.379V7.62H2.758V3.67H1.5V13h1.258V8.728h4.62V13h1.259zm5.329 0V3.669h-1.244L10.5 5.316v1.265l2.16-1.565h.062V13h1.244z"/></symbol><symbol fill="currentColor" class="bi bi-type-h2" viewBox="0 0 16 16" id="type-h2" xmlns="http://www.w3.org/2000/svg"><path d="M7.638 13V3.669H6.38V7.62H1.759V3.67H.5V13h1.258V8.728h4.62V13h1.259zm3.022-6.733v-.048c0-.889.63-1.668 1.716-1.668.957 0 1.675.608 1.675 1.572 0 .855-.554 1.504-1.067 2.085l-3.513 3.999V13H15.5v-1.094h-4.245v-.075l2.481-2.844c.875-.998 1.586-1.784 1.586-2.953 0-1.463-1.155-2.556-2.919-2.556-1.941 0-2.966 1.326-2.966 2.74v.049h1.223z"/></symbol><symbol fill="currentColor" class="bi bi-type-h3" viewBox="0 0 16 16" id="type-h3" xmlns="http://www.w3.org/2000/svg"><path d="M7.637 13V3.669H6.379V7.62H1.758V3.67H.5V13h1.258V8.728h4.62V13h1.259zm3.625-4.272h1.018c1.142 0 1.935.67 1.949 1.674.013 1.005-.78 1.737-2.01 1.73-1.08-.007-1.853-.588-1.935-1.32H9.108c.069 1.327 1.224 2.386 3.083 2.386 1.935 0 3.343-1.155 3.309-2.789-.027-1.51-1.251-2.16-2.037-2.249v-.068c.704-.123 1.764-.91 1.723-2.229-.035-1.353-1.176-2.4-2.954-2.385-1.873.006-2.857 1.162-2.898 2.358h1.196c.062-.69.711-1.299 1.696-1.299.998 0 1.695.622 1.695 1.525.007.922-.718 1.592-1.695 1.592h-.964v1.074z"/></symbol><symbol fill="currentColor" class="bi bi-type-italic" viewBox="0 0 16 16" id="type-italic" xmlns="http://www.w3.org/2000/svg"><path d="M7.991 11.674L9.53 4.455c.123-.595.246-.71 1.347-.807l.11-.52H7.211l-.11.52c1.06.096 1.128.212 1.005.807L6.57 11.674c-.123.595-.246.71-1.346.806l-.11.52h3.774l.11-.52c-1.06-.095-1.129-.211-1.006-.806z"/></symbol><symbol fill="currentColor" class="bi bi-type-strikethrough" viewBox="0 0 16 16" id="type-strikethrough" xmlns="http://www.w3.org/2000/svg"><path d="M6.333 5.686c0 .31.083.581.27.814H5.166a2.776 2.776 0 01-.099-.76c0-1.627 1.436-2.768 3.48-2.768 1.969 0 3.39 1.175 3.445 2.85h-1.23c-.11-1.08-.964-1.743-2.25-1.743-1.23 0-2.18.602-2.18 1.607zm2.194 7.478c-2.153 0-3.589-1.107-3.705-2.81h1.23c.144 1.06 1.129 1.703 2.544 1.703 1.34 0 2.31-.705 2.31-1.675 0-.827-.547-1.374-1.914-1.675L8.046 8.5H1v-1h14v1h-3.504c.468.437.675.994.675 1.697 0 1.826-1.436 2.967-3.644 2.967z"/></symbol><symbol fill="currentColor" class="bi bi-type-underline" viewBox="0 0 16 16" id="type-underline" xmlns="http://www.w3.org/2000/svg"><path d="M5.313 3.136h-1.23V9.54c0 2.105 1.47 3.623 3.917 3.623s3.917-1.518 3.917-3.623V3.136h-1.23v6.323c0 1.49-.978 2.57-2.687 2.57-1.709 0-2.687-1.08-2.687-2.57V3.136zM12.5 15h-9v-1h9v1z"/></symbol><symbol fill="currentColor" class="bi bi-ui-checks" viewBox="0 0 16 16" id="ui-checks" xmlns="http://www.w3.org/2000/svg"><path d="M7 2.5a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-1zM2 1a2 2 0 00-2 2v2a2 2 0 002 2h2a2 2 0 002-2V3a2 2 0 00-2-2H2zm0 8a2 2 0 00-2 2v2a2 2 0 002 2h2a2 2 0 002-2v-2a2 2 0 00-2-2H2zm.854-3.646a.5.5 0 01-.708 0l-1-1a.5.5 0 11.708-.708l.646.647 1.646-1.647a.5.5 0 11.708.708l-2 2zm0 8a.5.5 0 01-.708 0l-1-1a.5.5 0 01.708-.708l.646.647 1.646-1.647a.5.5 0 01.708.708l-2 2zM7 10.5a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-1zm0-5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 8a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-ui-checks-grid" viewBox="0 0 16 16" id="ui-checks-grid" xmlns="http://www.w3.org/2000/svg"><path d="M2 10h3a1 1 0 011 1v3a1 1 0 01-1 1H2a1 1 0 01-1-1v-3a1 1 0 011-1zm9-9h3a1 1 0 011 1v3a1 1 0 01-1 1h-3a1 1 0 01-1-1V2a1 1 0 011-1zm0 9a1 1 0 00-1 1v3a1 1 0 001 1h3a1 1 0 001-1v-3a1 1 0 00-1-1h-3zm0-10a2 2 0 00-2 2v3a2 2 0 002 2h3a2 2 0 002-2V2a2 2 0 00-2-2h-3zM2 9a2 2 0 00-2 2v3a2 2 0 002 2h3a2 2 0 002-2v-3a2 2 0 00-2-2H2zm7 2a2 2 0 012-2h3a2 2 0 012 2v3a2 2 0 01-2 2h-3a2 2 0 01-2-2v-3zM0 2a2 2 0 012-2h3a2 2 0 012 2v3a2 2 0 01-2 2H2a2 2 0 01-2-2V2zm5.354.854a.5.5 0 10-.708-.708L3 3.793l-.646-.647a.5.5 0 10-.708.708l1 1a.5.5 0 00.708 0l2-2z"/></symbol><symbol fill="currentColor" class="bi bi-ui-radios" viewBox="0 0 16 16" id="ui-radios" xmlns="http://www.w3.org/2000/svg"><path d="M7 2.5a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-1zM0 12a3 3 0 116 0 3 3 0 01-6 0zm7-1.5a.5.5 0 01.5-.5h7a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-1zm0-5a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zm0 8a.5.5 0 01.5-.5h5a.5.5 0 010 1h-5a.5.5 0 01-.5-.5zM3 1a3 3 0 100 6 3 3 0 000-6zm0 4.5a1.5 1.5 0 110-3 1.5 1.5 0 010 3z"/></symbol><symbol fill="currentColor" class="bi bi-ui-radios-grid" viewBox="0 0 16 16" id="ui-radios-grid" xmlns="http://www.w3.org/2000/svg"><path d="M3.5 15a2.5 2.5 0 100-5 2.5 2.5 0 000 5zm9-9a2.5 2.5 0 100-5 2.5 2.5 0 000 5zm0 9a2.5 2.5 0 110-5 2.5 2.5 0 010 5zM16 3.5a3.5 3.5 0 11-7 0 3.5 3.5 0 017 0zm-9 9a3.5 3.5 0 11-7 0 3.5 3.5 0 017 0zm5.5 3.5a3.5 3.5 0 100-7 3.5 3.5 0 000 7zm-9-11a1.5 1.5 0 110-3 1.5 1.5 0 010 3zm0 2a3.5 3.5 0 100-7 3.5 3.5 0 000 7z"/></symbol><symbol fill="currentColor" class="bi bi-umbrella" viewBox="0 0 16 16" id="umbrella" xmlns="http://www.w3.org/2000/svg"><path d="M8 0a.5.5 0 01.5.5v.514C12.625 1.238 16 4.22 16 8c0 0 0 .5-.5.5-.149 0-.352-.145-.352-.145l-.004-.004-.025-.023a3.484 3.484 0 00-.555-.394A3.166 3.166 0 0013 7.5c-.638 0-1.178.213-1.564.434a3.484 3.484 0 00-.555.394l-.025.023-.003.003s-.204.146-.353.146-.352-.145-.352-.145l-.004-.004-.025-.023a3.484 3.484 0 00-.555-.394 3.3 3.3 0 00-1.064-.39V13.5H8h.5v.039l-.005.083a2.958 2.958 0 01-.298 1.102 2.257 2.257 0 01-.763.88C7.06 15.851 6.587 16 6 16s-1.061-.148-1.434-.396a2.255 2.255 0 01-.763-.88 2.958 2.958 0 01-.302-1.185v-.025l-.001-.009v-.003s0-.002.5-.002h-.5V13a.5.5 0 011 0v.506l.003.044a1.958 1.958 0 00.195.726c.095.191.23.367.423.495.19.127.466.229.879.229s.689-.102.879-.229c.193-.128.328-.304.424-.495a1.958 1.958 0 00.197-.77V7.544a3.3 3.3 0 00-1.064.39 3.482 3.482 0 00-.58.417l-.004.004S5.65 8.5 5.5 8.5c-.149 0-.352-.145-.352-.145l-.004-.004a3.482 3.482 0 00-.58-.417A3.166 3.166 0 003 7.5c-.638 0-1.177.213-1.564.434a3.482 3.482 0 00-.58.417l-.004.004S.65 8.5.5 8.5C0 8.5 0 8 0 8c0-3.78 3.375-6.762 7.5-6.986V.5A.5.5 0 018 0zM6.577 2.123c-2.833.5-4.99 2.458-5.474 4.854A4.124 4.124 0 013 6.5c.806 0 1.48.25 1.962.511a9.706 9.706 0 01.344-2.358c.242-.868.64-1.765 1.271-2.53zm-.615 4.93A4.16 4.16 0 018 6.5a4.16 4.16 0 012.038.553 8.688 8.688 0 00-.307-2.13C9.434 3.858 8.898 2.83 8 2.117c-.898.712-1.434 1.74-1.731 2.804a8.687 8.687 0 00-.307 2.131zm3.46-4.93c.631.765 1.03 1.662 1.272 2.53.233.833.328 1.66.344 2.358A4.14 4.14 0 0113 6.5c.77 0 1.42.23 1.897.477-.484-2.396-2.641-4.355-5.474-4.854z"/></symbol><symbol fill="currentColor" class="bi bi-umbrella-fill" viewBox="0 0 16 16" id="umbrella-fill" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M8 0a.5.5 0 01.5.5v.514C12.625 1.238 16 4.22 16 8c0 0 0 .5-.5.5-.149 0-.352-.145-.352-.145l-.004-.004-.025-.023a3.484 3.484 0 00-.555-.394A3.166 3.166 0 0013 7.5c-.638 0-1.178.213-1.564.434a3.484 3.484 0 00-.555.394l-.025.023-.003.003s-.204.146-.353.146-.352-.145-.352-.145l-.004-.004-.025-.023a3.484 3.484 0 00-.555-.394 3.3 3.3 0 00-1.064-.39V13.5H8h.5v.039l-.005.083a2.958 2.958 0 01-.298 1.102 2.257 2.257 0 01-.763.88C7.06 15.851 6.587 16 6 16s-1.061-.148-1.434-.396a2.255 2.255 0 01-.763-.88 2.958 2.958 0 01-.302-1.185v-.025l-.001-.009v-.003s0-.002.5-.002h-.5V13a.5.5 0 011 0v.506l.003.044a1.958 1.958 0 00.195.726c.095.191.23.367.423.495.19.127.466.229.879.229s.689-.102.879-.229c.193-.128.328-.304.424-.495a1.958 1.958 0 00.197-.77V7.544a3.3 3.3 0 00-1.064.39 3.482 3.482 0 00-.58.417l-.004.004S5.65 8.5 5.5 8.5c-.149 0-.352-.145-.352-.145l-.004-.004a3.482 3.482 0 00-.58-.417A3.166 3.166 0 003 7.5c-.638 0-1.177.213-1.564.434a3.482 3.482 0 00-.58.417l-.004.004S.65 8.5.5 8.5C0 8.5 0 8 0 8c0-3.78 3.375-6.762 7.5-6.986V.5A.5.5 0 018 0z"/></symbol><symbol fill="currentColor" class="bi bi-union" viewBox="0 0 16 16" id="union" xmlns="http://www.w3.org/2000/svg"><path d="M0 2a2 2 0 012-2h8a2 2 0 012 2v2h2a2 2 0 012 2v8a2 2 0 01-2 2H6a2 2 0 01-2-2v-2H2a2 2 0 01-2-2V2z"/></symbol><symbol fill="currentColor" class="bi bi-unlock" viewBox="0 0 16 16" id="unlock" xmlns="http://www.w3.org/2000/svg"><path d="M11 1a2 2 0 00-2 2v4a2 2 0 012 2v5a2 2 0 01-2 2H3a2 2 0 01-2-2V9a2 2 0 012-2h5V3a3 3 0 016 0v4a.5.5 0 01-1 0V3a2 2 0 00-2-2zM3 8a1 1 0 00-1 1v5a1 1 0 001 1h6a1 1 0 001-1V9a1 1 0 00-1-1H3z"/></symbol><symbol fill="currentColor" class="bi bi-unlock-fill" viewBox="0 0 16 16" id="unlock-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11 1a2 2 0 00-2 2v4a2 2 0 012 2v5a2 2 0 01-2 2H3a2 2 0 01-2-2V9a2 2 0 012-2h5V3a3 3 0 016 0v4a.5.5 0 01-1 0V3a2 2 0 00-2-2z"/></symbol><symbol fill="currentColor" class="bi bi-upc" viewBox="0 0 16 16" id="upc" xmlns="http://www.w3.org/2000/svg"><path d="M3 4.5a.5.5 0 011 0v7a.5.5 0 01-1 0v-7zm2 0a.5.5 0 011 0v7a.5.5 0 01-1 0v-7zm2 0a.5.5 0 011 0v7a.5.5 0 01-1 0v-7zm2 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v7a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-7zm3 0a.5.5 0 011 0v7a.5.5 0 01-1 0v-7z"/></symbol><symbol fill="currentColor" class="bi bi-upc-scan" viewBox="0 0 16 16" id="upc-scan" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 1a.5.5 0 00-.5.5v3a.5.5 0 01-1 0v-3A1.5 1.5 0 011.5 0h3a.5.5 0 010 1h-3zM11 .5a.5.5 0 01.5-.5h3A1.5 1.5 0 0116 1.5v3a.5.5 0 01-1 0v-3a.5.5 0 00-.5-.5h-3a.5.5 0 01-.5-.5zM.5 11a.5.5 0 01.5.5v3a.5.5 0 00.5.5h3a.5.5 0 010 1h-3A1.5 1.5 0 010 14.5v-3a.5.5 0 01.5-.5zm15 0a.5.5 0 01.5.5v3a1.5 1.5 0 01-1.5 1.5h-3a.5.5 0 010-1h3a.5.5 0 00.5-.5v-3a.5.5 0 01.5-.5zM3 4.5a.5.5 0 011 0v7a.5.5 0 01-1 0v-7zm2 0a.5.5 0 011 0v7a.5.5 0 01-1 0v-7zm2 0a.5.5 0 011 0v7a.5.5 0 01-1 0v-7zm2 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v7a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-7zm3 0a.5.5 0 011 0v7a.5.5 0 01-1 0v-7z"/></symbol><symbol fill="currentColor" class="bi bi-upload" viewBox="0 0 16 16" id="upload" xmlns="http://www.w3.org/2000/svg"><path d="M.5 9.9a.5.5 0 01.5.5v2.5a1 1 0 001 1h12a1 1 0 001-1v-2.5a.5.5 0 011 0v2.5a2 2 0 01-2 2H2a2 2 0 01-2-2v-2.5a.5.5 0 01.5-.5z"/><path d="M7.646 1.146a.5.5 0 01.708 0l3 3a.5.5 0 01-.708.708L8.5 2.707V11.5a.5.5 0 01-1 0V2.707L5.354 4.854a.5.5 0 11-.708-.708l3-3z"/></symbol><symbol fill="currentColor" class="bi bi-vector-pen" viewBox="0 0 16 16" id="vector-pen" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M10.646.646a.5.5 0 01.708 0l4 4a.5.5 0 010 .708l-1.902 1.902-.829 3.313a1.5 1.5 0 01-1.024 1.073L1.254 14.746 4.358 4.4A1.5 1.5 0 015.43 3.377l3.313-.828L10.646.646zm-1.8 2.908l-3.173.793a.5.5 0 00-.358.342l-2.57 8.565 8.567-2.57a.5.5 0 00.34-.357l.794-3.174-3.6-3.6z"/><path fill-rule="evenodd" d="M2.832 13.228L8 9a1 1 0 10-1-1l-4.228 5.168-.026.086.086-.026z"/></symbol><symbol fill="currentColor" class="bi bi-view-list" viewBox="0 0 16 16" id="view-list" xmlns="http://www.w3.org/2000/svg"><path d="M3 4.5h10a2 2 0 012 2v3a2 2 0 01-2 2H3a2 2 0 01-2-2v-3a2 2 0 012-2zm0 1a1 1 0 00-1 1v3a1 1 0 001 1h10a1 1 0 001-1v-3a1 1 0 00-1-1H3zM1 2a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13A.5.5 0 011 2zm0 12a.5.5 0 01.5-.5h13a.5.5 0 010 1h-13A.5.5 0 011 14z"/></symbol><symbol fill="currentColor" class="bi bi-view-stacked" viewBox="0 0 16 16" id="view-stacked" xmlns="http://www.w3.org/2000/svg"><path d="M3 0h10a2 2 0 012 2v3a2 2 0 01-2 2H3a2 2 0 01-2-2V2a2 2 0 012-2zm0 1a1 1 0 00-1 1v3a1 1 0 001 1h10a1 1 0 001-1V2a1 1 0 00-1-1H3zm0 8h10a2 2 0 012 2v3a2 2 0 01-2 2H3a2 2 0 01-2-2v-3a2 2 0 012-2zm0 1a1 1 0 00-1 1v3a1 1 0 001 1h10a1 1 0 001-1v-3a1 1 0 00-1-1H3z"/></symbol><symbol fill="currentColor" class="bi bi-vinyl" viewBox="0 0 16 16" id="vinyl" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M8 6a2 2 0 100 4 2 2 0 000-4zM4 8a4 4 0 118 0 4 4 0 01-8 0z"/><path d="M9 8a1 1 0 11-2 0 1 1 0 012 0z"/></symbol><symbol fill="currentColor" class="bi bi-vinyl-fill" viewBox="0 0 16 16" id="vinyl-fill" xmlns="http://www.w3.org/2000/svg"><path d="M8 6a2 2 0 100 4 2 2 0 000-4zm0 3a1 1 0 110-2 1 1 0 010 2z"/><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM4 8a4 4 0 108 0 4 4 0 00-8 0z"/></symbol><symbol fill="currentColor" class="bi bi-voicemail" viewBox="0 0 16 16" id="voicemail" xmlns="http://www.w3.org/2000/svg"><path d="M7 8.5A3.49 3.49 0 015.95 11h4.1a3.5 3.5 0 112.45 1h-9A3.5 3.5 0 117 8.5zm-6 0a2.5 2.5 0 105 0 2.5 2.5 0 00-5 0zm14 0a2.5 2.5 0 10-5 0 2.5 2.5 0 005 0z"/></symbol><symbol fill="currentColor" class="bi bi-volume-down" viewBox="0 0 16 16" id="volume-down" xmlns="http://www.w3.org/2000/svg"><path d="M9 4a.5.5 0 00-.812-.39L5.825 5.5H3.5A.5.5 0 003 6v4a.5.5 0 00.5.5h2.325l2.363 1.89A.5.5 0 009 12V4zM6.312 6.39L8 5.04v5.92L6.312 9.61A.5.5 0 006 9.5H4v-3h2a.5.5 0 00.312-.11zM12.025 8a4.486 4.486 0 01-1.318 3.182L10 10.475A3.489 3.489 0 0011.025 8 3.49 3.49 0 0010 5.525l.707-.707A4.486 4.486 0 0112.025 8z"/></symbol><symbol fill="currentColor" class="bi bi-volume-down-fill" viewBox="0 0 16 16" id="volume-down-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9 4a.5.5 0 00-.812-.39L5.825 5.5H3.5A.5.5 0 003 6v4a.5.5 0 00.5.5h2.325l2.363 1.89A.5.5 0 009 12V4zm3.025 4a4.486 4.486 0 01-1.318 3.182L10 10.475A3.489 3.489 0 0011.025 8 3.49 3.49 0 0010 5.525l.707-.707A4.486 4.486 0 0112.025 8z"/></symbol><symbol fill="currentColor" class="bi bi-volume-mute" viewBox="0 0 16 16" id="volume-mute" xmlns="http://www.w3.org/2000/svg"><path d="M6.717 3.55A.5.5 0 017 4v8a.5.5 0 01-.812.39L3.825 10.5H1.5A.5.5 0 011 10V6a.5.5 0 01.5-.5h2.325l2.363-1.89a.5.5 0 01.529-.06zM6 5.04L4.312 6.39A.5.5 0 014 6.5H2v3h2a.5.5 0 01.312.11L6 10.96V5.04zm7.854.606a.5.5 0 010 .708L12.207 8l1.647 1.646a.5.5 0 01-.708.708L11.5 8.707l-1.646 1.647a.5.5 0 01-.708-.708L10.793 8 9.146 6.354a.5.5 0 11.708-.708L11.5 7.293l1.646-1.647a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-volume-mute-fill" viewBox="0 0 16 16" id="volume-mute-fill" xmlns="http://www.w3.org/2000/svg"><path d="M6.717 3.55A.5.5 0 017 4v8a.5.5 0 01-.812.39L3.825 10.5H1.5A.5.5 0 011 10V6a.5.5 0 01.5-.5h2.325l2.363-1.89a.5.5 0 01.529-.06zm7.137 2.096a.5.5 0 010 .708L12.207 8l1.647 1.646a.5.5 0 01-.708.708L11.5 8.707l-1.646 1.647a.5.5 0 01-.708-.708L10.793 8 9.146 6.354a.5.5 0 11.708-.708L11.5 7.293l1.646-1.647a.5.5 0 01.708 0z"/></symbol><symbol fill="currentColor" class="bi bi-volume-off" viewBox="0 0 16 16" id="volume-off" xmlns="http://www.w3.org/2000/svg"><path d="M10.717 3.55A.5.5 0 0111 4v8a.5.5 0 01-.812.39L7.825 10.5H5.5A.5.5 0 015 10V6a.5.5 0 01.5-.5h2.325l2.363-1.89a.5.5 0 01.529-.06zM10 5.04L8.312 6.39A.5.5 0 018 6.5H6v3h2a.5.5 0 01.312.11L10 10.96V5.04z"/></symbol><symbol fill="currentColor" class="bi bi-volume-off-fill" viewBox="0 0 16 16" id="volume-off-fill" xmlns="http://www.w3.org/2000/svg"><path d="M10.717 3.55A.5.5 0 0111 4v8a.5.5 0 01-.812.39L7.825 10.5H5.5A.5.5 0 015 10V6a.5.5 0 01.5-.5h2.325l2.363-1.89a.5.5 0 01.529-.06z"/></symbol><symbol fill="currentColor" class="bi bi-volume-up" viewBox="0 0 16 16" id="volume-up" xmlns="http://www.w3.org/2000/svg"><path d="M11.536 14.01A8.473 8.473 0 0014.026 8a8.473 8.473 0 00-2.49-6.01l-.708.707A7.476 7.476 0 0113.025 8c0 2.071-.84 3.946-2.197 5.303l.708.707z"/><path d="M10.121 12.596A6.48 6.48 0 0012.025 8a6.48 6.48 0 00-1.904-4.596l-.707.707A5.483 5.483 0 0111.025 8a5.483 5.483 0 01-1.61 3.89l.706.706z"/><path d="M10.025 8a4.486 4.486 0 01-1.318 3.182L8 10.475A3.489 3.489 0 009.025 8c0-.966-.392-1.841-1.025-2.475l.707-.707A4.486 4.486 0 0110.025 8zM7 4a.5.5 0 00-.812-.39L3.825 5.5H1.5A.5.5 0 001 6v4a.5.5 0 00.5.5h2.325l2.363 1.89A.5.5 0 007 12V4zM4.312 6.39L6 5.04v5.92L4.312 9.61A.5.5 0 004 9.5H2v-3h2a.5.5 0 00.312-.11z"/></symbol><symbol fill="currentColor" class="bi bi-volume-up-fill" viewBox="0 0 16 16" id="volume-up-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.536 14.01A8.473 8.473 0 0014.026 8a8.473 8.473 0 00-2.49-6.01l-.708.707A7.476 7.476 0 0113.025 8c0 2.071-.84 3.946-2.197 5.303l.708.707z"/><path d="M10.121 12.596A6.48 6.48 0 0012.025 8a6.48 6.48 0 00-1.904-4.596l-.707.707A5.483 5.483 0 0111.025 8a5.483 5.483 0 01-1.61 3.89l.706.706z"/><path d="M8.707 11.182A4.486 4.486 0 0010.025 8a4.486 4.486 0 00-1.318-3.182L8 5.525A3.489 3.489 0 019.025 8 3.49 3.49 0 018 10.475l.707.707zM6.717 3.55A.5.5 0 017 4v8a.5.5 0 01-.812.39L3.825 10.5H1.5A.5.5 0 011 10V6a.5.5 0 01.5-.5h2.325l2.363-1.89a.5.5 0 01.529-.06z"/></symbol><symbol fill="currentColor" class="bi bi-vr" viewBox="0 0 16 16" id="vr" xmlns="http://www.w3.org/2000/svg"><path d="M3 12V4a1 1 0 011-1h2.5V2H4a2 2 0 00-2 2v8a2 2 0 002 2h2.5v-1H4a1 1 0 01-1-1zm6.5 1v1H12a2 2 0 002-2V4a2 2 0 00-2-2H9.5v1H12a1 1 0 011 1v8a1 1 0 01-1 1H9.5zM8 16a.5.5 0 01-.5-.5V.5a.5.5 0 011 0v15a.5.5 0 01-.5.5z"/></symbol><symbol fill="currentColor" class="bi bi-wallet" viewBox="0 0 16 16" id="wallet" xmlns="http://www.w3.org/2000/svg"><path d="M0 3a2 2 0 012-2h13.5a.5.5 0 010 1H15v2a1 1 0 011 1v8.5a1.5 1.5 0 01-1.5 1.5h-12A2.5 2.5 0 010 12.5V3zm1 1.732V12.5A1.5 1.5 0 002.5 14h12a.5.5 0 00.5-.5V5H2a1.99 1.99 0 01-1-.268zM1 3a1 1 0 001 1h12V2H2a1 1 0 00-1 1z"/></symbol><symbol fill="currentColor" class="bi bi-wallet-fill" viewBox="0 0 16 16" id="wallet-fill" xmlns="http://www.w3.org/2000/svg"><path d="M1.5 2A1.5 1.5 0 000 3.5v2h6a.5.5 0 01.5.5c0 .253.08.644.306.958.207.288.557.542 1.194.542.637 0 .987-.254 1.194-.542.226-.314.306-.705.306-.958a.5.5 0 01.5-.5h6v-2A1.5 1.5 0 0014.5 2h-13z"/><path d="M16 6.5h-5.551a2.678 2.678 0 01-.443 1.042C9.613 8.088 8.963 8.5 8 8.5c-.963 0-1.613-.412-2.006-.958A2.679 2.679 0 015.551 6.5H0v6A1.5 1.5 0 001.5 14h13a1.5 1.5 0 001.5-1.5v-6z"/></symbol><symbol fill="currentColor" class="bi bi-wallet2" viewBox="0 0 16 16" id="wallet2" xmlns="http://www.w3.org/2000/svg"><path d="M12.136.326A1.5 1.5 0 0114 1.78V3h.5A1.5 1.5 0 0116 4.5v9a1.5 1.5 0 01-1.5 1.5h-13A1.5 1.5 0 010 13.5v-9a1.5 1.5 0 011.432-1.499L12.136.326zM5.562 3H13V1.78a.5.5 0 00-.621-.484L5.562 3zM1.5 4a.5.5 0 00-.5.5v9a.5.5 0 00.5.5h13a.5.5 0 00.5-.5v-9a.5.5 0 00-.5-.5h-13z"/></symbol><symbol fill="currentColor" class="bi bi-watch" viewBox="0 0 16 16" id="watch" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 5a.5.5 0 00-1 0v2.5H6a.5.5 0 000 1h2a.5.5 0 00.5-.5V5z"/><path d="M5.667 16C4.747 16 4 15.254 4 14.333v-1.86A5.985 5.985 0 012 8c0-1.777.772-3.374 2-4.472V1.667C4 .747 4.746 0 5.667 0h4.666C11.253 0 12 .746 12 1.667v1.86a5.99 5.99 0 011.918 3.48.502.502 0 01.582.493v1a.5.5 0 01-.582.493A5.99 5.99 0 0112 12.473v1.86c0 .92-.746 1.667-1.667 1.667H5.667zM13 8A5 5 0 103 8a5 5 0 0010 0z"/></symbol><symbol fill="currentColor" class="bi bi-water" viewBox="0 0 16 16" id="water" xmlns="http://www.w3.org/2000/svg"><path d="M.036 3.314a.5.5 0 01.65-.278l1.757.703a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.757-.703a.5.5 0 11.372.928l-1.758.703a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0L.314 3.964a.5.5 0 01-.278-.65zm0 3a.5.5 0 01.65-.278l1.757.703a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.757-.703a.5.5 0 11.372.928l-1.758.703a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0L.314 6.964a.5.5 0 01-.278-.65zm0 3a.5.5 0 01.65-.278l1.757.703a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.757-.703a.5.5 0 11.372.928l-1.758.703a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0L.314 9.964a.5.5 0 01-.278-.65zm0 3a.5.5 0 01.65-.278l1.757.703a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.014-.406a2.5 2.5 0 011.857 0l1.015.406a1.5 1.5 0 001.114 0l1.757-.703a.5.5 0 11.372.928l-1.758.703a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.014-.406a1.5 1.5 0 00-1.114 0l-1.015.406a2.5 2.5 0 01-1.857 0l-1.757-.703a.5.5 0 01-.278-.65z"/></symbol><symbol fill="currentColor" class="bi bi-whatsapp" viewBox="0 0 16 16" id="whatsapp" xmlns="http://www.w3.org/2000/svg"><path d="M13.601 2.326A7.854 7.854 0 007.994 0C3.627 0 .068 3.558.064 7.926c0 1.399.366 2.76 1.057 3.965L0 16l4.204-1.102a7.933 7.933 0 003.79.965h.004c4.368 0 7.926-3.558 7.93-7.93A7.898 7.898 0 0013.6 2.326zM7.994 14.521a6.573 6.573 0 01-3.356-.92l-.24-.144-2.494.654.666-2.433-.156-.251a6.56 6.56 0 01-1.007-3.505c0-3.626 2.957-6.584 6.591-6.584a6.56 6.56 0 014.66 1.931 6.557 6.557 0 011.928 4.66c-.004 3.639-2.961 6.592-6.592 6.592zm3.615-4.934c-.197-.099-1.17-.578-1.353-.646-.182-.065-.315-.099-.445.099-.133.197-.513.646-.627.775-.114.133-.232.148-.43.05-.197-.1-.836-.308-1.592-.985-.59-.525-.985-1.175-1.103-1.372-.114-.198-.011-.304.088-.403.087-.088.197-.232.296-.346.1-.114.133-.198.198-.33.065-.134.034-.248-.015-.347-.05-.099-.445-1.076-.612-1.47-.16-.389-.323-.335-.445-.34-.114-.007-.247-.007-.38-.007a.729.729 0 00-.529.247c-.182.198-.691.677-.691 1.654 0 .977.71 1.916.81 2.049.098.133 1.394 2.132 3.383 2.992.47.205.84.326 1.129.418.475.152.904.129 1.246.08.38-.058 1.171-.48 1.338-.943.164-.464.164-.86.114-.943-.049-.084-.182-.133-.38-.232z"/></symbol><symbol fill="currentColor" class="bi bi-wifi" viewBox="0 0 16 16" id="wifi" xmlns="http://www.w3.org/2000/svg"><path d="M15.384 6.115a.485.485 0 00-.047-.736A12.444 12.444 0 008 3C5.259 3 2.723 3.882.663 5.379a.485.485 0 00-.048.736.518.518 0 00.668.05A11.448 11.448 0 018 4c2.507 0 4.827.802 6.716 2.164.205.148.49.13.668-.049z"/><path d="M13.229 8.271a.482.482 0 00-.063-.745A9.455 9.455 0 008 6c-1.905 0-3.68.56-5.166 1.526a.48.48 0 00-.063.745.525.525 0 00.652.065A8.46 8.46 0 018 7a8.46 8.46 0 014.576 1.336c.206.132.48.108.653-.065zm-2.183 2.183c.226-.226.185-.605-.1-.75A6.473 6.473 0 008 9c-1.06 0-2.062.254-2.946.704-.285.145-.326.524-.1.75l.015.015c.16.16.407.19.611.09A5.478 5.478 0 018 10c.868 0 1.69.201 2.42.56.203.1.45.07.61-.091l.016-.015zM9.06 12.44c.196-.196.198-.52-.04-.66A1.99 1.99 0 008 11.5a1.99 1.99 0 00-1.02.28c-.238.14-.236.464-.04.66l.706.706a.5.5 0 00.707 0l.707-.707z"/></symbol><symbol fill="currentColor" class="bi bi-wifi-1" viewBox="0 0 16 16" id="wifi-1" xmlns="http://www.w3.org/2000/svg"><path d="M11.046 10.454c.226-.226.185-.605-.1-.75A6.473 6.473 0 008 9c-1.06 0-2.062.254-2.946.704-.285.145-.326.524-.1.75l.015.015c.16.16.407.19.611.09A5.478 5.478 0 018 10c.868 0 1.69.201 2.42.56.203.1.45.07.611-.091l.015-.015zM9.06 12.44c.196-.196.198-.52-.04-.66A1.99 1.99 0 008 11.5a1.99 1.99 0 00-1.02.28c-.238.14-.236.464-.04.66l.706.706a.5.5 0 00.707 0l.708-.707z"/></symbol><symbol fill="currentColor" class="bi bi-wifi-2" viewBox="0 0 16 16" id="wifi-2" xmlns="http://www.w3.org/2000/svg"><path d="M13.229 8.271c.216-.216.194-.578-.063-.745A9.456 9.456 0 008 6c-1.905 0-3.68.56-5.166 1.526a.48.48 0 00-.063.745.525.525 0 00.652.065A8.46 8.46 0 018 7a8.46 8.46 0 014.577 1.336c.205.132.48.108.652-.065zm-2.183 2.183c.226-.226.185-.605-.1-.75A6.473 6.473 0 008 9c-1.06 0-2.062.254-2.946.704-.285.145-.326.524-.1.75l.015.015c.16.16.408.19.611.09A5.478 5.478 0 018 10c.868 0 1.69.201 2.42.56.203.1.45.07.611-.091l.015-.015zM9.06 12.44c.196-.196.198-.52-.04-.66A1.99 1.99 0 008 11.5a1.99 1.99 0 00-1.02.28c-.238.14-.236.464-.04.66l.706.706a.5.5 0 00.708 0l.707-.707z"/></symbol><symbol fill="currentColor" class="bi bi-wifi-off" viewBox="0 0 16 16" id="wifi-off" xmlns="http://www.w3.org/2000/svg"><path d="M10.706 3.294A12.545 12.545 0 008 3C5.259 3 2.723 3.882.663 5.379a.485.485 0 00-.048.736.518.518 0 00.668.05A11.448 11.448 0 018 4c.63 0 1.249.05 1.852.148l.854-.854zM8 6c-1.905 0-3.68.56-5.166 1.526a.48.48 0 00-.063.745.525.525 0 00.652.065 8.448 8.448 0 013.51-1.27L8 6zm2.596 1.404l.785-.785c.63.24 1.227.545 1.785.907a.482.482 0 01.063.745.525.525 0 01-.652.065 8.462 8.462 0 00-1.98-.932zM8 10l.933-.933a6.455 6.455 0 012.013.637c.285.145.326.524.1.75l-.015.015a.532.532 0 01-.611.09A5.478 5.478 0 008 10zm4.905-4.905l.747-.747c.59.3 1.153.645 1.685 1.03a.485.485 0 01.047.737.518.518 0 01-.668.05 11.493 11.493 0 00-1.811-1.07zM9.02 11.78c.238.14.236.464.04.66l-.707.706a.5.5 0 01-.707 0l-.707-.707c-.195-.195-.197-.518.04-.66A1.99 1.99 0 018 11.5c.374 0 .723.102 1.021.28zm4.355-9.905a.53.53 0 01.75.75l-10.75 10.75a.53.53 0 01-.75-.75l10.75-10.75z"/></symbol><symbol fill="currentColor" class="bi bi-wind" viewBox="0 0 16 16" id="wind" xmlns="http://www.w3.org/2000/svg"><path d="M12.5 2A2.5 2.5 0 0010 4.5a.5.5 0 01-1 0A3.5 3.5 0 1112.5 8H.5a.5.5 0 010-1h12a2.5 2.5 0 000-5zm-7 1a1 1 0 00-1 1 .5.5 0 01-1 0 2 2 0 112 2h-5a.5.5 0 010-1h5a1 1 0 000-2zM0 9.5A.5.5 0 01.5 9h10.042a3 3 0 11-3 3 .5.5 0 011 0 2 2 0 102-2H.5a.5.5 0 01-.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-window" viewBox="0 0 16 16" id="window" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 4a.5.5 0 100-1 .5.5 0 000 1zm2-.5a.5.5 0 11-1 0 .5.5 0 011 0zm1 .5a.5.5 0 100-1 .5.5 0 000 1z"/><path d="M2 1a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V3a2 2 0 00-2-2H2zm13 2v2H1V3a1 1 0 011-1h12a1 1 0 011 1zM2 14a1 1 0 01-1-1V6h14v7a1 1 0 01-1 1H2z"/></symbol><symbol fill="currentColor" class="bi bi-window-dock" viewBox="0 0 16 16" id="window-dock" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M15 5H1v8a1 1 0 001 1h12a1 1 0 001-1V5zm0-1H1V3a1 1 0 011-1h12a1 1 0 011 1v1zm1-1a2 2 0 00-2-2H2a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V3z"/><path d="M3 11.5a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm4 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1zm4 0a.5.5 0 01.5-.5h1a.5.5 0 01.5.5v1a.5.5 0 01-.5.5h-1a.5.5 0 01-.5-.5v-1z"/></symbol><symbol fill="currentColor" class="bi bi-window-sidebar" viewBox="0 0 16 16" id="window-sidebar" xmlns="http://www.w3.org/2000/svg"><path d="M2.5 4a.5.5 0 100-1 .5.5 0 000 1zm2-.5a.5.5 0 11-1 0 .5.5 0 011 0zm1 .5a.5.5 0 100-1 .5.5 0 000 1z"/><path d="M2 1a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V3a2 2 0 00-2-2H2zm12 1a1 1 0 011 1v2H1V3a1 1 0 011-1h12zM1 13V6h4v8H2a1 1 0 01-1-1zm5 1V6h9v7a1 1 0 01-1 1H6z"/></symbol><symbol fill="currentColor" class="bi bi-wrench" viewBox="0 0 16 16" id="wrench" xmlns="http://www.w3.org/2000/svg"><path d="M.102 2.223A3.004 3.004 0 003.78 5.897l6.341 6.252A3.003 3.003 0 0013 16a3 3 0 10-.851-5.878L5.897 3.781A3.004 3.004 0 002.223.1l2.141 2.142L4 4l-1.757.364L.102 2.223zm13.37 9.019l.528.026.287.445.445.287.026.529L15 13l-.242.471-.026.529-.445.287-.287.445-.529.026L13 15l-.471-.242-.529-.026-.287-.445-.445-.287-.026-.529L11 13l.242-.471.026-.529.445-.287.287-.445.529-.026L13 11l.471.242z"/></symbol><symbol fill="currentColor" class="bi bi-x" viewBox="0 0 16 16" id="x" xmlns="http://www.w3.org/2000/svg"><path d="M4.646 4.646a.5.5 0 01.708 0L8 7.293l2.646-2.647a.5.5 0 01.708.708L8.707 8l2.647 2.646a.5.5 0 01-.708.708L8 8.707l-2.646 2.647a.5.5 0 01-.708-.708L7.293 8 4.646 5.354a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-x-circle" viewBox="0 0 16 16" id="x-circle" xmlns="http://www.w3.org/2000/svg"><path d="M8 15A7 7 0 118 1a7 7 0 010 14zm0 1A8 8 0 108 0a8 8 0 000 16z"/><path d="M4.646 4.646a.5.5 0 01.708 0L8 7.293l2.646-2.647a.5.5 0 01.708.708L8.707 8l2.647 2.646a.5.5 0 01-.708.708L8 8.707l-2.646 2.647a.5.5 0 01-.708-.708L7.293 8 4.646 5.354a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-x-circle-fill" viewBox="0 0 16 16" id="x-circle-fill" xmlns="http://www.w3.org/2000/svg"><path d="M16 8A8 8 0 110 8a8 8 0 0116 0zM5.354 4.646a.5.5 0 10-.708.708L7.293 8l-2.647 2.646a.5.5 0 00.708.708L8 8.707l2.646 2.647a.5.5 0 00.708-.708L8.707 8l2.647-2.646a.5.5 0 00-.708-.708L8 7.293 5.354 4.646z"/></symbol><symbol fill="currentColor" class="bi bi-x-diamond" viewBox="0 0 16 16" id="x-diamond" xmlns="http://www.w3.org/2000/svg"><path d="M7.987 16a1.526 1.526 0 01-1.07-.448L.45 9.082a1.531 1.531 0 010-2.165L6.917.45a1.531 1.531 0 012.166 0l6.469 6.468A1.526 1.526 0 0116 8.013a1.526 1.526 0 01-.448 1.07l-6.47 6.469A1.526 1.526 0 017.988 16zM7.639 1.17L4.766 4.044 8 7.278l3.234-3.234L8.361 1.17a.51.51 0 00-.722 0zM8.722 8l3.234 3.234 2.873-2.873c.2-.2.2-.523 0-.722l-2.873-2.873L8.722 8zM8 8.722l-3.234 3.234 2.873 2.873c.2.2.523.2.722 0l2.873-2.873L8 8.722zM7.278 8L4.044 4.766 1.17 7.639a.511.511 0 000 .722l2.874 2.873L7.278 8z"/></symbol><symbol fill="currentColor" class="bi bi-x-diamond-fill" viewBox="0 0 16 16" id="x-diamond-fill" xmlns="http://www.w3.org/2000/svg"><path d="M9.05.435c-.58-.58-1.52-.58-2.1 0L4.047 3.339 8 7.293l3.954-3.954L9.049.435zm3.61 3.611L8.708 8l3.954 3.954 2.904-2.905c.58-.58.58-1.519 0-2.098l-2.904-2.905zm-.706 8.614L8 8.708l-3.954 3.954 2.905 2.904c.58.58 1.519.58 2.098 0l2.905-2.904zm-8.614-.706L7.292 8 3.339 4.046.435 6.951c-.58.58-.58 1.519 0 2.098l2.904 2.905z"/></symbol><symbol fill="currentColor" class="bi bi-x-lg" viewBox="0 0 16 16" id="x-lg" xmlns="http://www.w3.org/2000/svg"><path d="M1.293 1.293a1 1 0 011.414 0L8 6.586l5.293-5.293a1 1 0 111.414 1.414L9.414 8l5.293 5.293a1 1 0 01-1.414 1.414L8 9.414l-5.293 5.293a1 1 0 01-1.414-1.414L6.586 8 1.293 2.707a1 1 0 010-1.414z"/></symbol><symbol fill="currentColor" class="bi bi-x-octagon" viewBox="0 0 16 16" id="x-octagon" xmlns="http://www.w3.org/2000/svg"><path d="M4.54.146A.5.5 0 014.893 0h6.214a.5.5 0 01.353.146l4.394 4.394a.5.5 0 01.146.353v6.214a.5.5 0 01-.146.353l-4.394 4.394a.5.5 0 01-.353.146H4.893a.5.5 0 01-.353-.146L.146 11.46A.5.5 0 010 11.107V4.893a.5.5 0 01.146-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z"/><path d="M4.646 4.646a.5.5 0 01.708 0L8 7.293l2.646-2.647a.5.5 0 01.708.708L8.707 8l2.647 2.646a.5.5 0 01-.708.708L8 8.707l-2.646 2.647a.5.5 0 01-.708-.708L7.293 8 4.646 5.354a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-x-octagon-fill" viewBox="0 0 16 16" id="x-octagon-fill" xmlns="http://www.w3.org/2000/svg"><path d="M11.46.146A.5.5 0 0011.107 0H4.893a.5.5 0 00-.353.146L.146 4.54A.5.5 0 000 4.893v6.214a.5.5 0 00.146.353l4.394 4.394a.5.5 0 00.353.146h6.214a.5.5 0 00.353-.146l4.394-4.394a.5.5 0 00.146-.353V4.893a.5.5 0 00-.146-.353L11.46.146zm-6.106 4.5L8 7.293l2.646-2.647a.5.5 0 01.708.708L8.707 8l2.647 2.646a.5.5 0 01-.708.708L8 8.707l-2.646 2.647a.5.5 0 01-.708-.708L7.293 8 4.646 5.354a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-x-square" viewBox="0 0 16 16" id="x-square" xmlns="http://www.w3.org/2000/svg"><path d="M14 1a1 1 0 011 1v12a1 1 0 01-1 1H2a1 1 0 01-1-1V2a1 1 0 011-1h12zM2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2z"/><path d="M4.646 4.646a.5.5 0 01.708 0L8 7.293l2.646-2.647a.5.5 0 01.708.708L8.707 8l2.647 2.646a.5.5 0 01-.708.708L8 8.707l-2.646 2.647a.5.5 0 01-.708-.708L7.293 8 4.646 5.354a.5.5 0 010-.708z"/></symbol><symbol fill="currentColor" class="bi bi-x-square-fill" viewBox="0 0 16 16" id="x-square-fill" xmlns="http://www.w3.org/2000/svg"><path d="M2 0a2 2 0 00-2 2v12a2 2 0 002 2h12a2 2 0 002-2V2a2 2 0 00-2-2H2zm3.354 4.646L8 7.293l2.646-2.647a.5.5 0 01.708.708L8.707 8l2.647 2.646a.5.5 0 01-.708.708L8 8.707l-2.646 2.647a.5.5 0 01-.708-.708L7.293 8 4.646 5.354a.5.5 0 11.708-.708z"/></symbol><symbol fill="currentColor" class="bi bi-youtube" viewBox="0 0 16 16" id="youtube" xmlns="http://www.w3.org/2000/svg"><path d="M8.051 1.999h.089c.822.003 4.987.033 6.11.335a2.01 2.01 0 011.415 1.42c.101.38.172.883.22 1.402l.01.104.022.26.008.104c.065.914.073 1.77.074 1.957v.075c-.001.194-.01 1.108-.082 2.06l-.008.105-.009.104c-.05.572-.124 1.14-.235 1.558a2.007 2.007 0 01-1.415 1.42c-1.16.312-5.569.334-6.18.335h-.142c-.309 0-1.587-.006-2.927-.052l-.17-.006-.087-.004-.171-.007-.171-.007c-1.11-.049-2.167-.128-2.654-.26a2.007 2.007 0 01-1.415-1.419c-.111-.417-.185-.986-.235-1.558L.09 9.82l-.008-.104A31.4 31.4 0 010 7.68v-.123c.002-.215.01-.958.064-1.778l.007-.103.003-.052.008-.104.022-.26.01-.104c.048-.519.119-1.023.22-1.402a2.007 2.007 0 011.415-1.42c.487-.13 1.544-.21 2.654-.26l.17-.007.172-.006.086-.003.171-.007A99.788 99.788 0 017.858 2h.193zM6.4 5.209v4.818l4.157-2.408L6.4 5.209z"/></symbol><symbol fill="currentColor" class="bi bi-zoom-in" viewBox="0 0 16 16" id="zoom-in" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.5 12a5.5 5.5 0 100-11 5.5 5.5 0 000 11zM13 6.5a6.5 6.5 0 11-13 0 6.5 6.5 0 0113 0z"/><path d="M10.344 11.742c.03.04.062.078.098.115l3.85 3.85a1 1 0 001.415-1.414l-3.85-3.85a1.007 1.007 0 00-.115-.1 6.538 6.538 0 01-1.398 1.4z"/><path fill-rule="evenodd" d="M6.5 3a.5.5 0 01.5.5V6h2.5a.5.5 0 010 1H7v2.5a.5.5 0 01-1 0V7H3.5a.5.5 0 010-1H6V3.5a.5.5 0 01.5-.5z"/></symbol><symbol fill="currentColor" class="bi bi-zoom-out" viewBox="0 0 16 16" id="zoom-out" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" d="M6.5 12a5.5 5.5 0 100-11 5.5 5.5 0 000 11zM13 6.5a6.5 6.5 0 11-13 0 6.5 6.5 0 0113 0z"/><path d="M10.344 11.742c.03.04.062.078.098.115l3.85 3.85a1 1 0 001.415-1.414l-3.85-3.85a1.007 1.007 0 00-.115-.1 6.538 6.538 0 01-1.398 1.4z"/><path fill-rule="evenodd" d="M3 6.5a.5.5 0 01.5-.5h6a.5.5 0 010 1h-6a.5.5 0 01-.5-.5z"/></symbol></svg> \ No newline at end of file diff --git a/assets/js/oe-bcl-default.bundle.js b/assets/js/oe-bcl-default.bundle.js deleted file mode 100644 index e046ed97..00000000 --- a/assets/js/oe-bcl-default.bundle.js +++ /dev/null @@ -1,6743 +0,0 @@ -(function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : - typeof define === 'function' && define.amd ? define(factory) : - (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.bootstrap = factory()); -}(this, (function () { 'use strict'; - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): dom/selector-engine.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - const NODE_TEXT = 3; - const SelectorEngine = { - find(selector, element = document.documentElement) { - return [].concat(...Element.prototype.querySelectorAll.call(element, selector)); - }, - - findOne(selector, element = document.documentElement) { - return Element.prototype.querySelector.call(element, selector); - }, - - children(element, selector) { - return [].concat(...element.children).filter(child => child.matches(selector)); - }, - - parents(element, selector) { - const parents = []; - let ancestor = element.parentNode; - - while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) { - if (ancestor.matches(selector)) { - parents.push(ancestor); - } - - ancestor = ancestor.parentNode; - } - - return parents; - }, - - prev(element, selector) { - let previous = element.previousElementSibling; - - while (previous) { - if (previous.matches(selector)) { - return [previous]; - } - - previous = previous.previousElementSibling; - } - - return []; - }, - - next(element, selector) { - let next = element.nextElementSibling; - - while (next) { - if (next.matches(selector)) { - return [next]; - } - - next = next.nextElementSibling; - } - - return []; - } - - }; - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): util/index.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - - const MAX_UID = 1000000; - const MILLISECONDS_MULTIPLIER = 1000; - const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp) - - const toType = obj => { - if (obj === null || obj === undefined) { - return `${obj}`; - } - - return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase(); - }; - /** - * -------------------------------------------------------------------------- - * Public Util Api - * -------------------------------------------------------------------------- - */ - - - const getUID = prefix => { - do { - prefix += Math.floor(Math.random() * MAX_UID); - } while (document.getElementById(prefix)); - - return prefix; - }; - - const getSelector = element => { - let selector = element.getAttribute('data-bs-target'); - - if (!selector || selector === '#') { - let hrefAttr = element.getAttribute('href'); // The only valid content that could double as a selector are IDs or classes, - // so everything starting with `#` or `.`. If a "real" URL is used as the selector, - // `document.querySelector` will rightfully complain it is invalid. - // See https://github.com/twbs/bootstrap/issues/32273 - - if (!hrefAttr || !hrefAttr.includes('#') && !hrefAttr.startsWith('.')) { - return null; - } // Just in case some CMS puts out a full URL with the anchor appended - - - if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) { - hrefAttr = `#${hrefAttr.split('#')[1]}`; - } - - selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null; - } - - return selector; - }; - - const getSelectorFromElement = element => { - const selector = getSelector(element); - - if (selector) { - return document.querySelector(selector) ? selector : null; - } - - return null; - }; - - const getElementFromSelector = element => { - const selector = getSelector(element); - return selector ? document.querySelector(selector) : null; - }; - - const getTransitionDurationFromElement = element => { - if (!element) { - return 0; - } // Get transition-duration of the element - - - let { - transitionDuration, - transitionDelay - } = window.getComputedStyle(element); - const floatTransitionDuration = Number.parseFloat(transitionDuration); - const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found - - if (!floatTransitionDuration && !floatTransitionDelay) { - return 0; - } // If multiple durations are defined, take the first - - - transitionDuration = transitionDuration.split(',')[0]; - transitionDelay = transitionDelay.split(',')[0]; - return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; - }; - - const triggerTransitionEnd = element => { - element.dispatchEvent(new Event(TRANSITION_END)); - }; - - const isElement$1 = obj => { - if (!obj || typeof obj !== 'object') { - return false; - } - - if (typeof obj.jquery !== 'undefined') { - obj = obj[0]; - } - - return typeof obj.nodeType !== 'undefined'; - }; - - const getElement = obj => { - if (isElement$1(obj)) { - // it's a jQuery object or a node element - return obj.jquery ? obj[0] : obj; - } - - if (typeof obj === 'string' && obj.length > 0) { - return SelectorEngine.findOne(obj); - } - - return null; - }; - - const typeCheckConfig = (componentName, config, configTypes) => { - Object.keys(configTypes).forEach(property => { - const expectedTypes = configTypes[property]; - const value = config[property]; - const valueType = value && isElement$1(value) ? 'element' : toType(value); - - if (!new RegExp(expectedTypes).test(valueType)) { - throw new TypeError(`${componentName.toUpperCase()}: Option "${property}" provided type "${valueType}" but expected type "${expectedTypes}".`); - } - }); - }; - - const isVisible = element => { - if (!isElement$1(element) || element.getClientRects().length === 0) { - return false; - } - - return getComputedStyle(element).getPropertyValue('visibility') === 'visible'; - }; - - const isDisabled = element => { - if (!element || element.nodeType !== Node.ELEMENT_NODE) { - return true; - } - - if (element.classList.contains('disabled')) { - return true; - } - - if (typeof element.disabled !== 'undefined') { - return element.disabled; - } - - return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'; - }; - - const findShadowRoot = element => { - if (!document.documentElement.attachShadow) { - return null; - } // Can find the shadow root otherwise it'll return the document - - - if (typeof element.getRootNode === 'function') { - const root = element.getRootNode(); - return root instanceof ShadowRoot ? root : null; - } - - if (element instanceof ShadowRoot) { - return element; - } // when we don't find a shadow root - - - if (!element.parentNode) { - return null; - } - - return findShadowRoot(element.parentNode); - }; - - const noop = () => {}; - - const reflow = element => element.offsetHeight; - - const getjQuery = () => { - const { - jQuery - } = window; - - if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) { - return jQuery; - } - - return null; - }; - - const DOMContentLoadedCallbacks = []; - - const onDOMContentLoaded = callback => { - if (document.readyState === 'loading') { - // add listener on the first call when the document is in loading state - if (!DOMContentLoadedCallbacks.length) { - document.addEventListener('DOMContentLoaded', () => { - DOMContentLoadedCallbacks.forEach(callback => callback()); - }); - } - - DOMContentLoadedCallbacks.push(callback); - } else { - callback(); - } - }; - - const isRTL = () => document.documentElement.dir === 'rtl'; - - const defineJQueryPlugin = plugin => { - onDOMContentLoaded(() => { - const $ = getjQuery(); - /* istanbul ignore if */ - - if ($) { - const name = plugin.NAME; - const JQUERY_NO_CONFLICT = $.fn[name]; - $.fn[name] = plugin.jQueryInterface; - $.fn[name].Constructor = plugin; - - $.fn[name].noConflict = () => { - $.fn[name] = JQUERY_NO_CONFLICT; - return plugin.jQueryInterface; - }; - } - }); - }; - - const execute = callback => { - if (typeof callback === 'function') { - callback(); - } - }; - - const executeAfterTransition = (callback, transitionElement, waitForTransition = true) => { - if (!waitForTransition) { - execute(callback); - return; - } - - const durationPadding = 5; - const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding; - let called = false; - - const handler = ({ - target - }) => { - if (target !== transitionElement) { - return; - } - - called = true; - transitionElement.removeEventListener(TRANSITION_END, handler); - execute(callback); - }; - - transitionElement.addEventListener(TRANSITION_END, handler); - setTimeout(() => { - if (!called) { - triggerTransitionEnd(transitionElement); - } - }, emulatedDuration); - }; - /** - * Return the previous/next element of a list. - * - * @param {array} list The list of elements - * @param activeElement The active element - * @param shouldGetNext Choose to get next or previous element - * @param isCycleAllowed - * @return {Element|elem} The proper element - */ - - - const getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => { - let index = list.indexOf(activeElement); // if the element does not exist in the list return an element depending on the direction and if cycle is allowed - - if (index === -1) { - return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]; - } - - const listLength = list.length; - index += shouldGetNext ? 1 : -1; - - if (isCycleAllowed) { - index = (index + listLength) % listLength; - } - - return list[Math.max(0, Math.min(index, listLength - 1))]; - }; - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): dom/event-handler.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const namespaceRegex = /[^.]*(?=\..*)\.|.*/; - const stripNameRegex = /\..*/; - const stripUidRegex = /::\d+$/; - const eventRegistry = {}; // Events storage - - let uidEvent = 1; - const customEvents = { - mouseenter: 'mouseover', - mouseleave: 'mouseout' - }; - const customEventsRegex = /^(mouseenter|mouseleave)/i; - const nativeEvents = 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']); - /** - * ------------------------------------------------------------------------ - * Private methods - * ------------------------------------------------------------------------ - */ - - function getUidEvent(element, uid) { - return uid && `${uid}::${uidEvent++}` || element.uidEvent || uidEvent++; - } - - function getEvent(element) { - const uid = getUidEvent(element); - element.uidEvent = uid; - eventRegistry[uid] = eventRegistry[uid] || {}; - return eventRegistry[uid]; - } - - function bootstrapHandler(element, fn) { - return function handler(event) { - event.delegateTarget = element; - - if (handler.oneOff) { - EventHandler.off(element, event.type, fn); - } - - return fn.apply(element, [event]); - }; - } - - function bootstrapDelegationHandler(element, selector, fn) { - return function handler(event) { - const domElements = element.querySelectorAll(selector); - - for (let { - target - } = event; target && target !== this; target = target.parentNode) { - for (let i = domElements.length; i--;) { - if (domElements[i] === target) { - event.delegateTarget = target; - - if (handler.oneOff) { - // eslint-disable-next-line unicorn/consistent-destructuring - EventHandler.off(element, event.type, selector, fn); - } - - return fn.apply(target, [event]); - } - } - } // To please ESLint - - - return null; - }; - } - - function findHandler(events, handler, delegationSelector = null) { - const uidEventList = Object.keys(events); - - for (let i = 0, len = uidEventList.length; i < len; i++) { - const event = events[uidEventList[i]]; - - if (event.originalHandler === handler && event.delegationSelector === delegationSelector) { - return event; - } - } - - return null; - } - - function normalizeParams(originalTypeEvent, handler, delegationFn) { - const delegation = typeof handler === 'string'; - const originalHandler = delegation ? delegationFn : handler; - let typeEvent = getTypeEvent(originalTypeEvent); - const isNative = nativeEvents.has(typeEvent); - - if (!isNative) { - typeEvent = originalTypeEvent; - } - - return [delegation, originalHandler, typeEvent]; - } - - function addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) { - if (typeof originalTypeEvent !== 'string' || !element) { - return; - } - - if (!handler) { - handler = delegationFn; - delegationFn = null; - } // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position - // this prevents the handler from being dispatched the same way as mouseover or mouseout does - - - if (customEventsRegex.test(originalTypeEvent)) { - const wrapFn = fn => { - return function (event) { - if (!event.relatedTarget || event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget)) { - return fn.call(this, event); - } - }; - }; - - if (delegationFn) { - delegationFn = wrapFn(delegationFn); - } else { - handler = wrapFn(handler); - } - } - - const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn); - const events = getEvent(element); - const handlers = events[typeEvent] || (events[typeEvent] = {}); - const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null); - - if (previousFn) { - previousFn.oneOff = previousFn.oneOff && oneOff; - return; - } - - const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, '')); - const fn = delegation ? bootstrapDelegationHandler(element, handler, delegationFn) : bootstrapHandler(element, handler); - fn.delegationSelector = delegation ? handler : null; - fn.originalHandler = originalHandler; - fn.oneOff = oneOff; - fn.uidEvent = uid; - handlers[uid] = fn; - element.addEventListener(typeEvent, fn, delegation); - } - - function removeHandler(element, events, typeEvent, handler, delegationSelector) { - const fn = findHandler(events[typeEvent], handler, delegationSelector); - - if (!fn) { - return; - } - - element.removeEventListener(typeEvent, fn, Boolean(delegationSelector)); - delete events[typeEvent][fn.uidEvent]; - } - - function removeNamespacedHandlers(element, events, typeEvent, namespace) { - const storeElementEvent = events[typeEvent] || {}; - Object.keys(storeElementEvent).forEach(handlerKey => { - if (handlerKey.includes(namespace)) { - const event = storeElementEvent[handlerKey]; - removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector); - } - }); - } - - function getTypeEvent(event) { - // allow to get the native events from namespaced events ('click.bs.button' --> 'click') - event = event.replace(stripNameRegex, ''); - return customEvents[event] || event; - } - - const EventHandler = { - on(element, event, handler, delegationFn) { - addHandler(element, event, handler, delegationFn, false); - }, - - one(element, event, handler, delegationFn) { - addHandler(element, event, handler, delegationFn, true); - }, - - off(element, originalTypeEvent, handler, delegationFn) { - if (typeof originalTypeEvent !== 'string' || !element) { - return; - } - - const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn); - const inNamespace = typeEvent !== originalTypeEvent; - const events = getEvent(element); - const isNamespace = originalTypeEvent.startsWith('.'); - - if (typeof originalHandler !== 'undefined') { - // Simplest case: handler is passed, remove that listener ONLY. - if (!events || !events[typeEvent]) { - return; - } - - removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null); - return; - } - - if (isNamespace) { - Object.keys(events).forEach(elementEvent => { - removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1)); - }); - } - - const storeElementEvent = events[typeEvent] || {}; - Object.keys(storeElementEvent).forEach(keyHandlers => { - const handlerKey = keyHandlers.replace(stripUidRegex, ''); - - if (!inNamespace || originalTypeEvent.includes(handlerKey)) { - const event = storeElementEvent[keyHandlers]; - removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector); - } - }); - }, - - trigger(element, event, args) { - if (typeof event !== 'string' || !element) { - return null; - } - - const $ = getjQuery(); - const typeEvent = getTypeEvent(event); - const inNamespace = event !== typeEvent; - const isNative = nativeEvents.has(typeEvent); - let jQueryEvent; - let bubbles = true; - let nativeDispatch = true; - let defaultPrevented = false; - let evt = null; - - if (inNamespace && $) { - jQueryEvent = $.Event(event, args); - $(element).trigger(jQueryEvent); - bubbles = !jQueryEvent.isPropagationStopped(); - nativeDispatch = !jQueryEvent.isImmediatePropagationStopped(); - defaultPrevented = jQueryEvent.isDefaultPrevented(); - } - - if (isNative) { - evt = document.createEvent('HTMLEvents'); - evt.initEvent(typeEvent, bubbles, true); - } else { - evt = new CustomEvent(event, { - bubbles, - cancelable: true - }); - } // merge custom information in our event - - - if (typeof args !== 'undefined') { - Object.keys(args).forEach(key => { - Object.defineProperty(evt, key, { - get() { - return args[key]; - } - - }); - }); - } - - if (defaultPrevented) { - evt.preventDefault(); - } - - if (nativeDispatch) { - element.dispatchEvent(evt); - } - - if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') { - jQueryEvent.preventDefault(); - } - - return evt; - } - - }; - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): dom/data.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - const elementMap = new Map(); - var Data = { - set(element, key, instance) { - if (!elementMap.has(element)) { - elementMap.set(element, new Map()); - } - - const instanceMap = elementMap.get(element); // make it clear we only want one instance per element - // can be removed later when multiple key/instances are fine to be used - - if (!instanceMap.has(key) && instanceMap.size !== 0) { - // eslint-disable-next-line no-console - console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`); - return; - } - - instanceMap.set(key, instance); - }, - - get(element, key) { - if (elementMap.has(element)) { - return elementMap.get(element).get(key) || null; - } - - return null; - }, - - remove(element, key) { - if (!elementMap.has(element)) { - return; - } - - const instanceMap = elementMap.get(element); - instanceMap.delete(key); // free up element references if there are no instances left for an element - - if (instanceMap.size === 0) { - elementMap.delete(element); - } - } - - }; - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): base-component.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const VERSION = '5.0.2'; - - class BaseComponent { - constructor(element) { - element = getElement(element); - - if (!element) { - return; - } - - this._element = element; - Data.set(this._element, this.constructor.DATA_KEY, this); - } - - dispose() { - Data.remove(this._element, this.constructor.DATA_KEY); - EventHandler.off(this._element, this.constructor.EVENT_KEY); - Object.getOwnPropertyNames(this).forEach(propertyName => { - this[propertyName] = null; - }); - } - - _queueCallback(callback, element, isAnimated = true) { - executeAfterTransition(callback, element, isAnimated); - } - /** Static */ - - - static getInstance(element) { - return Data.get(element, this.DATA_KEY); - } - - static getOrCreateInstance(element, config = {}) { - return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null); - } - - static get VERSION() { - return VERSION; - } - - 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}`; - } - - } - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): alert.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$c = 'alert'; - const DATA_KEY$b = 'bs.alert'; - const EVENT_KEY$b = `.${DATA_KEY$b}`; - const DATA_API_KEY$8 = '.data-api'; - const SELECTOR_DISMISS = '[data-bs-dismiss="alert"]'; - const EVENT_CLOSE = `close${EVENT_KEY$b}`; - const EVENT_CLOSED = `closed${EVENT_KEY$b}`; - const EVENT_CLICK_DATA_API$7 = `click${EVENT_KEY$b}${DATA_API_KEY$8}`; - const CLASS_NAME_ALERT = 'alert'; - const CLASS_NAME_FADE$6 = 'fade'; - const CLASS_NAME_SHOW$9 = 'show'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Alert extends BaseComponent { - // Getters - static get NAME() { - return NAME$c; - } // Public - - - close(element) { - const rootElement = element ? this._getRootElement(element) : this._element; - - const customEvent = this._triggerCloseEvent(rootElement); - - if (customEvent === null || customEvent.defaultPrevented) { - return; - } - - this._removeElement(rootElement); - } // Private - - - _getRootElement(element) { - return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`); - } - - _triggerCloseEvent(element) { - return EventHandler.trigger(element, EVENT_CLOSE); - } - - _removeElement(element) { - element.classList.remove(CLASS_NAME_SHOW$9); - const isAnimated = element.classList.contains(CLASS_NAME_FADE$6); - - this._queueCallback(() => this._destroyElement(element), element, isAnimated); - } - - _destroyElement(element) { - element.remove(); - EventHandler.trigger(element, EVENT_CLOSED); - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Alert.getOrCreateInstance(this); - - if (config === 'close') { - data[config](this); - } - }); - } - - static handleDismiss(alertInstance) { - return function (event) { - if (event) { - event.preventDefault(); - } - - alertInstance.close(this); - }; - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_CLICK_DATA_API$7, SELECTOR_DISMISS, Alert.handleDismiss(new Alert())); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Alert to jQuery only if jQuery is present - */ - - defineJQueryPlugin(Alert); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): button.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$b = 'button'; - const DATA_KEY$a = 'bs.button'; - const EVENT_KEY$a = `.${DATA_KEY$a}`; - const DATA_API_KEY$7 = '.data-api'; - const CLASS_NAME_ACTIVE$3 = 'active'; - const SELECTOR_DATA_TOGGLE$5 = '[data-bs-toggle="button"]'; - const EVENT_CLICK_DATA_API$6 = `click${EVENT_KEY$a}${DATA_API_KEY$7}`; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Button extends BaseComponent { - // Getters - static get NAME() { - return NAME$b; - } // Public - - - toggle() { - // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method - this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE$3)); - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Button.getOrCreateInstance(this); - - if (config === 'toggle') { - data[config](); - } - }); - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_CLICK_DATA_API$6, SELECTOR_DATA_TOGGLE$5, event => { - event.preventDefault(); - const button = event.target.closest(SELECTOR_DATA_TOGGLE$5); - const data = Button.getOrCreateInstance(button); - data.toggle(); - }); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Button to jQuery only if jQuery is present - */ - - defineJQueryPlugin(Button); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): dom/manipulator.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - function normalizeData(val) { - if (val === 'true') { - return true; - } - - if (val === 'false') { - return false; - } - - if (val === Number(val).toString()) { - return Number(val); - } - - if (val === '' || val === 'null') { - return null; - } - - return val; - } - - function normalizeDataKey(key) { - return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`); - } - - const Manipulator = { - setDataAttribute(element, key, value) { - element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value); - }, - - removeDataAttribute(element, key) { - element.removeAttribute(`data-bs-${normalizeDataKey(key)}`); - }, - - getDataAttributes(element) { - if (!element) { - return {}; - } - - const attributes = {}; - Object.keys(element.dataset).filter(key => key.startsWith('bs')).forEach(key => { - let pureKey = key.replace(/^bs/, ''); - pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length); - attributes[pureKey] = normalizeData(element.dataset[key]); - }); - return attributes; - }, - - getDataAttribute(element, key) { - return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`)); - }, - - offset(element) { - const rect = element.getBoundingClientRect(); - return { - top: rect.top + document.body.scrollTop, - left: rect.left + document.body.scrollLeft - }; - }, - - position(element) { - return { - top: element.offsetTop, - left: element.offsetLeft - }; - } - - }; - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): carousel.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$a = 'carousel'; - const DATA_KEY$9 = 'bs.carousel'; - const EVENT_KEY$9 = `.${DATA_KEY$9}`; - const DATA_API_KEY$6 = '.data-api'; - const ARROW_LEFT_KEY = 'ArrowLeft'; - const ARROW_RIGHT_KEY = 'ArrowRight'; - const TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch - - const SWIPE_THRESHOLD = 40; - const Default$9 = { - interval: 5000, - keyboard: true, - slide: false, - pause: 'hover', - wrap: true, - touch: true - }; - const DefaultType$9 = { - interval: '(number|boolean)', - keyboard: 'boolean', - slide: '(boolean|string)', - pause: '(string|boolean)', - wrap: 'boolean', - touch: 'boolean' - }; - const ORDER_NEXT = 'next'; - const ORDER_PREV = 'prev'; - const DIRECTION_LEFT = 'left'; - const DIRECTION_RIGHT = 'right'; - const KEY_TO_DIRECTION = { - [ARROW_LEFT_KEY]: DIRECTION_RIGHT, - [ARROW_RIGHT_KEY]: DIRECTION_LEFT - }; - const EVENT_SLIDE = `slide${EVENT_KEY$9}`; - const EVENT_SLID = `slid${EVENT_KEY$9}`; - const EVENT_KEYDOWN = `keydown${EVENT_KEY$9}`; - const EVENT_MOUSEENTER = `mouseenter${EVENT_KEY$9}`; - const EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY$9}`; - const EVENT_TOUCHSTART = `touchstart${EVENT_KEY$9}`; - const EVENT_TOUCHMOVE = `touchmove${EVENT_KEY$9}`; - const EVENT_TOUCHEND = `touchend${EVENT_KEY$9}`; - const EVENT_POINTERDOWN = `pointerdown${EVENT_KEY$9}`; - const EVENT_POINTERUP = `pointerup${EVENT_KEY$9}`; - const EVENT_DRAG_START = `dragstart${EVENT_KEY$9}`; - const EVENT_LOAD_DATA_API$2 = `load${EVENT_KEY$9}${DATA_API_KEY$6}`; - const EVENT_CLICK_DATA_API$5 = `click${EVENT_KEY$9}${DATA_API_KEY$6}`; - const CLASS_NAME_CAROUSEL = 'carousel'; - const CLASS_NAME_ACTIVE$2 = 'active'; - const CLASS_NAME_SLIDE = 'slide'; - const CLASS_NAME_END = 'carousel-item-end'; - const CLASS_NAME_START = 'carousel-item-start'; - const CLASS_NAME_NEXT = 'carousel-item-next'; - const CLASS_NAME_PREV = 'carousel-item-prev'; - const CLASS_NAME_POINTER_EVENT = 'pointer-event'; - const SELECTOR_ACTIVE$1 = '.active'; - const SELECTOR_ACTIVE_ITEM = '.active.carousel-item'; - const SELECTOR_ITEM = '.carousel-item'; - const SELECTOR_ITEM_IMG = '.carousel-item img'; - const SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'; - const SELECTOR_INDICATORS = '.carousel-indicators'; - const SELECTOR_INDICATOR = '[data-bs-target]'; - const SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'; - const SELECTOR_DATA_RIDE = '[data-bs-ride="carousel"]'; - const POINTER_TYPE_TOUCH = 'touch'; - const POINTER_TYPE_PEN = 'pen'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Carousel extends BaseComponent { - constructor(element, config) { - super(element); - this._items = null; - this._interval = null; - this._activeElement = null; - this._isPaused = false; - this._isSliding = false; - this.touchTimeout = null; - this.touchStartX = 0; - this.touchDeltaX = 0; - this._config = this._getConfig(config); - this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element); - this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0; - this._pointerEvent = Boolean(window.PointerEvent); - - this._addEventListeners(); - } // Getters - - - static get Default() { - return Default$9; - } - - static get NAME() { - return NAME$a; - } // Public - - - next() { - this._slide(ORDER_NEXT); - } - - nextWhenVisible() { - // Don't call next when the page isn't visible - // or the carousel or its parent isn't visible - if (!document.hidden && isVisible(this._element)) { - this.next(); - } - } - - prev() { - this._slide(ORDER_PREV); - } - - pause(event) { - if (!event) { - this._isPaused = true; - } - - if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) { - triggerTransitionEnd(this._element); - this.cycle(true); - } - - clearInterval(this._interval); - this._interval = null; - } - - cycle(event) { - if (!event) { - this._isPaused = false; - } - - if (this._interval) { - clearInterval(this._interval); - this._interval = null; - } - - if (this._config && this._config.interval && !this._isPaused) { - this._updateInterval(); - - this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval); - } - } - - to(index) { - this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); - - const activeIndex = this._getItemIndex(this._activeElement); - - if (index > this._items.length - 1 || index < 0) { - return; - } - - if (this._isSliding) { - EventHandler.one(this._element, EVENT_SLID, () => this.to(index)); - return; - } - - if (activeIndex === index) { - this.pause(); - this.cycle(); - return; - } - - const order = index > activeIndex ? ORDER_NEXT : ORDER_PREV; - - this._slide(order, this._items[index]); - } // Private - - - _getConfig(config) { - config = { ...Default$9, - ...Manipulator.getDataAttributes(this._element), - ...(typeof config === 'object' ? config : {}) - }; - typeCheckConfig(NAME$a, config, DefaultType$9); - return config; - } - - _handleSwipe() { - const absDeltax = Math.abs(this.touchDeltaX); - - if (absDeltax <= SWIPE_THRESHOLD) { - return; - } - - const direction = absDeltax / this.touchDeltaX; - this.touchDeltaX = 0; - - if (!direction) { - return; - } - - this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT); - } - - _addEventListeners() { - if (this._config.keyboard) { - EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event)); - } - - if (this._config.pause === 'hover') { - EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event)); - EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event)); - } - - if (this._config.touch && this._touchSupported) { - this._addTouchEventListeners(); - } - } - - _addTouchEventListeners() { - const start = event => { - if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) { - this.touchStartX = event.clientX; - } else if (!this._pointerEvent) { - this.touchStartX = event.touches[0].clientX; - } - }; - - const move = event => { - // ensure swiping with one touch and not pinching - this.touchDeltaX = event.touches && event.touches.length > 1 ? 0 : event.touches[0].clientX - this.touchStartX; - }; - - const end = event => { - if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) { - this.touchDeltaX = event.clientX - this.touchStartX; - } - - this._handleSwipe(); - - if (this._config.pause === 'hover') { - // If it's a touch-enabled device, mouseenter/leave are fired as - // part of the mouse compatibility events on first tap - the carousel - // would stop cycling until user tapped out of it; - // here, we listen for touchend, explicitly pause the carousel - // (as if it's the second time we tap on it, mouseenter compat event - // is NOT fired) and after a timeout (to allow for mouse compatibility - // events to fire) we explicitly restart cycling - this.pause(); - - if (this.touchTimeout) { - clearTimeout(this.touchTimeout); - } - - this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval); - } - }; - - SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => { - EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault()); - }); - - if (this._pointerEvent) { - EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event)); - EventHandler.on(this._element, EVENT_POINTERUP, event => end(event)); - - this._element.classList.add(CLASS_NAME_POINTER_EVENT); - } else { - EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event)); - EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event)); - EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event)); - } - } - - _keydown(event) { - if (/input|textarea/i.test(event.target.tagName)) { - return; - } - - const direction = KEY_TO_DIRECTION[event.key]; - - if (direction) { - event.preventDefault(); - - this._slide(direction); - } - } - - _getItemIndex(element) { - this._items = element && element.parentNode ? SelectorEngine.find(SELECTOR_ITEM, element.parentNode) : []; - return this._items.indexOf(element); - } - - _getItemByOrder(order, activeElement) { - const isNext = order === ORDER_NEXT; - return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap); - } - - _triggerSlideEvent(relatedTarget, eventDirectionName) { - const targetIndex = this._getItemIndex(relatedTarget); - - const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)); - - return EventHandler.trigger(this._element, EVENT_SLIDE, { - relatedTarget, - direction: eventDirectionName, - from: fromIndex, - to: targetIndex - }); - } - - _setActiveIndicatorElement(element) { - if (this._indicatorsElement) { - const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE$1, this._indicatorsElement); - activeIndicator.classList.remove(CLASS_NAME_ACTIVE$2); - activeIndicator.removeAttribute('aria-current'); - const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement); - - for (let i = 0; i < indicators.length; i++) { - if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) { - indicators[i].classList.add(CLASS_NAME_ACTIVE$2); - indicators[i].setAttribute('aria-current', 'true'); - break; - } - } - } - } - - _updateInterval() { - const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); - - if (!element) { - return; - } - - const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10); - - if (elementInterval) { - this._config.defaultInterval = this._config.defaultInterval || this._config.interval; - this._config.interval = elementInterval; - } else { - this._config.interval = this._config.defaultInterval || this._config.interval; - } - } - - _slide(directionOrOrder, element) { - const order = this._directionToOrder(directionOrOrder); - - const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); - - const activeElementIndex = this._getItemIndex(activeElement); - - const nextElement = element || this._getItemByOrder(order, activeElement); - - const nextElementIndex = this._getItemIndex(nextElement); - - const isCycling = Boolean(this._interval); - const isNext = order === ORDER_NEXT; - const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END; - const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV; - - const eventDirectionName = this._orderToDirection(order); - - if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE$2)) { - this._isSliding = false; - return; - } - - if (this._isSliding) { - return; - } - - const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName); - - if (slideEvent.defaultPrevented) { - return; - } - - if (!activeElement || !nextElement) { - // Some weirdness is happening, so we bail - return; - } - - this._isSliding = true; - - if (isCycling) { - this.pause(); - } - - this._setActiveIndicatorElement(nextElement); - - this._activeElement = nextElement; - - const triggerSlidEvent = () => { - EventHandler.trigger(this._element, EVENT_SLID, { - relatedTarget: nextElement, - direction: eventDirectionName, - from: activeElementIndex, - to: nextElementIndex - }); - }; - - if (this._element.classList.contains(CLASS_NAME_SLIDE)) { - nextElement.classList.add(orderClassName); - reflow(nextElement); - activeElement.classList.add(directionalClassName); - nextElement.classList.add(directionalClassName); - - const completeCallBack = () => { - nextElement.classList.remove(directionalClassName, orderClassName); - nextElement.classList.add(CLASS_NAME_ACTIVE$2); - activeElement.classList.remove(CLASS_NAME_ACTIVE$2, orderClassName, directionalClassName); - this._isSliding = false; - setTimeout(triggerSlidEvent, 0); - }; - - this._queueCallback(completeCallBack, activeElement, true); - } else { - activeElement.classList.remove(CLASS_NAME_ACTIVE$2); - nextElement.classList.add(CLASS_NAME_ACTIVE$2); - this._isSliding = false; - triggerSlidEvent(); - } - - if (isCycling) { - this.cycle(); - } - } - - _directionToOrder(direction) { - if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) { - return direction; - } - - if (isRTL()) { - return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT; - } - - return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV; - } - - _orderToDirection(order) { - if (![ORDER_NEXT, ORDER_PREV].includes(order)) { - return order; - } - - if (isRTL()) { - return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT; - } - - return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT; - } // Static - - - static carouselInterface(element, config) { - const data = Carousel.getOrCreateInstance(element, config); - let { - _config - } = data; - - if (typeof config === 'object') { - _config = { ..._config, - ...config - }; - } - - const action = typeof config === 'string' ? config : _config.slide; - - if (typeof config === 'number') { - data.to(config); - } else if (typeof action === 'string') { - if (typeof data[action] === 'undefined') { - throw new TypeError(`No method named "${action}"`); - } - - data[action](); - } else if (_config.interval && _config.ride) { - data.pause(); - data.cycle(); - } - } - - static jQueryInterface(config) { - return this.each(function () { - Carousel.carouselInterface(this, config); - }); - } - - static dataApiClickHandler(event) { - const target = getElementFromSelector(this); - - if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) { - return; - } - - const config = { ...Manipulator.getDataAttributes(target), - ...Manipulator.getDataAttributes(this) - }; - const slideIndex = this.getAttribute('data-bs-slide-to'); - - if (slideIndex) { - config.interval = false; - } - - Carousel.carouselInterface(target, config); - - if (slideIndex) { - Carousel.getInstance(target).to(slideIndex); - } - - event.preventDefault(); - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_CLICK_DATA_API$5, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler); - EventHandler.on(window, EVENT_LOAD_DATA_API$2, () => { - const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE); - - for (let i = 0, len = carousels.length; i < len; i++) { - Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i])); - } - }); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Carousel to jQuery only if jQuery is present - */ - - defineJQueryPlugin(Carousel); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): collapse.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$9 = 'collapse'; - const DATA_KEY$8 = 'bs.collapse'; - const EVENT_KEY$8 = `.${DATA_KEY$8}`; - const DATA_API_KEY$5 = '.data-api'; - const Default$8 = { - toggle: true, - parent: '' - }; - const DefaultType$8 = { - toggle: 'boolean', - parent: '(string|element)' - }; - const EVENT_SHOW$5 = `show${EVENT_KEY$8}`; - const EVENT_SHOWN$5 = `shown${EVENT_KEY$8}`; - const EVENT_HIDE$5 = `hide${EVENT_KEY$8}`; - const EVENT_HIDDEN$5 = `hidden${EVENT_KEY$8}`; - const EVENT_CLICK_DATA_API$4 = `click${EVENT_KEY$8}${DATA_API_KEY$5}`; - const CLASS_NAME_SHOW$8 = 'show'; - const CLASS_NAME_COLLAPSE = 'collapse'; - const CLASS_NAME_COLLAPSING = 'collapsing'; - const CLASS_NAME_COLLAPSED = 'collapsed'; - const WIDTH = 'width'; - const HEIGHT = 'height'; - const SELECTOR_ACTIVES = '.show, .collapsing'; - const SELECTOR_DATA_TOGGLE$4 = '[data-bs-toggle="collapse"]'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Collapse extends BaseComponent { - constructor(element, config) { - super(element); - this._isTransitioning = false; - this._config = this._getConfig(config); - this._triggerArray = SelectorEngine.find(`${SELECTOR_DATA_TOGGLE$4}[href="#${this._element.id}"],` + `${SELECTOR_DATA_TOGGLE$4}[data-bs-target="#${this._element.id}"]`); - const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE$4); - - for (let i = 0, len = toggleList.length; i < len; i++) { - const elem = toggleList[i]; - const selector = getSelectorFromElement(elem); - const filterElement = SelectorEngine.find(selector).filter(foundElem => foundElem === this._element); - - if (selector !== null && filterElement.length) { - this._selector = selector; - - this._triggerArray.push(elem); - } - } - - this._parent = this._config.parent ? this._getParent() : null; - - if (!this._config.parent) { - this._addAriaAndCollapsedClass(this._element, this._triggerArray); - } - - if (this._config.toggle) { - this.toggle(); - } - } // Getters - - - static get Default() { - return Default$8; - } - - static get NAME() { - return NAME$9; - } // Public - - - toggle() { - if (this._element.classList.contains(CLASS_NAME_SHOW$8)) { - this.hide(); - } else { - this.show(); - } - } - - show() { - if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW$8)) { - return; - } - - let actives; - let activesData; - - if (this._parent) { - actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent).filter(elem => { - if (typeof this._config.parent === 'string') { - return elem.getAttribute('data-bs-parent') === this._config.parent; - } - - return elem.classList.contains(CLASS_NAME_COLLAPSE); - }); - - if (actives.length === 0) { - actives = null; - } - } - - const container = SelectorEngine.findOne(this._selector); - - if (actives) { - const tempActiveData = actives.find(elem => container !== elem); - activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null; - - if (activesData && activesData._isTransitioning) { - return; - } - } - - const startEvent = EventHandler.trigger(this._element, EVENT_SHOW$5); - - if (startEvent.defaultPrevented) { - return; - } - - if (actives) { - actives.forEach(elemActive => { - if (container !== elemActive) { - Collapse.collapseInterface(elemActive, 'hide'); - } - - if (!activesData) { - Data.set(elemActive, DATA_KEY$8, null); - } - }); - } - - const dimension = this._getDimension(); - - this._element.classList.remove(CLASS_NAME_COLLAPSE); - - this._element.classList.add(CLASS_NAME_COLLAPSING); - - this._element.style[dimension] = 0; - - if (this._triggerArray.length) { - this._triggerArray.forEach(element => { - element.classList.remove(CLASS_NAME_COLLAPSED); - element.setAttribute('aria-expanded', true); - }); - } - - this.setTransitioning(true); - - const complete = () => { - this._element.classList.remove(CLASS_NAME_COLLAPSING); - - this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$8); - - this._element.style[dimension] = ''; - this.setTransitioning(false); - EventHandler.trigger(this._element, EVENT_SHOWN$5); - }; - - const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1); - const scrollSize = `scroll${capitalizedDimension}`; - - this._queueCallback(complete, this._element, true); - - this._element.style[dimension] = `${this._element[scrollSize]}px`; - } - - hide() { - if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW$8)) { - return; - } - - const startEvent = EventHandler.trigger(this._element, EVENT_HIDE$5); - - if (startEvent.defaultPrevented) { - return; - } - - const dimension = this._getDimension(); - - this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`; - reflow(this._element); - - this._element.classList.add(CLASS_NAME_COLLAPSING); - - this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$8); - - const triggerArrayLength = this._triggerArray.length; - - if (triggerArrayLength > 0) { - for (let i = 0; i < triggerArrayLength; i++) { - const trigger = this._triggerArray[i]; - const elem = getElementFromSelector(trigger); - - if (elem && !elem.classList.contains(CLASS_NAME_SHOW$8)) { - trigger.classList.add(CLASS_NAME_COLLAPSED); - trigger.setAttribute('aria-expanded', false); - } - } - } - - this.setTransitioning(true); - - const complete = () => { - this.setTransitioning(false); - - this._element.classList.remove(CLASS_NAME_COLLAPSING); - - this._element.classList.add(CLASS_NAME_COLLAPSE); - - EventHandler.trigger(this._element, EVENT_HIDDEN$5); - }; - - this._element.style[dimension] = ''; - - this._queueCallback(complete, this._element, true); - } - - setTransitioning(isTransitioning) { - this._isTransitioning = isTransitioning; - } // Private - - - _getConfig(config) { - config = { ...Default$8, - ...config - }; - config.toggle = Boolean(config.toggle); // Coerce string values - - typeCheckConfig(NAME$9, config, DefaultType$8); - return config; - } - - _getDimension() { - return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT; - } - - _getParent() { - let { - parent - } = this._config; - parent = getElement(parent); - const selector = `${SELECTOR_DATA_TOGGLE$4}[data-bs-parent="${parent}"]`; - SelectorEngine.find(selector, parent).forEach(element => { - const selected = getElementFromSelector(element); - - this._addAriaAndCollapsedClass(selected, [element]); - }); - return parent; - } - - _addAriaAndCollapsedClass(element, triggerArray) { - if (!element || !triggerArray.length) { - return; - } - - const isOpen = element.classList.contains(CLASS_NAME_SHOW$8); - triggerArray.forEach(elem => { - if (isOpen) { - elem.classList.remove(CLASS_NAME_COLLAPSED); - } else { - elem.classList.add(CLASS_NAME_COLLAPSED); - } - - elem.setAttribute('aria-expanded', isOpen); - }); - } // Static - - - static collapseInterface(element, config) { - let data = Collapse.getInstance(element); - const _config = { ...Default$8, - ...Manipulator.getDataAttributes(element), - ...(typeof config === 'object' && config ? config : {}) - }; - - if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) { - _config.toggle = false; - } - - if (!data) { - data = new Collapse(element, _config); - } - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - } - } - - static jQueryInterface(config) { - return this.each(function () { - Collapse.collapseInterface(this, config); - }); - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_CLICK_DATA_API$4, SELECTOR_DATA_TOGGLE$4, function (event) { - // preventDefault only for <a> elements (which change the URL) not inside the collapsible element - if (event.target.tagName === 'A' || event.delegateTarget && event.delegateTarget.tagName === 'A') { - event.preventDefault(); - } - - const triggerData = Manipulator.getDataAttributes(this); - const selector = getSelectorFromElement(this); - const selectorElements = SelectorEngine.find(selector); - selectorElements.forEach(element => { - const data = Collapse.getInstance(element); - let config; - - if (data) { - // update parent attribute - if (data._parent === null && typeof triggerData.parent === 'string') { - data._config.parent = triggerData.parent; - data._parent = data._getParent(); - } - - config = 'toggle'; - } else { - config = triggerData; - } - - Collapse.collapseInterface(element, config); - }); - }); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Collapse to jQuery only if jQuery is present - */ - - defineJQueryPlugin(Collapse); - - var top = 'top'; - var bottom = 'bottom'; - var right = 'right'; - var left = 'left'; - var auto = 'auto'; - var basePlacements = [top, bottom, right, left]; - var start = 'start'; - var end = 'end'; - var clippingParents = 'clippingParents'; - var viewport = 'viewport'; - var popper = 'popper'; - var reference = 'reference'; - var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) { - return acc.concat([placement + "-" + start, placement + "-" + end]); - }, []); - var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) { - return acc.concat([placement, placement + "-" + start, placement + "-" + end]); - }, []); // modifiers that need to read the DOM - - var beforeRead = 'beforeRead'; - var read = 'read'; - var afterRead = 'afterRead'; // pure-logic modifiers - - var beforeMain = 'beforeMain'; - var main = 'main'; - var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state) - - var beforeWrite = 'beforeWrite'; - var write = 'write'; - var afterWrite = 'afterWrite'; - var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite]; - - function getNodeName(element) { - return element ? (element.nodeName || '').toLowerCase() : null; - } - - function getWindow(node) { - if (node == null) { - return window; - } - - if (node.toString() !== '[object Window]') { - var ownerDocument = node.ownerDocument; - return ownerDocument ? ownerDocument.defaultView || window : window; - } - - return node; - } - - function isElement(node) { - var OwnElement = getWindow(node).Element; - return node instanceof OwnElement || node instanceof Element; - } - - function isHTMLElement(node) { - var OwnElement = getWindow(node).HTMLElement; - return node instanceof OwnElement || node instanceof HTMLElement; - } - - function isShadowRoot(node) { - // IE 11 has no ShadowRoot - if (typeof ShadowRoot === 'undefined') { - return false; - } - - var OwnElement = getWindow(node).ShadowRoot; - return node instanceof OwnElement || node instanceof ShadowRoot; - } - - // and applies them to the HTMLElements such as popper and arrow - - function applyStyles(_ref) { - var state = _ref.state; - Object.keys(state.elements).forEach(function (name) { - var style = state.styles[name] || {}; - var attributes = state.attributes[name] || {}; - var element = state.elements[name]; // arrow is optional + virtual elements - - if (!isHTMLElement(element) || !getNodeName(element)) { - return; - } // Flow doesn't support to extend this property, but it's the most - // effective way to apply styles to an HTMLElement - // $FlowFixMe[cannot-write] - - - Object.assign(element.style, style); - Object.keys(attributes).forEach(function (name) { - var value = attributes[name]; - - if (value === false) { - element.removeAttribute(name); - } else { - element.setAttribute(name, value === true ? '' : value); - } - }); - }); - } - - function effect$2(_ref2) { - var state = _ref2.state; - var initialStyles = { - popper: { - position: state.options.strategy, - left: '0', - top: '0', - margin: '0' - }, - arrow: { - position: 'absolute' - }, - reference: {} - }; - Object.assign(state.elements.popper.style, initialStyles.popper); - state.styles = initialStyles; - - if (state.elements.arrow) { - Object.assign(state.elements.arrow.style, initialStyles.arrow); - } - - return function () { - Object.keys(state.elements).forEach(function (name) { - var element = state.elements[name]; - var attributes = state.attributes[name] || {}; - var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them - - var style = styleProperties.reduce(function (style, property) { - style[property] = ''; - return style; - }, {}); // arrow is optional + virtual elements - - if (!isHTMLElement(element) || !getNodeName(element)) { - return; - } - - Object.assign(element.style, style); - Object.keys(attributes).forEach(function (attribute) { - element.removeAttribute(attribute); - }); - }); - }; - } // eslint-disable-next-line import/no-unused-modules - - - var applyStyles$1 = { - name: 'applyStyles', - enabled: true, - phase: 'write', - fn: applyStyles, - effect: effect$2, - requires: ['computeStyles'] - }; - - function getBasePlacement(placement) { - return placement.split('-')[0]; - } - - function getBoundingClientRect(element) { - var rect = element.getBoundingClientRect(); - return { - width: rect.width, - height: rect.height, - top: rect.top, - right: rect.right, - bottom: rect.bottom, - left: rect.left, - x: rect.left, - y: rect.top - }; - } - - // means it doesn't take into account transforms. - - function getLayoutRect(element) { - var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed. - // Fixes https://github.com/popperjs/popper-core/issues/1223 - - var width = element.offsetWidth; - var height = element.offsetHeight; - - if (Math.abs(clientRect.width - width) <= 1) { - width = clientRect.width; - } - - if (Math.abs(clientRect.height - height) <= 1) { - height = clientRect.height; - } - - return { - x: element.offsetLeft, - y: element.offsetTop, - width: width, - height: height - }; - } - - function contains(parent, child) { - var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method - - if (parent.contains(child)) { - return true; - } // then fallback to custom implementation with Shadow DOM support - else if (rootNode && isShadowRoot(rootNode)) { - var next = child; - - do { - if (next && parent.isSameNode(next)) { - return true; - } // $FlowFixMe[prop-missing]: need a better way to handle this... - - - next = next.parentNode || next.host; - } while (next); - } // Give up, the result is false - - - return false; - } - - function getComputedStyle$1(element) { - return getWindow(element).getComputedStyle(element); - } - - function isTableElement(element) { - return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0; - } - - function getDocumentElement(element) { - // $FlowFixMe[incompatible-return]: assume body is always available - return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing] - element.document) || window.document).documentElement; - } - - function getParentNode(element) { - if (getNodeName(element) === 'html') { - return element; - } - - return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle - // $FlowFixMe[incompatible-return] - // $FlowFixMe[prop-missing] - element.assignedSlot || // step into the shadow DOM of the parent of a slotted node - element.parentNode || ( // DOM Element detected - isShadowRoot(element) ? element.host : null) || // ShadowRoot detected - // $FlowFixMe[incompatible-call]: HTMLElement is a Node - getDocumentElement(element) // fallback - - ); - } - - function getTrueOffsetParent(element) { - if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837 - getComputedStyle$1(element).position === 'fixed') { - return null; - } - - return element.offsetParent; - } // `.offsetParent` reports `null` for fixed elements, while absolute elements - // return the containing block - - - function getContainingBlock(element) { - var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1; - var isIE = navigator.userAgent.indexOf('Trident') !== -1; - - if (isIE && isHTMLElement(element)) { - // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport - var elementCss = getComputedStyle$1(element); - - if (elementCss.position === 'fixed') { - return null; - } - } - - var currentNode = getParentNode(element); - - while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) { - var css = getComputedStyle$1(currentNode); // This is non-exhaustive but covers the most common CSS properties that - // create a containing block. - // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block - - if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') { - return currentNode; - } else { - currentNode = currentNode.parentNode; - } - } - - return null; - } // Gets the closest ancestor positioned element. Handles some edge cases, - // such as table ancestors and cross browser bugs. - - - function getOffsetParent(element) { - var window = getWindow(element); - var offsetParent = getTrueOffsetParent(element); - - while (offsetParent && isTableElement(offsetParent) && getComputedStyle$1(offsetParent).position === 'static') { - offsetParent = getTrueOffsetParent(offsetParent); - } - - if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle$1(offsetParent).position === 'static')) { - return window; - } - - return offsetParent || getContainingBlock(element) || window; - } - - function getMainAxisFromPlacement(placement) { - return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y'; - } - - var max = Math.max; - var min = Math.min; - var round = Math.round; - - function within(min$1, value, max$1) { - return max(min$1, min(value, max$1)); - } - - function getFreshSideObject() { - return { - top: 0, - right: 0, - bottom: 0, - left: 0 - }; - } - - function mergePaddingObject(paddingObject) { - return Object.assign({}, getFreshSideObject(), paddingObject); - } - - function expandToHashMap(value, keys) { - return keys.reduce(function (hashMap, key) { - hashMap[key] = value; - return hashMap; - }, {}); - } - - var toPaddingObject = function toPaddingObject(padding, state) { - padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, { - placement: state.placement - })) : padding; - return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements)); - }; - - function arrow(_ref) { - var _state$modifiersData$; - - var state = _ref.state, - name = _ref.name, - options = _ref.options; - var arrowElement = state.elements.arrow; - var popperOffsets = state.modifiersData.popperOffsets; - var basePlacement = getBasePlacement(state.placement); - var axis = getMainAxisFromPlacement(basePlacement); - var isVertical = [left, right].indexOf(basePlacement) >= 0; - var len = isVertical ? 'height' : 'width'; - - if (!arrowElement || !popperOffsets) { - return; - } - - var paddingObject = toPaddingObject(options.padding, state); - var arrowRect = getLayoutRect(arrowElement); - var minProp = axis === 'y' ? top : left; - var maxProp = axis === 'y' ? bottom : right; - var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len]; - var startDiff = popperOffsets[axis] - state.rects.reference[axis]; - var arrowOffsetParent = getOffsetParent(arrowElement); - var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0; - var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is - // outside of the popper bounds - - var min = paddingObject[minProp]; - var max = clientSize - arrowRect[len] - paddingObject[maxProp]; - var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference; - var offset = within(min, center, max); // Prevents breaking syntax highlighting... - - var axisProp = axis; - state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$); - } - - function effect$1(_ref2) { - var state = _ref2.state, - options = _ref2.options; - var _options$element = options.element, - arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element; - - if (arrowElement == null) { - return; - } // CSS selector - - - if (typeof arrowElement === 'string') { - arrowElement = state.elements.popper.querySelector(arrowElement); - - if (!arrowElement) { - return; - } - } - - if (!contains(state.elements.popper, arrowElement)) { - - return; - } - - state.elements.arrow = arrowElement; - } // eslint-disable-next-line import/no-unused-modules - - - var arrow$1 = { - name: 'arrow', - enabled: true, - phase: 'main', - fn: arrow, - effect: effect$1, - requires: ['popperOffsets'], - requiresIfExists: ['preventOverflow'] - }; - - var unsetSides = { - top: 'auto', - right: 'auto', - bottom: 'auto', - left: 'auto' - }; // Round the offsets to the nearest suitable subpixel based on the DPR. - // Zooming can change the DPR, but it seems to report a value that will - // cleanly divide the values into the appropriate subpixels. - - function roundOffsetsByDPR(_ref) { - var x = _ref.x, - y = _ref.y; - var win = window; - var dpr = win.devicePixelRatio || 1; - return { - x: round(round(x * dpr) / dpr) || 0, - y: round(round(y * dpr) / dpr) || 0 - }; - } - - function mapToStyles(_ref2) { - var _Object$assign2; - - var popper = _ref2.popper, - popperRect = _ref2.popperRect, - placement = _ref2.placement, - offsets = _ref2.offsets, - position = _ref2.position, - gpuAcceleration = _ref2.gpuAcceleration, - adaptive = _ref2.adaptive, - roundOffsets = _ref2.roundOffsets; - - var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets, - _ref3$x = _ref3.x, - x = _ref3$x === void 0 ? 0 : _ref3$x, - _ref3$y = _ref3.y, - y = _ref3$y === void 0 ? 0 : _ref3$y; - - var hasX = offsets.hasOwnProperty('x'); - var hasY = offsets.hasOwnProperty('y'); - var sideX = left; - var sideY = top; - var win = window; - - if (adaptive) { - var offsetParent = getOffsetParent(popper); - var heightProp = 'clientHeight'; - var widthProp = 'clientWidth'; - - if (offsetParent === getWindow(popper)) { - offsetParent = getDocumentElement(popper); - - if (getComputedStyle$1(offsetParent).position !== 'static') { - heightProp = 'scrollHeight'; - widthProp = 'scrollWidth'; - } - } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it - - - offsetParent = offsetParent; - - if (placement === top) { - sideY = bottom; // $FlowFixMe[prop-missing] - - y -= offsetParent[heightProp] - popperRect.height; - y *= gpuAcceleration ? 1 : -1; - } - - if (placement === left) { - sideX = right; // $FlowFixMe[prop-missing] - - x -= offsetParent[widthProp] - popperRect.width; - x *= gpuAcceleration ? 1 : -1; - } - } - - var commonStyles = Object.assign({ - position: position - }, adaptive && unsetSides); - - if (gpuAcceleration) { - var _Object$assign; - - return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? "translate(" + x + "px, " + y + "px)" : "translate3d(" + x + "px, " + y + "px, 0)", _Object$assign)); - } - - return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + "px" : '', _Object$assign2[sideX] = hasX ? x + "px" : '', _Object$assign2.transform = '', _Object$assign2)); - } - - function computeStyles(_ref4) { - var state = _ref4.state, - options = _ref4.options; - var _options$gpuAccelerat = options.gpuAcceleration, - gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat, - _options$adaptive = options.adaptive, - adaptive = _options$adaptive === void 0 ? true : _options$adaptive, - _options$roundOffsets = options.roundOffsets, - roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets; - - var commonStyles = { - placement: getBasePlacement(state.placement), - popper: state.elements.popper, - popperRect: state.rects.popper, - gpuAcceleration: gpuAcceleration - }; - - if (state.modifiersData.popperOffsets != null) { - state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, { - offsets: state.modifiersData.popperOffsets, - position: state.options.strategy, - adaptive: adaptive, - roundOffsets: roundOffsets - }))); - } - - if (state.modifiersData.arrow != null) { - state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, { - offsets: state.modifiersData.arrow, - position: 'absolute', - adaptive: false, - roundOffsets: roundOffsets - }))); - } - - state.attributes.popper = Object.assign({}, state.attributes.popper, { - 'data-popper-placement': state.placement - }); - } // eslint-disable-next-line import/no-unused-modules - - - var computeStyles$1 = { - name: 'computeStyles', - enabled: true, - phase: 'beforeWrite', - fn: computeStyles, - data: {} - }; - - var passive = { - passive: true - }; - - function effect(_ref) { - var state = _ref.state, - instance = _ref.instance, - options = _ref.options; - var _options$scroll = options.scroll, - scroll = _options$scroll === void 0 ? true : _options$scroll, - _options$resize = options.resize, - resize = _options$resize === void 0 ? true : _options$resize; - var window = getWindow(state.elements.popper); - var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper); - - if (scroll) { - scrollParents.forEach(function (scrollParent) { - scrollParent.addEventListener('scroll', instance.update, passive); - }); - } - - if (resize) { - window.addEventListener('resize', instance.update, passive); - } - - return function () { - if (scroll) { - scrollParents.forEach(function (scrollParent) { - scrollParent.removeEventListener('scroll', instance.update, passive); - }); - } - - if (resize) { - window.removeEventListener('resize', instance.update, passive); - } - }; - } // eslint-disable-next-line import/no-unused-modules - - - var eventListeners = { - name: 'eventListeners', - enabled: true, - phase: 'write', - fn: function fn() {}, - effect: effect, - data: {} - }; - - var hash$1 = { - left: 'right', - right: 'left', - bottom: 'top', - top: 'bottom' - }; - function getOppositePlacement(placement) { - return placement.replace(/left|right|bottom|top/g, function (matched) { - return hash$1[matched]; - }); - } - - var hash = { - start: 'end', - end: 'start' - }; - function getOppositeVariationPlacement(placement) { - return placement.replace(/start|end/g, function (matched) { - return hash[matched]; - }); - } - - function getWindowScroll(node) { - var win = getWindow(node); - var scrollLeft = win.pageXOffset; - var scrollTop = win.pageYOffset; - return { - scrollLeft: scrollLeft, - scrollTop: scrollTop - }; - } - - function getWindowScrollBarX(element) { - // If <html> has a CSS width greater than the viewport, then this will be - // incorrect for RTL. - // Popper 1 is broken in this case and never had a bug report so let's assume - // it's not an issue. I don't think anyone ever specifies width on <html> - // anyway. - // Browsers where the left scrollbar doesn't cause an issue report `0` for - // this (e.g. Edge 2019, IE11, Safari) - return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft; - } - - function getViewportRect(element) { - var win = getWindow(element); - var html = getDocumentElement(element); - var visualViewport = win.visualViewport; - var width = html.clientWidth; - var height = html.clientHeight; - var x = 0; - var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper - // can be obscured underneath it. - // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even - // if it isn't open, so if this isn't available, the popper will be detected - // to overflow the bottom of the screen too early. - - if (visualViewport) { - width = visualViewport.width; - height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently) - // In Chrome, it returns a value very close to 0 (+/-) but contains rounding - // errors due to floating point numbers, so we need to check precision. - // Safari returns a number <= 0, usually < -1 when pinch-zoomed - // Feature detection fails in mobile emulation mode in Chrome. - // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) < - // 0.001 - // Fallback here: "Not Safari" userAgent - - if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) { - x = visualViewport.offsetLeft; - y = visualViewport.offsetTop; - } - } - - return { - width: width, - height: height, - x: x + getWindowScrollBarX(element), - y: y - }; - } - - // of the `<html>` and `<body>` rect bounds if horizontally scrollable - - function getDocumentRect(element) { - var _element$ownerDocumen; - - var html = getDocumentElement(element); - var winScroll = getWindowScroll(element); - var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body; - var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0); - var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0); - var x = -winScroll.scrollLeft + getWindowScrollBarX(element); - var y = -winScroll.scrollTop; - - if (getComputedStyle$1(body || html).direction === 'rtl') { - x += max(html.clientWidth, body ? body.clientWidth : 0) - width; - } - - return { - width: width, - height: height, - x: x, - y: y - }; - } - - function isScrollParent(element) { - // Firefox wants us to check `-x` and `-y` variations as well - var _getComputedStyle = getComputedStyle$1(element), - overflow = _getComputedStyle.overflow, - overflowX = _getComputedStyle.overflowX, - overflowY = _getComputedStyle.overflowY; - - return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX); - } - - function getScrollParent(node) { - if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) { - // $FlowFixMe[incompatible-return]: assume body is always available - return node.ownerDocument.body; - } - - if (isHTMLElement(node) && isScrollParent(node)) { - return node; - } - - return getScrollParent(getParentNode(node)); - } - - /* - given a DOM element, return the list of all scroll parents, up the list of ancesors - until we get to the top window object. This list is what we attach scroll listeners - to, because if any of these parent elements scroll, we'll need to re-calculate the - reference element's position. - */ - - function listScrollParents(element, list) { - var _element$ownerDocumen; - - if (list === void 0) { - list = []; - } - - var scrollParent = getScrollParent(element); - var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body); - var win = getWindow(scrollParent); - var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent; - var updatedList = list.concat(target); - return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here - updatedList.concat(listScrollParents(getParentNode(target))); - } - - function rectToClientRect(rect) { - return Object.assign({}, rect, { - left: rect.x, - top: rect.y, - right: rect.x + rect.width, - bottom: rect.y + rect.height - }); - } - - function getInnerBoundingClientRect(element) { - var rect = getBoundingClientRect(element); - rect.top = rect.top + element.clientTop; - rect.left = rect.left + element.clientLeft; - rect.bottom = rect.top + element.clientHeight; - rect.right = rect.left + element.clientWidth; - rect.width = element.clientWidth; - rect.height = element.clientHeight; - rect.x = rect.left; - rect.y = rect.top; - return rect; - } - - function getClientRectFromMixedType(element, clippingParent) { - return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element))); - } // A "clipping parent" is an overflowable container with the characteristic of - // clipping (or hiding) overflowing elements with a position different from - // `initial` - - - function getClippingParents(element) { - var clippingParents = listScrollParents(getParentNode(element)); - var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle$1(element).position) >= 0; - var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element; - - if (!isElement(clipperElement)) { - return []; - } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414 - - - return clippingParents.filter(function (clippingParent) { - return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body'; - }); - } // Gets the maximum area that the element is visible in due to any number of - // clipping parents - - - function getClippingRect(element, boundary, rootBoundary) { - var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary); - var clippingParents = [].concat(mainClippingParents, [rootBoundary]); - var firstClippingParent = clippingParents[0]; - var clippingRect = clippingParents.reduce(function (accRect, clippingParent) { - var rect = getClientRectFromMixedType(element, clippingParent); - accRect.top = max(rect.top, accRect.top); - accRect.right = min(rect.right, accRect.right); - accRect.bottom = min(rect.bottom, accRect.bottom); - accRect.left = max(rect.left, accRect.left); - return accRect; - }, getClientRectFromMixedType(element, firstClippingParent)); - clippingRect.width = clippingRect.right - clippingRect.left; - clippingRect.height = clippingRect.bottom - clippingRect.top; - clippingRect.x = clippingRect.left; - clippingRect.y = clippingRect.top; - return clippingRect; - } - - function getVariation(placement) { - return placement.split('-')[1]; - } - - function computeOffsets(_ref) { - var reference = _ref.reference, - element = _ref.element, - placement = _ref.placement; - var basePlacement = placement ? getBasePlacement(placement) : null; - var variation = placement ? getVariation(placement) : null; - var commonX = reference.x + reference.width / 2 - element.width / 2; - var commonY = reference.y + reference.height / 2 - element.height / 2; - var offsets; - - switch (basePlacement) { - case top: - offsets = { - x: commonX, - y: reference.y - element.height - }; - break; - - case bottom: - offsets = { - x: commonX, - y: reference.y + reference.height - }; - break; - - case right: - offsets = { - x: reference.x + reference.width, - y: commonY - }; - break; - - case left: - offsets = { - x: reference.x - element.width, - y: commonY - }; - break; - - default: - offsets = { - x: reference.x, - y: reference.y - }; - } - - var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null; - - if (mainAxis != null) { - var len = mainAxis === 'y' ? 'height' : 'width'; - - switch (variation) { - case start: - offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2); - break; - - case end: - offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2); - break; - } - } - - return offsets; - } - - function detectOverflow(state, options) { - if (options === void 0) { - options = {}; - } - - var _options = options, - _options$placement = _options.placement, - placement = _options$placement === void 0 ? state.placement : _options$placement, - _options$boundary = _options.boundary, - boundary = _options$boundary === void 0 ? clippingParents : _options$boundary, - _options$rootBoundary = _options.rootBoundary, - rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary, - _options$elementConte = _options.elementContext, - elementContext = _options$elementConte === void 0 ? popper : _options$elementConte, - _options$altBoundary = _options.altBoundary, - altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary, - _options$padding = _options.padding, - padding = _options$padding === void 0 ? 0 : _options$padding; - var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements)); - var altContext = elementContext === popper ? reference : popper; - var referenceElement = state.elements.reference; - var popperRect = state.rects.popper; - var element = state.elements[altBoundary ? altContext : elementContext]; - var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary); - var referenceClientRect = getBoundingClientRect(referenceElement); - var popperOffsets = computeOffsets({ - reference: referenceClientRect, - element: popperRect, - strategy: 'absolute', - placement: placement - }); - var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets)); - var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect - // 0 or negative = within the clipping rect - - var overflowOffsets = { - top: clippingClientRect.top - elementClientRect.top + paddingObject.top, - bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom, - left: clippingClientRect.left - elementClientRect.left + paddingObject.left, - right: elementClientRect.right - clippingClientRect.right + paddingObject.right - }; - var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element - - if (elementContext === popper && offsetData) { - var offset = offsetData[placement]; - Object.keys(overflowOffsets).forEach(function (key) { - var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1; - var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x'; - overflowOffsets[key] += offset[axis] * multiply; - }); - } - - return overflowOffsets; - } - - function computeAutoPlacement(state, options) { - if (options === void 0) { - options = {}; - } - - var _options = options, - placement = _options.placement, - boundary = _options.boundary, - rootBoundary = _options.rootBoundary, - padding = _options.padding, - flipVariations = _options.flipVariations, - _options$allowedAutoP = _options.allowedAutoPlacements, - allowedAutoPlacements = _options$allowedAutoP === void 0 ? placements : _options$allowedAutoP; - var variation = getVariation(placement); - var placements$1 = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) { - return getVariation(placement) === variation; - }) : basePlacements; - var allowedPlacements = placements$1.filter(function (placement) { - return allowedAutoPlacements.indexOf(placement) >= 0; - }); - - if (allowedPlacements.length === 0) { - allowedPlacements = placements$1; - } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions... - - - var overflows = allowedPlacements.reduce(function (acc, placement) { - acc[placement] = detectOverflow(state, { - placement: placement, - boundary: boundary, - rootBoundary: rootBoundary, - padding: padding - })[getBasePlacement(placement)]; - return acc; - }, {}); - return Object.keys(overflows).sort(function (a, b) { - return overflows[a] - overflows[b]; - }); - } - - function getExpandedFallbackPlacements(placement) { - if (getBasePlacement(placement) === auto) { - return []; - } - - var oppositePlacement = getOppositePlacement(placement); - return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)]; - } - - function flip(_ref) { - var state = _ref.state, - options = _ref.options, - name = _ref.name; - - if (state.modifiersData[name]._skip) { - return; - } - - var _options$mainAxis = options.mainAxis, - checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis, - _options$altAxis = options.altAxis, - checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis, - specifiedFallbackPlacements = options.fallbackPlacements, - padding = options.padding, - boundary = options.boundary, - rootBoundary = options.rootBoundary, - altBoundary = options.altBoundary, - _options$flipVariatio = options.flipVariations, - flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio, - allowedAutoPlacements = options.allowedAutoPlacements; - var preferredPlacement = state.options.placement; - var basePlacement = getBasePlacement(preferredPlacement); - var isBasePlacement = basePlacement === preferredPlacement; - var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement)); - var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) { - return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, { - placement: placement, - boundary: boundary, - rootBoundary: rootBoundary, - padding: padding, - flipVariations: flipVariations, - allowedAutoPlacements: allowedAutoPlacements - }) : placement); - }, []); - var referenceRect = state.rects.reference; - var popperRect = state.rects.popper; - var checksMap = new Map(); - var makeFallbackChecks = true; - var firstFittingPlacement = placements[0]; - - for (var i = 0; i < placements.length; i++) { - var placement = placements[i]; - - var _basePlacement = getBasePlacement(placement); - - var isStartVariation = getVariation(placement) === start; - var isVertical = [top, bottom].indexOf(_basePlacement) >= 0; - var len = isVertical ? 'width' : 'height'; - var overflow = detectOverflow(state, { - placement: placement, - boundary: boundary, - rootBoundary: rootBoundary, - altBoundary: altBoundary, - padding: padding - }); - var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top; - - if (referenceRect[len] > popperRect[len]) { - mainVariationSide = getOppositePlacement(mainVariationSide); - } - - var altVariationSide = getOppositePlacement(mainVariationSide); - var checks = []; - - if (checkMainAxis) { - checks.push(overflow[_basePlacement] <= 0); - } - - if (checkAltAxis) { - checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0); - } - - if (checks.every(function (check) { - return check; - })) { - firstFittingPlacement = placement; - makeFallbackChecks = false; - break; - } - - checksMap.set(placement, checks); - } - - if (makeFallbackChecks) { - // `2` may be desired in some cases – research later - var numberOfChecks = flipVariations ? 3 : 1; - - var _loop = function _loop(_i) { - var fittingPlacement = placements.find(function (placement) { - var checks = checksMap.get(placement); - - if (checks) { - return checks.slice(0, _i).every(function (check) { - return check; - }); - } - }); - - if (fittingPlacement) { - firstFittingPlacement = fittingPlacement; - return "break"; - } - }; - - for (var _i = numberOfChecks; _i > 0; _i--) { - var _ret = _loop(_i); - - if (_ret === "break") break; - } - } - - if (state.placement !== firstFittingPlacement) { - state.modifiersData[name]._skip = true; - state.placement = firstFittingPlacement; - state.reset = true; - } - } // eslint-disable-next-line import/no-unused-modules - - - var flip$1 = { - name: 'flip', - enabled: true, - phase: 'main', - fn: flip, - requiresIfExists: ['offset'], - data: { - _skip: false - } - }; - - function getSideOffsets(overflow, rect, preventedOffsets) { - if (preventedOffsets === void 0) { - preventedOffsets = { - x: 0, - y: 0 - }; - } - - return { - top: overflow.top - rect.height - preventedOffsets.y, - right: overflow.right - rect.width + preventedOffsets.x, - bottom: overflow.bottom - rect.height + preventedOffsets.y, - left: overflow.left - rect.width - preventedOffsets.x - }; - } - - function isAnySideFullyClipped(overflow) { - return [top, right, bottom, left].some(function (side) { - return overflow[side] >= 0; - }); - } - - function hide(_ref) { - var state = _ref.state, - name = _ref.name; - var referenceRect = state.rects.reference; - var popperRect = state.rects.popper; - var preventedOffsets = state.modifiersData.preventOverflow; - var referenceOverflow = detectOverflow(state, { - elementContext: 'reference' - }); - var popperAltOverflow = detectOverflow(state, { - altBoundary: true - }); - var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect); - var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets); - var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets); - var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets); - state.modifiersData[name] = { - referenceClippingOffsets: referenceClippingOffsets, - popperEscapeOffsets: popperEscapeOffsets, - isReferenceHidden: isReferenceHidden, - hasPopperEscaped: hasPopperEscaped - }; - state.attributes.popper = Object.assign({}, state.attributes.popper, { - 'data-popper-reference-hidden': isReferenceHidden, - 'data-popper-escaped': hasPopperEscaped - }); - } // eslint-disable-next-line import/no-unused-modules - - - var hide$1 = { - name: 'hide', - enabled: true, - phase: 'main', - requiresIfExists: ['preventOverflow'], - fn: hide - }; - - function distanceAndSkiddingToXY(placement, rects, offset) { - var basePlacement = getBasePlacement(placement); - var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1; - - var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, { - placement: placement - })) : offset, - skidding = _ref[0], - distance = _ref[1]; - - skidding = skidding || 0; - distance = (distance || 0) * invertDistance; - return [left, right].indexOf(basePlacement) >= 0 ? { - x: distance, - y: skidding - } : { - x: skidding, - y: distance - }; - } - - function offset(_ref2) { - var state = _ref2.state, - options = _ref2.options, - name = _ref2.name; - var _options$offset = options.offset, - offset = _options$offset === void 0 ? [0, 0] : _options$offset; - var data = placements.reduce(function (acc, placement) { - acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset); - return acc; - }, {}); - var _data$state$placement = data[state.placement], - x = _data$state$placement.x, - y = _data$state$placement.y; - - if (state.modifiersData.popperOffsets != null) { - state.modifiersData.popperOffsets.x += x; - state.modifiersData.popperOffsets.y += y; - } - - state.modifiersData[name] = data; - } // eslint-disable-next-line import/no-unused-modules - - - var offset$1 = { - name: 'offset', - enabled: true, - phase: 'main', - requires: ['popperOffsets'], - fn: offset - }; - - function popperOffsets(_ref) { - var state = _ref.state, - name = _ref.name; // Offsets are the actual position the popper needs to have to be - // properly positioned near its reference element - // This is the most basic placement, and will be adjusted by - // the modifiers in the next step - - state.modifiersData[name] = computeOffsets({ - reference: state.rects.reference, - element: state.rects.popper, - strategy: 'absolute', - placement: state.placement - }); - } // eslint-disable-next-line import/no-unused-modules - - - var popperOffsets$1 = { - name: 'popperOffsets', - enabled: true, - phase: 'read', - fn: popperOffsets, - data: {} - }; - - function getAltAxis(axis) { - return axis === 'x' ? 'y' : 'x'; - } - - function preventOverflow(_ref) { - var state = _ref.state, - options = _ref.options, - name = _ref.name; - var _options$mainAxis = options.mainAxis, - checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis, - _options$altAxis = options.altAxis, - checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis, - boundary = options.boundary, - rootBoundary = options.rootBoundary, - altBoundary = options.altBoundary, - padding = options.padding, - _options$tether = options.tether, - tether = _options$tether === void 0 ? true : _options$tether, - _options$tetherOffset = options.tetherOffset, - tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset; - var overflow = detectOverflow(state, { - boundary: boundary, - rootBoundary: rootBoundary, - padding: padding, - altBoundary: altBoundary - }); - var basePlacement = getBasePlacement(state.placement); - var variation = getVariation(state.placement); - var isBasePlacement = !variation; - var mainAxis = getMainAxisFromPlacement(basePlacement); - var altAxis = getAltAxis(mainAxis); - var popperOffsets = state.modifiersData.popperOffsets; - var referenceRect = state.rects.reference; - var popperRect = state.rects.popper; - var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, { - placement: state.placement - })) : tetherOffset; - var data = { - x: 0, - y: 0 - }; - - if (!popperOffsets) { - return; - } - - if (checkMainAxis || checkAltAxis) { - var mainSide = mainAxis === 'y' ? top : left; - var altSide = mainAxis === 'y' ? bottom : right; - var len = mainAxis === 'y' ? 'height' : 'width'; - var offset = popperOffsets[mainAxis]; - var min$1 = popperOffsets[mainAxis] + overflow[mainSide]; - var max$1 = popperOffsets[mainAxis] - overflow[altSide]; - var additive = tether ? -popperRect[len] / 2 : 0; - var minLen = variation === start ? referenceRect[len] : popperRect[len]; - var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go - // outside the reference bounds - - var arrowElement = state.elements.arrow; - var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : { - width: 0, - height: 0 - }; - var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject(); - var arrowPaddingMin = arrowPaddingObject[mainSide]; - var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want - // to include its full size in the calculation. If the reference is small - // and near the edge of a boundary, the popper can overflow even if the - // reference is not overflowing as well (e.g. virtual elements with no - // width or height) - - var arrowLen = within(0, referenceRect[len], arrowRect[len]); - var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue; - var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue; - var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow); - var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0; - var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0; - var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset; - var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue; - - if (checkMainAxis) { - var preventedOffset = within(tether ? min(min$1, tetherMin) : min$1, offset, tether ? max(max$1, tetherMax) : max$1); - popperOffsets[mainAxis] = preventedOffset; - data[mainAxis] = preventedOffset - offset; - } - - if (checkAltAxis) { - var _mainSide = mainAxis === 'x' ? top : left; - - var _altSide = mainAxis === 'x' ? bottom : right; - - var _offset = popperOffsets[altAxis]; - - var _min = _offset + overflow[_mainSide]; - - var _max = _offset - overflow[_altSide]; - - var _preventedOffset = within(tether ? min(_min, tetherMin) : _min, _offset, tether ? max(_max, tetherMax) : _max); - - popperOffsets[altAxis] = _preventedOffset; - data[altAxis] = _preventedOffset - _offset; - } - } - - state.modifiersData[name] = data; - } // eslint-disable-next-line import/no-unused-modules - - - var preventOverflow$1 = { - name: 'preventOverflow', - enabled: true, - phase: 'main', - fn: preventOverflow, - requiresIfExists: ['offset'] - }; - - function getHTMLElementScroll(element) { - return { - scrollLeft: element.scrollLeft, - scrollTop: element.scrollTop - }; - } - - function getNodeScroll(node) { - if (node === getWindow(node) || !isHTMLElement(node)) { - return getWindowScroll(node); - } else { - return getHTMLElementScroll(node); - } - } - - // Composite means it takes into account transforms as well as layout. - - function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) { - if (isFixed === void 0) { - isFixed = false; - } - - var documentElement = getDocumentElement(offsetParent); - var rect = getBoundingClientRect(elementOrVirtualElement); - var isOffsetParentAnElement = isHTMLElement(offsetParent); - var scroll = { - scrollLeft: 0, - scrollTop: 0 - }; - var offsets = { - x: 0, - y: 0 - }; - - if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) { - if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078 - isScrollParent(documentElement)) { - scroll = getNodeScroll(offsetParent); - } - - if (isHTMLElement(offsetParent)) { - offsets = getBoundingClientRect(offsetParent); - offsets.x += offsetParent.clientLeft; - offsets.y += offsetParent.clientTop; - } else if (documentElement) { - offsets.x = getWindowScrollBarX(documentElement); - } - } - - return { - x: rect.left + scroll.scrollLeft - offsets.x, - y: rect.top + scroll.scrollTop - offsets.y, - width: rect.width, - height: rect.height - }; - } - - function order(modifiers) { - var map = new Map(); - var visited = new Set(); - var result = []; - modifiers.forEach(function (modifier) { - map.set(modifier.name, modifier); - }); // On visiting object, check for its dependencies and visit them recursively - - function sort(modifier) { - visited.add(modifier.name); - var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []); - requires.forEach(function (dep) { - if (!visited.has(dep)) { - var depModifier = map.get(dep); - - if (depModifier) { - sort(depModifier); - } - } - }); - result.push(modifier); - } - - modifiers.forEach(function (modifier) { - if (!visited.has(modifier.name)) { - // check for visited object - sort(modifier); - } - }); - return result; - } - - function orderModifiers(modifiers) { - // order based on dependencies - var orderedModifiers = order(modifiers); // order based on phase - - return modifierPhases.reduce(function (acc, phase) { - return acc.concat(orderedModifiers.filter(function (modifier) { - return modifier.phase === phase; - })); - }, []); - } - - function debounce(fn) { - var pending; - return function () { - if (!pending) { - pending = new Promise(function (resolve) { - Promise.resolve().then(function () { - pending = undefined; - resolve(fn()); - }); - }); - } - - return pending; - }; - } - - function mergeByName(modifiers) { - var merged = modifiers.reduce(function (merged, current) { - var existing = merged[current.name]; - merged[current.name] = existing ? Object.assign({}, existing, current, { - options: Object.assign({}, existing.options, current.options), - data: Object.assign({}, existing.data, current.data) - }) : current; - return merged; - }, {}); // IE11 does not support Object.values - - return Object.keys(merged).map(function (key) { - return merged[key]; - }); - } - - var DEFAULT_OPTIONS = { - placement: 'bottom', - modifiers: [], - strategy: 'absolute' - }; - - function areValidElements() { - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - - return !args.some(function (element) { - return !(element && typeof element.getBoundingClientRect === 'function'); - }); - } - - function popperGenerator(generatorOptions) { - if (generatorOptions === void 0) { - generatorOptions = {}; - } - - var _generatorOptions = generatorOptions, - _generatorOptions$def = _generatorOptions.defaultModifiers, - defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def, - _generatorOptions$def2 = _generatorOptions.defaultOptions, - defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2; - return function createPopper(reference, popper, options) { - if (options === void 0) { - options = defaultOptions; - } - - var state = { - placement: 'bottom', - orderedModifiers: [], - options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions), - modifiersData: {}, - elements: { - reference: reference, - popper: popper - }, - attributes: {}, - styles: {} - }; - var effectCleanupFns = []; - var isDestroyed = false; - var instance = { - state: state, - setOptions: function setOptions(options) { - cleanupModifierEffects(); - state.options = Object.assign({}, defaultOptions, state.options, options); - state.scrollParents = { - reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [], - popper: listScrollParents(popper) - }; // Orders the modifiers based on their dependencies and `phase` - // properties - - var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers - - state.orderedModifiers = orderedModifiers.filter(function (m) { - return m.enabled; - }); // Validate the provided modifiers so that the consumer will get warned - - runModifierEffects(); - return instance.update(); - }, - // Sync update – it will always be executed, even if not necessary. This - // is useful for low frequency updates where sync behavior simplifies the - // logic. - // For high frequency updates (e.g. `resize` and `scroll` events), always - // prefer the async Popper#update method - forceUpdate: function forceUpdate() { - if (isDestroyed) { - return; - } - - var _state$elements = state.elements, - reference = _state$elements.reference, - popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements - // anymore - - if (!areValidElements(reference, popper)) { - - return; - } // Store the reference and popper rects to be read by modifiers - - - state.rects = { - reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'), - popper: getLayoutRect(popper) - }; // Modifiers have the ability to reset the current update cycle. The - // most common use case for this is the `flip` modifier changing the - // placement, which then needs to re-run all the modifiers, because the - // logic was previously ran for the previous placement and is therefore - // stale/incorrect - - state.reset = false; - state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier - // is filled with the initial data specified by the modifier. This means - // it doesn't persist and is fresh on each update. - // To ensure persistent data, use `${name}#persistent` - - state.orderedModifiers.forEach(function (modifier) { - return state.modifiersData[modifier.name] = Object.assign({}, modifier.data); - }); - - for (var index = 0; index < state.orderedModifiers.length; index++) { - - if (state.reset === true) { - state.reset = false; - index = -1; - continue; - } - - var _state$orderedModifie = state.orderedModifiers[index], - fn = _state$orderedModifie.fn, - _state$orderedModifie2 = _state$orderedModifie.options, - _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2, - name = _state$orderedModifie.name; - - if (typeof fn === 'function') { - state = fn({ - state: state, - options: _options, - name: name, - instance: instance - }) || state; - } - } - }, - // Async and optimistically optimized update – it will not be executed if - // not necessary (debounced to run at most once-per-tick) - update: debounce(function () { - return new Promise(function (resolve) { - instance.forceUpdate(); - resolve(state); - }); - }), - destroy: function destroy() { - cleanupModifierEffects(); - isDestroyed = true; - } - }; - - if (!areValidElements(reference, popper)) { - - return instance; - } - - instance.setOptions(options).then(function (state) { - if (!isDestroyed && options.onFirstUpdate) { - options.onFirstUpdate(state); - } - }); // Modifiers have the ability to execute arbitrary code before the first - // update cycle runs. They will be executed in the same order as the update - // cycle. This is useful when a modifier adds some persistent data that - // other modifiers need to use, but the modifier is run after the dependent - // one. - - function runModifierEffects() { - state.orderedModifiers.forEach(function (_ref3) { - var name = _ref3.name, - _ref3$options = _ref3.options, - options = _ref3$options === void 0 ? {} : _ref3$options, - effect = _ref3.effect; - - if (typeof effect === 'function') { - var cleanupFn = effect({ - state: state, - name: name, - instance: instance, - options: options - }); - - var noopFn = function noopFn() {}; - - effectCleanupFns.push(cleanupFn || noopFn); - } - }); - } - - function cleanupModifierEffects() { - effectCleanupFns.forEach(function (fn) { - return fn(); - }); - effectCleanupFns = []; - } - - return instance; - }; - } - var createPopper$2 = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules - - var defaultModifiers$1 = [eventListeners, popperOffsets$1, computeStyles$1, applyStyles$1]; - var createPopper$1 = /*#__PURE__*/popperGenerator({ - defaultModifiers: defaultModifiers$1 - }); // eslint-disable-next-line import/no-unused-modules - - var defaultModifiers = [eventListeners, popperOffsets$1, computeStyles$1, applyStyles$1, offset$1, flip$1, preventOverflow$1, arrow$1, hide$1]; - var createPopper = /*#__PURE__*/popperGenerator({ - defaultModifiers: defaultModifiers - }); // eslint-disable-next-line import/no-unused-modules - - var Popper = /*#__PURE__*/Object.freeze({ - __proto__: null, - popperGenerator: popperGenerator, - detectOverflow: detectOverflow, - createPopperBase: createPopper$2, - createPopper: createPopper, - createPopperLite: createPopper$1, - top: top, - bottom: bottom, - right: right, - left: left, - auto: auto, - basePlacements: basePlacements, - start: start, - end: end, - clippingParents: clippingParents, - viewport: viewport, - popper: popper, - reference: reference, - variationPlacements: variationPlacements, - placements: placements, - beforeRead: beforeRead, - read: read, - afterRead: afterRead, - beforeMain: beforeMain, - main: main, - afterMain: afterMain, - beforeWrite: beforeWrite, - write: write, - afterWrite: afterWrite, - modifierPhases: modifierPhases, - applyStyles: applyStyles$1, - arrow: arrow$1, - computeStyles: computeStyles$1, - eventListeners: eventListeners, - flip: flip$1, - hide: hide$1, - offset: offset$1, - popperOffsets: popperOffsets$1, - preventOverflow: preventOverflow$1 - }); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): dropdown.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$8 = 'dropdown'; - const DATA_KEY$7 = 'bs.dropdown'; - const EVENT_KEY$7 = `.${DATA_KEY$7}`; - const DATA_API_KEY$4 = '.data-api'; - const ESCAPE_KEY$2 = 'Escape'; - const SPACE_KEY = 'Space'; - const TAB_KEY = 'Tab'; - const ARROW_UP_KEY = 'ArrowUp'; - const ARROW_DOWN_KEY = 'ArrowDown'; - const RIGHT_MOUSE_BUTTON = 2; // MouseEvent.button value for the secondary button, usually the right button - - const REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY$2}`); - const EVENT_HIDE$4 = `hide${EVENT_KEY$7}`; - const EVENT_HIDDEN$4 = `hidden${EVENT_KEY$7}`; - const EVENT_SHOW$4 = `show${EVENT_KEY$7}`; - const EVENT_SHOWN$4 = `shown${EVENT_KEY$7}`; - const EVENT_CLICK = `click${EVENT_KEY$7}`; - const EVENT_CLICK_DATA_API$3 = `click${EVENT_KEY$7}${DATA_API_KEY$4}`; - const EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY$7}${DATA_API_KEY$4}`; - const EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY$7}${DATA_API_KEY$4}`; - const CLASS_NAME_SHOW$7 = 'show'; - const CLASS_NAME_DROPUP = 'dropup'; - const CLASS_NAME_DROPEND = 'dropend'; - const CLASS_NAME_DROPSTART = 'dropstart'; - const CLASS_NAME_NAVBAR = 'navbar'; - const SELECTOR_DATA_TOGGLE$3 = '[data-bs-toggle="dropdown"]'; - const SELECTOR_MENU = '.dropdown-menu'; - const SELECTOR_NAVBAR_NAV = '.navbar-nav'; - const SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'; - const PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'; - const PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'; - const PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'; - const PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'; - const PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'; - const PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'; - const Default$7 = { - offset: [0, 2], - boundary: 'clippingParents', - reference: 'toggle', - display: 'dynamic', - popperConfig: null, - autoClose: true - }; - const DefaultType$7 = { - offset: '(array|string|function)', - boundary: '(string|element)', - reference: '(string|element|object)', - display: 'string', - popperConfig: '(null|object|function)', - autoClose: '(boolean|string)' - }; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Dropdown extends BaseComponent { - constructor(element, config) { - super(element); - this._popper = null; - this._config = this._getConfig(config); - this._menu = this._getMenuElement(); - this._inNavbar = this._detectNavbar(); - - this._addEventListeners(); - } // Getters - - - static get Default() { - return Default$7; - } - - static get DefaultType() { - return DefaultType$7; - } - - static get NAME() { - return NAME$8; - } // Public - - - toggle() { - if (isDisabled(this._element)) { - return; - } - - const isActive = this._element.classList.contains(CLASS_NAME_SHOW$7); - - if (isActive) { - this.hide(); - return; - } - - this.show(); - } - - show() { - if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW$7)) { - return; - } - - const parent = Dropdown.getParentFromElement(this._element); - const relatedTarget = { - relatedTarget: this._element - }; - const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$4, relatedTarget); - - if (showEvent.defaultPrevented) { - return; - } // Totally disable Popper for Dropdowns in Navbar - - - if (this._inNavbar) { - Manipulator.setDataAttribute(this._menu, 'popper', 'none'); - } else { - if (typeof Popper === 'undefined') { - throw new TypeError('Bootstrap\'s dropdowns require Popper (https://popper.js.org)'); - } - - let referenceElement = this._element; - - if (this._config.reference === 'parent') { - referenceElement = parent; - } else if (isElement$1(this._config.reference)) { - referenceElement = getElement(this._config.reference); - } else if (typeof this._config.reference === 'object') { - referenceElement = this._config.reference; - } - - const popperConfig = this._getPopperConfig(); - - const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false); - this._popper = createPopper(referenceElement, this._menu, popperConfig); - - if (isDisplayStatic) { - Manipulator.setDataAttribute(this._menu, 'popper', 'static'); - } - } // If this is a touch-enabled device we add extra - // empty mouseover listeners to the body's immediate children; - // only needed because of broken event delegation on iOS - // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html - - - if ('ontouchstart' in document.documentElement && !parent.closest(SELECTOR_NAVBAR_NAV)) { - [].concat(...document.body.children).forEach(elem => EventHandler.on(elem, 'mouseover', noop)); - } - - this._element.focus(); - - this._element.setAttribute('aria-expanded', true); - - this._menu.classList.toggle(CLASS_NAME_SHOW$7); - - this._element.classList.toggle(CLASS_NAME_SHOW$7); - - EventHandler.trigger(this._element, EVENT_SHOWN$4, relatedTarget); - } - - hide() { - if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW$7)) { - return; - } - - const relatedTarget = { - relatedTarget: this._element - }; - - this._completeHide(relatedTarget); - } - - dispose() { - if (this._popper) { - this._popper.destroy(); - } - - super.dispose(); - } - - update() { - this._inNavbar = this._detectNavbar(); - - if (this._popper) { - this._popper.update(); - } - } // Private - - - _addEventListeners() { - EventHandler.on(this._element, EVENT_CLICK, event => { - event.preventDefault(); - this.toggle(); - }); - } - - _completeHide(relatedTarget) { - const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$4, relatedTarget); - - if (hideEvent.defaultPrevented) { - return; - } // If this is a touch-enabled device we remove the extra - // empty mouseover listeners we added for iOS support - - - if ('ontouchstart' in document.documentElement) { - [].concat(...document.body.children).forEach(elem => EventHandler.off(elem, 'mouseover', noop)); - } - - if (this._popper) { - this._popper.destroy(); - } - - this._menu.classList.remove(CLASS_NAME_SHOW$7); - - this._element.classList.remove(CLASS_NAME_SHOW$7); - - this._element.setAttribute('aria-expanded', 'false'); - - Manipulator.removeDataAttribute(this._menu, 'popper'); - EventHandler.trigger(this._element, EVENT_HIDDEN$4, relatedTarget); - } - - _getConfig(config) { - config = { ...this.constructor.Default, - ...Manipulator.getDataAttributes(this._element), - ...config - }; - typeCheckConfig(NAME$8, config, this.constructor.DefaultType); - - if (typeof config.reference === 'object' && !isElement$1(config.reference) && typeof config.reference.getBoundingClientRect !== 'function') { - // Popper virtual elements require a getBoundingClientRect method - throw new TypeError(`${NAME$8.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`); - } - - return config; - } - - _getMenuElement() { - return SelectorEngine.next(this._element, SELECTOR_MENU)[0]; - } - - _getPlacement() { - const parentDropdown = this._element.parentNode; - - if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) { - return PLACEMENT_RIGHT; - } - - if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) { - return PLACEMENT_LEFT; - } // We need to trim the value because custom properties can also include spaces - - - const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'; - - if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) { - return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP; - } - - return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM; - } - - _detectNavbar() { - return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null; - } - - _getOffset() { - const { - offset - } = this._config; - - if (typeof offset === 'string') { - return offset.split(',').map(val => Number.parseInt(val, 10)); - } - - if (typeof offset === 'function') { - return popperData => offset(popperData, this._element); - } - - return offset; - } - - _getPopperConfig() { - const defaultBsPopperConfig = { - placement: this._getPlacement(), - modifiers: [{ - name: 'preventOverflow', - options: { - boundary: this._config.boundary - } - }, { - name: 'offset', - options: { - offset: this._getOffset() - } - }] - }; // Disable Popper if we have a static display - - if (this._config.display === 'static') { - defaultBsPopperConfig.modifiers = [{ - name: 'applyStyles', - enabled: false - }]; - } - - return { ...defaultBsPopperConfig, - ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig) - }; - } - - _selectMenuItem({ - key, - target - }) { - const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible); - - if (!items.length) { - return; - } // if target isn't included in items (e.g. when expanding the dropdown) - // allow cycling to get the last item in case key equals ARROW_UP_KEY - - - getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus(); - } // Static - - - static dropdownInterface(element, config) { - const data = Dropdown.getOrCreateInstance(element, config); - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - } - } - - static jQueryInterface(config) { - return this.each(function () { - Dropdown.dropdownInterface(this, config); - }); - } - - static clearMenus(event) { - if (event && (event.button === RIGHT_MOUSE_BUTTON || event.type === 'keyup' && event.key !== TAB_KEY)) { - return; - } - - const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE$3); - - for (let i = 0, len = toggles.length; i < len; i++) { - const context = Dropdown.getInstance(toggles[i]); - - if (!context || context._config.autoClose === false) { - continue; - } - - if (!context._element.classList.contains(CLASS_NAME_SHOW$7)) { - continue; - } - - const relatedTarget = { - relatedTarget: context._element - }; - - if (event) { - const composedPath = event.composedPath(); - const isMenuTarget = composedPath.includes(context._menu); - - if (composedPath.includes(context._element) || context._config.autoClose === 'inside' && !isMenuTarget || context._config.autoClose === 'outside' && isMenuTarget) { - continue; - } // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu - - - if (context._menu.contains(event.target) && (event.type === 'keyup' && event.key === TAB_KEY || /input|select|option|textarea|form/i.test(event.target.tagName))) { - continue; - } - - if (event.type === 'click') { - relatedTarget.clickEvent = event; - } - } - - context._completeHide(relatedTarget); - } - } - - static getParentFromElement(element) { - return getElementFromSelector(element) || element.parentNode; - } - - static dataApiKeydownHandler(event) { - // If not input/textarea: - // - And not a key in REGEXP_KEYDOWN => not a dropdown command - // If input/textarea: - // - If space key => not a dropdown command - // - If key is other than escape - // - If key is not up or down => not a dropdown command - // - If trigger inside the menu => not a dropdown command - if (/input|textarea/i.test(event.target.tagName) ? event.key === SPACE_KEY || event.key !== ESCAPE_KEY$2 && (event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY || event.target.closest(SELECTOR_MENU)) : !REGEXP_KEYDOWN.test(event.key)) { - return; - } - - const isActive = this.classList.contains(CLASS_NAME_SHOW$7); - - if (!isActive && event.key === ESCAPE_KEY$2) { - return; - } - - event.preventDefault(); - event.stopPropagation(); - - if (isDisabled(this)) { - return; - } - - const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0]; - - if (event.key === ESCAPE_KEY$2) { - getToggleButton().focus(); - Dropdown.clearMenus(); - return; - } - - if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) { - if (!isActive) { - getToggleButton().click(); - } - - Dropdown.getInstance(getToggleButton())._selectMenuItem(event); - - return; - } - - if (!isActive || event.key === SPACE_KEY) { - Dropdown.clearMenus(); - } - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE$3, Dropdown.dataApiKeydownHandler); - EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler); - EventHandler.on(document, EVENT_CLICK_DATA_API$3, Dropdown.clearMenus); - EventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus); - EventHandler.on(document, EVENT_CLICK_DATA_API$3, SELECTOR_DATA_TOGGLE$3, function (event) { - event.preventDefault(); - Dropdown.dropdownInterface(this); - }); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Dropdown to jQuery only if jQuery is present - */ - - defineJQueryPlugin(Dropdown); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): util/scrollBar.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - const SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'; - const SELECTOR_STICKY_CONTENT = '.sticky-top'; - - class ScrollBarHelper { - constructor() { - this._element = document.body; - } - - getWidth() { - // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes - const documentWidth = document.documentElement.clientWidth; - return Math.abs(window.innerWidth - documentWidth); - } - - hide() { - const width = this.getWidth(); - - this._disableOverFlow(); // give padding to element to balance the hidden scrollbar width - - - this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width); // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth - - - this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width); - - this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width); - } - - _disableOverFlow() { - this._saveInitialAttribute(this._element, 'overflow'); - - this._element.style.overflow = 'hidden'; - } - - _setElementAttributes(selector, styleProp, callback) { - const scrollbarWidth = this.getWidth(); - - const manipulationCallBack = element => { - if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) { - return; - } - - this._saveInitialAttribute(element, styleProp); - - const calculatedValue = window.getComputedStyle(element)[styleProp]; - element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`; - }; - - this._applyManipulationCallback(selector, manipulationCallBack); - } - - reset() { - this._resetElementAttributes(this._element, 'overflow'); - - this._resetElementAttributes(this._element, 'paddingRight'); - - this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight'); - - this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight'); - } - - _saveInitialAttribute(element, styleProp) { - const actualValue = element.style[styleProp]; - - if (actualValue) { - Manipulator.setDataAttribute(element, styleProp, actualValue); - } - } - - _resetElementAttributes(selector, styleProp) { - const manipulationCallBack = element => { - const value = Manipulator.getDataAttribute(element, styleProp); - - if (typeof value === 'undefined') { - element.style.removeProperty(styleProp); - } else { - Manipulator.removeDataAttribute(element, styleProp); - element.style[styleProp] = value; - } - }; - - this._applyManipulationCallback(selector, manipulationCallBack); - } - - _applyManipulationCallback(selector, callBack) { - if (isElement$1(selector)) { - callBack(selector); - } else { - SelectorEngine.find(selector, this._element).forEach(callBack); - } - } - - isOverflowing() { - return this.getWidth() > 0; - } - - } - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): util/backdrop.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * -------------------------------------------------------------------------- - */ - const Default$6 = { - isVisible: true, - // if false, we use the backdrop helper without adding any element to the dom - isAnimated: false, - rootElement: 'body', - // give the choice to place backdrop under different elements - clickCallback: null - }; - const DefaultType$6 = { - isVisible: 'boolean', - isAnimated: 'boolean', - rootElement: '(element|string)', - clickCallback: '(function|null)' - }; - const NAME$7 = 'backdrop'; - const CLASS_NAME_BACKDROP = 'modal-backdrop'; - const CLASS_NAME_FADE$5 = 'fade'; - const CLASS_NAME_SHOW$6 = 'show'; - const EVENT_MOUSEDOWN = `mousedown.bs.${NAME$7}`; - - class Backdrop { - constructor(config) { - this._config = this._getConfig(config); - this._isAppended = false; - this._element = null; - } - - show(callback) { - if (!this._config.isVisible) { - execute(callback); - return; - } - - this._append(); - - if (this._config.isAnimated) { - reflow(this._getElement()); - } - - this._getElement().classList.add(CLASS_NAME_SHOW$6); - - this._emulateAnimation(() => { - execute(callback); - }); - } - - hide(callback) { - if (!this._config.isVisible) { - execute(callback); - return; - } - - this._getElement().classList.remove(CLASS_NAME_SHOW$6); - - this._emulateAnimation(() => { - this.dispose(); - execute(callback); - }); - } // Private - - - _getElement() { - if (!this._element) { - const backdrop = document.createElement('div'); - backdrop.className = CLASS_NAME_BACKDROP; - - if (this._config.isAnimated) { - backdrop.classList.add(CLASS_NAME_FADE$5); - } - - this._element = backdrop; - } - - return this._element; - } - - _getConfig(config) { - config = { ...Default$6, - ...(typeof config === 'object' ? config : {}) - }; // use getElement() with the default "body" to get a fresh Element on each instantiation - - config.rootElement = getElement(config.rootElement); - typeCheckConfig(NAME$7, config, DefaultType$6); - return config; - } - - _append() { - if (this._isAppended) { - return; - } - - this._config.rootElement.appendChild(this._getElement()); - - EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => { - execute(this._config.clickCallback); - }); - this._isAppended = true; - } - - dispose() { - if (!this._isAppended) { - return; - } - - EventHandler.off(this._element, EVENT_MOUSEDOWN); - - this._element.remove(); - - this._isAppended = false; - } - - _emulateAnimation(callback) { - executeAfterTransition(callback, this._getElement(), this._config.isAnimated); - } - - } - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): modal.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$6 = 'modal'; - const DATA_KEY$6 = 'bs.modal'; - const EVENT_KEY$6 = `.${DATA_KEY$6}`; - const DATA_API_KEY$3 = '.data-api'; - const ESCAPE_KEY$1 = 'Escape'; - const Default$5 = { - backdrop: true, - keyboard: true, - focus: true - }; - const DefaultType$5 = { - backdrop: '(boolean|string)', - keyboard: 'boolean', - focus: 'boolean' - }; - const EVENT_HIDE$3 = `hide${EVENT_KEY$6}`; - const EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY$6}`; - const EVENT_HIDDEN$3 = `hidden${EVENT_KEY$6}`; - const EVENT_SHOW$3 = `show${EVENT_KEY$6}`; - const EVENT_SHOWN$3 = `shown${EVENT_KEY$6}`; - const EVENT_FOCUSIN$2 = `focusin${EVENT_KEY$6}`; - const EVENT_RESIZE = `resize${EVENT_KEY$6}`; - const EVENT_CLICK_DISMISS$2 = `click.dismiss${EVENT_KEY$6}`; - const EVENT_KEYDOWN_DISMISS$1 = `keydown.dismiss${EVENT_KEY$6}`; - const EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY$6}`; - const EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY$6}`; - const EVENT_CLICK_DATA_API$2 = `click${EVENT_KEY$6}${DATA_API_KEY$3}`; - const CLASS_NAME_OPEN = 'modal-open'; - const CLASS_NAME_FADE$4 = 'fade'; - const CLASS_NAME_SHOW$5 = 'show'; - const CLASS_NAME_STATIC = 'modal-static'; - const SELECTOR_DIALOG = '.modal-dialog'; - const SELECTOR_MODAL_BODY = '.modal-body'; - const SELECTOR_DATA_TOGGLE$2 = '[data-bs-toggle="modal"]'; - const SELECTOR_DATA_DISMISS$2 = '[data-bs-dismiss="modal"]'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Modal extends BaseComponent { - constructor(element, config) { - super(element); - this._config = this._getConfig(config); - this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element); - this._backdrop = this._initializeBackDrop(); - this._isShown = false; - this._ignoreBackdropClick = false; - this._isTransitioning = false; - this._scrollBar = new ScrollBarHelper(); - } // Getters - - - static get Default() { - return Default$5; - } - - static get NAME() { - return NAME$6; - } // Public - - - toggle(relatedTarget) { - return this._isShown ? this.hide() : this.show(relatedTarget); - } - - show(relatedTarget) { - if (this._isShown || this._isTransitioning) { - return; - } - - const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$3, { - relatedTarget - }); - - if (showEvent.defaultPrevented) { - return; - } - - this._isShown = true; - - if (this._isAnimated()) { - this._isTransitioning = true; - } - - this._scrollBar.hide(); - - document.body.classList.add(CLASS_NAME_OPEN); - - this._adjustDialog(); - - this._setEscapeEvent(); - - this._setResizeEvent(); - - EventHandler.on(this._element, EVENT_CLICK_DISMISS$2, SELECTOR_DATA_DISMISS$2, event => this.hide(event)); - EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => { - EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => { - if (event.target === this._element) { - this._ignoreBackdropClick = true; - } - }); - }); - - this._showBackdrop(() => this._showElement(relatedTarget)); - } - - hide(event) { - if (event && ['A', 'AREA'].includes(event.target.tagName)) { - event.preventDefault(); - } - - if (!this._isShown || this._isTransitioning) { - return; - } - - const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$3); - - if (hideEvent.defaultPrevented) { - return; - } - - this._isShown = false; - - const isAnimated = this._isAnimated(); - - if (isAnimated) { - this._isTransitioning = true; - } - - this._setEscapeEvent(); - - this._setResizeEvent(); - - EventHandler.off(document, EVENT_FOCUSIN$2); - - this._element.classList.remove(CLASS_NAME_SHOW$5); - - EventHandler.off(this._element, EVENT_CLICK_DISMISS$2); - EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS); - - this._queueCallback(() => this._hideModal(), this._element, isAnimated); - } - - dispose() { - [window, this._dialog].forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY$6)); - - this._backdrop.dispose(); - - super.dispose(); - /** - * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API` - * Do not move `document` in `htmlElements` array - * It will remove `EVENT_CLICK_DATA_API` event that should remain - */ - - EventHandler.off(document, EVENT_FOCUSIN$2); - } - - handleUpdate() { - this._adjustDialog(); - } // Private - - - _initializeBackDrop() { - return new Backdrop({ - isVisible: Boolean(this._config.backdrop), - // 'static' option will be translated to true, and booleans will keep their value - isAnimated: this._isAnimated() - }); - } - - _getConfig(config) { - config = { ...Default$5, - ...Manipulator.getDataAttributes(this._element), - ...(typeof config === 'object' ? config : {}) - }; - typeCheckConfig(NAME$6, config, DefaultType$5); - return config; - } - - _showElement(relatedTarget) { - const isAnimated = this._isAnimated(); - - const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog); - - if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) { - // Don't move modal's DOM position - document.body.appendChild(this._element); - } - - this._element.style.display = 'block'; - - this._element.removeAttribute('aria-hidden'); - - this._element.setAttribute('aria-modal', true); - - this._element.setAttribute('role', 'dialog'); - - this._element.scrollTop = 0; - - if (modalBody) { - modalBody.scrollTop = 0; - } - - if (isAnimated) { - reflow(this._element); - } - - this._element.classList.add(CLASS_NAME_SHOW$5); - - if (this._config.focus) { - this._enforceFocus(); - } - - const transitionComplete = () => { - if (this._config.focus) { - this._element.focus(); - } - - this._isTransitioning = false; - EventHandler.trigger(this._element, EVENT_SHOWN$3, { - relatedTarget - }); - }; - - this._queueCallback(transitionComplete, this._dialog, isAnimated); - } - - _enforceFocus() { - EventHandler.off(document, EVENT_FOCUSIN$2); // guard against infinite focus loop - - EventHandler.on(document, EVENT_FOCUSIN$2, event => { - if (document !== event.target && this._element !== event.target && !this._element.contains(event.target)) { - this._element.focus(); - } - }); - } - - _setEscapeEvent() { - if (this._isShown) { - EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS$1, event => { - if (this._config.keyboard && event.key === ESCAPE_KEY$1) { - event.preventDefault(); - this.hide(); - } else if (!this._config.keyboard && event.key === ESCAPE_KEY$1) { - this._triggerBackdropTransition(); - } - }); - } else { - EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS$1); - } - } - - _setResizeEvent() { - if (this._isShown) { - EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog()); - } else { - EventHandler.off(window, EVENT_RESIZE); - } - } - - _hideModal() { - this._element.style.display = 'none'; - - this._element.setAttribute('aria-hidden', true); - - this._element.removeAttribute('aria-modal'); - - this._element.removeAttribute('role'); - - this._isTransitioning = false; - - this._backdrop.hide(() => { - document.body.classList.remove(CLASS_NAME_OPEN); - - this._resetAdjustments(); - - this._scrollBar.reset(); - - EventHandler.trigger(this._element, EVENT_HIDDEN$3); - }); - } - - _showBackdrop(callback) { - EventHandler.on(this._element, EVENT_CLICK_DISMISS$2, event => { - if (this._ignoreBackdropClick) { - this._ignoreBackdropClick = false; - return; - } - - if (event.target !== event.currentTarget) { - return; - } - - if (this._config.backdrop === true) { - this.hide(); - } else if (this._config.backdrop === 'static') { - this._triggerBackdropTransition(); - } - }); - - this._backdrop.show(callback); - } - - _isAnimated() { - return this._element.classList.contains(CLASS_NAME_FADE$4); - } - - _triggerBackdropTransition() { - const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED); - - if (hideEvent.defaultPrevented) { - return; - } - - const { - classList, - scrollHeight, - style - } = this._element; - const isModalOverflowing = scrollHeight > document.documentElement.clientHeight; // return if the following background transition hasn't yet completed - - if (!isModalOverflowing && style.overflowY === 'hidden' || classList.contains(CLASS_NAME_STATIC)) { - return; - } - - if (!isModalOverflowing) { - style.overflowY = 'hidden'; - } - - classList.add(CLASS_NAME_STATIC); - - this._queueCallback(() => { - classList.remove(CLASS_NAME_STATIC); - - if (!isModalOverflowing) { - this._queueCallback(() => { - style.overflowY = ''; - }, this._dialog); - } - }, this._dialog); - - this._element.focus(); - } // ---------------------------------------------------------------------- - // the following methods are used to handle overflowing modals - // ---------------------------------------------------------------------- - - - _adjustDialog() { - const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight; - - const scrollbarWidth = this._scrollBar.getWidth(); - - const isBodyOverflowing = scrollbarWidth > 0; - - if (!isBodyOverflowing && isModalOverflowing && !isRTL() || isBodyOverflowing && !isModalOverflowing && isRTL()) { - this._element.style.paddingLeft = `${scrollbarWidth}px`; - } - - if (isBodyOverflowing && !isModalOverflowing && !isRTL() || !isBodyOverflowing && isModalOverflowing && isRTL()) { - this._element.style.paddingRight = `${scrollbarWidth}px`; - } - } - - _resetAdjustments() { - this._element.style.paddingLeft = ''; - this._element.style.paddingRight = ''; - } // Static - - - static jQueryInterface(config, relatedTarget) { - return this.each(function () { - const data = Modal.getOrCreateInstance(this, config); - - if (typeof config !== 'string') { - return; - } - - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](relatedTarget); - }); - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_CLICK_DATA_API$2, SELECTOR_DATA_TOGGLE$2, function (event) { - const target = getElementFromSelector(this); - - if (['A', 'AREA'].includes(this.tagName)) { - event.preventDefault(); - } - - EventHandler.one(target, EVENT_SHOW$3, showEvent => { - if (showEvent.defaultPrevented) { - // only register focus restorer if modal will actually get shown - return; - } - - EventHandler.one(target, EVENT_HIDDEN$3, () => { - if (isVisible(this)) { - this.focus(); - } - }); - }); - const data = Modal.getOrCreateInstance(target); - data.toggle(this); - }); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Modal to jQuery only if jQuery is present - */ - - defineJQueryPlugin(Modal); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): offcanvas.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$5 = 'offcanvas'; - const DATA_KEY$5 = 'bs.offcanvas'; - const EVENT_KEY$5 = `.${DATA_KEY$5}`; - const DATA_API_KEY$2 = '.data-api'; - const EVENT_LOAD_DATA_API$1 = `load${EVENT_KEY$5}${DATA_API_KEY$2}`; - const ESCAPE_KEY = 'Escape'; - const Default$4 = { - backdrop: true, - keyboard: true, - scroll: false - }; - const DefaultType$4 = { - backdrop: 'boolean', - keyboard: 'boolean', - scroll: 'boolean' - }; - const CLASS_NAME_SHOW$4 = 'show'; - const OPEN_SELECTOR = '.offcanvas.show'; - const EVENT_SHOW$2 = `show${EVENT_KEY$5}`; - const EVENT_SHOWN$2 = `shown${EVENT_KEY$5}`; - const EVENT_HIDE$2 = `hide${EVENT_KEY$5}`; - const EVENT_HIDDEN$2 = `hidden${EVENT_KEY$5}`; - const EVENT_FOCUSIN$1 = `focusin${EVENT_KEY$5}`; - const EVENT_CLICK_DATA_API$1 = `click${EVENT_KEY$5}${DATA_API_KEY$2}`; - const EVENT_CLICK_DISMISS$1 = `click.dismiss${EVENT_KEY$5}`; - const EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY$5}`; - const SELECTOR_DATA_DISMISS$1 = '[data-bs-dismiss="offcanvas"]'; - const SELECTOR_DATA_TOGGLE$1 = '[data-bs-toggle="offcanvas"]'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Offcanvas extends BaseComponent { - constructor(element, config) { - super(element); - this._config = this._getConfig(config); - this._isShown = false; - this._backdrop = this._initializeBackDrop(); - - this._addEventListeners(); - } // Getters - - - static get NAME() { - return NAME$5; - } - - static get Default() { - return Default$4; - } // Public - - - toggle(relatedTarget) { - return this._isShown ? this.hide() : this.show(relatedTarget); - } - - show(relatedTarget) { - if (this._isShown) { - return; - } - - const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$2, { - relatedTarget - }); - - if (showEvent.defaultPrevented) { - return; - } - - this._isShown = true; - this._element.style.visibility = 'visible'; - - this._backdrop.show(); - - if (!this._config.scroll) { - new ScrollBarHelper().hide(); - - this._enforceFocusOnElement(this._element); - } - - this._element.removeAttribute('aria-hidden'); - - this._element.setAttribute('aria-modal', true); - - this._element.setAttribute('role', 'dialog'); - - this._element.classList.add(CLASS_NAME_SHOW$4); - - const completeCallBack = () => { - EventHandler.trigger(this._element, EVENT_SHOWN$2, { - relatedTarget - }); - }; - - this._queueCallback(completeCallBack, this._element, true); - } - - hide() { - if (!this._isShown) { - return; - } - - const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$2); - - if (hideEvent.defaultPrevented) { - return; - } - - EventHandler.off(document, EVENT_FOCUSIN$1); - - this._element.blur(); - - this._isShown = false; - - this._element.classList.remove(CLASS_NAME_SHOW$4); - - this._backdrop.hide(); - - const completeCallback = () => { - this._element.setAttribute('aria-hidden', true); - - this._element.removeAttribute('aria-modal'); - - this._element.removeAttribute('role'); - - this._element.style.visibility = 'hidden'; - - if (!this._config.scroll) { - new ScrollBarHelper().reset(); - } - - EventHandler.trigger(this._element, EVENT_HIDDEN$2); - }; - - this._queueCallback(completeCallback, this._element, true); - } - - dispose() { - this._backdrop.dispose(); - - super.dispose(); - EventHandler.off(document, EVENT_FOCUSIN$1); - } // Private - - - _getConfig(config) { - config = { ...Default$4, - ...Manipulator.getDataAttributes(this._element), - ...(typeof config === 'object' ? config : {}) - }; - typeCheckConfig(NAME$5, config, DefaultType$4); - return config; - } - - _initializeBackDrop() { - return new Backdrop({ - isVisible: this._config.backdrop, - isAnimated: true, - rootElement: this._element.parentNode, - clickCallback: () => this.hide() - }); - } - - _enforceFocusOnElement(element) { - EventHandler.off(document, EVENT_FOCUSIN$1); // guard against infinite focus loop - - EventHandler.on(document, EVENT_FOCUSIN$1, event => { - if (document !== event.target && element !== event.target && !element.contains(event.target)) { - element.focus(); - } - }); - element.focus(); - } - - _addEventListeners() { - EventHandler.on(this._element, EVENT_CLICK_DISMISS$1, SELECTOR_DATA_DISMISS$1, () => this.hide()); - EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => { - if (this._config.keyboard && event.key === ESCAPE_KEY) { - this.hide(); - } - }); - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Offcanvas.getOrCreateInstance(this, config); - - if (typeof config !== 'string') { - return; - } - - if (data[config] === undefined || config.startsWith('_') || config === 'constructor') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](this); - }); - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_CLICK_DATA_API$1, SELECTOR_DATA_TOGGLE$1, function (event) { - const target = getElementFromSelector(this); - - if (['A', 'AREA'].includes(this.tagName)) { - event.preventDefault(); - } - - if (isDisabled(this)) { - return; - } - - EventHandler.one(target, EVENT_HIDDEN$2, () => { - // focus on trigger when it is closed - if (isVisible(this)) { - this.focus(); - } - }); // avoid conflict when clicking a toggler of an offcanvas, while another is open - - const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR); - - if (allReadyOpen && allReadyOpen !== target) { - Offcanvas.getInstance(allReadyOpen).hide(); - } - - const data = Offcanvas.getOrCreateInstance(target); - data.toggle(this); - }); - EventHandler.on(window, EVENT_LOAD_DATA_API$1, () => SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - */ - - defineJQueryPlugin(Offcanvas); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): util/sanitizer.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - const uriAttrs = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']); - const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i; - /** - * A pattern that recognizes a commonly useful subset of URLs that are safe. - * - * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts - */ - - const SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i; - /** - * A pattern that matches safe data URLs. Only matches image, video and audio types. - * - * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts - */ - - const DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i; - - const allowedAttribute = (attr, allowedAttributeList) => { - const attrName = attr.nodeName.toLowerCase(); - - if (allowedAttributeList.includes(attrName)) { - if (uriAttrs.has(attrName)) { - return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue)); - } - - return true; - } - - const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp); // Check if a regular expression validates the attribute. - - for (let i = 0, len = regExp.length; i < len; i++) { - if (regExp[i].test(attrName)) { - return true; - } - } - - return false; - }; - - const DefaultAllowlist = { - // Global attributes allowed on any supplied element below. - '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN], - 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: [] - }; - function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) { - if (!unsafeHtml.length) { - return unsafeHtml; - } - - if (sanitizeFn && typeof sanitizeFn === 'function') { - return sanitizeFn(unsafeHtml); - } - - const domParser = new window.DOMParser(); - const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html'); - const allowlistKeys = Object.keys(allowList); - const elements = [].concat(...createdDocument.body.querySelectorAll('*')); - - for (let i = 0, len = elements.length; i < len; i++) { - const el = elements[i]; - const elName = el.nodeName.toLowerCase(); - - if (!allowlistKeys.includes(elName)) { - el.remove(); - continue; - } - - const attributeList = [].concat(...el.attributes); - const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || []); - attributeList.forEach(attr => { - if (!allowedAttribute(attr, allowedAttributes)) { - el.removeAttribute(attr.nodeName); - } - }); - } - - return createdDocument.body.innerHTML; - } - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): tooltip.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$4 = 'tooltip'; - const DATA_KEY$4 = 'bs.tooltip'; - const EVENT_KEY$4 = `.${DATA_KEY$4}`; - const CLASS_PREFIX$1 = 'bs-tooltip'; - const BSCLS_PREFIX_REGEX$1 = new RegExp(`(^|\\s)${CLASS_PREFIX$1}\\S+`, 'g'); - const DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn']); - const DefaultType$3 = { - 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)' - }; - const AttachmentMap = { - AUTO: 'auto', - TOP: 'top', - RIGHT: isRTL() ? 'left' : 'right', - BOTTOM: 'bottom', - LEFT: isRTL() ? 'right' : 'left' - }; - const Default$3 = { - animation: true, - template: '<div class="tooltip" role="tooltip">' + '<div class="tooltip-arrow"></div>' + '<div class="tooltip-inner"></div>' + '</div>', - trigger: 'hover focus', - title: '', - delay: 0, - html: false, - selector: false, - placement: 'top', - offset: [0, 0], - container: false, - fallbackPlacements: ['top', 'right', 'bottom', 'left'], - boundary: 'clippingParents', - customClass: '', - sanitize: true, - sanitizeFn: null, - allowList: DefaultAllowlist, - popperConfig: null - }; - const Event$2 = { - HIDE: `hide${EVENT_KEY$4}`, - HIDDEN: `hidden${EVENT_KEY$4}`, - SHOW: `show${EVENT_KEY$4}`, - SHOWN: `shown${EVENT_KEY$4}`, - INSERTED: `inserted${EVENT_KEY$4}`, - CLICK: `click${EVENT_KEY$4}`, - FOCUSIN: `focusin${EVENT_KEY$4}`, - FOCUSOUT: `focusout${EVENT_KEY$4}`, - MOUSEENTER: `mouseenter${EVENT_KEY$4}`, - MOUSELEAVE: `mouseleave${EVENT_KEY$4}` - }; - const CLASS_NAME_FADE$3 = 'fade'; - const CLASS_NAME_MODAL = 'modal'; - const CLASS_NAME_SHOW$3 = 'show'; - const HOVER_STATE_SHOW = 'show'; - const HOVER_STATE_OUT = 'out'; - const SELECTOR_TOOLTIP_INNER = '.tooltip-inner'; - const TRIGGER_HOVER = 'hover'; - const TRIGGER_FOCUS = 'focus'; - const TRIGGER_CLICK = 'click'; - const TRIGGER_MANUAL = 'manual'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Tooltip extends BaseComponent { - constructor(element, config) { - if (typeof Popper === 'undefined') { - throw new TypeError('Bootstrap\'s tooltips require Popper (https://popper.js.org)'); - } - - super(element); // private - - this._isEnabled = true; - this._timeout = 0; - this._hoverState = ''; - this._activeTrigger = {}; - this._popper = null; // Protected - - this._config = this._getConfig(config); - this.tip = null; - - this._setListeners(); - } // Getters - - - static get Default() { - return Default$3; - } - - static get NAME() { - return NAME$4; - } - - static get Event() { - return Event$2; - } - - static get DefaultType() { - return DefaultType$3; - } // Public - - - enable() { - this._isEnabled = true; - } - - disable() { - this._isEnabled = false; - } - - toggleEnabled() { - this._isEnabled = !this._isEnabled; - } - - toggle(event) { - if (!this._isEnabled) { - return; - } - - if (event) { - const context = this._initializeOnDelegatedTarget(event); - - context._activeTrigger.click = !context._activeTrigger.click; - - if (context._isWithActiveTrigger()) { - context._enter(null, context); - } else { - context._leave(null, context); - } - } else { - if (this.getTipElement().classList.contains(CLASS_NAME_SHOW$3)) { - this._leave(null, this); - - return; - } - - this._enter(null, this); - } - } - - dispose() { - clearTimeout(this._timeout); - EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler); - - if (this.tip) { - this.tip.remove(); - } - - if (this._popper) { - this._popper.destroy(); - } - - super.dispose(); - } - - show() { - if (this._element.style.display === 'none') { - throw new Error('Please use show on visible elements'); - } - - if (!(this.isWithContent() && this._isEnabled)) { - return; - } - - const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW); - const shadowRoot = findShadowRoot(this._element); - const isInTheDom = shadowRoot === null ? this._element.ownerDocument.documentElement.contains(this._element) : shadowRoot.contains(this._element); - - if (showEvent.defaultPrevented || !isInTheDom) { - return; - } - - const tip = this.getTipElement(); - const tipId = getUID(this.constructor.NAME); - tip.setAttribute('id', tipId); - - this._element.setAttribute('aria-describedby', tipId); - - this.setContent(); - - if (this._config.animation) { - tip.classList.add(CLASS_NAME_FADE$3); - } - - const placement = typeof this._config.placement === 'function' ? this._config.placement.call(this, tip, this._element) : this._config.placement; - - const attachment = this._getAttachment(placement); - - this._addAttachmentClass(attachment); - - const { - container - } = this._config; - Data.set(tip, this.constructor.DATA_KEY, this); - - if (!this._element.ownerDocument.documentElement.contains(this.tip)) { - container.appendChild(tip); - EventHandler.trigger(this._element, this.constructor.Event.INSERTED); - } - - if (this._popper) { - this._popper.update(); - } else { - this._popper = createPopper(this._element, tip, this._getPopperConfig(attachment)); - } - - tip.classList.add(CLASS_NAME_SHOW$3); - const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass; - - if (customClass) { - tip.classList.add(...customClass.split(' ')); - } // If this is a touch-enabled device we add extra - // empty mouseover listeners to the body's immediate children; - // only needed because of broken event delegation on iOS - // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html - - - if ('ontouchstart' in document.documentElement) { - [].concat(...document.body.children).forEach(element => { - EventHandler.on(element, 'mouseover', noop); - }); - } - - const complete = () => { - const prevHoverState = this._hoverState; - this._hoverState = null; - EventHandler.trigger(this._element, this.constructor.Event.SHOWN); - - if (prevHoverState === HOVER_STATE_OUT) { - this._leave(null, this); - } - }; - - const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE$3); - - this._queueCallback(complete, this.tip, isAnimated); - } - - hide() { - if (!this._popper) { - return; - } - - const tip = this.getTipElement(); - - const complete = () => { - if (this._isWithActiveTrigger()) { - return; - } - - if (this._hoverState !== HOVER_STATE_SHOW) { - tip.remove(); - } - - this._cleanTipClass(); - - this._element.removeAttribute('aria-describedby'); - - EventHandler.trigger(this._element, this.constructor.Event.HIDDEN); - - if (this._popper) { - this._popper.destroy(); - - this._popper = null; - } - }; - - const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE); - - if (hideEvent.defaultPrevented) { - return; - } - - tip.classList.remove(CLASS_NAME_SHOW$3); // If this is a touch-enabled device we remove the extra - // empty mouseover listeners we added for iOS support - - if ('ontouchstart' in document.documentElement) { - [].concat(...document.body.children).forEach(element => EventHandler.off(element, 'mouseover', noop)); - } - - this._activeTrigger[TRIGGER_CLICK] = false; - this._activeTrigger[TRIGGER_FOCUS] = false; - this._activeTrigger[TRIGGER_HOVER] = false; - const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE$3); - - this._queueCallback(complete, this.tip, isAnimated); - - this._hoverState = ''; - } - - update() { - if (this._popper !== null) { - this._popper.update(); - } - } // Protected - - - isWithContent() { - return Boolean(this.getTitle()); - } - - getTipElement() { - if (this.tip) { - return this.tip; - } - - const element = document.createElement('div'); - element.innerHTML = this._config.template; - this.tip = element.children[0]; - return this.tip; - } - - setContent() { - const tip = this.getTipElement(); - this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle()); - tip.classList.remove(CLASS_NAME_FADE$3, CLASS_NAME_SHOW$3); - } - - setElementContent(element, content) { - if (element === null) { - return; - } - - if (isElement$1(content)) { - content = getElement(content); // content is a DOM node or a jQuery - - if (this._config.html) { - if (content.parentNode !== element) { - element.innerHTML = ''; - element.appendChild(content); - } - } else { - element.textContent = content.textContent; - } - - return; - } - - if (this._config.html) { - if (this._config.sanitize) { - content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn); - } - - element.innerHTML = content; - } else { - element.textContent = content; - } - } - - getTitle() { - let title = this._element.getAttribute('data-bs-original-title'); - - if (!title) { - title = typeof this._config.title === 'function' ? this._config.title.call(this._element) : this._config.title; - } - - return title; - } - - updateAttachment(attachment) { - if (attachment === 'right') { - return 'end'; - } - - if (attachment === 'left') { - return 'start'; - } - - return attachment; - } // Private - - - _initializeOnDelegatedTarget(event, context) { - const dataKey = this.constructor.DATA_KEY; - context = context || Data.get(event.delegateTarget, dataKey); - - if (!context) { - context = new this.constructor(event.delegateTarget, this._getDelegateConfig()); - Data.set(event.delegateTarget, dataKey, context); - } - - return context; - } - - _getOffset() { - const { - offset - } = this._config; - - if (typeof offset === 'string') { - return offset.split(',').map(val => Number.parseInt(val, 10)); - } - - if (typeof offset === 'function') { - return popperData => offset(popperData, this._element); - } - - return offset; - } - - _getPopperConfig(attachment) { - const defaultBsPopperConfig = { - placement: attachment, - 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: true, - phase: 'afterWrite', - fn: data => this._handlePopperPlacementChange(data) - }], - onFirstUpdate: data => { - if (data.options.placement !== data.placement) { - this._handlePopperPlacementChange(data); - } - } - }; - return { ...defaultBsPopperConfig, - ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig) - }; - } - - _addAttachmentClass(attachment) { - this.getTipElement().classList.add(`${CLASS_PREFIX$1}-${this.updateAttachment(attachment)}`); - } - - _getAttachment(placement) { - return AttachmentMap[placement.toUpperCase()]; - } - - _setListeners() { - const triggers = this._config.trigger.split(' '); - - triggers.forEach(trigger => { - if (trigger === 'click') { - EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event)); - } else if (trigger !== TRIGGER_MANUAL) { - const eventIn = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSEENTER : this.constructor.Event.FOCUSIN; - const eventOut = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSELEAVE : this.constructor.Event.FOCUSOUT; - EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event)); - EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event)); - } - }); - - this._hideModalHandler = () => { - if (this._element) { - this.hide(); - } - }; - - EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler); - - if (this._config.selector) { - this._config = { ...this._config, - trigger: 'manual', - selector: '' - }; - } else { - this._fixTitle(); - } - } - - _fixTitle() { - const title = this._element.getAttribute('title'); - - const originalTitleType = typeof this._element.getAttribute('data-bs-original-title'); - - if (title || originalTitleType !== 'string') { - this._element.setAttribute('data-bs-original-title', title || ''); - - if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) { - this._element.setAttribute('aria-label', title); - } - - this._element.setAttribute('title', ''); - } - } - - _enter(event, context) { - context = this._initializeOnDelegatedTarget(event, context); - - if (event) { - context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true; - } - - if (context.getTipElement().classList.contains(CLASS_NAME_SHOW$3) || context._hoverState === HOVER_STATE_SHOW) { - context._hoverState = HOVER_STATE_SHOW; - return; - } - - clearTimeout(context._timeout); - context._hoverState = HOVER_STATE_SHOW; - - if (!context._config.delay || !context._config.delay.show) { - context.show(); - return; - } - - context._timeout = setTimeout(() => { - if (context._hoverState === HOVER_STATE_SHOW) { - context.show(); - } - }, context._config.delay.show); - } - - _leave(event, context) { - context = this._initializeOnDelegatedTarget(event, context); - - if (event) { - context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] = context._element.contains(event.relatedTarget); - } - - if (context._isWithActiveTrigger()) { - return; - } - - clearTimeout(context._timeout); - context._hoverState = HOVER_STATE_OUT; - - if (!context._config.delay || !context._config.delay.hide) { - context.hide(); - return; - } - - context._timeout = setTimeout(() => { - if (context._hoverState === HOVER_STATE_OUT) { - context.hide(); - } - }, context._config.delay.hide); - } - - _isWithActiveTrigger() { - for (const trigger in this._activeTrigger) { - if (this._activeTrigger[trigger]) { - return true; - } - } - - return false; - } - - _getConfig(config) { - const dataAttributes = Manipulator.getDataAttributes(this._element); - Object.keys(dataAttributes).forEach(dataAttr => { - if (DISALLOWED_ATTRIBUTES.has(dataAttr)) { - delete dataAttributes[dataAttr]; - } - }); - config = { ...this.constructor.Default, - ...dataAttributes, - ...(typeof config === 'object' && config ? config : {}) - }; - config.container = config.container === false ? document.body : getElement(config.container); - - if (typeof config.delay === 'number') { - config.delay = { - show: config.delay, - hide: config.delay - }; - } - - if (typeof config.title === 'number') { - config.title = config.title.toString(); - } - - if (typeof config.content === 'number') { - config.content = config.content.toString(); - } - - typeCheckConfig(NAME$4, config, this.constructor.DefaultType); - - if (config.sanitize) { - config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn); - } - - return config; - } - - _getDelegateConfig() { - const config = {}; - - if (this._config) { - for (const key in this._config) { - if (this.constructor.Default[key] !== this._config[key]) { - config[key] = this._config[key]; - } - } - } - - return config; - } - - _cleanTipClass() { - const tip = this.getTipElement(); - const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX$1); - - if (tabClass !== null && tabClass.length > 0) { - tabClass.map(token => token.trim()).forEach(tClass => tip.classList.remove(tClass)); - } - } - - _handlePopperPlacementChange(popperData) { - const { - state - } = popperData; - - if (!state) { - return; - } - - this.tip = state.elements.popper; - - this._cleanTipClass(); - - this._addAttachmentClass(this._getAttachment(state.placement)); - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Tooltip.getOrCreateInstance(this, config); - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - } - }); - } - - } - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Tooltip to jQuery only if jQuery is present - */ - - - defineJQueryPlugin(Tooltip); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): popover.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$3 = 'popover'; - const DATA_KEY$3 = 'bs.popover'; - const EVENT_KEY$3 = `.${DATA_KEY$3}`; - const CLASS_PREFIX = 'bs-popover'; - const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`, 'g'); - const Default$2 = { ...Tooltip.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>' - }; - const DefaultType$2 = { ...Tooltip.DefaultType, - content: '(string|element|function)' - }; - const Event$1 = { - HIDE: `hide${EVENT_KEY$3}`, - HIDDEN: `hidden${EVENT_KEY$3}`, - SHOW: `show${EVENT_KEY$3}`, - SHOWN: `shown${EVENT_KEY$3}`, - INSERTED: `inserted${EVENT_KEY$3}`, - CLICK: `click${EVENT_KEY$3}`, - FOCUSIN: `focusin${EVENT_KEY$3}`, - FOCUSOUT: `focusout${EVENT_KEY$3}`, - MOUSEENTER: `mouseenter${EVENT_KEY$3}`, - MOUSELEAVE: `mouseleave${EVENT_KEY$3}` - }; - const CLASS_NAME_FADE$2 = 'fade'; - const CLASS_NAME_SHOW$2 = 'show'; - const SELECTOR_TITLE = '.popover-header'; - const SELECTOR_CONTENT = '.popover-body'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Popover extends Tooltip { - // Getters - static get Default() { - return Default$2; - } - - static get NAME() { - return NAME$3; - } - - static get Event() { - return Event$1; - } - - static get DefaultType() { - return DefaultType$2; - } // Overrides - - - isWithContent() { - return this.getTitle() || this._getContent(); - } - - getTipElement() { - if (this.tip) { - return this.tip; - } - - this.tip = super.getTipElement(); - - if (!this.getTitle()) { - SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove(); - } - - if (!this._getContent()) { - SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove(); - } - - return this.tip; - } - - setContent() { - const tip = this.getTipElement(); // we use append for html objects to maintain js events - - this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle()); - - let content = this._getContent(); - - if (typeof content === 'function') { - content = content.call(this._element); - } - - this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content); - tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2); - } // Private - - - _addAttachmentClass(attachment) { - this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`); - } - - _getContent() { - return this._element.getAttribute('data-bs-content') || this._config.content; - } - - _cleanTipClass() { - const tip = this.getTipElement(); - const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX); - - if (tabClass !== null && tabClass.length > 0) { - tabClass.map(token => token.trim()).forEach(tClass => tip.classList.remove(tClass)); - } - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Popover.getOrCreateInstance(this, config); - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - } - }); - } - - } - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Popover to jQuery only if jQuery is present - */ - - - defineJQueryPlugin(Popover); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): scrollspy.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$2 = 'scrollspy'; - const DATA_KEY$2 = 'bs.scrollspy'; - const EVENT_KEY$2 = `.${DATA_KEY$2}`; - const DATA_API_KEY$1 = '.data-api'; - const Default$1 = { - offset: 10, - method: 'auto', - target: '' - }; - const DefaultType$1 = { - offset: 'number', - method: 'string', - target: '(string|element)' - }; - const EVENT_ACTIVATE = `activate${EVENT_KEY$2}`; - const EVENT_SCROLL = `scroll${EVENT_KEY$2}`; - const EVENT_LOAD_DATA_API = `load${EVENT_KEY$2}${DATA_API_KEY$1}`; - const CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'; - const CLASS_NAME_ACTIVE$1 = 'active'; - const SELECTOR_DATA_SPY = '[data-bs-spy="scroll"]'; - const SELECTOR_NAV_LIST_GROUP$1 = '.nav, .list-group'; - const SELECTOR_NAV_LINKS = '.nav-link'; - const SELECTOR_NAV_ITEMS = '.nav-item'; - const SELECTOR_LIST_ITEMS = '.list-group-item'; - const SELECTOR_DROPDOWN$1 = '.dropdown'; - const SELECTOR_DROPDOWN_TOGGLE$1 = '.dropdown-toggle'; - const METHOD_OFFSET = 'offset'; - const METHOD_POSITION = 'position'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class ScrollSpy extends BaseComponent { - constructor(element, config) { - super(element); - this._scrollElement = this._element.tagName === 'BODY' ? window : this._element; - this._config = this._getConfig(config); - this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`; - this._offsets = []; - this._targets = []; - this._activeTarget = null; - this._scrollHeight = 0; - EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process()); - this.refresh(); - - this._process(); - } // Getters - - - static get Default() { - return Default$1; - } - - static get NAME() { - return NAME$2; - } // Public - - - refresh() { - const autoMethod = this._scrollElement === this._scrollElement.window ? METHOD_OFFSET : METHOD_POSITION; - const offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method; - const offsetBase = offsetMethod === METHOD_POSITION ? this._getScrollTop() : 0; - this._offsets = []; - this._targets = []; - this._scrollHeight = this._getScrollHeight(); - const targets = SelectorEngine.find(this._selector); - targets.map(element => { - const targetSelector = getSelectorFromElement(element); - const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null; - - if (target) { - const targetBCR = target.getBoundingClientRect(); - - if (targetBCR.width || targetBCR.height) { - return [Manipulator[offsetMethod](target).top + offsetBase, targetSelector]; - } - } - - return null; - }).filter(item => item).sort((a, b) => a[0] - b[0]).forEach(item => { - this._offsets.push(item[0]); - - this._targets.push(item[1]); - }); - } - - dispose() { - EventHandler.off(this._scrollElement, EVENT_KEY$2); - super.dispose(); - } // Private - - - _getConfig(config) { - config = { ...Default$1, - ...Manipulator.getDataAttributes(this._element), - ...(typeof config === 'object' && config ? config : {}) - }; - - if (typeof config.target !== 'string' && isElement$1(config.target)) { - let { - id - } = config.target; - - if (!id) { - id = getUID(NAME$2); - config.target.id = id; - } - - config.target = `#${id}`; - } - - typeCheckConfig(NAME$2, config, DefaultType$1); - return config; - } - - _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 scrollTop = this._getScrollTop() + this._config.offset; - - const scrollHeight = this._getScrollHeight(); - - const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight(); - - if (this._scrollHeight !== scrollHeight) { - this.refresh(); - } - - if (scrollTop >= maxScroll) { - const target = this._targets[this._targets.length - 1]; - - if (this._activeTarget !== target) { - this._activate(target); - } - - return; - } - - if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) { - this._activeTarget = null; - - this._clear(); - - return; - } - - for (let i = this._offsets.length; i--;) { - const isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]); - - if (isActiveTarget) { - this._activate(this._targets[i]); - } - } - } - - _activate(target) { - this._activeTarget = target; - - this._clear(); - - const queries = this._selector.split(',').map(selector => `${selector}[data-bs-target="${target}"],${selector}[href="${target}"]`); - - const link = SelectorEngine.findOne(queries.join(',')); - - if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) { - SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE$1, link.closest(SELECTOR_DROPDOWN$1)).classList.add(CLASS_NAME_ACTIVE$1); - link.classList.add(CLASS_NAME_ACTIVE$1); - } else { - // Set triggered link as active - link.classList.add(CLASS_NAME_ACTIVE$1); - SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP$1).forEach(listGroup => { - // Set triggered links parents as active - // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor - SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`).forEach(item => item.classList.add(CLASS_NAME_ACTIVE$1)); // Handle special case when .nav-link is inside .nav-item - - SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS).forEach(navItem => { - SelectorEngine.children(navItem, SELECTOR_NAV_LINKS).forEach(item => item.classList.add(CLASS_NAME_ACTIVE$1)); - }); - }); - } - - EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, { - relatedTarget: target - }); - } - - _clear() { - SelectorEngine.find(this._selector).filter(node => node.classList.contains(CLASS_NAME_ACTIVE$1)).forEach(node => node.classList.remove(CLASS_NAME_ACTIVE$1)); - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = ScrollSpy.getOrCreateInstance(this, config); - - if (typeof config !== 'string') { - return; - } - - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - }); - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(window, EVENT_LOAD_DATA_API, () => { - SelectorEngine.find(SELECTOR_DATA_SPY).forEach(spy => new ScrollSpy(spy)); - }); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .ScrollSpy to jQuery only if jQuery is present - */ - - defineJQueryPlugin(ScrollSpy); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): tab.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$1 = 'tab'; - const DATA_KEY$1 = 'bs.tab'; - const EVENT_KEY$1 = `.${DATA_KEY$1}`; - const DATA_API_KEY = '.data-api'; - const EVENT_HIDE$1 = `hide${EVENT_KEY$1}`; - const EVENT_HIDDEN$1 = `hidden${EVENT_KEY$1}`; - const EVENT_SHOW$1 = `show${EVENT_KEY$1}`; - const EVENT_SHOWN$1 = `shown${EVENT_KEY$1}`; - const EVENT_CLICK_DATA_API = `click${EVENT_KEY$1}${DATA_API_KEY}`; - const CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'; - const CLASS_NAME_ACTIVE = 'active'; - const CLASS_NAME_FADE$1 = 'fade'; - const CLASS_NAME_SHOW$1 = 'show'; - const SELECTOR_DROPDOWN = '.dropdown'; - const SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'; - const SELECTOR_ACTIVE = '.active'; - const SELECTOR_ACTIVE_UL = ':scope > li > .active'; - const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]'; - const SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'; - const SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Tab extends BaseComponent { - // Getters - static get NAME() { - return NAME$1; - } // Public - - - show() { - if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && this._element.classList.contains(CLASS_NAME_ACTIVE)) { - return; - } - - let previous; - const target = getElementFromSelector(this._element); - - const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP); - - if (listElement) { - const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE; - previous = SelectorEngine.find(itemSelector, listElement); - previous = previous[previous.length - 1]; - } - - const hideEvent = previous ? EventHandler.trigger(previous, EVENT_HIDE$1, { - relatedTarget: this._element - }) : null; - const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$1, { - relatedTarget: previous - }); - - if (showEvent.defaultPrevented || hideEvent !== null && hideEvent.defaultPrevented) { - return; - } - - this._activate(this._element, listElement); - - const complete = () => { - EventHandler.trigger(previous, EVENT_HIDDEN$1, { - relatedTarget: this._element - }); - EventHandler.trigger(this._element, EVENT_SHOWN$1, { - relatedTarget: previous - }); - }; - - if (target) { - this._activate(target, target.parentNode, complete); - } else { - complete(); - } - } // Private - - - _activate(element, container, callback) { - const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? SelectorEngine.find(SELECTOR_ACTIVE_UL, container) : SelectorEngine.children(container, SELECTOR_ACTIVE); - const active = activeElements[0]; - const isTransitioning = callback && active && active.classList.contains(CLASS_NAME_FADE$1); - - const complete = () => this._transitionComplete(element, active, callback); - - if (active && isTransitioning) { - active.classList.remove(CLASS_NAME_SHOW$1); - - this._queueCallback(complete, element, true); - } else { - complete(); - } - } - - _transitionComplete(element, active, callback) { - if (active) { - active.classList.remove(CLASS_NAME_ACTIVE); - const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode); - - if (dropdownChild) { - dropdownChild.classList.remove(CLASS_NAME_ACTIVE); - } - - if (active.getAttribute('role') === 'tab') { - active.setAttribute('aria-selected', false); - } - } - - element.classList.add(CLASS_NAME_ACTIVE); - - if (element.getAttribute('role') === 'tab') { - element.setAttribute('aria-selected', true); - } - - reflow(element); - - if (element.classList.contains(CLASS_NAME_FADE$1)) { - element.classList.add(CLASS_NAME_SHOW$1); - } - - let parent = element.parentNode; - - if (parent && parent.nodeName === 'LI') { - parent = parent.parentNode; - } - - if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) { - const dropdownElement = element.closest(SELECTOR_DROPDOWN); - - if (dropdownElement) { - SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement).forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE)); - } - - element.setAttribute('aria-expanded', true); - } - - if (callback) { - callback(); - } - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Tab.getOrCreateInstance(this); - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - } - }); - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) { - if (['A', 'AREA'].includes(this.tagName)) { - event.preventDefault(); - } - - if (isDisabled(this)) { - return; - } - - const data = Tab.getOrCreateInstance(this); - data.show(); - }); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Tab to jQuery only if jQuery is present - */ - - defineJQueryPlugin(Tab); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): toast.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME = 'toast'; - const DATA_KEY = 'bs.toast'; - const EVENT_KEY = `.${DATA_KEY}`; - const EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`; - const EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`; - const EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`; - const EVENT_FOCUSIN = `focusin${EVENT_KEY}`; - const EVENT_FOCUSOUT = `focusout${EVENT_KEY}`; - const EVENT_HIDE = `hide${EVENT_KEY}`; - const EVENT_HIDDEN = `hidden${EVENT_KEY}`; - const EVENT_SHOW = `show${EVENT_KEY}`; - const EVENT_SHOWN = `shown${EVENT_KEY}`; - const CLASS_NAME_FADE = 'fade'; - const CLASS_NAME_HIDE = 'hide'; - const CLASS_NAME_SHOW = 'show'; - const CLASS_NAME_SHOWING = 'showing'; - const DefaultType = { - animation: 'boolean', - autohide: 'boolean', - delay: 'number' - }; - const Default = { - animation: true, - autohide: true, - delay: 5000 - }; - const SELECTOR_DATA_DISMISS = '[data-bs-dismiss="toast"]'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Toast extends BaseComponent { - constructor(element, config) { - super(element); - this._config = this._getConfig(config); - this._timeout = null; - this._hasMouseInteraction = false; - this._hasKeyboardInteraction = false; - - this._setListeners(); - } // Getters - - - static get DefaultType() { - return DefaultType; - } - - static get Default() { - return Default; - } - - static get NAME() { - return NAME; - } // Public - - - show() { - const showEvent = EventHandler.trigger(this._element, EVENT_SHOW); - - if (showEvent.defaultPrevented) { - return; - } - - this._clearTimeout(); - - if (this._config.animation) { - this._element.classList.add(CLASS_NAME_FADE); - } - - const complete = () => { - this._element.classList.remove(CLASS_NAME_SHOWING); - - this._element.classList.add(CLASS_NAME_SHOW); - - EventHandler.trigger(this._element, EVENT_SHOWN); - - this._maybeScheduleHide(); - }; - - this._element.classList.remove(CLASS_NAME_HIDE); - - reflow(this._element); - - this._element.classList.add(CLASS_NAME_SHOWING); - - this._queueCallback(complete, this._element, this._config.animation); - } - - hide() { - if (!this._element.classList.contains(CLASS_NAME_SHOW)) { - return; - } - - const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE); - - if (hideEvent.defaultPrevented) { - return; - } - - const complete = () => { - this._element.classList.add(CLASS_NAME_HIDE); - - EventHandler.trigger(this._element, EVENT_HIDDEN); - }; - - this._element.classList.remove(CLASS_NAME_SHOW); - - this._queueCallback(complete, this._element, this._config.animation); - } - - dispose() { - this._clearTimeout(); - - if (this._element.classList.contains(CLASS_NAME_SHOW)) { - this._element.classList.remove(CLASS_NAME_SHOW); - } - - super.dispose(); - } // Private - - - _getConfig(config) { - config = { ...Default, - ...Manipulator.getDataAttributes(this._element), - ...(typeof config === 'object' && config ? config : {}) - }; - typeCheckConfig(NAME, config, this.constructor.DefaultType); - return config; - } - - _maybeScheduleHide() { - if (!this._config.autohide) { - return; - } - - if (this._hasMouseInteraction || this._hasKeyboardInteraction) { - return; - } - - this._timeout = setTimeout(() => { - this.hide(); - }, this._config.delay); - } - - _onInteraction(event, isInteracting) { - switch (event.type) { - case 'mouseover': - case 'mouseout': - this._hasMouseInteraction = isInteracting; - break; - - case 'focusin': - case 'focusout': - this._hasKeyboardInteraction = isInteracting; - break; - } - - if (isInteracting) { - this._clearTimeout(); - - return; - } - - const nextElement = event.relatedTarget; - - if (this._element === nextElement || this._element.contains(nextElement)) { - return; - } - - this._maybeScheduleHide(); - } - - _setListeners() { - EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide()); - EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true)); - EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false)); - EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true)); - EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false)); - } - - _clearTimeout() { - clearTimeout(this._timeout); - this._timeout = null; - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Toast.getOrCreateInstance(this, config); - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](this); - } - }); - } - - } - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Toast to jQuery only if jQuery is present - */ - - - defineJQueryPlugin(Toast); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.1): index.umd.js - * Licensed under MIT (https:/github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - var index_umd = { - Alert, - Button, - Carousel, - Collapse, - Dropdown, - Modal, - Offcanvas, - Popover, - ScrollSpy, - Tab, - Toast, - Tooltip - }; - - return index_umd; - -}))); -//# sourceMappingURL=oe-bcl-default.bundle.js.map diff --git a/assets/js/oe-bcl-default.bundle.js.map b/assets/js/oe-bcl-default.bundle.js.map deleted file mode 100644 index 1ded7548..00000000 --- a/assets/js/oe-bcl-default.bundle.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"oe-bcl-default.bundle.js","sources":["../../../../bootstrap/js/src/dom/selector-engine.js","../../../../bootstrap/js/src/util/index.js","../../../../bootstrap/js/src/dom/event-handler.js","../../../../bootstrap/js/src/dom/data.js","../../../../bootstrap/js/src/base-component.js","../../../../bootstrap/js/src/alert.js","../../../../bootstrap/js/src/button.js","../../../../bootstrap/js/src/dom/manipulator.js","../../../../bootstrap/js/src/carousel.js","../../../../bootstrap/js/src/collapse.js","../../../../node_modules/@popperjs/core/lib/enums.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../../../../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../../../../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../../../../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/contains.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../../../../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../../../../node_modules/@popperjs/core/lib/utils/math.js","../../../../node_modules/@popperjs/core/lib/utils/within.js","../../../../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../../../../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../../../../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../../../../node_modules/@popperjs/core/lib/modifiers/arrow.js","../../../../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../../../../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../../../../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../../../../node_modules/@popperjs/core/lib/utils/getVariation.js","../../../../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../../../../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../../../../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../../../../node_modules/@popperjs/core/lib/modifiers/flip.js","../../../../node_modules/@popperjs/core/lib/modifiers/hide.js","../../../../node_modules/@popperjs/core/lib/modifiers/offset.js","../../../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../../../../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../../../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../../../../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../../../../node_modules/@popperjs/core/lib/utils/debounce.js","../../../../node_modules/@popperjs/core/lib/utils/mergeByName.js","../../../../node_modules/@popperjs/core/lib/createPopper.js","../../../../node_modules/@popperjs/core/lib/popper-lite.js","../../../../node_modules/@popperjs/core/lib/popper.js","../../../../bootstrap/js/src/dropdown.js","../../../../bootstrap/js/src/util/scrollbar.js","../../../../bootstrap/js/src/util/backdrop.js","../../../../bootstrap/js/src/modal.js","../../../../bootstrap/js/src/offcanvas.js","../../../../bootstrap/js/src/util/sanitizer.js","../../../../bootstrap/js/src/tooltip.js","../../../../bootstrap/js/src/popover.js","../../../../bootstrap/js/src/scrollspy.js","../../../../bootstrap/js/src/tab.js","../../../../bootstrap/js/src/toast.js","../index.umd.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NODE_TEXT = 3\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children)\n .filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n\n let ancestor = element.parentNode\n\n while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {\n if (ancestor.matches(selector)) {\n parents.push(ancestor)\n }\n\n ancestor = ancestor.parentNode\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n }\n}\n\nexport default SelectorEngine\n","import SelectorEngine from '../dom/selector-engine'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = obj => {\n if (obj === null || obj === undefined) {\n return `${obj}`\n }\n\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return SelectorEngine.findOne(obj)\n }\n\n return null\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n return getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\nconst reflow = element => element.offsetHeight\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n DOMContentLoadedCallbacks.forEach(callback => callback())\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element depending on the direction and if cycle is allowed\n if (index === -1) {\n return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]\n }\n\n const listLength = list.length\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n getNextActiveElement,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute,\n executeAfterTransition\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\nconst customEventsRegex = /^(mouseenter|mouseleave)/i\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * ------------------------------------------------------------------------\n * Private methods\n * ------------------------------------------------------------------------\n */\n\nfunction getUidEvent(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getEvent(element) {\n const uid = getUidEvent(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n event.delegateTarget = element\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (let i = domElements.length; i--;) {\n if (domElements[i] === target) {\n event.delegateTarget = target\n\n if (handler.oneOff) {\n // eslint-disable-next-line unicorn/consistent-destructuring\n EventHandler.off(element, event.type, selector, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n\n // To please ESLint\n return null\n }\n}\n\nfunction findHandler(events, handler, delegationSelector = null) {\n const uidEventList = Object.keys(events)\n\n for (let i = 0, len = uidEventList.length; i < len; i++) {\n const event = events[uidEventList[i]]\n\n if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {\n return event\n }\n }\n\n return null\n}\n\nfunction normalizeParams(originalTypeEvent, handler, delegationFn) {\n const delegation = typeof handler === 'string'\n const originalHandler = delegation ? delegationFn : handler\n\n let typeEvent = getTypeEvent(originalTypeEvent)\n const isNative = nativeEvents.has(typeEvent)\n\n if (!isNative) {\n typeEvent = originalTypeEvent\n }\n\n return [delegation, originalHandler, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n if (!handler) {\n handler = delegationFn\n delegationFn = null\n }\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (customEventsRegex.test(originalTypeEvent)) {\n const wrapFn = fn => {\n return function (event) {\n if (!event.relatedTarget || (event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget))) {\n return fn.call(this, event)\n }\n }\n }\n\n if (delegationFn) {\n delegationFn = wrapFn(delegationFn)\n } else {\n handler = wrapFn(handler)\n }\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const events = getEvent(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null)\n\n if (previousFn) {\n previousFn.oneOff = previousFn.oneOff && oneOff\n\n return\n }\n\n const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = delegation ?\n bootstrapDelegationHandler(element, handler, delegationFn) :\n bootstrapHandler(element, handler)\n\n fn.delegationSelector = delegation ? handler : null\n fn.originalHandler = originalHandler\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, delegation)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n Object.keys(storeElementEvent).forEach(handlerKey => {\n if (handlerKey.includes(namespace)) {\n const event = storeElementEvent[handlerKey]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n}\n\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '')\n return customEvents[event] || event\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, false)\n },\n\n one(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFn) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getEvent(element)\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof originalHandler !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!events || !events[typeEvent]) {\n return\n }\n\n removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null)\n return\n }\n\n if (isNamespace) {\n Object.keys(events).forEach(elementEvent => {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n })\n }\n\n const storeElementEvent = events[typeEvent] || {}\n Object.keys(storeElementEvent).forEach(keyHandlers => {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n const event = storeElementEvent[keyHandlers]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = getTypeEvent(event)\n const inNamespace = event !== typeEvent\n const isNative = nativeEvents.has(typeEvent)\n\n let jQueryEvent\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n let evt = null\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n if (isNative) {\n evt = document.createEvent('HTMLEvents')\n evt.initEvent(typeEvent, bubbles, true)\n } else {\n evt = new CustomEvent(event, {\n bubbles,\n cancelable: true\n })\n }\n\n // merge custom information in our event\n if (typeof args !== 'undefined') {\n Object.keys(args).forEach(key => {\n Object.defineProperty(evt, key, {\n get() {\n return args[key]\n }\n })\n })\n }\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst elementMap = new Map()\n\nexport default {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map())\n }\n\n const instanceMap = elementMap.get(element)\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`)\n return\n }\n\n instanceMap.set(key, instance)\n },\n\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null\n }\n\n return null\n },\n\n remove(element, key) {\n if (!elementMap.has(element)) {\n return\n }\n\n const instanceMap = elementMap.get(element)\n\n instanceMap.delete(key)\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element)\n }\n }\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\nimport {\n executeAfterTransition,\n getElement\n} from './util/index'\nimport EventHandler from './dom/event-handler'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst VERSION = '5.0.2'\n\nclass BaseComponent {\n constructor(element) {\n element = getElement(element)\n\n if (!element) {\n return\n }\n\n this._element = element\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n Object.getOwnPropertyNames(this).forEach(propertyName => {\n this[propertyName] = null\n })\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated)\n }\n\n /** Static */\n\n static getInstance(element) {\n return Data.get(element, this.DATA_KEY)\n }\n\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DISMISS = '[data-bs-dismiss=\"alert\"]'\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_ALERT = 'alert'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n close(element) {\n const rootElement = element ? this._getRootElement(element) : this._element\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent === null || customEvent.defaultPrevented) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n // Private\n\n _getRootElement(element) {\n return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`)\n }\n\n _triggerCloseEvent(element) {\n return EventHandler.trigger(element, EVENT_CLOSE)\n }\n\n _removeElement(element) {\n element.classList.remove(CLASS_NAME_SHOW)\n\n const isAnimated = element.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(() => this._destroyElement(element), element, isAnimated)\n }\n\n _destroyElement(element) {\n element.remove()\n\n EventHandler.trigger(element, EVENT_CLOSED)\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this)\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert.handleDismiss(new Alert()))\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Alert to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this)\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n const data = Button.getOrCreateInstance(button)\n\n data.toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Button to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(val) {\n if (val === 'true') {\n return true\n }\n\n if (val === 'false') {\n return false\n }\n\n if (val === Number(val).toString()) {\n return Number(val)\n }\n\n if (val === '' || val === 'null') {\n return null\n }\n\n return val\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n\n Object.keys(element.dataset)\n .filter(key => key.startsWith('bs'))\n .forEach(key => {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n })\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n },\n\n offset(element) {\n const rect = element.getBoundingClientRect()\n\n return {\n top: rect.top + document.body.scrollTop,\n left: rect.left + document.body.scrollLeft\n }\n },\n\n position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n }\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n getNextActiveElement,\n reflow,\n triggerTransitionEnd,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n slide: false,\n pause: 'hover',\n wrap: true,\n touch: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)',\n keyboard: 'boolean',\n slide: '(boolean|string)',\n pause: '(string|boolean)',\n wrap: 'boolean',\n touch: 'boolean'\n}\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY]: DIRECTION_LEFT\n}\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_INDICATOR = '[data-bs-target]'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n next() {\n this._slide(ORDER_NEXT)\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n this._slide(ORDER_PREV)\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) {\n triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config && this._config.interval && !this._isPaused) {\n this._updateInterval()\n\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const order = index > activeIndex ?\n ORDER_NEXT :\n ORDER_PREV\n\n this._slide(order, this._items[index])\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n this.touchDeltaX = 0\n\n if (!direction) {\n return\n }\n\n this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT)\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event))\n EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event))\n }\n\n if (this._config.touch && this._touchSupported) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n const start = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchStartX = event.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.touches[0].clientX\n }\n }\n\n const move = event => {\n // ensure swiping with one touch and not pinching\n this.touchDeltaX = event.touches && event.touches.length > 1 ?\n 0 :\n event.touches[0].clientX - this.touchStartX\n }\n\n const end = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {\n EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault())\n })\n\n if (this._pointerEvent) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n const direction = KEY_TO_DIRECTION[event.key]\n if (direction) {\n event.preventDefault()\n this._slide(direction)\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode ?\n SelectorEngine.find(SELECTOR_ITEM, element.parentNode) :\n []\n\n return this._items.indexOf(element)\n }\n\n _getItemByOrder(order, activeElement) {\n const isNext = order === ORDER_NEXT\n return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap)\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element))\n\n return EventHandler.trigger(this._element, EVENT_SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement)\n\n for (let i = 0; i < indicators.length; i++) {\n if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {\n indicators[i].classList.add(CLASS_NAME_ACTIVE)\n indicators[i].setAttribute('aria-current', 'true')\n break\n }\n }\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n if (elementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = elementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n }\n\n _slide(directionOrOrder, element) {\n const order = this._directionToOrder(directionOrOrder)\n const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || this._getItemByOrder(order, activeElement)\n\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n const isNext = order === ORDER_NEXT\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n const eventDirectionName = this._orderToDirection(order)\n\n if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {\n this._isSliding = false\n return\n }\n\n if (this._isSliding) {\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n this._activeElement = nextElement\n\n const triggerSlidEvent = () => {\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }\n\n if (this._element.classList.contains(CLASS_NAME_SLIDE)) {\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n setTimeout(triggerSlidEvent, 0)\n }\n\n this._queueCallback(completeCallBack, activeElement, true)\n } else {\n activeElement.classList.remove(CLASS_NAME_ACTIVE)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n this._isSliding = false\n triggerSlidEvent()\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _directionToOrder(direction) {\n if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) {\n return direction\n }\n\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (![ORDER_NEXT, ORDER_PREV].includes(order)) {\n return order\n }\n\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n\n static carouselInterface(element, config) {\n const data = Carousel.getOrCreateInstance(element, config)\n\n let { _config } = data\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Carousel.carouselInterface(this, config)\n })\n }\n\n static dataApiClickHandler(event) {\n const target = getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel.carouselInterface(target, config)\n\n if (slideIndex) {\n Carousel.getInstance(target).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler)\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (let i = 0, len = carousels.length; i < len; i++) {\n Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i]))\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Carousel to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElement,\n getSelectorFromElement,\n getElementFromSelector,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n toggle: true,\n parent: ''\n}\n\nconst DefaultType = {\n toggle: 'boolean',\n parent: '(string|element)'\n}\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.show, .collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._isTransitioning = false\n this._config = this._getConfig(config)\n this._triggerArray = SelectorEngine.find(\n `${SELECTOR_DATA_TOGGLE}[href=\"#${this._element.id}\"],` +\n `${SELECTOR_DATA_TOGGLE}[data-bs-target=\"#${this._element.id}\"]`\n )\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElem => foundElem === this._element)\n\n if (selector !== null && filterElement.length) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent)\n .filter(elem => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-bs-parent') === this._config.parent\n }\n\n return elem.classList.contains(CLASS_NAME_COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n const container = SelectorEngine.findOne(this._selector)\n if (actives) {\n const tempActiveData = actives.find(elem => container !== elem)\n activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null\n\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n if (actives) {\n actives.forEach(elemActive => {\n if (container !== elemActive) {\n Collapse.collapseInterface(elemActive, 'hide')\n }\n\n if (!activesData) {\n Data.set(elemActive, DATA_KEY, null)\n }\n })\n }\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n this._triggerArray.forEach(element => {\n element.classList.remove(CLASS_NAME_COLLAPSED)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n\n this._queueCallback(complete, this._element, true)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const elem = getElementFromSelector(trigger)\n\n if (elem && !elem.classList.contains(CLASS_NAME_SHOW)) {\n trigger.classList.add(CLASS_NAME_COLLAPSED)\n trigger.setAttribute('aria-expanded', false)\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n\n this._queueCallback(complete, this._element, true)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT\n }\n\n _getParent() {\n let { parent } = this._config\n\n parent = getElement(parent)\n\n const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent=\"${parent}\"]`\n\n SelectorEngine.find(selector, parent)\n .forEach(element => {\n const selected = getElementFromSelector(element)\n\n this._addAriaAndCollapsedClass(\n selected,\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (!element || !triggerArray.length) {\n return\n }\n\n const isOpen = element.classList.contains(CLASS_NAME_SHOW)\n\n triggerArray.forEach(elem => {\n if (isOpen) {\n elem.classList.remove(CLASS_NAME_COLLAPSED)\n } else {\n elem.classList.add(CLASS_NAME_COLLAPSED)\n }\n\n elem.setAttribute('aria-expanded', isOpen)\n })\n }\n\n // Static\n\n static collapseInterface(element, config) {\n let data = Collapse.getInstance(element)\n const _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Collapse.collapseInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n const triggerData = Manipulator.getDataAttributes(this)\n const selector = getSelectorFromElement(this)\n const selectorElements = SelectorEngine.find(selector)\n\n selectorElements.forEach(element => {\n const data = Collapse.getInstance(element)\n let config\n if (data) {\n // update parent attribute\n if (data._parent === null && typeof triggerData.parent === 'string') {\n data._config.parent = triggerData.parent\n data._parent = data._getParent()\n }\n\n config = 'toggle'\n } else {\n config = triggerData\n }\n\n Collapse.collapseInterface(element, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Collapse to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Collapse)\n\nexport default Collapse\n","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export default function getBoundingClientRect(element) {\n var rect = element.getBoundingClientRect();\n return {\n width: rect.width,\n height: rect.height,\n top: rect.top,\n right: rect.right,\n bottom: rect.bottom,\n left: rect.left,\n x: rect.left,\n y: rect.top\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;\n var isIE = navigator.userAgent.indexOf('Trident') !== -1;\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport default function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport within from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n if (!isHTMLElement(arrowElement)) {\n console.error(['Popper: \"arrow\" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' '));\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: \"arrow\" modifier\\'s `element` must be a child of the popper', 'element.'].join(' '));\n }\n\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","import { top, left, right, bottom } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref) {\n var x = _ref.x,\n y = _ref.y;\n var win = window;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(round(x * dpr) / dpr) || 0,\n y: round(round(y * dpr) / dpr) || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets;\n\n var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets,\n _ref3$x = _ref3.x,\n x = _ref3$x === void 0 ? 0 : _ref3$x,\n _ref3$y = _ref3.y,\n y = _ref3$y === void 0 ? 0 : _ref3$y;\n\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top) {\n sideY = bottom; // $FlowFixMe[prop-missing]\n\n y -= offsetParent[heightProp] - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left) {\n sideX = right; // $FlowFixMe[prop-missing]\n\n x -= offsetParent[widthProp] - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref4) {\n var state = _ref4.state,\n options = _ref4.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n\n if (process.env.NODE_ENV !== \"production\") {\n var transitionProperty = getComputedStyle(state.elements.popper).transitionProperty || '';\n\n if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {\n return transitionProperty.indexOf(property) >= 0;\n })) {\n console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: \"transform\", \"top\", \"right\", \"bottom\", \"left\".', '\\n\\n', 'Disable the \"computeStyles\" modifier\\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\\n\\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));\n }\n }\n\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If <html> has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on <html>\n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nexport default function getViewportRect(element) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper\n // can be obscured underneath it.\n // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even\n // if it isn't open, so if this isn't available, the popper will be detected\n // to overflow the bottom of the screen too early.\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently)\n // In Chrome, it returns a value very close to 0 (+/-) but contains rounding\n // errors due to floating point numbers, so we need to check precision.\n // Safari returns a number <= 0, usually < -1 when pinch-zoomed\n // Feature detection fails in mobile emulation mode in Chrome.\n // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) <\n // 0.001\n // Fallback here: \"Not Safari\" userAgent\n\n if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element) {\n var rect = getBoundingClientRect(element);\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var referenceElement = state.elements.reference;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);\n var referenceClientRect = getBoundingClientRect(referenceElement);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, \"auto\" cannot be used to allow \"bottom-start\".', 'Use \"auto-start\" instead.'].join(' '));\n }\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\";\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport within from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { max as mathMax, min as mathMin } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis || checkAltAxis) {\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = popperOffsets[mainAxis] + overflow[mainSide];\n var max = popperOffsets[mainAxis] - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0;\n var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue;\n\n if (checkMainAxis) {\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var _preventedOffset = within(tether ? mathMin(_min, tetherMin) : _min, _offset, tether ? mathMax(_max, tetherMax) : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\"; // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement);\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport getComputedStyle from \"./dom-utils/getComputedStyle.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport validateModifiers from \"./utils/validateModifiers.js\";\nimport uniqueBy from \"./utils/uniqueBy.js\";\nimport getBasePlacement from \"./utils/getBasePlacement.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nimport { auto } from \"./enums.js\";\nvar INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';\nvar INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(options) {\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n }); // Validate the provided modifiers so that the consumer will get warned\n // if one of the modifiers is invalid for any reason\n\n if (process.env.NODE_ENV !== \"production\") {\n var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {\n var name = _ref.name;\n return name;\n });\n validateModifiers(modifiers);\n\n if (getBasePlacement(state.options.placement) === auto) {\n var flipModifier = state.orderedModifiers.find(function (_ref2) {\n var name = _ref2.name;\n return name === 'flip';\n });\n\n if (!flipModifier) {\n console.error(['Popper: \"auto\" placements require the \"flip\" modifier be', 'present and enabled to work.'].join(' '));\n }\n }\n\n var _getComputedStyle = getComputedStyle(popper),\n marginTop = _getComputedStyle.marginTop,\n marginRight = _getComputedStyle.marginRight,\n marginBottom = _getComputedStyle.marginBottom,\n marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can\n // cause bugs with positioning, so we'll warn the consumer\n\n\n if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {\n return parseFloat(margin);\n })) {\n console.warn(['Popper: CSS \"margin\" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));\n }\n }\n\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n var __debug_loops__ = 0;\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (process.env.NODE_ENV !== \"production\") {\n __debug_loops__ += 1;\n\n if (__debug_loops__ > 100) {\n console.error(INFINITE_LOOP_ERROR);\n break;\n }\n }\n\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref3) {\n var name = _ref3.name,\n _ref3$options = _ref3.options,\n options = _ref3$options === void 0 ? {} : _ref3$options,\n effect = _ref3.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n getElement,\n getElementFromSelector,\n isDisabled,\n isElement,\n isVisible,\n isRTL,\n noop,\n getNextActiveElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst SPACE_KEY = 'Space'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY}`)\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_NAVBAR = 'navbar'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]'\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'\n\nconst Default = {\n offset: [0, 2],\n boundary: 'clippingParents',\n reference: 'toggle',\n display: 'dynamic',\n popperConfig: null,\n autoClose: true\n}\n\nconst DefaultType = {\n offset: '(array|string|function)',\n boundary: '(string|element)',\n reference: '(string|element|object)',\n display: 'string',\n popperConfig: '(null|object|function)',\n autoClose: '(boolean|string)'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (isDisabled(this._element)) {\n return\n }\n\n const isActive = this._element.classList.contains(CLASS_NAME_SHOW)\n\n if (isActive) {\n this.hide()\n return\n }\n\n this.show()\n }\n\n show() {\n if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this._element)\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n // Totally disable Popper for Dropdowns in Navbar\n if (this._inNavbar) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'none')\n } else {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference)\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false)\n\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n\n if (isDisplayStatic) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static')\n }\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n !parent.closest(SELECTOR_NAVBAR_NAV)) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.on(elem, 'mouseover', noop))\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.toggle(CLASS_NAME_SHOW)\n this._element.classList.toggle(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n this._completeHide(relatedTarget)\n }\n\n dispose() {\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK, event => {\n event.preventDefault()\n this.toggle()\n })\n }\n\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.off(elem, 'mouseover', noop))\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.remove(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._element.setAttribute('aria-expanded', 'false')\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _getMenuElement() {\n return SelectorEngine.next(this._element, SELECTOR_MENU)[0]\n }\n\n _getPlacement() {\n const parentDropdown = this._element.parentNode\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display\n if (this._config.display === 'static') {\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _selectMenuItem({ key, target }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible)\n\n if (!items.length) {\n return\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus()\n }\n\n // Static\n\n static dropdownInterface(element, config) {\n const data = Dropdown.getOrCreateInstance(element, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Dropdown.dropdownInterface(this, config)\n })\n }\n\n static clearMenus(event) {\n if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {\n return\n }\n\n const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const context = Dropdown.getInstance(toggles[i])\n if (!context || context._config.autoClose === false) {\n continue\n }\n\n if (!context._element.classList.contains(CLASS_NAME_SHOW)) {\n continue\n }\n\n const relatedTarget = {\n relatedTarget: context._element\n }\n\n if (event) {\n const composedPath = event.composedPath()\n const isMenuTarget = composedPath.includes(context._menu)\n if (\n composedPath.includes(context._element) ||\n (context._config.autoClose === 'inside' && !isMenuTarget) ||\n (context._config.autoClose === 'outside' && isMenuTarget)\n ) {\n continue\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue\n }\n\n if (event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n }\n\n context._completeHide(relatedTarget)\n }\n }\n\n static getParentFromElement(element) {\n return getElementFromSelector(element) || element.parentNode\n }\n\n static dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName) ?\n event.key === SPACE_KEY || (event.key !== ESCAPE_KEY &&\n ((event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY) ||\n event.target.closest(SELECTOR_MENU))) :\n !REGEXP_KEYDOWN.test(event.key)) {\n return\n }\n\n const isActive = this.classList.contains(CLASS_NAME_SHOW)\n\n if (!isActive && event.key === ESCAPE_KEY) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (isDisabled(this)) {\n return\n }\n\n const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n\n if (event.key === ESCAPE_KEY) {\n getToggleButton().focus()\n Dropdown.clearMenus()\n return\n }\n\n if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) {\n if (!isActive) {\n getToggleButton().click()\n }\n\n Dropdown.getInstance(getToggleButton())._selectMenuItem(event)\n return\n }\n\n if (!isActive || event.key === SPACE_KEY) {\n Dropdown.clearMenus()\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n Dropdown.dropdownInterface(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Dropdown to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport SelectorEngine from '../dom/selector-engine'\nimport Manipulator from '../dom/manipulator'\nimport { isElement } from './index'\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body\n }\n\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth\n return Math.abs(window.innerWidth - documentWidth)\n }\n\n hide() {\n const width = this.getWidth()\n this._disableOverFlow()\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width)\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width)\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width)\n }\n\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow')\n this._element.style.overflow = 'hidden'\n }\n\n _setElementAttributes(selector, styleProp, callback) {\n const scrollbarWidth = this.getWidth()\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return\n }\n\n this._saveInitialAttribute(element, styleProp)\n const calculatedValue = window.getComputedStyle(element)[styleProp]\n element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n reset() {\n this._resetElementAttributes(this._element, 'overflow')\n this._resetElementAttributes(this._element, 'paddingRight')\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight')\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight')\n }\n\n _saveInitialAttribute(element, styleProp) {\n const actualValue = element.style[styleProp]\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProp, actualValue)\n }\n }\n\n _resetElementAttributes(selector, styleProp) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProp)\n if (typeof value === 'undefined') {\n element.style.removeProperty(styleProp)\n } else {\n Manipulator.removeDataAttribute(element, styleProp)\n element.style[styleProp] = value\n }\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector)\n } else {\n SelectorEngine.find(selector, this._element).forEach(callBack)\n }\n }\n\n isOverflowing() {\n return this.getWidth() > 0\n }\n}\n\nexport default ScrollBarHelper\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { execute, executeAfterTransition, getElement, reflow, typeCheckConfig } from './index'\n\nconst Default = {\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n isAnimated: false,\n rootElement: 'body', // give the choice to place backdrop under different elements\n clickCallback: null\n}\n\nconst DefaultType = {\n isVisible: 'boolean',\n isAnimated: 'boolean',\n rootElement: '(element|string)',\n clickCallback: '(function|null)'\n}\nconst NAME = 'backdrop'\nconst CLASS_NAME_BACKDROP = 'modal-backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nclass Backdrop {\n constructor(config) {\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\n }\n\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n if (this._config.isAnimated) {\n reflow(this._getElement())\n }\n\n this._getElement().classList.add(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n execute(callback)\n })\n }\n\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._getElement().classList.remove(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n this.dispose()\n execute(callback)\n })\n }\n\n // Private\n\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div')\n backdrop.className = CLASS_NAME_BACKDROP\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE)\n }\n\n this._element = backdrop\n }\n\n return this._element\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' ? config : {})\n }\n\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement)\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n this._config.rootElement.appendChild(this._getElement())\n\n EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n dispose() {\n if (!this._isAppended) {\n return\n }\n\n EventHandler.off(this._element, EVENT_MOUSEDOWN)\n\n this._element.remove()\n this._isAppended = false\n }\n\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated)\n }\n}\n\nexport default Backdrop\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport ScrollBarHelper from './util/scrollbar'\nimport BaseComponent from './base-component'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean'\n}\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"modal\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element)\n this._backdrop = this._initializeBackDrop()\n this._isShown = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollBar = new ScrollBarHelper()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n\n if (this._isAnimated()) {\n this._isTransitioning = true\n }\n\n this._scrollBar.hide()\n\n document.body.classList.add(CLASS_NAME_OPEN)\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, event => this.hide(event))\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event && ['A', 'AREA'].includes(event.target.tagName)) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n const isAnimated = this._isAnimated()\n\n if (isAnimated) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.off(document, EVENT_FOCUSIN)\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS)\n\n this._queueCallback(() => this._hideModal(), this._element, isAnimated)\n }\n\n dispose() {\n [window, this._dialog]\n .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))\n\n this._backdrop.dispose()\n super.dispose()\n\n /**\n * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `EVENT_CLICK_DATA_API` event that should remain\n */\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value\n isAnimated: this._isAnimated()\n })\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const isAnimated = this._isAnimated()\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n if (isAnimated) {\n reflow(this._element)\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, isAnimated)\n }\n\n _enforceFocus() {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n this._element !== event.target &&\n !this._element.contains(event.target)) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault()\n this.hide()\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition()\n }\n })\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog())\n } else {\n EventHandler.off(window, EVENT_RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n this._scrollBar.reset()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _showBackdrop(callback) {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, event => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n\n if (event.target !== event.currentTarget) {\n return\n }\n\n if (this._config.backdrop === true) {\n this.hide()\n } else if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n }\n })\n\n this._backdrop.show(callback)\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE)\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const { classList, scrollHeight, style } = this._element\n const isModalOverflowing = scrollHeight > document.documentElement.clientHeight\n\n // return if the following background transition hasn't yet completed\n if ((!isModalOverflowing && style.overflowY === 'hidden') || classList.contains(CLASS_NAME_STATIC)) {\n return\n }\n\n if (!isModalOverflowing) {\n style.overflowY = 'hidden'\n }\n\n classList.add(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n classList.remove(CLASS_NAME_STATIC)\n if (!isModalOverflowing) {\n this._queueCallback(() => {\n style.overflowY = ''\n }, this._dialog)\n }\n }, this._dialog)\n\n this._element.focus()\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const scrollbarWidth = this._scrollBar.getWidth()\n const isBodyOverflowing = scrollbarWidth > 0\n\n if ((!isBodyOverflowing && isModalOverflowing && !isRTL()) || (isBodyOverflowing && !isModalOverflowing && isRTL())) {\n this._element.style.paddingLeft = `${scrollbarWidth}px`\n }\n\n if ((isBodyOverflowing && !isModalOverflowing && !isRTL()) || (!isBodyOverflowing && isModalOverflowing && isRTL())) {\n this._element.style.paddingRight = `${scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n const data = Modal.getOrCreateInstance(target)\n\n data.toggle(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible,\n typeCheckConfig\n} from './util/index'\nimport ScrollBarHelper from './util/scrollbar'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Manipulator from './dom/manipulator'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: 'boolean',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\nconst CLASS_NAME_SHOW = 'show'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"offcanvas\"]'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._addEventListeners()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._element.style.visibility = 'visible'\n\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n this._enforceFocusOnElement(this._element)\n }\n\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const completeCallBack = () => {\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n EventHandler.off(document, EVENT_FOCUSIN)\n this._element.blur()\n this._isShown = false\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._element.style.visibility = 'hidden'\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n super.dispose()\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: this._config.backdrop,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _enforceFocusOnElement(element) {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n element !== event.target &&\n !element.contains(event.target)) {\n element.focus()\n }\n })\n element.focus()\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n this.hide()\n }\n })\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (allReadyOpen && allReadyOpen !== target) {\n Offcanvas.getInstance(allReadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () =>\n SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())\n)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attr, allowedAttributeList) => {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attrName)) {\n if (uriAttrs.has(attrName)) {\n return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attrName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const allowlistKeys = Object.keys(allowList)\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (!allowlistKeys.includes(elName)) {\n el.remove()\n\n continue\n }\n\n const attributeList = [].concat(...el.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || [])\n\n attributeList.forEach(attr => {\n if (!allowedAttribute(attr, allowedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport {\n DefaultAllowlist,\n sanitizeHtml\n} from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.appendChild(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n this.tip = element.children[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle())\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.appendChild(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n let title = this._element.getAttribute('data-bs-original-title')\n\n if (!title) {\n title = typeof this._config.title === 'function' ?\n this._config.title.call(this._element) :\n this._config.title\n }\n\n return title\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || Data.get(event.delegateTarget, dataKey)\n\n if (!context) {\n context = new this.constructor(event.delegateTarget, this._getDelegateConfig())\n Data.set(event.delegateTarget, dataKey, context)\n }\n\n return context\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this._config) {\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport SelectorEngine from './dom/selector-engine'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement: 'right',\n offset: [0, 8],\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(string|element|function)'\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n this.tip = super.getTipElement()\n\n if (!this.getTitle()) {\n SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove()\n }\n\n if (!this._getContent()) {\n SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove()\n }\n\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n\n // we use append for html objects to maintain js events\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this._element)\n }\n\n this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n // Private\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getContent() {\n return this._element.getAttribute('data-bs-content') || this._config.content\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Popover to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getSelectorFromElement,\n getUID,\n isElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n offset: 10,\n method: 'auto',\n target: ''\n}\n\nconst DefaultType = {\n offset: 'number',\n method: 'string',\n target: '(string|element)'\n}\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._scrollElement = this._element.tagName === 'BODY' ? window : this._element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process())\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window ?\n METHOD_OFFSET :\n METHOD_POSITION\n\n const offsetMethod = this._config.method === 'auto' ?\n autoMethod :\n this._config.method\n\n const offsetBase = offsetMethod === METHOD_POSITION ?\n this._getScrollTop() :\n 0\n\n this._offsets = []\n this._targets = []\n this._scrollHeight = this._getScrollHeight()\n\n const targets = SelectorEngine.find(this._selector)\n\n targets.map(element => {\n const targetSelector = getSelectorFromElement(element)\n const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n return [\n Manipulator[offsetMethod](target).top + offsetBase,\n targetSelector\n ]\n }\n }\n\n return null\n })\n .filter(item => item)\n .sort((a, b) => a[0] - b[0])\n .forEach(item => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n EventHandler.off(this._scrollElement, EVENT_KEY)\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (typeof config.target !== 'string' && isElement(config.target)) {\n let { id } = config.target\n if (!id) {\n id = getUID(NAME)\n config.target.id = id\n }\n\n config.target = `#${id}`\n }\n\n typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window ?\n this._scrollElement.pageYOffset :\n this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window ?\n window.innerHeight :\n this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n for (let i = this._offsets.length; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = this._selector.split(',')\n .map(selector => `${selector}[data-bs-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const link = SelectorEngine.findOne(queries.join(','))\n\n if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, link.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n\n link.classList.add(CLASS_NAME_ACTIVE)\n } else {\n // Set triggered link as active\n link.classList.add(CLASS_NAME_ACTIVE)\n\n SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP)\n .forEach(listGroup => {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n\n // Handle special case when .nav-link is inside .nav-item\n SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS)\n .forEach(navItem => {\n SelectorEngine.children(navItem, SELECTOR_NAV_LINKS)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n })\n })\n }\n\n EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, {\n relatedTarget: target\n })\n }\n\n _clear() {\n SelectorEngine.find(this._selector)\n .filter(node => node.classList.contains(CLASS_NAME_ACTIVE))\n .forEach(node => node.classList.remove(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n SelectorEngine.find(SELECTOR_DATA_SPY)\n .forEach(spy => new ScrollSpy(spy))\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .ScrollSpy to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n reflow\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_UL = ':scope > li > .active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tab extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n if ((this._element.parentNode &&\n this._element.parentNode.nodeType === Node.ELEMENT_NODE &&\n this._element.classList.contains(CLASS_NAME_ACTIVE))) {\n return\n }\n\n let previous\n const target = getElementFromSelector(this._element)\n const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP)\n\n if (listElement) {\n const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE\n previous = SelectorEngine.find(itemSelector, listElement)\n previous = previous[previous.length - 1]\n }\n\n const hideEvent = previous ?\n EventHandler.trigger(previous, EVENT_HIDE, {\n relatedTarget: this._element\n }) :\n null\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget: previous\n })\n\n if (showEvent.defaultPrevented || (hideEvent !== null && hideEvent.defaultPrevented)) {\n return\n }\n\n this._activate(this._element, listElement)\n\n const complete = () => {\n EventHandler.trigger(previous, EVENT_HIDDEN, {\n relatedTarget: this._element\n })\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget: previous\n })\n }\n\n if (target) {\n this._activate(target, target.parentNode, complete)\n } else {\n complete()\n }\n }\n\n // Private\n\n _activate(element, container, callback) {\n const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ?\n SelectorEngine.find(SELECTOR_ACTIVE_UL, container) :\n SelectorEngine.children(container, SELECTOR_ACTIVE)\n\n const active = activeElements[0]\n const isTransitioning = callback && (active && active.classList.contains(CLASS_NAME_FADE))\n\n const complete = () => this._transitionComplete(element, active, callback)\n\n if (active && isTransitioning) {\n active.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, element, true)\n } else {\n complete()\n }\n }\n\n _transitionComplete(element, active, callback) {\n if (active) {\n active.classList.remove(CLASS_NAME_ACTIVE)\n\n const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode)\n\n if (dropdownChild) {\n dropdownChild.classList.remove(CLASS_NAME_ACTIVE)\n }\n\n if (active.getAttribute('role') === 'tab') {\n active.setAttribute('aria-selected', false)\n }\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n if (element.getAttribute('role') === 'tab') {\n element.setAttribute('aria-selected', true)\n }\n\n reflow(element)\n\n if (element.classList.contains(CLASS_NAME_FADE)) {\n element.classList.add(CLASS_NAME_SHOW)\n }\n\n let parent = element.parentNode\n if (parent && parent.nodeName === 'LI') {\n parent = parent.parentNode\n }\n\n if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) {\n const dropdownElement = element.closest(SELECTOR_DROPDOWN)\n\n if (dropdownElement) {\n SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement)\n .forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE))\n }\n\n element.setAttribute('aria-expanded', true)\n }\n\n if (callback) {\n callback()\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tab.getOrCreateInstance(this)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const data = Tab.getOrCreateInstance(this)\n data.show()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tab to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'bs.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`\nconst EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_FOCUSOUT = `focusout${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"toast\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._timeout = null\n this._hasMouseInteraction = false\n this._hasKeyboardInteraction = false\n this._setListeners()\n }\n\n // Getters\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n this._element.classList.add(CLASS_NAME_SHOW)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n this._maybeScheduleHide()\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE)\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n hide() {\n if (!this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n return config\n }\n\n _maybeScheduleHide() {\n if (!this._config.autohide) {\n return\n }\n\n if (this._hasMouseInteraction || this._hasKeyboardInteraction) {\n return\n }\n\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n\n _onInteraction(event, isInteracting) {\n switch (event.type) {\n case 'mouseover':\n case 'mouseout':\n this._hasMouseInteraction = isInteracting\n break\n case 'focusin':\n case 'focusout':\n this._hasKeyboardInteraction = isInteracting\n break\n default:\n break\n }\n\n if (isInteracting) {\n this._clearTimeout()\n return\n }\n\n const nextElement = event.relatedTarget\n if (this._element === nextElement || this._element.contains(nextElement)) {\n return\n }\n\n this._maybeScheduleHide()\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false))\n EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false))\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Toast.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Toast to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Toast)\n\nexport default Toast\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): index.umd.js\n * Licensed under MIT (https:/github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Alert from \"@openeuropa/bcl-bootstrap/js/src/alert\";\nimport Button from \"@openeuropa/bcl-bootstrap/js/src/button\";\nimport Carousel from \"@openeuropa/bcl-bootstrap/js/src/carousel\";\nimport Collapse from \"@openeuropa/bcl-bootstrap/js/src/collapse\";\nimport Dropdown from \"@openeuropa/bcl-bootstrap/js/src/dropdown\";\nimport Modal from \"@openeuropa/bcl-bootstrap/js/src/modal\";\nimport Offcanvas from \"@openeuropa/bcl-bootstrap/js/src/offcanvas\";\nimport Popover from \"@openeuropa/bcl-bootstrap/js/src/popover\";\nimport ScrollSpy from \"@openeuropa/bcl-bootstrap/js/src/scrollspy\";\nimport Tab from \"@openeuropa/bcl-bootstrap/js/src/tab\";\nimport Toast from \"@openeuropa/bcl-bootstrap/js/src/toast\";\nimport Tooltip from \"@openeuropa/bcl-bootstrap/js/src/tooltip\";\n\nexport default {\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n};\n"],"names":["NODE_TEXT","SelectorEngine","find","selector","element","document","documentElement","concat","Element","prototype","querySelectorAll","call","findOne","querySelector","children","filter","child","matches","parents","ancestor","parentNode","nodeType","Node","ELEMENT_NODE","push","prev","previous","previousElementSibling","next","nextElementSibling","MAX_UID","MILLISECONDS_MULTIPLIER","TRANSITION_END","toType","obj","undefined","toString","match","toLowerCase","getUID","prefix","Math","floor","random","getElementById","getSelector","getAttribute","hrefAttr","includes","startsWith","split","trim","getSelectorFromElement","getElementFromSelector","getTransitionDurationFromElement","transitionDuration","transitionDelay","window","getComputedStyle","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","triggerTransitionEnd","dispatchEvent","Event","isElement","jquery","getElement","length","typeCheckConfig","componentName","config","configTypes","Object","keys","forEach","property","expectedTypes","value","valueType","RegExp","test","TypeError","toUpperCase","isVisible","getClientRects","getPropertyValue","isDisabled","classList","contains","disabled","hasAttribute","findShadowRoot","attachShadow","getRootNode","root","ShadowRoot","noop","reflow","offsetHeight","getjQuery","jQuery","body","DOMContentLoadedCallbacks","onDOMContentLoaded","callback","readyState","addEventListener","isRTL","dir","defineJQueryPlugin","plugin","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","execute","executeAfterTransition","transitionElement","waitForTransition","durationPadding","emulatedDuration","called","handler","target","removeEventListener","setTimeout","getNextActiveElement","list","activeElement","shouldGetNext","isCycleAllowed","index","indexOf","listLength","max","min","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","customEventsRegex","nativeEvents","Set","getUidEvent","uid","getEvent","bootstrapHandler","event","delegateTarget","oneOff","EventHandler","off","type","apply","bootstrapDelegationHandler","domElements","i","findHandler","events","delegationSelector","uidEventList","len","originalHandler","normalizeParams","originalTypeEvent","delegationFn","delegation","typeEvent","getTypeEvent","isNative","has","addHandler","wrapFn","relatedTarget","handlers","previousFn","replace","removeHandler","Boolean","removeNamespacedHandlers","namespace","storeElementEvent","handlerKey","on","one","inNamespace","isNamespace","elementEvent","slice","keyHandlers","trigger","args","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","evt","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","createEvent","initEvent","CustomEvent","cancelable","key","defineProperty","get","preventDefault","elementMap","Map","set","instance","instanceMap","size","console","error","Array","from","remove","delete","VERSION","BaseComponent","constructor","_element","Data","DATA_KEY","dispose","EVENT_KEY","getOwnPropertyNames","propertyName","_queueCallback","isAnimated","getInstance","getOrCreateInstance","Error","DATA_API_KEY","SELECTOR_DISMISS","EVENT_CLOSE","EVENT_CLOSED","EVENT_CLICK_DATA_API","CLASS_NAME_ALERT","CLASS_NAME_FADE","CLASS_NAME_SHOW","Alert","close","rootElement","_getRootElement","customEvent","_triggerCloseEvent","_removeElement","closest","_destroyElement","each","data","handleDismiss","alertInstance","CLASS_NAME_ACTIVE","SELECTOR_DATA_TOGGLE","Button","toggle","setAttribute","button","normalizeData","val","normalizeDataKey","chr","Manipulator","setDataAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","dataset","pureKey","charAt","getDataAttribute","offset","rect","getBoundingClientRect","top","scrollTop","left","scrollLeft","position","offsetTop","offsetLeft","ARROW_LEFT_KEY","ARROW_RIGHT_KEY","TOUCHEVENT_COMPAT_WAIT","SWIPE_THRESHOLD","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","KEY_TO_DIRECTION","EVENT_SLIDE","EVENT_SLID","EVENT_KEYDOWN","EVENT_MOUSEENTER","EVENT_MOUSELEAVE","EVENT_TOUCHSTART","EVENT_TOUCHMOVE","EVENT_TOUCHEND","EVENT_POINTERDOWN","EVENT_POINTERUP","EVENT_DRAG_START","EVENT_LOAD_DATA_API","CLASS_NAME_CAROUSEL","CLASS_NAME_SLIDE","CLASS_NAME_END","CLASS_NAME_START","CLASS_NAME_NEXT","CLASS_NAME_PREV","CLASS_NAME_POINTER_EVENT","SELECTOR_ACTIVE","SELECTOR_ACTIVE_ITEM","SELECTOR_ITEM","SELECTOR_ITEM_IMG","SELECTOR_NEXT_PREV","SELECTOR_INDICATORS","SELECTOR_INDICATOR","SELECTOR_DATA_SLIDE","SELECTOR_DATA_RIDE","POINTER_TYPE_TOUCH","POINTER_TYPE_PEN","Carousel","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","PointerEvent","_addEventListeners","_slide","nextWhenVisible","hidden","cycle","clearInterval","_updateInterval","setInterval","visibilityState","bind","to","activeIndex","_getItemIndex","order","_handleSwipe","absDeltax","abs","direction","_keydown","_addTouchEventListeners","start","pointerType","clientX","touches","move","end","clearTimeout","itemImg","e","add","tagName","_getItemByOrder","isNext","_triggerSlideEvent","eventDirectionName","targetIndex","fromIndex","_setActiveIndicatorElement","activeIndicator","indicators","parseInt","elementInterval","defaultInterval","directionOrOrder","_directionToOrder","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","_orderToDirection","slideEvent","triggerSlidEvent","completeCallBack","carouselInterface","action","ride","dataApiClickHandler","slideIndex","carousels","parent","EVENT_SHOW","EVENT_SHOWN","EVENT_HIDE","EVENT_HIDDEN","CLASS_NAME_COLLAPSE","CLASS_NAME_COLLAPSING","CLASS_NAME_COLLAPSED","WIDTH","HEIGHT","SELECTOR_ACTIVES","Collapse","_isTransitioning","_triggerArray","id","toggleList","elem","filterElement","foundElem","_selector","_parent","_getParent","_addAriaAndCollapsedClass","hide","show","actives","activesData","container","tempActiveData","startEvent","elemActive","collapseInterface","dimension","_getDimension","style","setTransitioning","complete","capitalizedDimension","scrollSize","triggerArrayLength","isTransitioning","selected","triggerArray","isOpen","triggerData","selectorElements","bottom","right","auto","basePlacements","clippingParents","viewport","popper","reference","variationPlacements","reduce","acc","placement","placements","beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite","modifierPhases","getNodeName","nodeName","getWindow","node","ownerDocument","defaultView","OwnElement","isHTMLElement","HTMLElement","isShadowRoot","applyStyles","_ref","state","elements","styles","assign","effect","_ref2","initialStyles","options","strategy","margin","arrow","styleProperties","hasOwnProperty","attribute","enabled","phase","requires","getBasePlacement","width","height","x","y","getLayoutRect","clientRect","offsetWidth","rootNode","isSameNode","host","isTableElement","getDocumentElement","getParentNode","assignedSlot","getTrueOffsetParent","offsetParent","getContainingBlock","isFirefox","userAgent","isIE","elementCss","currentNode","css","transform","perspective","contain","willChange","getOffsetParent","getMainAxisFromPlacement","round","within","mathMax","mathMin","getFreshSideObject","mergePaddingObject","paddingObject","expandToHashMap","hashMap","toPaddingObject","padding","rects","_state$modifiersData$","arrowElement","popperOffsets","modifiersData","basePlacement","axis","isVertical","arrowRect","minProp","maxProp","endDiff","startDiff","arrowOffsetParent","clientSize","clientHeight","clientWidth","centerToReference","center","axisProp","centerOffset","_options$element","requiresIfExists","unsetSides","roundOffsetsByDPR","win","dpr","devicePixelRatio","mapToStyles","_Object$assign2","popperRect","offsets","gpuAcceleration","adaptive","roundOffsets","_ref3","_ref3$x","_ref3$y","hasX","hasY","sideX","sideY","heightProp","widthProp","commonStyles","_Object$assign","computeStyles","_ref4","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","passive","_options$scroll","scroll","_options$resize","resize","scrollParents","scrollParent","update","hash","getOppositePlacement","matched","getOppositeVariationPlacement","getWindowScroll","pageXOffset","pageYOffset","getWindowScrollBarX","getViewportRect","html","visualViewport","getDocumentRect","_element$ownerDocumen","winScroll","scrollWidth","scrollHeight","isScrollParent","_getComputedStyle","overflow","overflowX","overflowY","getScrollParent","listScrollParents","isBody","updatedList","rectToClientRect","getInnerBoundingClientRect","clientTop","clientLeft","getClientRectFromMixedType","clippingParent","getClippingParents","canEscapeClipping","clipperElement","getClippingRect","boundary","rootBoundary","mainClippingParents","firstClippingParent","clippingRect","accRect","getVariation","computeOffsets","variation","commonX","commonY","mainAxis","detectOverflow","_options","_options$placement","_options$boundary","_options$rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","referenceElement","clippingClientRect","contextElement","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","multiply","computeAutoPlacement","flipVariations","_options$allowedAutoP","allowedAutoPlacements","allPlacements","allowedPlacements","overflows","sort","a","b","getExpandedFallbackPlacements","oppositePlacement","flip","_skip","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","preferredPlacement","isBasePlacement","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","mainVariationSide","altVariationSide","checks","every","check","numberOfChecks","_loop","_i","fittingPlacement","_ret","reset","getSideOffsets","preventedOffsets","isAnySideFullyClipped","some","side","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","distanceAndSkiddingToXY","invertDistance","skidding","distance","_options$offset","_data$state$placement","getAltAxis","_options$tether","tether","_options$tetherOffset","tetherOffset","tetherOffsetValue","mainSide","altSide","additive","minLen","maxLen","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","clientOffset","offsetModifierValue","tetherMin","tetherMax","preventedOffset","_mainSide","_altSide","_offset","_min","_max","_preventedOffset","getHTMLElementScroll","getNodeScroll","getCompositeRect","elementOrVirtualElement","isFixed","isOffsetParentAnElement","modifiers","map","visited","result","modifier","dep","depModifier","orderModifiers","orderedModifiers","debounce","pending","Promise","resolve","then","mergeByName","merged","current","existing","DEFAULT_OPTIONS","areValidElements","_len","arguments","_key","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","createPopper","effectCleanupFns","isDestroyed","setOptions","cleanupModifierEffects","m","runModifierEffects","forceUpdate","_state$elements","_state$orderedModifie","_state$orderedModifie2","destroy","onFirstUpdate","_ref3$options","cleanupFn","noopFn","eventListeners","ESCAPE_KEY","SPACE_KEY","TAB_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","RIGHT_MOUSE_BUTTON","REGEXP_KEYDOWN","EVENT_CLICK","EVENT_KEYDOWN_DATA_API","EVENT_KEYUP_DATA_API","CLASS_NAME_DROPUP","CLASS_NAME_DROPEND","CLASS_NAME_DROPSTART","CLASS_NAME_NAVBAR","SELECTOR_MENU","SELECTOR_NAVBAR_NAV","SELECTOR_VISIBLE_ITEMS","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","display","popperConfig","autoClose","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","isActive","getParentFromElement","showEvent","Popper","_getPopperConfig","isDisplayStatic","focus","_completeHide","hideEvent","_getPlacement","parentDropdown","isEnd","_getOffset","popperData","defaultBsPopperConfig","_selectMenuItem","items","dropdownInterface","clearMenus","toggles","context","composedPath","isMenuTarget","clickEvent","dataApiKeydownHandler","stopPropagation","getToggleButton","click","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","ScrollBarHelper","getWidth","documentWidth","innerWidth","_disableOverFlow","_setElementAttributes","calculatedValue","_saveInitialAttribute","styleProp","scrollbarWidth","manipulationCallBack","_applyManipulationCallback","_resetElementAttributes","actualValue","removeProperty","callBack","isOverflowing","clickCallback","CLASS_NAME_BACKDROP","EVENT_MOUSEDOWN","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","createElement","className","appendChild","EVENT_HIDE_PREVENTED","EVENT_FOCUSIN","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_KEYDOWN_DISMISS","EVENT_MOUSEUP_DISMISS","EVENT_MOUSEDOWN_DISMISS","CLASS_NAME_OPEN","CLASS_NAME_STATIC","SELECTOR_DIALOG","SELECTOR_MODAL_BODY","SELECTOR_DATA_DISMISS","Modal","_dialog","_backdrop","_initializeBackDrop","_isShown","_ignoreBackdropClick","_scrollBar","_isAnimated","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","_hideModal","htmlElement","handleUpdate","modalBody","_enforceFocus","transitionComplete","_triggerBackdropTransition","_resetAdjustments","currentTarget","isModalOverflowing","isBodyOverflowing","paddingLeft","paddingRight","OPEN_SELECTOR","Offcanvas","visibility","_enforceFocusOnElement","blur","completeCallback","allReadyOpen","el","uriAttrs","ARIA_ATTRIBUTE_PATTERN","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeValue","regExp","attrRegex","DefaultAllowlist","area","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","domParser","DOMParser","createdDocument","parseFromString","allowlistKeys","elName","attributeList","allowedAttributes","innerHTML","CLASS_PREFIX","BSCLS_PREFIX_REGEX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","customClass","sanitize","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","CLASS_NAME_MODAL","HOVER_STATE_SHOW","HOVER_STATE_OUT","SELECTOR_TOOLTIP_INNER","TRIGGER_HOVER","TRIGGER_FOCUS","TRIGGER_CLICK","TRIGGER_MANUAL","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","_initializeOnDelegatedTarget","_isWithActiveTrigger","_enter","_leave","getTipElement","_hideModalHandler","isWithContent","shadowRoot","isInTheDom","tipId","setContent","attachment","_getAttachment","_addAttachmentClass","prevHoverState","_cleanTipClass","getTitle","setElementContent","content","textContent","updateAttachment","dataKey","_getDelegateConfig","_handlePopperPlacementChange","triggers","eventIn","eventOut","_fixTitle","originalTitleType","dataAttributes","dataAttr","tabClass","token","tClass","SELECTOR_TITLE","SELECTOR_CONTENT","Popover","_getContent","method","EVENT_ACTIVATE","EVENT_SCROLL","CLASS_NAME_DROPDOWN_ITEM","SELECTOR_DATA_SPY","SELECTOR_NAV_LIST_GROUP","SELECTOR_NAV_LINKS","SELECTOR_NAV_ITEMS","SELECTOR_LIST_ITEMS","SELECTOR_DROPDOWN","SELECTOR_DROPDOWN_TOGGLE","METHOD_OFFSET","METHOD_POSITION","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targets","targetSelector","targetBCR","item","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","isActiveTarget","queries","link","join","listGroup","navItem","spy","CLASS_NAME_DROPDOWN_MENU","SELECTOR_ACTIVE_UL","SELECTOR_DROPDOWN_ACTIVE_CHILD","Tab","listElement","itemSelector","activeElements","active","_transitionComplete","dropdownChild","dropdownElement","dropdown","EVENT_MOUSEOVER","EVENT_MOUSEOUT","EVENT_FOCUSOUT","CLASS_NAME_HIDE","CLASS_NAME_SHOWING","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","_onInteraction","isInteracting"],"mappings":"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"} \ No newline at end of file diff --git a/assets/js/oe-bcl-default.bundle.min.js b/assets/js/oe-bcl-default.bundle.min.js deleted file mode 100644 index c151448b..00000000 --- a/assets/js/oe-bcl-default.bundle.min.js +++ /dev/null @@ -1,2 +0,0 @@ -!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={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[]}},e="transitionend",i=t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t},n=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},s=t=>{const e=n(t);return e&&document.querySelector(e)?e:null},o=t=>{const e=n(t);return e?document.querySelector(e):null},r=t=>{t.dispatchEvent(new Event(e))},a=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),l=e=>a(e)?e.jquery?e[0]:e:"string"==typeof e&&e.length>0?t.findOne(e):null,c=(t,e,i)=>{Object.keys(i).forEach((n=>{const s=i[n],o=e[n],r=o&&a(o)?"element":null==(l=o)?`${l}`:{}.toString.call(l).match(/\s([a-z]+)/i)[1].toLowerCase();var l;if(!new RegExp(s).test(r))throw new TypeError(`${t.toUpperCase()}: Option "${n}" provided type "${r}" but expected type "${s}".`)}))},h=t=>!(!a(t)||0===t.getClientRects().length)&&"visible"===getComputedStyle(t).getPropertyValue("visibility"),d=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),u=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?u(t.parentNode):null},f=()=>{},p=t=>t.offsetHeight,m=()=>{const{jQuery:t}=window;return t&&!document.body.hasAttribute("data-bs-no-jquery")?t:null},g=[],_=()=>"rtl"===document.documentElement.dir,b=t=>{var e;e=()=>{const e=m();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?(g.length||document.addEventListener("DOMContentLoaded",(()=>{g.forEach((t=>t()))})),g.push(e)):e()},v=t=>{"function"==typeof t&&t()},y=(t,i,n=!0)=>{if(!n)return void v(t);const s=(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 o=!1;const a=({target:n})=>{n===i&&(o=!0,i.removeEventListener(e,a),v(t))};i.addEventListener(e,a),setTimeout((()=>{o||r(i)}),s)},w=(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))]},E=/[^.]*(?=\..*)\.|.*/,A=/\..*/,T=/::\d+$/,O={};let C=1;const L={mouseenter:"mouseover",mouseleave:"mouseout"},k=/^(mouseenter|mouseleave)/i,x=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 D(t,e){return e&&`${e}::${C++}`||t.uidEvent||C++}function S(t){const e=D(t);return t.uidEvent=e,O[e]=O[e]||{},O[e]}function I(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 N(t,e,i){const n="string"==typeof e,s=n?i:e;let o=P(t);return x.has(o)||(o=t),[n,s,o]}function j(t,e,i,n,s){if("string"!=typeof e||!t)return;if(i||(i=n,n=null),k.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]=N(e,i,n),l=S(t),c=l[a]||(l[a]={}),h=I(c,r,o?i:null);if(h)return void(h.oneOff=h.oneOff&&s);const d=D(r,e.replace(E,"")),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&&H.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&&H.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 M(t,e,i,n,s){const o=I(e[i],n,s);o&&(t.removeEventListener(i,o,Boolean(s)),delete e[i][o.uidEvent])}function P(t){return t=t.replace(A,""),L[t]||t}const H={on(t,e,i,n){j(t,e,i,n,!1)},one(t,e,i,n){j(t,e,i,n,!0)},off(t,e,i,n){if("string"!=typeof e||!t)return;const[s,o,r]=N(e,i,n),a=r!==e,l=S(t),c=e.startsWith(".");if(void 0!==o){if(!l||!l[r])return;return void M(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];M(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(T,"");if(!a||e.includes(n)){const e=h[i];M(t,l,r,e.originalHandler,e.delegationSelector)}}))},trigger(t,e,i){if("string"!=typeof e||!t)return null;const n=m(),s=P(e),o=e!==s,r=x.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}},R=new Map;var B={set(t,e,i){R.has(t)||R.set(t,new Map);const n=R.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)=>R.has(t)&&R.get(t).get(e)||null,remove(t,e){if(!R.has(t))return;const i=R.get(t);i.delete(e),0===i.size&&R.delete(t)}};class ${constructor(t){(t=l(t))&&(this._element=t,B.set(this._element,this.constructor.DATA_KEY,this))}dispose(){B.remove(this._element,this.constructor.DATA_KEY),H.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach((t=>{this[t]=null}))}_queueCallback(t,e,i=!0){y(t,e,i)}static getInstance(t){return B.get(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.0.2"}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}`}}class W extends ${static get NAME(){return"alert"}close(t){const e=t?this._getRootElement(t):this._element,i=this._triggerCloseEvent(e);null===i||i.defaultPrevented||this._removeElement(e)}_getRootElement(t){return o(t)||t.closest(".alert")}_triggerCloseEvent(t){return H.trigger(t,"close.bs.alert")}_removeElement(t){t.classList.remove("show");const e=t.classList.contains("fade");this._queueCallback((()=>this._destroyElement(t)),t,e)}_destroyElement(t){t.remove(),H.trigger(t,"closed.bs.alert")}static jQueryInterface(t){return this.each((function(){const e=W.getOrCreateInstance(this);"close"===t&&e[t](this)}))}static handleDismiss(t){return function(e){e&&e.preventDefault(),t.close(this)}}}H.on(document,"click.bs.alert.data-api",'[data-bs-dismiss="alert"]',W.handleDismiss(new W)),b(W);const q='[data-bs-toggle="button"]';class z extends ${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 U(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()}`))}H.on(document,"click.bs.button.data-api",q,(t=>{t.preventDefault();const e=t.target.closest(q);z.getOrCreateInstance(e).toggle()})),b(z);const V={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]=U(t.dataset[i])})),e},getDataAttribute:(t,e)=>U(t.getAttribute(`data-bs-${F(e)}`)),offset(t){const e=t.getBoundingClientRect();return{top:e.top+document.body.scrollTop,left:e.left+document.body.scrollLeft}},position:t=>({top:t.offsetTop,left:t.offsetLeft})},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",st="touch";class ot extends ${constructor(e,i){super(e),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(i),this._indicatorsElement=t.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&&h(this._element)&&this.next()}prev(){this._slide(G)}pause(e){e||(this._isPaused=!0),t.findOne(".carousel-item-next, .carousel-item-prev",this._element)&&(r(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(e){this._activeElement=t.findOne(nt,this._element);const i=this._getItemIndex(this._activeElement);if(e>this._items.length-1||e<0)return;if(this._isSliding)return void H.one(this._element,et,(()=>this.to(e)));if(i===e)return this.pause(),void this.cycle();const n=e>i?Q:G;this._slide(n,this._items[e])}_getConfig(t){return t={...X,...V.getDataAttributes(this._element),..."object"==typeof t?t:{}},c(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&&H.on(this._element,"keydown.bs.carousel",(t=>this._keydown(t))),"hover"===this._config.pause&&(H.on(this._element,"mouseenter.bs.carousel",(t=>this.pause(t))),H.on(this._element,"mouseleave.bs.carousel",(t=>this.cycle(t)))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){const e=t=>{!this._pointerEvent||"pen"!==t.pointerType&&t.pointerType!==st?this._pointerEvent||(this.touchStartX=t.touches[0].clientX):this.touchStartX=t.clientX},i=t=>{this.touchDeltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this.touchStartX},n=t=>{!this._pointerEvent||"pen"!==t.pointerType&&t.pointerType!==st||(this.touchDeltaX=t.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))};t.find(".carousel-item img",this._element).forEach((t=>{H.on(t,"dragstart.bs.carousel",(t=>t.preventDefault()))})),this._pointerEvent?(H.on(this._element,"pointerdown.bs.carousel",(t=>e(t))),H.on(this._element,"pointerup.bs.carousel",(t=>n(t))),this._element.classList.add("pointer-event")):(H.on(this._element,"touchstart.bs.carousel",(t=>e(t))),H.on(this._element,"touchmove.bs.carousel",(t=>i(t))),H.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(e){return this._items=e&&e.parentNode?t.find(".carousel-item",e.parentNode):[],this._items.indexOf(e)}_getItemByOrder(t,e){const i=t===Q;return w(this._items,e,i,this._config.wrap)}_triggerSlideEvent(e,i){const n=this._getItemIndex(e),s=this._getItemIndex(t.findOne(nt,this._element));return H.trigger(this._element,"slide.bs.carousel",{relatedTarget:e,direction:i,from:s,to:n})}_setActiveIndicatorElement(e){if(this._indicatorsElement){const i=t.findOne(".active",this._indicatorsElement);i.classList.remove(it),i.removeAttribute("aria-current");const n=t.find("[data-bs-target]",this._indicatorsElement);for(let t=0;t<n.length;t++)if(Number.parseInt(n[t].getAttribute("data-bs-slide-to"),10)===this._getItemIndex(e)){n[t].classList.add(it),n[t].setAttribute("aria-current","true");break}}}_updateInterval(){const e=this._activeElement||t.findOne(nt,this._element);if(!e)return;const i=Number.parseInt(e.getAttribute("data-bs-interval"),10);i?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,this._config.interval=i):this._config.interval=this._config.defaultInterval||this._config.interval}_slide(e,i){const n=this._directionToOrder(e),s=t.findOne(nt,this._element),o=this._getItemIndex(s),r=i||this._getItemByOrder(n,s),a=this._getItemIndex(r),l=Boolean(this._interval),c=n===Q,h=c?"carousel-item-start":"carousel-item-end",d=c?"carousel-item-next":"carousel-item-prev",u=this._orderToDirection(n);if(r&&r.classList.contains(it))return void(this._isSliding=!1);if(this._isSliding)return;if(this._triggerSlideEvent(r,u).defaultPrevented)return;if(!s||!r)return;this._isSliding=!0,l&&this.pause(),this._setActiveIndicatorElement(r),this._activeElement=r;const f=()=>{H.trigger(this._element,et,{relatedTarget:r,direction:u,from:o,to:a})};if(this._element.classList.contains("slide")){r.classList.add(d),p(r),s.classList.add(h),r.classList.add(h);const t=()=>{r.classList.remove(h,d),r.classList.add(it),s.classList.remove(it,d,h),this._isSliding=!1,setTimeout(f,0)};this._queueCallback(t,s,!0)}else s.classList.remove(it),r.classList.add(it),this._isSliding=!1,f();l&&this.cycle()}_directionToOrder(t){return[J,Z].includes(t)?_()?t===Z?G:Q:t===Z?Q:G:t}_orderToDirection(t){return[Q,G].includes(t)?_()?t===G?Z:J:t===G?J:Z:t}static carouselInterface(t,e){const i=ot.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(){ot.carouselInterface(this,t)}))}static dataApiClickHandler(t){const e=o(this);if(!e||!e.classList.contains("carousel"))return;const i={...V.getDataAttributes(e),...V.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(i.interval=!1),ot.carouselInterface(e,i),n&&ot.getInstance(e).to(n),t.preventDefault()}}H.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",ot.dataApiClickHandler),H.on(window,"load.bs.carousel.data-api",(()=>{const e=t.find('[data-bs-ride="carousel"]');for(let t=0,i=e.length;t<i;t++)ot.carouselInterface(e[t],ot.getInstance(e[t]))})),b(ot);const rt="collapse",at={toggle:!0,parent:""},lt={toggle:"boolean",parent:"(string|element)"},ct="show",ht="collapse",dt="collapsing",ut="collapsed",ft="width",pt='[data-bs-toggle="collapse"]';class mt extends ${constructor(e,i){super(e),this._isTransitioning=!1,this._config=this._getConfig(i),this._triggerArray=t.find(`${pt}[href="#${this._element.id}"],${pt}[data-bs-target="#${this._element.id}"]`);const n=t.find(pt);for(let e=0,i=n.length;e<i;e++){const i=n[e],o=s(i),r=t.find(o).filter((t=>t===this._element));null!==o&&r.length&&(this._selector=o,this._triggerArray.push(i))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}static get Default(){return at}static get NAME(){return rt}toggle(){this._element.classList.contains(ct)?this.hide():this.show()}show(){if(this._isTransitioning||this._element.classList.contains(ct))return;let e,i;this._parent&&(e=t.find(".show, .collapsing",this._parent).filter((t=>"string"==typeof this._config.parent?t.getAttribute("data-bs-parent")===this._config.parent:t.classList.contains(ht))),0===e.length&&(e=null));const n=t.findOne(this._selector);if(e){const t=e.find((t=>n!==t));if(i=t?mt.getInstance(t):null,i&&i._isTransitioning)return}if(H.trigger(this._element,"show.bs.collapse").defaultPrevented)return;e&&e.forEach((t=>{n!==t&&mt.collapseInterface(t,"hide"),i||B.set(t,"bs.collapse",null)}));const s=this._getDimension();this._element.classList.remove(ht),this._element.classList.add(dt),this._element.style[s]=0,this._triggerArray.length&&this._triggerArray.forEach((t=>{t.classList.remove(ut),t.setAttribute("aria-expanded",!0)})),this.setTransitioning(!0);const o=`scroll${s[0].toUpperCase()+s.slice(1)}`;this._queueCallback((()=>{this._element.classList.remove(dt),this._element.classList.add(ht,ct),this._element.style[s]="",this.setTransitioning(!1),H.trigger(this._element,"shown.bs.collapse")}),this._element,!0),this._element.style[s]=`${this._element[o]}px`}hide(){if(this._isTransitioning||!this._element.classList.contains(ct))return;if(H.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const t=this._getDimension();this._element.style[t]=`${this._element.getBoundingClientRect()[t]}px`,p(this._element),this._element.classList.add(dt),this._element.classList.remove(ht,ct);const e=this._triggerArray.length;if(e>0)for(let t=0;t<e;t++){const e=this._triggerArray[t],i=o(e);i&&!i.classList.contains(ct)&&(e.classList.add(ut),e.setAttribute("aria-expanded",!1))}this.setTransitioning(!0),this._element.style[t]="",this._queueCallback((()=>{this.setTransitioning(!1),this._element.classList.remove(dt),this._element.classList.add(ht),H.trigger(this._element,"hidden.bs.collapse")}),this._element,!0)}setTransitioning(t){this._isTransitioning=t}_getConfig(t){return(t={...at,...t}).toggle=Boolean(t.toggle),c(rt,t,lt),t}_getDimension(){return this._element.classList.contains(ft)?ft:"height"}_getParent(){let{parent:e}=this._config;e=l(e);const i=`${pt}[data-bs-parent="${e}"]`;return t.find(i,e).forEach((t=>{const e=o(t);this._addAriaAndCollapsedClass(e,[t])})),e}_addAriaAndCollapsedClass(t,e){if(!t||!e.length)return;const i=t.classList.contains(ct);e.forEach((t=>{i?t.classList.remove(ut):t.classList.add(ut),t.setAttribute("aria-expanded",i)}))}static collapseInterface(t,e){let i=mt.getInstance(t);const n={...at,...V.getDataAttributes(t),..."object"==typeof e&&e?e:{}};if(!i&&n.toggle&&"string"==typeof e&&/show|hide/.test(e)&&(n.toggle=!1),i||(i=new mt(t,n)),"string"==typeof e){if(void 0===i[e])throw new TypeError(`No method named "${e}"`);i[e]()}}static jQueryInterface(t){return this.each((function(){mt.collapseInterface(this,t)}))}}H.on(document,"click.bs.collapse.data-api",pt,(function(e){("A"===e.target.tagName||e.delegateTarget&&"A"===e.delegateTarget.tagName)&&e.preventDefault();const i=V.getDataAttributes(this),n=s(this);t.find(n).forEach((t=>{const e=mt.getInstance(t);let n;e?(null===e._parent&&"string"==typeof i.parent&&(e._config.parent=i.parent,e._parent=e._getParent()),n="toggle"):n=i,mt.collapseInterface(t,n)}))})),b(mt);var gt="top",_t="bottom",bt="right",vt="left",yt="auto",wt=[gt,_t,bt,vt],Et="start",At="end",Tt="clippingParents",Ot="viewport",Ct="popper",Lt="reference",kt=wt.reduce((function(t,e){return t.concat([e+"-"+Et,e+"-"+At])}),[]),xt=[].concat(wt,[yt]).reduce((function(t,e){return t.concat([e,e+"-"+Et,e+"-"+At])}),[]),Dt="beforeRead",St="read",It="afterRead",Nt="beforeMain",jt="main",Mt="afterMain",Pt="beforeWrite",Ht="write",Rt="afterWrite",Bt=[Dt,St,It,Nt,jt,Mt,Pt,Ht,Rt];function $t(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 qt(t){return t instanceof Wt(t).Element||t instanceof Element}function zt(t){return t instanceof Wt(t).HTMLElement||t instanceof HTMLElement}function Ut(t){return"undefined"!=typeof ShadowRoot&&(t instanceof Wt(t).ShadowRoot||t instanceof ShadowRoot)}var 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)&&$t(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)&&$t(n)&&(Object.assign(n.style,o),Object.keys(s).forEach((function(t){n.removeAttribute(t)})))}))}},requires:["computeStyles"]};function Vt(t){return t.split("-")[0]}function Kt(t){var e=t.getBoundingClientRect();return{width:e.width,height:e.height,top:e.top,right:e.right,bottom:e.bottom,left:e.left,x:e.left,y:e.top}}function Xt(t){var e=Kt(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 Yt(t,e){var i=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(i&&Ut(i)){var n=e;do{if(n&&t.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function Qt(t){return Wt(t).getComputedStyle(t)}function Gt(t){return["table","td","th"].indexOf($t(t))>=0}function Zt(t){return((qt(t)?t.ownerDocument:t.document)||window.document).documentElement}function Jt(t){return"html"===$t(t)?t:t.assignedSlot||t.parentNode||(Ut(t)?t.host:null)||Zt(t)}function te(t){return zt(t)&&"fixed"!==Qt(t).position?t.offsetParent:null}function ee(t){for(var e=Wt(t),i=te(t);i&&Gt(i)&&"static"===Qt(i).position;)i=te(i);return i&&("html"===$t(i)||"body"===$t(i)&&"static"===Qt(i).position)?e:i||function(t){var e=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&zt(t)&&"fixed"===Qt(t).position)return null;for(var i=Jt(t);zt(i)&&["html","body"].indexOf($t(i))<0;){var n=Qt(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 ie(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}var ne=Math.max,se=Math.min,oe=Math.round;function re(t,e,i){return ne(t,se(e,i))}function ae(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function le(t,e){return e.reduce((function(e,i){return e[i]=t,e}),{})}var ce={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=Vt(i.placement),l=ie(a),c=[vt,bt].indexOf(a)>=0?"height":"width";if(o&&r){var h=function(t,e){return ae("number"!=typeof(t="function"==typeof t?t(Object.assign({},e.rects,{placement:e.placement})):t)?t:le(t,wt))}(s.padding,i),d=Xt(o),u="y"===l?gt:vt,f="y"===l?_t:bt,p=i.rects.reference[c]+i.rects.reference[l]-r[l]-i.rects.popper[c],m=r[l]-i.rects.reference[l],g=ee(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=re(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)))&&Yt(e.elements.popper,n)&&(e.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]},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.offsets,r=t.position,a=t.gpuAcceleration,l=t.adaptive,c=t.roundOffsets,h=!0===c?function(t){var e=t.x,i=t.y,n=window.devicePixelRatio||1;return{x:oe(oe(e*n)/n)||0,y:oe(oe(i*n)/n)||0}}(o):"function"==typeof c?c(o):o,d=h.x,u=void 0===d?0:d,f=h.y,p=void 0===f?0:f,m=o.hasOwnProperty("x"),g=o.hasOwnProperty("y"),_=vt,b=gt,v=window;if(l){var y=ee(i),w="clientHeight",E="clientWidth";y===Wt(i)&&"static"!==Qt(y=Zt(i)).position&&(w="scrollHeight",E="scrollWidth"),y=y,s===gt&&(b=_t,p-=y[w]-n.height,p*=a?1:-1),s===vt&&(_=bt,u-=y[E]-n.width,u*=a?1:-1)}var A,T=Object.assign({position:r},l&&he);return a?Object.assign({},T,((A={})[b]=g?"0":"",A[_]=m?"0":"",A.transform=(v.devicePixelRatio||1)<2?"translate("+u+"px, "+p+"px)":"translate3d("+u+"px, "+p+"px, 0)",A)):Object.assign({},T,((e={})[b]=g?p+"px":"",e[_]=m?u+"px":"",e.transform="",e))}var 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:Vt(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:{}},fe={passive:!0},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:{}},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 Kt(Zt(t)).left+ve(t).scrollLeft}function we(t){var e=Qt(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($t(t))>=0?t.ownerDocument.body:zt(t)&&we(t)?t:Ee(Jt(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(Jt(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===Ot?Te(function(t){var e=Wt(t),i=Zt(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=Kt(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=Zt(t),n=ve(t),s=null==(e=t.ownerDocument)?void 0:e.body,o=ne(i.scrollWidth,i.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),r=ne(i.scrollHeight,i.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),a=-n.scrollLeft+ye(t),l=-n.scrollTop;return"rtl"===Qt(s||i).direction&&(a+=ne(i.clientWidth,s?s.clientWidth:0)-o),{width:o,height:r,x:a,y:l}}(Zt(t)))}function Ce(t){return t.split("-")[1]}function Le(t){var e,i=t.reference,n=t.element,s=t.placement,o=s?Vt(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 gt:e={x:a,y:i.y-n.height};break;case _t:e={x:a,y:i.y+i.height};break;case bt:e={x:i.x+i.width,y:l};break;case vt:e={x:i.x-n.width,y:l};break;default:e={x:i.x,y:i.y}}var c=o?ie(o):null;if(null!=c){var h="y"===c?"height":"width";switch(r){case Et:e[c]=e[c]-(i[h]/2-n[h]/2);break;case At: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?Tt:o,a=i.rootBoundary,l=void 0===a?Ot:a,c=i.elementContext,h=void 0===c?Ct:c,d=i.altBoundary,u=void 0!==d&&d,f=i.padding,p=void 0===f?0:f,m=ae("number"!=typeof p?p:le(p,wt)),g=h===Ct?Lt:Ct,_=t.elements.reference,b=t.rects.popper,v=t.elements[u?g:h],y=function(t,e,i){var n="clippingParents"===e?function(t){var e=Ae(Jt(t)),i=["absolute","fixed"].indexOf(Qt(t).position)>=0&&zt(t)?ee(t):t;return qt(i)?e.filter((function(t){return qt(t)&&Yt(t,i)&&"body"!==$t(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=ne(n.top,e.top),e.right=se(n.right,e.right),e.bottom=se(n.bottom,e.bottom),e.left=ne(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}(qt(v)?v:v.contextElement||Zt(t.elements.popper),r,l),w=Kt(_),E=Le({reference:w,element:b,strategy:"absolute",placement:s}),A=Te(Object.assign({},b,E)),T=h===Ct?A:w,O={top:y.top-T.top+m.top,bottom:T.bottom-y.bottom+m.bottom,left:y.left-T.left+m.left,right:T.right-y.right+m.right},C=t.modifiersData.offset;if(h===Ct&&C){var L=C[s];Object.keys(O).forEach((function(t){var e=[bt,_t].indexOf(t)>=0?1:-1,i=[gt,_t].indexOf(t)>=0?"y":"x";O[t]+=L[i]*e}))}return O}function xe(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?xt:l,h=Ce(n),d=h?a?kt:kt.filter((function(t){return Ce(t)===h})):wt,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})[Vt(i)],e}),{});return Object.keys(f).sort((function(t,e){return f[t]-f[e]}))}var De={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,_=Vt(g),b=l||(_!==g&&p?function(t){if(Vt(t)===yt)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(Vt(i)===yt?xe(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],L=Vt(C),k=Ce(C)===Et,x=[gt,_t].indexOf(L)>=0,D=x?"width":"height",S=ke(e,{placement:C,boundary:h,rootBoundary:d,altBoundary:u,padding:c}),I=x?k?bt:vt:k?_t:gt;y[D]>w[D]&&(I=ge(I));var N=ge(I),j=[];if(o&&j.push(S[L]<=0),a&&j.push(S[I]<=0,S[N]<=0),j.every((function(t){return t}))){T=C,A=!1;break}E.set(C,j)}if(A)for(var M=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"},P=p?3:1;P>0&&"break"!==M(P);P--);e.placement!==T&&(e.modifiersData[n]._skip=!0,e.placement=T,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function Se(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 Ie(t){return[gt,bt,_t,vt].some((function(e){return t[e]>=0}))}var 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=Se(r,n),c=Se(a,s,o),h=Ie(l),d=Ie(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})}},je={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=xt.reduce((function(t,i){return t[i]=function(t,e,i){var n=Vt(t),s=[vt,gt].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,[vt,bt].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}},Me={name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var e=t.state,i=t.name;e.modifiersData[i]=Le({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}},Pe={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}),_=Vt(e.placement),b=Ce(e.placement),v=!b,y=ie(_),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 L="y"===y?gt:vt,k="y"===y?_t:bt,x="y"===y?"height":"width",D=E[y],S=E[y]+g[L],I=E[y]-g[k],N=f?-T[x]/2:0,j=b===Et?A[x]:T[x],M=b===Et?-T[x]:-A[x],P=e.elements.arrow,H=f&&P?Xt(P):{width:0,height:0},R=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},B=R[L],$=R[k],W=re(0,A[x],H[x]),q=v?A[x]/2-N-W-B-O:j-W-B-O,z=v?-A[x]/2+N+W+$+O:M+W+$+O,U=e.elements.arrow&&ee(e.elements.arrow),F=U?"y"===y?U.clientTop||0:U.clientLeft||0:0,V=e.modifiersData.offset?e.modifiersData.offset[e.placement][y]:0,K=E[y]+q-V-F,X=E[y]+z-V;if(o){var Y=re(f?se(S,K):S,D,f?ne(I,X):I);E[y]=Y,C[y]=Y-D}if(a){var Q="x"===y?gt:vt,G="x"===y?_t:bt,Z=E[w],J=Z+g[Q],tt=Z-g[G],et=re(f?se(J,K):J,Z,f?ne(tt,X):tt);E[w]=et,C[w]=et-Z}}e.modifiersData[n]=C}},requiresIfExists:["offset"]};function He(t,e,i){void 0===i&&(i=!1);var n,s,o=Zt(e),r=Kt(t),a=zt(e),l={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(a||!a&&!i)&&(("body"!==$t(e)||we(o))&&(l=(n=e)!==Wt(n)&&zt(n)?{scrollLeft:(s=n).scrollLeft,scrollTop:s.scrollTop}:ve(n)),zt(e)?((c=Kt(e)).x+=e.clientLeft,c.y+=e.clientTop):o&&(c.x=ye(o))),{x:r.left+l.scrollLeft-c.x,y:r.top+l.scrollTop-c.y,width:r.width,height:r.height}}function Re(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 $e(){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){d(),a.options=Object.assign({},o,a.options,i),a.scrollParents={reference:qt(t)?Ae(t):t.contextElement?Ae(t.contextElement):[],popper:Ae(e)};var s,r,c=function(t){var e=Re(t);return Bt.reduce((function(t,i){return t.concat(e.filter((function(t){return t.phase===i})))}),[])}((s=[].concat(n,a.options.modifiers),r=s.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(r).map((function(t){return r[t]}))));return a.orderedModifiers=c.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($e(e,i)){a.rects={reference:He(e,ee(i),"fixed"===a.options.strategy),popper:Xt(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(!$e(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 qe=We(),ze=We({defaultModifiers:[pe,Me,ue,Ft]}),Ue=We({defaultModifiers:[pe,Me,ue,Ft,je,De,Pe,ce,Ne]}),Fe=Object.freeze({__proto__:null,popperGenerator:We,detectOverflow:ke,createPopperBase:qe,createPopper:Ue,createPopperLite:ze,top:gt,bottom:_t,right:bt,left:vt,auto:yt,basePlacements:wt,start:Et,end:At,clippingParents:Tt,viewport:Ot,popper:Ct,reference:Lt,variationPlacements:kt,placements:xt,beforeRead:Dt,read:St,afterRead:It,beforeMain:Nt,main:jt,afterMain:Mt,beforeWrite:Pt,write:Ht,afterWrite:Rt,modifierPhases:Bt,applyStyles:Ft,arrow:ce,computeStyles:ue,eventListeners:pe,flip:De,hide:Ne,offset:je,popperOffsets:Me,preventOverflow:Pe});const Ve="dropdown",Ke="Escape",Xe="Space",Ye="ArrowUp",Qe="ArrowDown",Ge=new RegExp("ArrowUp|ArrowDown|Escape"),Ze="click.bs.dropdown.data-api",Je="keydown.bs.dropdown.data-api",ti="show",ei='[data-bs-toggle="dropdown"]',ii=".dropdown-menu",ni=_()?"top-end":"top-start",si=_()?"top-start":"top-end",oi=_()?"bottom-end":"bottom-start",ri=_()?"bottom-start":"bottom-end",ai=_()?"left-start":"right-start",li=_()?"right-start":"left-start",ci={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},hi={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class di extends ${constructor(t,e){super(t),this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}static get Default(){return ci}static get DefaultType(){return hi}static get NAME(){return Ve}toggle(){d(this._element)||(this._element.classList.contains(ti)?this.hide():this.show())}show(){if(d(this._element)||this._menu.classList.contains(ti))return;const t=di.getParentFromElement(this._element),e={relatedTarget:this._element};if(!H.trigger(this._element,"show.bs.dropdown",e).defaultPrevented){if(this._inNavbar)V.setDataAttribute(this._menu,"popper","none");else{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:a(this._config.reference)?e=l(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=Ue(e,this._menu,i),n&&V.setDataAttribute(this._menu,"popper","static")}"ontouchstart"in document.documentElement&&!t.closest(".navbar-nav")&&[].concat(...document.body.children).forEach((t=>H.on(t,"mouseover",f))),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.toggle(ti),this._element.classList.toggle(ti),H.trigger(this._element,"shown.bs.dropdown",e)}}hide(){if(d(this._element)||!this._menu.classList.contains(ti))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()}_addEventListeners(){H.on(this._element,"click.bs.dropdown",(t=>{t.preventDefault(),this.toggle()}))}_completeHide(t){H.trigger(this._element,"hide.bs.dropdown",t).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>H.off(t,"mouseover",f))),this._popper&&this._popper.destroy(),this._menu.classList.remove(ti),this._element.classList.remove(ti),this._element.setAttribute("aria-expanded","false"),V.removeDataAttribute(this._menu,"popper"),H.trigger(this._element,"hidden.bs.dropdown",t))}_getConfig(t){if(t={...this.constructor.Default,...V.getDataAttributes(this._element),...t},c(Ve,t,this.constructor.DefaultType),"object"==typeof t.reference&&!a(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError(`${Ve.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return t}_getMenuElement(){return t.next(this._element,ii)[0]}_getPlacement(){const t=this._element.parentNode;if(t.classList.contains("dropend"))return ai;if(t.classList.contains("dropstart"))return li;const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?si:ni:e?ri:oi}_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:e,target:i}){const n=t.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(h);n.length&&w(n,i,e===Qe,!n.includes(i)).focus()}static dropdownInterface(t,e){const i=di.getOrCreateInstance(t,e);if("string"==typeof e){if(void 0===i[e])throw new TypeError(`No method named "${e}"`);i[e]()}}static jQueryInterface(t){return this.each((function(){di.dropdownInterface(this,t)}))}static clearMenus(e){if(e&&(2===e.button||"keyup"===e.type&&"Tab"!==e.key))return;const i=t.find(ei);for(let t=0,n=i.length;t<n;t++){const n=di.getInstance(i[t]);if(!n||!1===n._config.autoClose)continue;if(!n._element.classList.contains(ti))continue;const s={relatedTarget:n._element};if(e){const t=e.composedPath(),i=t.includes(n._menu);if(t.includes(n._element)||"inside"===n._config.autoClose&&!i||"outside"===n._config.autoClose&&i)continue;if(n._menu.contains(e.target)&&("keyup"===e.type&&"Tab"===e.key||/input|select|option|textarea|form/i.test(e.target.tagName)))continue;"click"===e.type&&(s.clickEvent=e)}n._completeHide(s)}}static getParentFromElement(t){return o(t)||t.parentNode}static dataApiKeydownHandler(e){if(/input|textarea/i.test(e.target.tagName)?e.key===Xe||e.key!==Ke&&(e.key!==Qe&&e.key!==Ye||e.target.closest(ii)):!Ge.test(e.key))return;const i=this.classList.contains(ti);if(!i&&e.key===Ke)return;if(e.preventDefault(),e.stopPropagation(),d(this))return;const n=()=>this.matches(ei)?this:t.prev(this,ei)[0];return e.key===Ke?(n().focus(),void di.clearMenus()):e.key===Ye||e.key===Qe?(i||n().click(),void di.getInstance(n())._selectMenuItem(e)):void(i&&e.key!==Xe||di.clearMenus())}}H.on(document,Je,ei,di.dataApiKeydownHandler),H.on(document,Je,ii,di.dataApiKeydownHandler),H.on(document,Ze,di.clearMenus),H.on(document,"keyup.bs.dropdown.data-api",di.clearMenus),H.on(document,Ze,ei,(function(t){t.preventDefault(),di.dropdownInterface(this)})),b(di);const ui=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",fi=".sticky-top";class pi{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(ui,"paddingRight",(e=>e+t)),this._setElementAttributes(fi,"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(ui,"paddingRight"),this._resetElementAttributes(fi,"marginRight")}_saveInitialAttribute(t,e){const i=t.style[e];i&&V.setDataAttribute(t,e,i)}_resetElementAttributes(t,e){this._applyManipulationCallback(t,(t=>{const i=V.getDataAttribute(t,e);void 0===i?t.style.removeProperty(e):(V.removeDataAttribute(t,e),t.style[e]=i)}))}_applyManipulationCallback(e,i){a(e)?i(e):t.find(e,this._element).forEach(i)}isOverflowing(){return this.getWidth()>0}}const mi={isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},gi={isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},_i="show",bi="mousedown.bs.backdrop";class vi{constructor(t){this._config=this._getConfig(t),this._isAppended=!1,this._element=null}show(t){this._config.isVisible?(this._append(),this._config.isAnimated&&p(this._getElement()),this._getElement().classList.add(_i),this._emulateAnimation((()=>{v(t)}))):v(t)}hide(t){this._config.isVisible?(this._getElement().classList.remove(_i),this._emulateAnimation((()=>{this.dispose(),v(t)}))):v(t)}_getElement(){if(!this._element){const t=document.createElement("div");t.className="modal-backdrop",this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_getConfig(t){return(t={...mi,..."object"==typeof t?t:{}}).rootElement=l(t.rootElement),c("backdrop",t,gi),t}_append(){this._isAppended||(this._config.rootElement.appendChild(this._getElement()),H.on(this._getElement(),bi,(()=>{v(this._config.clickCallback)})),this._isAppended=!0)}dispose(){this._isAppended&&(H.off(this._element,bi),this._element.remove(),this._isAppended=!1)}_emulateAnimation(t){y(t,this._getElement(),this._config.isAnimated)}}const yi="modal",wi="Escape",Ei={backdrop:!0,keyboard:!0,focus:!0},Ai={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},Ti="hidden.bs.modal",Oi="show.bs.modal",Ci="focusin.bs.modal",Li="resize.bs.modal",ki="click.dismiss.bs.modal",xi="keydown.dismiss.bs.modal",Di="mousedown.dismiss.bs.modal",Si="modal-open",Ii="show",Ni="modal-static";class ji extends ${constructor(e,i){super(e),this._config=this._getConfig(i),this._dialog=t.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new pi}static get Default(){return Ei}static get NAME(){return yi}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||this._isTransitioning||H.trigger(this._element,Oi,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(Si),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),H.on(this._element,ki,'[data-bs-dismiss="modal"]',(t=>this.hide(t))),H.on(this._dialog,Di,(()=>{H.one(this._element,"mouseup.dismiss.bs.modal",(t=>{t.target===this._element&&(this._ignoreBackdropClick=!0)}))})),this._showBackdrop((()=>this._showElement(t))))}hide(t){if(t&&["A","AREA"].includes(t.target.tagName)&&t.preventDefault(),!this._isShown||this._isTransitioning)return;if(H.trigger(this._element,"hide.bs.modal").defaultPrevented)return;this._isShown=!1;const e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),H.off(document,Ci),this._element.classList.remove(Ii),H.off(this._element,ki),H.off(this._dialog,Di),this._queueCallback((()=>this._hideModal()),this._element,e)}dispose(){[window,this._dialog].forEach((t=>H.off(t,".bs.modal"))),this._backdrop.dispose(),super.dispose(),H.off(document,Ci)}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new vi({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_getConfig(t){return t={...Ei,...V.getDataAttributes(this._element),..."object"==typeof t?t:{}},c(yi,t,Ai),t}_showElement(e){const i=this._isAnimated(),n=t.findOne(".modal-body",this._dialog);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(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,n&&(n.scrollTop=0),i&&p(this._element),this._element.classList.add(Ii),this._config.focus&&this._enforceFocus(),this._queueCallback((()=>{this._config.focus&&this._element.focus(),this._isTransitioning=!1,H.trigger(this._element,"shown.bs.modal",{relatedTarget:e})}),this._dialog,i)}_enforceFocus(){H.off(document,Ci),H.on(document,Ci,(t=>{document===t.target||this._element===t.target||this._element.contains(t.target)||this._element.focus()}))}_setEscapeEvent(){this._isShown?H.on(this._element,xi,(t=>{this._config.keyboard&&t.key===wi?(t.preventDefault(),this.hide()):this._config.keyboard||t.key!==wi||this._triggerBackdropTransition()})):H.off(this._element,xi)}_setResizeEvent(){this._isShown?H.on(window,Li,(()=>this._adjustDialog())):H.off(window,Li)}_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(Si),this._resetAdjustments(),this._scrollBar.reset(),H.trigger(this._element,Ti)}))}_showBackdrop(t){H.on(this._element,ki,(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(H.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(Ni)||(n||(i.overflowY="hidden"),t.add(Ni),this._queueCallback((()=>{t.remove(Ni),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&&!_()||i&&!t&&_())&&(this._element.style.paddingLeft=`${e}px`),(i&&!t&&!_()||!i&&t&&_())&&(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=ji.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t](e)}}))}}H.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(t){const e=o(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),H.one(e,Oi,(t=>{t.defaultPrevented||H.one(e,Ti,(()=>{h(this)&&this.focus()}))})),ji.getOrCreateInstance(e).toggle(this)})),b(ji);const Mi="offcanvas",Pi={backdrop:!0,keyboard:!0,scroll:!1},Hi={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},Ri="show",Bi=".offcanvas.show",$i="hidden.bs.offcanvas",Wi="focusin.bs.offcanvas";class qi extends ${constructor(t,e){super(t),this._config=this._getConfig(e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._addEventListeners()}static get NAME(){return Mi}static get Default(){return Pi}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||H.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||((new pi).hide(),this._enforceFocusOnElement(this._element)),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Ri),this._queueCallback((()=>{H.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})}),this._element,!0))}hide(){this._isShown&&(H.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||(H.off(document,Wi),this._element.blur(),this._isShown=!1,this._element.classList.remove(Ri),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 pi).reset(),H.trigger(this._element,$i)}),this._element,!0)))}dispose(){this._backdrop.dispose(),super.dispose(),H.off(document,Wi)}_getConfig(t){return t={...Pi,...V.getDataAttributes(this._element),..."object"==typeof t?t:{}},c(Mi,t,Hi),t}_initializeBackDrop(){return new vi({isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_enforceFocusOnElement(t){H.off(document,Wi),H.on(document,Wi,(e=>{document===e.target||t===e.target||t.contains(e.target)||t.focus()})),t.focus()}_addEventListeners(){H.on(this._element,"click.dismiss.bs.offcanvas",'[data-bs-dismiss="offcanvas"]',(()=>this.hide())),H.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=qi.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)}}))}}H.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(e){const i=o(this);if(["A","AREA"].includes(this.tagName)&&e.preventDefault(),d(this))return;H.one(i,$i,(()=>{h(this)&&this.focus()}));const n=t.findOne(Bi);n&&n!==i&&qi.getInstance(n).hide(),qi.getOrCreateInstance(i).toggle(this)})),H.on(window,"load.bs.offcanvas.data-api",(()=>t.find(Bi).forEach((t=>qi.getOrCreateInstance(t).show())))),b(qi);const zi=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Ui=/^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i,Fi=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,Vi=(t,e)=>{const i=t.nodeName.toLowerCase();if(e.includes(i))return!zi.has(i)||Boolean(Ui.test(t.nodeValue)||Fi.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 Ki(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=Object.keys(e),o=[].concat(...n.body.querySelectorAll("*"));for(let t=0,i=o.length;t<i;t++){const i=o[t],n=i.nodeName.toLowerCase();if(!s.includes(n)){i.remove();continue}const r=[].concat(...i.attributes),a=[].concat(e["*"]||[],e[n]||[]);r.forEach((t=>{Vi(t,a)||i.removeAttribute(t.nodeName)}))}return n.body.innerHTML}const Xi="tooltip",Yi=new RegExp("(^|\\s)bs-tooltip\\S+","g"),Qi=new Set(["sanitize","allowList","sanitizeFn"]),Gi={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)"},Zi={AUTO:"auto",TOP:"top",RIGHT:_()?"left":"right",BOTTOM:"bottom",LEFT:_()?"right":"left"},Ji={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},tn={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"},en="fade",nn="show",sn="show",on="out",rn="hover",an="focus";class ln extends ${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 Ji}static get NAME(){return Xi}static get Event(){return tn}static get DefaultType(){return Gi}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(nn))return void this._leave(null,this);this._enter(null,this)}}dispose(){clearTimeout(this._timeout),H.off(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this.tip&&this.tip.remove(),this._popper&&this._popper.destroy(),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=H.trigger(this._element,this.constructor.Event.SHOW),e=u(this._element),n=null===e?this._element.ownerDocument.documentElement.contains(this._element):e.contains(this._element);if(t.defaultPrevented||!n)return;const s=this.getTipElement(),o=i(this.constructor.NAME);s.setAttribute("id",o),this._element.setAttribute("aria-describedby",o),this.setContent(),this._config.animation&&s.classList.add(en);const r="function"==typeof this._config.placement?this._config.placement.call(this,s,this._element):this._config.placement,a=this._getAttachment(r);this._addAttachmentClass(a);const{container:l}=this._config;B.set(s,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.appendChild(s),H.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=Ue(this._element,s,this._getPopperConfig(a)),s.classList.add(nn);const c="function"==typeof this._config.customClass?this._config.customClass():this._config.customClass;c&&s.classList.add(...c.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>{H.on(t,"mouseover",f)}));const h=this.tip.classList.contains(en);this._queueCallback((()=>{const t=this._hoverState;this._hoverState=null,H.trigger(this._element,this.constructor.Event.SHOWN),t===on&&this._leave(null,this)}),this.tip,h)}hide(){if(!this._popper)return;const t=this.getTipElement();if(H.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;t.classList.remove(nn),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>H.off(t,"mouseover",f))),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1;const e=this.tip.classList.contains(en);this._queueCallback((()=>{this._isWithActiveTrigger()||(this._hoverState!==sn&&t.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),H.trigger(this._element,this.constructor.Event.HIDDEN),this._popper&&(this._popper.destroy(),this._popper=null))}),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");return t.innerHTML=this._config.template,this.tip=t.children[0],this.tip}setContent(){const e=this.getTipElement();this.setElementContent(t.findOne(".tooltip-inner",e),this.getTitle()),e.classList.remove(en,nn)}setElementContent(t,e){if(null!==t)return a(e)?(e=l(e),void(this._config.html?e.parentNode!==t&&(t.innerHTML="",t.appendChild(e)):t.textContent=e.textContent)):void(this._config.html?(this._config.sanitize&&(e=Ki(e,this._config.allowList,this._config.sanitizeFn)),t.innerHTML=e):t.textContent=e)}getTitle(){let t=this._element.getAttribute("data-bs-original-title");return t||(t="function"==typeof this._config.title?this._config.title.call(this._element):this._config.title),t}updateAttachment(t){return"right"===t?"end":"left"===t?"start":t}_initializeOnDelegatedTarget(t,e){const i=this.constructor.DATA_KEY;return(e=e||B.get(t.delegateTarget,i))||(e=new this.constructor(t.delegateTarget,this._getDelegateConfig()),B.set(t.delegateTarget,i,e)),e}_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(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(`bs-tooltip-${this.updateAttachment(t)}`)}_getAttachment(t){return Zi[t.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach((t=>{if("click"===t)H.on(this._element,this.constructor.Event.CLICK,this._config.selector,(t=>this.toggle(t)));else if("manual"!==t){const e=t===rn?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,i=t===rn?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;H.on(this._element,e,this._config.selector,(t=>this._enter(t))),H.on(this._element,i,this._config.selector,(t=>this._leave(t)))}})),this._hideModalHandler=()=>{this._element&&this.hide()},H.on(this._element.closest(".modal"),"hide.bs.modal",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?an:rn]=!0),e.getTipElement().classList.contains(nn)||e._hoverState===sn?e._hoverState=sn:(clearTimeout(e._timeout),e._hoverState=sn,e._config.delay&&e._config.delay.show?e._timeout=setTimeout((()=>{e._hoverState===sn&&e.show()}),e._config.delay.show):e.show())}_leave(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusout"===t.type?an:rn]=e._element.contains(t.relatedTarget)),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState=on,e._config.delay&&e._config.delay.hide?e._timeout=setTimeout((()=>{e._hoverState===on&&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=V.getDataAttributes(this._element);return Object.keys(e).forEach((t=>{Qi.has(t)&&delete e[t]})),(t={...this.constructor.Default,...e,..."object"==typeof t&&t?t:{}}).container=!1===t.container?document.body:l(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()),c(Xi,t,this.constructor.DefaultType),t.sanitize&&(t.template=Ki(t.template,t.allowList,t.sanitizeFn)),t}_getDelegateConfig(){const t={};if(this._config)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=t.getAttribute("class").match(Yi);null!==e&&e.length>0&&e.map((t=>t.trim())).forEach((e=>t.classList.remove(e)))}_handlePopperPlacementChange(t){const{state:e}=t;e&&(this.tip=e.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(e.placement)))}static jQueryInterface(t){return this.each((function(){const e=ln.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}b(ln);const cn=new RegExp("(^|\\s)bs-popover\\S+","g"),hn={...ln.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>'},dn={...ln.DefaultType,content:"(string|element|function)"},un={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"},fn=".popover-header",pn=".popover-body";class mn extends ln{static get Default(){return hn}static get NAME(){return"popover"}static get Event(){return un}static get DefaultType(){return dn}isWithContent(){return this.getTitle()||this._getContent()}getTipElement(){return this.tip||(this.tip=super.getTipElement(),this.getTitle()||t.findOne(fn,this.tip).remove(),this._getContent()||t.findOne(pn,this.tip).remove()),this.tip}setContent(){const e=this.getTipElement();this.setElementContent(t.findOne(fn,e),this.getTitle());let i=this._getContent();"function"==typeof i&&(i=i.call(this._element)),this.setElementContent(t.findOne(pn,e),i),e.classList.remove("fade","show")}_addAttachmentClass(t){this.getTipElement().classList.add(`bs-popover-${this.updateAttachment(t)}`)}_getContent(){return this._element.getAttribute("data-bs-content")||this._config.content}_cleanTipClass(){const t=this.getTipElement(),e=t.getAttribute("class").match(cn);null!==e&&e.length>0&&e.map((t=>t.trim())).forEach((e=>t.classList.remove(e)))}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]()}}))}}b(mn);const gn="scrollspy",_n={offset:10,method:"auto",target:""},bn={offset:"number",method:"string",target:"(string|element)"},vn="active",yn="position";class wn extends ${constructor(t,e){super(t),this._scrollElement="BODY"===this._element.tagName?window:this._element,this._config=this._getConfig(e),this._selector=`${this._config.target} .nav-link, ${this._config.target} .list-group-item, ${this._config.target} .dropdown-item`,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,H.on(this._scrollElement,"scroll.bs.scrollspy",(()=>this._process())),this.refresh(),this._process()}static get Default(){return _n}static get NAME(){return gn}refresh(){const e=this._scrollElement===this._scrollElement.window?"offset":yn,i="auto"===this._config.method?e:this._config.method,n=i===yn?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),t.find(this._selector).map((e=>{const o=s(e),r=o?t.findOne(o):null;if(r){const t=r.getBoundingClientRect();if(t.width||t.height)return[V[i](r).top+n,o]}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(){H.off(this._scrollElement,".bs.scrollspy"),super.dispose()}_getConfig(t){if("string"!=typeof(t={..._n,...V.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}}).target&&a(t.target)){let{id:e}=t.target;e||(e=i(gn),t.target.id=e),t.target=`#${e}`}return c(gn,t,bn),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(e){this._activeTarget=e,this._clear();const i=this._selector.split(",").map((t=>`${t}[data-bs-target="${e}"],${t}[href="${e}"]`)),n=t.findOne(i.join(","));n.classList.contains("dropdown-item")?(t.findOne(".dropdown-toggle",n.closest(".dropdown")).classList.add(vn),n.classList.add(vn)):(n.classList.add(vn),t.parents(n,".nav, .list-group").forEach((e=>{t.prev(e,".nav-link, .list-group-item").forEach((t=>t.classList.add(vn))),t.prev(e,".nav-item").forEach((e=>{t.children(e,".nav-link").forEach((t=>t.classList.add(vn)))}))}))),H.trigger(this._scrollElement,"activate.bs.scrollspy",{relatedTarget:e})}_clear(){t.find(this._selector).filter((t=>t.classList.contains(vn))).forEach((t=>t.classList.remove(vn)))}static jQueryInterface(t){return this.each((function(){const e=wn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}H.on(window,"load.bs.scrollspy.data-api",(()=>{t.find('[data-bs-spy="scroll"]').forEach((t=>new wn(t)))})),b(wn);const En="active",An="fade",Tn="show",On=".active",Cn=":scope > li > .active";class Ln extends ${static get NAME(){return"tab"}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(En))return;let e;const i=o(this._element),n=this._element.closest(".nav, .list-group");if(n){const i="UL"===n.nodeName||"OL"===n.nodeName?Cn:On;e=t.find(i,n),e=e[e.length-1]}const s=e?H.trigger(e,"hide.bs.tab",{relatedTarget:this._element}):null;if(H.trigger(this._element,"show.bs.tab",{relatedTarget:e}).defaultPrevented||null!==s&&s.defaultPrevented)return;this._activate(this._element,n);const r=()=>{H.trigger(e,"hidden.bs.tab",{relatedTarget:this._element}),H.trigger(this._element,"shown.bs.tab",{relatedTarget:e})};i?this._activate(i,i.parentNode,r):r()}_activate(e,i,n){const s=(!i||"UL"!==i.nodeName&&"OL"!==i.nodeName?t.children(i,On):t.find(Cn,i))[0],o=n&&s&&s.classList.contains(An),r=()=>this._transitionComplete(e,s,n);s&&o?(s.classList.remove(Tn),this._queueCallback(r,e,!0)):r()}_transitionComplete(e,i,n){if(i){i.classList.remove(En);const e=t.findOne(":scope > .dropdown-menu .active",i.parentNode);e&&e.classList.remove(En),"tab"===i.getAttribute("role")&&i.setAttribute("aria-selected",!1)}e.classList.add(En),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!0),p(e),e.classList.contains(An)&&e.classList.add(Tn);let s=e.parentNode;if(s&&"LI"===s.nodeName&&(s=s.parentNode),s&&s.classList.contains("dropdown-menu")){const i=e.closest(".dropdown");i&&t.find(".dropdown-toggle",i).forEach((t=>t.classList.add(En))),e.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(t){return this.each((function(){const e=Ln.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}H.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(),d(this)||Ln.getOrCreateInstance(this).show()})),b(Ln);const kn="toast",xn="hide",Dn="show",Sn="showing",In={animation:"boolean",autohide:"boolean",delay:"number"},Nn={animation:!0,autohide:!0,delay:5e3};class jn extends ${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 In}static get Default(){return Nn}static get NAME(){return kn}show(){H.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove(xn),p(this._element),this._element.classList.add(Sn),this._queueCallback((()=>{this._element.classList.remove(Sn),this._element.classList.add(Dn),H.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()}),this._element,this._config.animation))}hide(){this._element.classList.contains(Dn)&&(H.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.remove(Dn),this._queueCallback((()=>{this._element.classList.add(xn),H.trigger(this._element,"hidden.bs.toast")}),this._element,this._config.animation)))}dispose(){this._clearTimeout(),this._element.classList.contains(Dn)&&this._element.classList.remove(Dn),super.dispose()}_getConfig(t){return t={...Nn,...V.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}},c(kn,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(){H.on(this._element,"click.dismiss.bs.toast",'[data-bs-dismiss="toast"]',(()=>this.hide())),H.on(this._element,"mouseover.bs.toast",(t=>this._onInteraction(t,!0))),H.on(this._element,"mouseout.bs.toast",(t=>this._onInteraction(t,!1))),H.on(this._element,"focusin.bs.toast",(t=>this._onInteraction(t,!0))),H.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=jn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}return b(jn),{Alert:W,Button:z,Carousel:ot,Collapse:mt,Dropdown:di,Modal:ji,Offcanvas:qi,Popover:mn,ScrollSpy:wn,Tab:Ln,Toast:jn,Tooltip:ln}})); -//# sourceMappingURL=oe-bcl-default.bundle.min.js.map diff --git a/assets/js/oe-bcl-default.bundle.min.js.map b/assets/js/oe-bcl-default.bundle.min.js.map deleted file mode 100644 index 3cf4a7f1..00000000 --- a/assets/js/oe-bcl-default.bundle.min.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"oe-bcl-default.bundle.min.js","sources":["../../../../bootstrap/js/src/dom/selector-engine.js","../../../../bootstrap/js/src/util/index.js","../../../../bootstrap/js/src/dom/event-handler.js","../../../../bootstrap/js/src/dom/data.js","../../../../bootstrap/js/src/base-component.js","../../../../bootstrap/js/src/alert.js","../../../../bootstrap/js/src/button.js","../../../../bootstrap/js/src/dom/manipulator.js","../../../../bootstrap/js/src/carousel.js","../../../../bootstrap/js/src/collapse.js","../../../../node_modules/@popperjs/core/lib/enums.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../../../../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../../../../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../../../../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/contains.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../../../../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../../../../node_modules/@popperjs/core/lib/utils/math.js","../../../../node_modules/@popperjs/core/lib/utils/within.js","../../../../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../../../../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../../../../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../../../../node_modules/@popperjs/core/lib/modifiers/arrow.js","../../../../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../../../../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../../../../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../../../../node_modules/@popperjs/core/lib/utils/getVariation.js","../../../../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../../../../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../../../../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../../../../node_modules/@popperjs/core/lib/modifiers/flip.js","../../../../node_modules/@popperjs/core/lib/modifiers/hide.js","../../../../node_modules/@popperjs/core/lib/modifiers/offset.js","../../../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../../../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../../../../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../../../../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../../../../node_modules/@popperjs/core/lib/createPopper.js","../../../../node_modules/@popperjs/core/lib/utils/debounce.js","../../../../node_modules/@popperjs/core/lib/utils/mergeByName.js","../../../../node_modules/@popperjs/core/lib/popper-lite.js","../../../../node_modules/@popperjs/core/lib/popper.js","../../../../bootstrap/js/src/dropdown.js","../../../../bootstrap/js/src/util/scrollbar.js","../../../../bootstrap/js/src/util/backdrop.js","../../../../bootstrap/js/src/modal.js","../../../../bootstrap/js/src/offcanvas.js","../../../../bootstrap/js/src/util/sanitizer.js","../../../../bootstrap/js/src/tooltip.js","../../../../bootstrap/js/src/popover.js","../../../../bootstrap/js/src/scrollspy.js","../../../../bootstrap/js/src/tab.js","../../../../bootstrap/js/src/toast.js","../index.umd.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NODE_TEXT = 3\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children)\n .filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n\n let ancestor = element.parentNode\n\n while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {\n if (ancestor.matches(selector)) {\n parents.push(ancestor)\n }\n\n ancestor = ancestor.parentNode\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n }\n}\n\nexport default SelectorEngine\n","import SelectorEngine from '../dom/selector-engine'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = obj => {\n if (obj === null || obj === undefined) {\n return `${obj}`\n }\n\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return SelectorEngine.findOne(obj)\n }\n\n return null\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n return getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\nconst reflow = element => element.offsetHeight\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n DOMContentLoadedCallbacks.forEach(callback => callback())\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element depending on the direction and if cycle is allowed\n if (index === -1) {\n return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]\n }\n\n const listLength = list.length\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n getNextActiveElement,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute,\n executeAfterTransition\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\nconst customEventsRegex = /^(mouseenter|mouseleave)/i\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * ------------------------------------------------------------------------\n * Private methods\n * ------------------------------------------------------------------------\n */\n\nfunction getUidEvent(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getEvent(element) {\n const uid = getUidEvent(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n event.delegateTarget = element\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (let i = domElements.length; i--;) {\n if (domElements[i] === target) {\n event.delegateTarget = target\n\n if (handler.oneOff) {\n // eslint-disable-next-line unicorn/consistent-destructuring\n EventHandler.off(element, event.type, selector, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n\n // To please ESLint\n return null\n }\n}\n\nfunction findHandler(events, handler, delegationSelector = null) {\n const uidEventList = Object.keys(events)\n\n for (let i = 0, len = uidEventList.length; i < len; i++) {\n const event = events[uidEventList[i]]\n\n if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {\n return event\n }\n }\n\n return null\n}\n\nfunction normalizeParams(originalTypeEvent, handler, delegationFn) {\n const delegation = typeof handler === 'string'\n const originalHandler = delegation ? delegationFn : handler\n\n let typeEvent = getTypeEvent(originalTypeEvent)\n const isNative = nativeEvents.has(typeEvent)\n\n if (!isNative) {\n typeEvent = originalTypeEvent\n }\n\n return [delegation, originalHandler, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n if (!handler) {\n handler = delegationFn\n delegationFn = null\n }\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (customEventsRegex.test(originalTypeEvent)) {\n const wrapFn = fn => {\n return function (event) {\n if (!event.relatedTarget || (event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget))) {\n return fn.call(this, event)\n }\n }\n }\n\n if (delegationFn) {\n delegationFn = wrapFn(delegationFn)\n } else {\n handler = wrapFn(handler)\n }\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const events = getEvent(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null)\n\n if (previousFn) {\n previousFn.oneOff = previousFn.oneOff && oneOff\n\n return\n }\n\n const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = delegation ?\n bootstrapDelegationHandler(element, handler, delegationFn) :\n bootstrapHandler(element, handler)\n\n fn.delegationSelector = delegation ? handler : null\n fn.originalHandler = originalHandler\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, delegation)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n Object.keys(storeElementEvent).forEach(handlerKey => {\n if (handlerKey.includes(namespace)) {\n const event = storeElementEvent[handlerKey]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n}\n\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '')\n return customEvents[event] || event\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, false)\n },\n\n one(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFn) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getEvent(element)\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof originalHandler !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!events || !events[typeEvent]) {\n return\n }\n\n removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null)\n return\n }\n\n if (isNamespace) {\n Object.keys(events).forEach(elementEvent => {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n })\n }\n\n const storeElementEvent = events[typeEvent] || {}\n Object.keys(storeElementEvent).forEach(keyHandlers => {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n const event = storeElementEvent[keyHandlers]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = getTypeEvent(event)\n const inNamespace = event !== typeEvent\n const isNative = nativeEvents.has(typeEvent)\n\n let jQueryEvent\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n let evt = null\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n if (isNative) {\n evt = document.createEvent('HTMLEvents')\n evt.initEvent(typeEvent, bubbles, true)\n } else {\n evt = new CustomEvent(event, {\n bubbles,\n cancelable: true\n })\n }\n\n // merge custom information in our event\n if (typeof args !== 'undefined') {\n Object.keys(args).forEach(key => {\n Object.defineProperty(evt, key, {\n get() {\n return args[key]\n }\n })\n })\n }\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst elementMap = new Map()\n\nexport default {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map())\n }\n\n const instanceMap = elementMap.get(element)\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`)\n return\n }\n\n instanceMap.set(key, instance)\n },\n\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null\n }\n\n return null\n },\n\n remove(element, key) {\n if (!elementMap.has(element)) {\n return\n }\n\n const instanceMap = elementMap.get(element)\n\n instanceMap.delete(key)\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element)\n }\n }\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\nimport {\n executeAfterTransition,\n getElement\n} from './util/index'\nimport EventHandler from './dom/event-handler'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst VERSION = '5.0.2'\n\nclass BaseComponent {\n constructor(element) {\n element = getElement(element)\n\n if (!element) {\n return\n }\n\n this._element = element\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n Object.getOwnPropertyNames(this).forEach(propertyName => {\n this[propertyName] = null\n })\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated)\n }\n\n /** Static */\n\n static getInstance(element) {\n return Data.get(element, this.DATA_KEY)\n }\n\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DISMISS = '[data-bs-dismiss=\"alert\"]'\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_ALERT = 'alert'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n close(element) {\n const rootElement = element ? this._getRootElement(element) : this._element\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent === null || customEvent.defaultPrevented) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n // Private\n\n _getRootElement(element) {\n return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`)\n }\n\n _triggerCloseEvent(element) {\n return EventHandler.trigger(element, EVENT_CLOSE)\n }\n\n _removeElement(element) {\n element.classList.remove(CLASS_NAME_SHOW)\n\n const isAnimated = element.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(() => this._destroyElement(element), element, isAnimated)\n }\n\n _destroyElement(element) {\n element.remove()\n\n EventHandler.trigger(element, EVENT_CLOSED)\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this)\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert.handleDismiss(new Alert()))\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Alert to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this)\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n const data = Button.getOrCreateInstance(button)\n\n data.toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Button to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(val) {\n if (val === 'true') {\n return true\n }\n\n if (val === 'false') {\n return false\n }\n\n if (val === Number(val).toString()) {\n return Number(val)\n }\n\n if (val === '' || val === 'null') {\n return null\n }\n\n return val\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n\n Object.keys(element.dataset)\n .filter(key => key.startsWith('bs'))\n .forEach(key => {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n })\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n },\n\n offset(element) {\n const rect = element.getBoundingClientRect()\n\n return {\n top: rect.top + document.body.scrollTop,\n left: rect.left + document.body.scrollLeft\n }\n },\n\n position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n }\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n getNextActiveElement,\n reflow,\n triggerTransitionEnd,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n slide: false,\n pause: 'hover',\n wrap: true,\n touch: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)',\n keyboard: 'boolean',\n slide: '(boolean|string)',\n pause: '(string|boolean)',\n wrap: 'boolean',\n touch: 'boolean'\n}\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY]: DIRECTION_LEFT\n}\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_INDICATOR = '[data-bs-target]'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n next() {\n this._slide(ORDER_NEXT)\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n this._slide(ORDER_PREV)\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) {\n triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config && this._config.interval && !this._isPaused) {\n this._updateInterval()\n\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const order = index > activeIndex ?\n ORDER_NEXT :\n ORDER_PREV\n\n this._slide(order, this._items[index])\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n this.touchDeltaX = 0\n\n if (!direction) {\n return\n }\n\n this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT)\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event))\n EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event))\n }\n\n if (this._config.touch && this._touchSupported) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n const start = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchStartX = event.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.touches[0].clientX\n }\n }\n\n const move = event => {\n // ensure swiping with one touch and not pinching\n this.touchDeltaX = event.touches && event.touches.length > 1 ?\n 0 :\n event.touches[0].clientX - this.touchStartX\n }\n\n const end = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {\n EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault())\n })\n\n if (this._pointerEvent) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n const direction = KEY_TO_DIRECTION[event.key]\n if (direction) {\n event.preventDefault()\n this._slide(direction)\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode ?\n SelectorEngine.find(SELECTOR_ITEM, element.parentNode) :\n []\n\n return this._items.indexOf(element)\n }\n\n _getItemByOrder(order, activeElement) {\n const isNext = order === ORDER_NEXT\n return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap)\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element))\n\n return EventHandler.trigger(this._element, EVENT_SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement)\n\n for (let i = 0; i < indicators.length; i++) {\n if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {\n indicators[i].classList.add(CLASS_NAME_ACTIVE)\n indicators[i].setAttribute('aria-current', 'true')\n break\n }\n }\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n if (elementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = elementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n }\n\n _slide(directionOrOrder, element) {\n const order = this._directionToOrder(directionOrOrder)\n const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || this._getItemByOrder(order, activeElement)\n\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n const isNext = order === ORDER_NEXT\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n const eventDirectionName = this._orderToDirection(order)\n\n if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {\n this._isSliding = false\n return\n }\n\n if (this._isSliding) {\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n this._activeElement = nextElement\n\n const triggerSlidEvent = () => {\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }\n\n if (this._element.classList.contains(CLASS_NAME_SLIDE)) {\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n setTimeout(triggerSlidEvent, 0)\n }\n\n this._queueCallback(completeCallBack, activeElement, true)\n } else {\n activeElement.classList.remove(CLASS_NAME_ACTIVE)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n this._isSliding = false\n triggerSlidEvent()\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _directionToOrder(direction) {\n if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) {\n return direction\n }\n\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (![ORDER_NEXT, ORDER_PREV].includes(order)) {\n return order\n }\n\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n\n static carouselInterface(element, config) {\n const data = Carousel.getOrCreateInstance(element, config)\n\n let { _config } = data\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Carousel.carouselInterface(this, config)\n })\n }\n\n static dataApiClickHandler(event) {\n const target = getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel.carouselInterface(target, config)\n\n if (slideIndex) {\n Carousel.getInstance(target).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler)\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (let i = 0, len = carousels.length; i < len; i++) {\n Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i]))\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Carousel to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElement,\n getSelectorFromElement,\n getElementFromSelector,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n toggle: true,\n parent: ''\n}\n\nconst DefaultType = {\n toggle: 'boolean',\n parent: '(string|element)'\n}\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.show, .collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._isTransitioning = false\n this._config = this._getConfig(config)\n this._triggerArray = SelectorEngine.find(\n `${SELECTOR_DATA_TOGGLE}[href=\"#${this._element.id}\"],` +\n `${SELECTOR_DATA_TOGGLE}[data-bs-target=\"#${this._element.id}\"]`\n )\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElem => foundElem === this._element)\n\n if (selector !== null && filterElement.length) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent)\n .filter(elem => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-bs-parent') === this._config.parent\n }\n\n return elem.classList.contains(CLASS_NAME_COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n const container = SelectorEngine.findOne(this._selector)\n if (actives) {\n const tempActiveData = actives.find(elem => container !== elem)\n activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null\n\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n if (actives) {\n actives.forEach(elemActive => {\n if (container !== elemActive) {\n Collapse.collapseInterface(elemActive, 'hide')\n }\n\n if (!activesData) {\n Data.set(elemActive, DATA_KEY, null)\n }\n })\n }\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n this._triggerArray.forEach(element => {\n element.classList.remove(CLASS_NAME_COLLAPSED)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n\n this._queueCallback(complete, this._element, true)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const elem = getElementFromSelector(trigger)\n\n if (elem && !elem.classList.contains(CLASS_NAME_SHOW)) {\n trigger.classList.add(CLASS_NAME_COLLAPSED)\n trigger.setAttribute('aria-expanded', false)\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n\n this._queueCallback(complete, this._element, true)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT\n }\n\n _getParent() {\n let { parent } = this._config\n\n parent = getElement(parent)\n\n const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent=\"${parent}\"]`\n\n SelectorEngine.find(selector, parent)\n .forEach(element => {\n const selected = getElementFromSelector(element)\n\n this._addAriaAndCollapsedClass(\n selected,\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (!element || !triggerArray.length) {\n return\n }\n\n const isOpen = element.classList.contains(CLASS_NAME_SHOW)\n\n triggerArray.forEach(elem => {\n if (isOpen) {\n elem.classList.remove(CLASS_NAME_COLLAPSED)\n } else {\n elem.classList.add(CLASS_NAME_COLLAPSED)\n }\n\n elem.setAttribute('aria-expanded', isOpen)\n })\n }\n\n // Static\n\n static collapseInterface(element, config) {\n let data = Collapse.getInstance(element)\n const _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Collapse.collapseInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n const triggerData = Manipulator.getDataAttributes(this)\n const selector = getSelectorFromElement(this)\n const selectorElements = SelectorEngine.find(selector)\n\n selectorElements.forEach(element => {\n const data = Collapse.getInstance(element)\n let config\n if (data) {\n // update parent attribute\n if (data._parent === null && typeof triggerData.parent === 'string') {\n data._config.parent = triggerData.parent\n data._parent = data._getParent()\n }\n\n config = 'toggle'\n } else {\n config = triggerData\n }\n\n Collapse.collapseInterface(element, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Collapse to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Collapse)\n\nexport default Collapse\n","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export default function getBoundingClientRect(element) {\n var rect = element.getBoundingClientRect();\n return {\n width: rect.width,\n height: rect.height,\n top: rect.top,\n right: rect.right,\n bottom: rect.bottom,\n left: rect.left,\n x: rect.left,\n y: rect.top\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;\n var isIE = navigator.userAgent.indexOf('Trident') !== -1;\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport default function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport within from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n if (!isHTMLElement(arrowElement)) {\n console.error(['Popper: \"arrow\" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' '));\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: \"arrow\" modifier\\'s `element` must be a child of the popper', 'element.'].join(' '));\n }\n\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","import { top, left, right, bottom } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref) {\n var x = _ref.x,\n y = _ref.y;\n var win = window;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(round(x * dpr) / dpr) || 0,\n y: round(round(y * dpr) / dpr) || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets;\n\n var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets,\n _ref3$x = _ref3.x,\n x = _ref3$x === void 0 ? 0 : _ref3$x,\n _ref3$y = _ref3.y,\n y = _ref3$y === void 0 ? 0 : _ref3$y;\n\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top) {\n sideY = bottom; // $FlowFixMe[prop-missing]\n\n y -= offsetParent[heightProp] - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left) {\n sideX = right; // $FlowFixMe[prop-missing]\n\n x -= offsetParent[widthProp] - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref4) {\n var state = _ref4.state,\n options = _ref4.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n\n if (process.env.NODE_ENV !== \"production\") {\n var transitionProperty = getComputedStyle(state.elements.popper).transitionProperty || '';\n\n if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {\n return transitionProperty.indexOf(property) >= 0;\n })) {\n console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: \"transform\", \"top\", \"right\", \"bottom\", \"left\".', '\\n\\n', 'Disable the \"computeStyles\" modifier\\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\\n\\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));\n }\n }\n\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If <html> has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on <html>\n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element) {\n var rect = getBoundingClientRect(element);\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nexport default function getViewportRect(element) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper\n // can be obscured underneath it.\n // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even\n // if it isn't open, so if this isn't available, the popper will be detected\n // to overflow the bottom of the screen too early.\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently)\n // In Chrome, it returns a value very close to 0 (+/-) but contains rounding\n // errors due to floating point numbers, so we need to check precision.\n // Safari returns a number <= 0, usually < -1 when pinch-zoomed\n // Feature detection fails in mobile emulation mode in Chrome.\n // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) <\n // 0.001\n // Fallback here: \"Not Safari\" userAgent\n\n if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var referenceElement = state.elements.reference;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);\n var referenceClientRect = getBoundingClientRect(referenceElement);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, \"auto\" cannot be used to allow \"bottom-start\".', 'Use \"auto-start\" instead.'].join(' '));\n }\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\";\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport within from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { max as mathMax, min as mathMin } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis || checkAltAxis) {\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = popperOffsets[mainAxis] + overflow[mainSide];\n var max = popperOffsets[mainAxis] - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0;\n var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue;\n\n if (checkMainAxis) {\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var _preventedOffset = within(tether ? mathMin(_min, tetherMin) : _min, _offset, tether ? mathMax(_max, tetherMax) : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\"; // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement);\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport getComputedStyle from \"./dom-utils/getComputedStyle.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport validateModifiers from \"./utils/validateModifiers.js\";\nimport uniqueBy from \"./utils/uniqueBy.js\";\nimport getBasePlacement from \"./utils/getBasePlacement.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nimport { auto } from \"./enums.js\";\nvar INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';\nvar INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(options) {\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n }); // Validate the provided modifiers so that the consumer will get warned\n // if one of the modifiers is invalid for any reason\n\n if (process.env.NODE_ENV !== \"production\") {\n var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {\n var name = _ref.name;\n return name;\n });\n validateModifiers(modifiers);\n\n if (getBasePlacement(state.options.placement) === auto) {\n var flipModifier = state.orderedModifiers.find(function (_ref2) {\n var name = _ref2.name;\n return name === 'flip';\n });\n\n if (!flipModifier) {\n console.error(['Popper: \"auto\" placements require the \"flip\" modifier be', 'present and enabled to work.'].join(' '));\n }\n }\n\n var _getComputedStyle = getComputedStyle(popper),\n marginTop = _getComputedStyle.marginTop,\n marginRight = _getComputedStyle.marginRight,\n marginBottom = _getComputedStyle.marginBottom,\n marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can\n // cause bugs with positioning, so we'll warn the consumer\n\n\n if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {\n return parseFloat(margin);\n })) {\n console.warn(['Popper: CSS \"margin\" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));\n }\n }\n\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n var __debug_loops__ = 0;\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (process.env.NODE_ENV !== \"production\") {\n __debug_loops__ += 1;\n\n if (__debug_loops__ > 100) {\n console.error(INFINITE_LOOP_ERROR);\n break;\n }\n }\n\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref3) {\n var name = _ref3.name,\n _ref3$options = _ref3.options,\n options = _ref3$options === void 0 ? {} : _ref3$options,\n effect = _ref3.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n getElement,\n getElementFromSelector,\n isDisabled,\n isElement,\n isVisible,\n isRTL,\n noop,\n getNextActiveElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst SPACE_KEY = 'Space'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY}`)\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_NAVBAR = 'navbar'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]'\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'\n\nconst Default = {\n offset: [0, 2],\n boundary: 'clippingParents',\n reference: 'toggle',\n display: 'dynamic',\n popperConfig: null,\n autoClose: true\n}\n\nconst DefaultType = {\n offset: '(array|string|function)',\n boundary: '(string|element)',\n reference: '(string|element|object)',\n display: 'string',\n popperConfig: '(null|object|function)',\n autoClose: '(boolean|string)'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (isDisabled(this._element)) {\n return\n }\n\n const isActive = this._element.classList.contains(CLASS_NAME_SHOW)\n\n if (isActive) {\n this.hide()\n return\n }\n\n this.show()\n }\n\n show() {\n if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this._element)\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n // Totally disable Popper for Dropdowns in Navbar\n if (this._inNavbar) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'none')\n } else {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference)\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false)\n\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n\n if (isDisplayStatic) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static')\n }\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n !parent.closest(SELECTOR_NAVBAR_NAV)) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.on(elem, 'mouseover', noop))\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.toggle(CLASS_NAME_SHOW)\n this._element.classList.toggle(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n this._completeHide(relatedTarget)\n }\n\n dispose() {\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK, event => {\n event.preventDefault()\n this.toggle()\n })\n }\n\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.off(elem, 'mouseover', noop))\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.remove(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._element.setAttribute('aria-expanded', 'false')\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _getMenuElement() {\n return SelectorEngine.next(this._element, SELECTOR_MENU)[0]\n }\n\n _getPlacement() {\n const parentDropdown = this._element.parentNode\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display\n if (this._config.display === 'static') {\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _selectMenuItem({ key, target }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible)\n\n if (!items.length) {\n return\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus()\n }\n\n // Static\n\n static dropdownInterface(element, config) {\n const data = Dropdown.getOrCreateInstance(element, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Dropdown.dropdownInterface(this, config)\n })\n }\n\n static clearMenus(event) {\n if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {\n return\n }\n\n const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const context = Dropdown.getInstance(toggles[i])\n if (!context || context._config.autoClose === false) {\n continue\n }\n\n if (!context._element.classList.contains(CLASS_NAME_SHOW)) {\n continue\n }\n\n const relatedTarget = {\n relatedTarget: context._element\n }\n\n if (event) {\n const composedPath = event.composedPath()\n const isMenuTarget = composedPath.includes(context._menu)\n if (\n composedPath.includes(context._element) ||\n (context._config.autoClose === 'inside' && !isMenuTarget) ||\n (context._config.autoClose === 'outside' && isMenuTarget)\n ) {\n continue\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue\n }\n\n if (event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n }\n\n context._completeHide(relatedTarget)\n }\n }\n\n static getParentFromElement(element) {\n return getElementFromSelector(element) || element.parentNode\n }\n\n static dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName) ?\n event.key === SPACE_KEY || (event.key !== ESCAPE_KEY &&\n ((event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY) ||\n event.target.closest(SELECTOR_MENU))) :\n !REGEXP_KEYDOWN.test(event.key)) {\n return\n }\n\n const isActive = this.classList.contains(CLASS_NAME_SHOW)\n\n if (!isActive && event.key === ESCAPE_KEY) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (isDisabled(this)) {\n return\n }\n\n const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n\n if (event.key === ESCAPE_KEY) {\n getToggleButton().focus()\n Dropdown.clearMenus()\n return\n }\n\n if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) {\n if (!isActive) {\n getToggleButton().click()\n }\n\n Dropdown.getInstance(getToggleButton())._selectMenuItem(event)\n return\n }\n\n if (!isActive || event.key === SPACE_KEY) {\n Dropdown.clearMenus()\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n Dropdown.dropdownInterface(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Dropdown to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport SelectorEngine from '../dom/selector-engine'\nimport Manipulator from '../dom/manipulator'\nimport { isElement } from './index'\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body\n }\n\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth\n return Math.abs(window.innerWidth - documentWidth)\n }\n\n hide() {\n const width = this.getWidth()\n this._disableOverFlow()\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width)\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width)\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width)\n }\n\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow')\n this._element.style.overflow = 'hidden'\n }\n\n _setElementAttributes(selector, styleProp, callback) {\n const scrollbarWidth = this.getWidth()\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return\n }\n\n this._saveInitialAttribute(element, styleProp)\n const calculatedValue = window.getComputedStyle(element)[styleProp]\n element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n reset() {\n this._resetElementAttributes(this._element, 'overflow')\n this._resetElementAttributes(this._element, 'paddingRight')\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight')\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight')\n }\n\n _saveInitialAttribute(element, styleProp) {\n const actualValue = element.style[styleProp]\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProp, actualValue)\n }\n }\n\n _resetElementAttributes(selector, styleProp) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProp)\n if (typeof value === 'undefined') {\n element.style.removeProperty(styleProp)\n } else {\n Manipulator.removeDataAttribute(element, styleProp)\n element.style[styleProp] = value\n }\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector)\n } else {\n SelectorEngine.find(selector, this._element).forEach(callBack)\n }\n }\n\n isOverflowing() {\n return this.getWidth() > 0\n }\n}\n\nexport default ScrollBarHelper\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { execute, executeAfterTransition, getElement, reflow, typeCheckConfig } from './index'\n\nconst Default = {\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n isAnimated: false,\n rootElement: 'body', // give the choice to place backdrop under different elements\n clickCallback: null\n}\n\nconst DefaultType = {\n isVisible: 'boolean',\n isAnimated: 'boolean',\n rootElement: '(element|string)',\n clickCallback: '(function|null)'\n}\nconst NAME = 'backdrop'\nconst CLASS_NAME_BACKDROP = 'modal-backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nclass Backdrop {\n constructor(config) {\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\n }\n\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n if (this._config.isAnimated) {\n reflow(this._getElement())\n }\n\n this._getElement().classList.add(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n execute(callback)\n })\n }\n\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._getElement().classList.remove(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n this.dispose()\n execute(callback)\n })\n }\n\n // Private\n\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div')\n backdrop.className = CLASS_NAME_BACKDROP\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE)\n }\n\n this._element = backdrop\n }\n\n return this._element\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' ? config : {})\n }\n\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement)\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n this._config.rootElement.appendChild(this._getElement())\n\n EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n dispose() {\n if (!this._isAppended) {\n return\n }\n\n EventHandler.off(this._element, EVENT_MOUSEDOWN)\n\n this._element.remove()\n this._isAppended = false\n }\n\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated)\n }\n}\n\nexport default Backdrop\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport ScrollBarHelper from './util/scrollbar'\nimport BaseComponent from './base-component'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean'\n}\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"modal\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element)\n this._backdrop = this._initializeBackDrop()\n this._isShown = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollBar = new ScrollBarHelper()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n\n if (this._isAnimated()) {\n this._isTransitioning = true\n }\n\n this._scrollBar.hide()\n\n document.body.classList.add(CLASS_NAME_OPEN)\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, event => this.hide(event))\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event && ['A', 'AREA'].includes(event.target.tagName)) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n const isAnimated = this._isAnimated()\n\n if (isAnimated) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.off(document, EVENT_FOCUSIN)\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS)\n\n this._queueCallback(() => this._hideModal(), this._element, isAnimated)\n }\n\n dispose() {\n [window, this._dialog]\n .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))\n\n this._backdrop.dispose()\n super.dispose()\n\n /**\n * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `EVENT_CLICK_DATA_API` event that should remain\n */\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value\n isAnimated: this._isAnimated()\n })\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const isAnimated = this._isAnimated()\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n if (isAnimated) {\n reflow(this._element)\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, isAnimated)\n }\n\n _enforceFocus() {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n this._element !== event.target &&\n !this._element.contains(event.target)) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault()\n this.hide()\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition()\n }\n })\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog())\n } else {\n EventHandler.off(window, EVENT_RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n this._scrollBar.reset()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _showBackdrop(callback) {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, event => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n\n if (event.target !== event.currentTarget) {\n return\n }\n\n if (this._config.backdrop === true) {\n this.hide()\n } else if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n }\n })\n\n this._backdrop.show(callback)\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE)\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const { classList, scrollHeight, style } = this._element\n const isModalOverflowing = scrollHeight > document.documentElement.clientHeight\n\n // return if the following background transition hasn't yet completed\n if ((!isModalOverflowing && style.overflowY === 'hidden') || classList.contains(CLASS_NAME_STATIC)) {\n return\n }\n\n if (!isModalOverflowing) {\n style.overflowY = 'hidden'\n }\n\n classList.add(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n classList.remove(CLASS_NAME_STATIC)\n if (!isModalOverflowing) {\n this._queueCallback(() => {\n style.overflowY = ''\n }, this._dialog)\n }\n }, this._dialog)\n\n this._element.focus()\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const scrollbarWidth = this._scrollBar.getWidth()\n const isBodyOverflowing = scrollbarWidth > 0\n\n if ((!isBodyOverflowing && isModalOverflowing && !isRTL()) || (isBodyOverflowing && !isModalOverflowing && isRTL())) {\n this._element.style.paddingLeft = `${scrollbarWidth}px`\n }\n\n if ((isBodyOverflowing && !isModalOverflowing && !isRTL()) || (!isBodyOverflowing && isModalOverflowing && isRTL())) {\n this._element.style.paddingRight = `${scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n const data = Modal.getOrCreateInstance(target)\n\n data.toggle(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible,\n typeCheckConfig\n} from './util/index'\nimport ScrollBarHelper from './util/scrollbar'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Manipulator from './dom/manipulator'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: 'boolean',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\nconst CLASS_NAME_SHOW = 'show'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"offcanvas\"]'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._addEventListeners()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._element.style.visibility = 'visible'\n\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n this._enforceFocusOnElement(this._element)\n }\n\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const completeCallBack = () => {\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n EventHandler.off(document, EVENT_FOCUSIN)\n this._element.blur()\n this._isShown = false\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._element.style.visibility = 'hidden'\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n super.dispose()\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: this._config.backdrop,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _enforceFocusOnElement(element) {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n element !== event.target &&\n !element.contains(event.target)) {\n element.focus()\n }\n })\n element.focus()\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n this.hide()\n }\n })\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (allReadyOpen && allReadyOpen !== target) {\n Offcanvas.getInstance(allReadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () =>\n SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())\n)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attr, allowedAttributeList) => {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attrName)) {\n if (uriAttrs.has(attrName)) {\n return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attrName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const allowlistKeys = Object.keys(allowList)\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (!allowlistKeys.includes(elName)) {\n el.remove()\n\n continue\n }\n\n const attributeList = [].concat(...el.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || [])\n\n attributeList.forEach(attr => {\n if (!allowedAttribute(attr, allowedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport {\n DefaultAllowlist,\n sanitizeHtml\n} from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.appendChild(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n this.tip = element.children[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle())\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.appendChild(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n let title = this._element.getAttribute('data-bs-original-title')\n\n if (!title) {\n title = typeof this._config.title === 'function' ?\n this._config.title.call(this._element) :\n this._config.title\n }\n\n return title\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || Data.get(event.delegateTarget, dataKey)\n\n if (!context) {\n context = new this.constructor(event.delegateTarget, this._getDelegateConfig())\n Data.set(event.delegateTarget, dataKey, context)\n }\n\n return context\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this._config) {\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport SelectorEngine from './dom/selector-engine'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement: 'right',\n offset: [0, 8],\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(string|element|function)'\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n this.tip = super.getTipElement()\n\n if (!this.getTitle()) {\n SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove()\n }\n\n if (!this._getContent()) {\n SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove()\n }\n\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n\n // we use append for html objects to maintain js events\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this._element)\n }\n\n this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n // Private\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getContent() {\n return this._element.getAttribute('data-bs-content') || this._config.content\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Popover to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getSelectorFromElement,\n getUID,\n isElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n offset: 10,\n method: 'auto',\n target: ''\n}\n\nconst DefaultType = {\n offset: 'number',\n method: 'string',\n target: '(string|element)'\n}\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._scrollElement = this._element.tagName === 'BODY' ? window : this._element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process())\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window ?\n METHOD_OFFSET :\n METHOD_POSITION\n\n const offsetMethod = this._config.method === 'auto' ?\n autoMethod :\n this._config.method\n\n const offsetBase = offsetMethod === METHOD_POSITION ?\n this._getScrollTop() :\n 0\n\n this._offsets = []\n this._targets = []\n this._scrollHeight = this._getScrollHeight()\n\n const targets = SelectorEngine.find(this._selector)\n\n targets.map(element => {\n const targetSelector = getSelectorFromElement(element)\n const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n return [\n Manipulator[offsetMethod](target).top + offsetBase,\n targetSelector\n ]\n }\n }\n\n return null\n })\n .filter(item => item)\n .sort((a, b) => a[0] - b[0])\n .forEach(item => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n EventHandler.off(this._scrollElement, EVENT_KEY)\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (typeof config.target !== 'string' && isElement(config.target)) {\n let { id } = config.target\n if (!id) {\n id = getUID(NAME)\n config.target.id = id\n }\n\n config.target = `#${id}`\n }\n\n typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window ?\n this._scrollElement.pageYOffset :\n this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window ?\n window.innerHeight :\n this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n for (let i = this._offsets.length; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = this._selector.split(',')\n .map(selector => `${selector}[data-bs-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const link = SelectorEngine.findOne(queries.join(','))\n\n if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, link.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n\n link.classList.add(CLASS_NAME_ACTIVE)\n } else {\n // Set triggered link as active\n link.classList.add(CLASS_NAME_ACTIVE)\n\n SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP)\n .forEach(listGroup => {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n\n // Handle special case when .nav-link is inside .nav-item\n SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS)\n .forEach(navItem => {\n SelectorEngine.children(navItem, SELECTOR_NAV_LINKS)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n })\n })\n }\n\n EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, {\n relatedTarget: target\n })\n }\n\n _clear() {\n SelectorEngine.find(this._selector)\n .filter(node => node.classList.contains(CLASS_NAME_ACTIVE))\n .forEach(node => node.classList.remove(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n SelectorEngine.find(SELECTOR_DATA_SPY)\n .forEach(spy => new ScrollSpy(spy))\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .ScrollSpy to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n reflow\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_UL = ':scope > li > .active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tab extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n if ((this._element.parentNode &&\n this._element.parentNode.nodeType === Node.ELEMENT_NODE &&\n this._element.classList.contains(CLASS_NAME_ACTIVE))) {\n return\n }\n\n let previous\n const target = getElementFromSelector(this._element)\n const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP)\n\n if (listElement) {\n const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE\n previous = SelectorEngine.find(itemSelector, listElement)\n previous = previous[previous.length - 1]\n }\n\n const hideEvent = previous ?\n EventHandler.trigger(previous, EVENT_HIDE, {\n relatedTarget: this._element\n }) :\n null\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget: previous\n })\n\n if (showEvent.defaultPrevented || (hideEvent !== null && hideEvent.defaultPrevented)) {\n return\n }\n\n this._activate(this._element, listElement)\n\n const complete = () => {\n EventHandler.trigger(previous, EVENT_HIDDEN, {\n relatedTarget: this._element\n })\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget: previous\n })\n }\n\n if (target) {\n this._activate(target, target.parentNode, complete)\n } else {\n complete()\n }\n }\n\n // Private\n\n _activate(element, container, callback) {\n const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ?\n SelectorEngine.find(SELECTOR_ACTIVE_UL, container) :\n SelectorEngine.children(container, SELECTOR_ACTIVE)\n\n const active = activeElements[0]\n const isTransitioning = callback && (active && active.classList.contains(CLASS_NAME_FADE))\n\n const complete = () => this._transitionComplete(element, active, callback)\n\n if (active && isTransitioning) {\n active.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, element, true)\n } else {\n complete()\n }\n }\n\n _transitionComplete(element, active, callback) {\n if (active) {\n active.classList.remove(CLASS_NAME_ACTIVE)\n\n const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode)\n\n if (dropdownChild) {\n dropdownChild.classList.remove(CLASS_NAME_ACTIVE)\n }\n\n if (active.getAttribute('role') === 'tab') {\n active.setAttribute('aria-selected', false)\n }\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n if (element.getAttribute('role') === 'tab') {\n element.setAttribute('aria-selected', true)\n }\n\n reflow(element)\n\n if (element.classList.contains(CLASS_NAME_FADE)) {\n element.classList.add(CLASS_NAME_SHOW)\n }\n\n let parent = element.parentNode\n if (parent && parent.nodeName === 'LI') {\n parent = parent.parentNode\n }\n\n if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) {\n const dropdownElement = element.closest(SELECTOR_DROPDOWN)\n\n if (dropdownElement) {\n SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement)\n .forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE))\n }\n\n element.setAttribute('aria-expanded', true)\n }\n\n if (callback) {\n callback()\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tab.getOrCreateInstance(this)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const data = Tab.getOrCreateInstance(this)\n data.show()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tab to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'bs.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`\nconst EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_FOCUSOUT = `focusout${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"toast\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._timeout = null\n this._hasMouseInteraction = false\n this._hasKeyboardInteraction = false\n this._setListeners()\n }\n\n // Getters\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n this._element.classList.add(CLASS_NAME_SHOW)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n this._maybeScheduleHide()\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE)\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n hide() {\n if (!this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n return config\n }\n\n _maybeScheduleHide() {\n if (!this._config.autohide) {\n return\n }\n\n if (this._hasMouseInteraction || this._hasKeyboardInteraction) {\n return\n }\n\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n\n _onInteraction(event, isInteracting) {\n switch (event.type) {\n case 'mouseover':\n case 'mouseout':\n this._hasMouseInteraction = isInteracting\n break\n case 'focusin':\n case 'focusout':\n this._hasKeyboardInteraction = isInteracting\n break\n default:\n break\n }\n\n if (isInteracting) {\n this._clearTimeout()\n return\n }\n\n const nextElement = event.relatedTarget\n if (this._element === nextElement || this._element.contains(nextElement)) {\n return\n }\n\n this._maybeScheduleHide()\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false))\n EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false))\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Toast.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Toast to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Toast)\n\nexport default Toast\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): index.umd.js\n * Licensed under MIT (https:/github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Alert from \"@openeuropa/bcl-bootstrap/js/src/alert\";\nimport Button from \"@openeuropa/bcl-bootstrap/js/src/button\";\nimport Carousel from \"@openeuropa/bcl-bootstrap/js/src/carousel\";\nimport Collapse from \"@openeuropa/bcl-bootstrap/js/src/collapse\";\nimport Dropdown from \"@openeuropa/bcl-bootstrap/js/src/dropdown\";\nimport Modal from \"@openeuropa/bcl-bootstrap/js/src/modal\";\nimport Offcanvas from \"@openeuropa/bcl-bootstrap/js/src/offcanvas\";\nimport Popover from \"@openeuropa/bcl-bootstrap/js/src/popover\";\nimport ScrollSpy from \"@openeuropa/bcl-bootstrap/js/src/scrollspy\";\nimport Tab from \"@openeuropa/bcl-bootstrap/js/src/tab\";\nimport Toast from \"@openeuropa/bcl-bootstrap/js/src/toast\";\nimport Tooltip from \"@openeuropa/bcl-bootstrap/js/src/tooltip\";\n\nexport default {\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n};\n"],"names":["SelectorEngine","find","selector","element","document","documentElement","concat","Element","prototype","querySelectorAll","call","findOne","querySelector","children","filter","child","matches","parents","ancestor","parentNode","nodeType","Node","ELEMENT_NODE","push","prev","previous","previousElementSibling","next","nextElementSibling","TRANSITION_END","getUID","prefix","Math","floor","random","getElementById","getSelector","getAttribute","hrefAttr","includes","startsWith","split","trim","getSelectorFromElement","getElementFromSelector","triggerTransitionEnd","dispatchEvent","Event","isElement","obj","jquery","getElement","length","typeCheckConfig","componentName","config","configTypes","Object","keys","forEach","property","expectedTypes","value","valueType","toString","match","toLowerCase","RegExp","test","TypeError","toUpperCase","isVisible","getClientRects","getComputedStyle","getPropertyValue","isDisabled","classList","contains","disabled","hasAttribute","findShadowRoot","attachShadow","getRootNode","root","ShadowRoot","noop","reflow","offsetHeight","getjQuery","jQuery","window","body","DOMContentLoadedCallbacks","isRTL","dir","defineJQueryPlugin","plugin","callback","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","readyState","addEventListener","execute","executeAfterTransition","transitionElement","waitForTransition","emulatedDuration","transitionDuration","transitionDelay","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","getTransitionDurationFromElement","called","handler","target","removeEventListener","setTimeout","getNextActiveElement","list","activeElement","shouldGetNext","isCycleAllowed","index","indexOf","listLength","max","min","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","customEventsRegex","nativeEvents","Set","getUidEvent","uid","getEvent","findHandler","events","delegationSelector","uidEventList","i","len","event","originalHandler","normalizeParams","originalTypeEvent","delegationFn","delegation","typeEvent","getTypeEvent","has","addHandler","oneOff","wrapFn","relatedTarget","delegateTarget","this","handlers","previousFn","replace","domElements","EventHandler","off","type","apply","bootstrapDelegationHandler","bootstrapHandler","removeHandler","Boolean","on","one","inNamespace","isNamespace","elementEvent","namespace","storeElementEvent","handlerKey","removeNamespacedHandlers","slice","keyHandlers","trigger","args","isNative","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","evt","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","createEvent","initEvent","CustomEvent","cancelable","key","defineProperty","get","preventDefault","elementMap","Map","set","instance","instanceMap","size","console","error","Array","from","remove","delete","BaseComponent","constructor","_element","Data","DATA_KEY","dispose","EVENT_KEY","getOwnPropertyNames","propertyName","_queueCallback","isAnimated","getInstance","Error","Alert","close","rootElement","_getRootElement","customEvent","_triggerCloseEvent","_removeElement","closest","_destroyElement","each","data","getOrCreateInstance","alertInstance","handleDismiss","SELECTOR_DATA_TOGGLE","Button","toggle","setAttribute","normalizeData","val","normalizeDataKey","chr","button","Manipulator","setDataAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","dataset","pureKey","charAt","getDataAttribute","offset","rect","getBoundingClientRect","top","scrollTop","left","scrollLeft","position","offsetTop","offsetLeft","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","KEY_TO_DIRECTION","EVENT_SLID","CLASS_NAME_ACTIVE","SELECTOR_ACTIVE_ITEM","POINTER_TYPE_TOUCH","Carousel","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","PointerEvent","_addEventListeners","_slide","nextWhenVisible","hidden","cycle","clearInterval","_updateInterval","setInterval","visibilityState","bind","to","activeIndex","_getItemIndex","order","_handleSwipe","absDeltax","abs","direction","_keydown","_addTouchEventListeners","start","pointerType","touches","clientX","move","end","clearTimeout","itemImg","e","add","tagName","_getItemByOrder","isNext","_triggerSlideEvent","eventDirectionName","targetIndex","fromIndex","_setActiveIndicatorElement","activeIndicator","indicators","parseInt","elementInterval","defaultInterval","directionOrOrder","_directionToOrder","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","_orderToDirection","triggerSlidEvent","completeCallBack","action","ride","carouselInterface","slideIndex","dataApiClickHandler","carousels","parent","CLASS_NAME_SHOW","CLASS_NAME_COLLAPSE","CLASS_NAME_COLLAPSING","CLASS_NAME_COLLAPSED","WIDTH","Collapse","_isTransitioning","_triggerArray","id","toggleList","elem","filterElement","foundElem","_selector","_parent","_getParent","_addAriaAndCollapsedClass","hide","show","actives","activesData","container","tempActiveData","elemActive","collapseInterface","dimension","_getDimension","style","setTransitioning","scrollSize","triggerArrayLength","isTransitioning","selected","triggerArray","isOpen","triggerData","bottom","right","auto","basePlacements","clippingParents","viewport","popper","reference","variationPlacements","reduce","acc","placement","placements","beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite","modifierPhases","getNodeName","nodeName","getWindow","node","ownerDocument","defaultView","isHTMLElement","HTMLElement","isShadowRoot","enabled","phase","_ref","state","elements","styles","assign","effect","_ref2","initialStyles","options","strategy","margin","arrow","hasOwnProperty","attribute","requires","getBasePlacement","width","height","x","y","getLayoutRect","clientRect","offsetWidth","rootNode","isSameNode","host","isTableElement","getDocumentElement","getParentNode","assignedSlot","getTrueOffsetParent","offsetParent","getOffsetParent","isFirefox","userAgent","currentNode","css","transform","perspective","contain","willChange","getContainingBlock","getMainAxisFromPlacement","round","within","mathMax","mathMin","mergePaddingObject","paddingObject","expandToHashMap","hashMap","_state$modifiersData$","arrowElement","popperOffsets","modifiersData","basePlacement","axis","padding","rects","toPaddingObject","arrowRect","minProp","maxProp","endDiff","startDiff","arrowOffsetParent","clientSize","clientHeight","clientWidth","centerToReference","center","axisProp","centerOffset","_options$element","requiresIfExists","unsetSides","mapToStyles","_Object$assign2","popperRect","offsets","gpuAcceleration","adaptive","roundOffsets","_ref3","dpr","devicePixelRatio","roundOffsetsByDPR","_ref3$x","_ref3$y","hasX","hasY","sideX","sideY","win","heightProp","widthProp","_Object$assign","commonStyles","_ref4","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","passive","_options$scroll","scroll","_options$resize","resize","scrollParents","scrollParent","update","hash","getOppositePlacement","matched","getOppositeVariationPlacement","getWindowScroll","pageXOffset","pageYOffset","getWindowScrollBarX","isScrollParent","_getComputedStyle","overflow","overflowX","overflowY","getScrollParent","listScrollParents","_element$ownerDocumen","isBody","visualViewport","updatedList","rectToClientRect","getClientRectFromMixedType","clippingParent","html","getViewportRect","clientTop","clientLeft","getInnerBoundingClientRect","winScroll","scrollWidth","scrollHeight","getDocumentRect","getVariation","computeOffsets","variation","commonX","commonY","mainAxis","detectOverflow","_options","_options$placement","_options$boundary","boundary","_options$rootBoundary","rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","referenceElement","clippingClientRect","mainClippingParents","clipperElement","getClippingParents","firstClippingParent","clippingRect","accRect","getClippingRect","contextElement","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","multiply","computeAutoPlacement","flipVariations","_options$allowedAutoP","allowedAutoPlacements","allPlacements","allowedPlacements","overflows","sort","a","b","_skip","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","preferredPlacement","oppositePlacement","getExpandedFallbackPlacements","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","isVertical","mainVariationSide","altVariationSide","checks","every","check","_loop","_i","fittingPlacement","reset","getSideOffsets","preventedOffsets","isAnySideFullyClipped","some","side","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","_options$offset","invertDistance","skidding","distance","distanceAndSkiddingToXY","_data$state$placement","_options$tether","tether","_options$tetherOffset","tetherOffset","isBasePlacement","tetherOffsetValue","mainSide","altSide","additive","minLen","maxLen","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","clientOffset","offsetModifierValue","tetherMin","tetherMax","preventedOffset","_mainSide","_altSide","_offset","_min","_max","_preventedOffset","getCompositeRect","elementOrVirtualElement","isFixed","isOffsetParentAnElement","modifiers","map","visited","result","modifier","dep","depModifier","DEFAULT_OPTIONS","areValidElements","_len","arguments","_key","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","pending","orderedModifiers","effectCleanupFns","isDestroyed","setOptions","cleanupModifierEffects","merged","orderModifiers","current","existing","m","_ref3$options","cleanupFn","forceUpdate","_state$elements","_state$orderedModifie","_state$orderedModifie2","Promise","resolve","then","undefined","destroy","onFirstUpdate","createPopper","eventListeners","computeStyles","applyStyles","flip","ESCAPE_KEY","SPACE_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","REGEXP_KEYDOWN","EVENT_CLICK_DATA_API","EVENT_KEYDOWN_DATA_API","SELECTOR_MENU","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","display","popperConfig","autoClose","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","getParentFromElement","Popper","_getPopperConfig","isDisplayStatic","focus","_completeHide","_getPlacement","parentDropdown","isEnd","_getOffset","popperData","defaultBsPopperConfig","_selectMenuItem","items","dropdownInterface","toggles","context","composedPath","isMenuTarget","clickEvent","isActive","stopPropagation","getToggleButton","clearMenus","click","dataApiKeydownHandler","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","ScrollBarHelper","getWidth","documentWidth","innerWidth","_disableOverFlow","_setElementAttributes","calculatedValue","_saveInitialAttribute","styleProp","scrollbarWidth","_applyManipulationCallback","_resetElementAttributes","actualValue","removeProperty","callBack","isOverflowing","clickCallback","EVENT_MOUSEDOWN","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","createElement","className","appendChild","EVENT_HIDDEN","EVENT_SHOW","EVENT_FOCUSIN","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_KEYDOWN_DISMISS","EVENT_MOUSEDOWN_DISMISS","CLASS_NAME_OPEN","CLASS_NAME_STATIC","Modal","_dialog","_backdrop","_initializeBackDrop","_isShown","_ignoreBackdropClick","_scrollBar","_isAnimated","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","_hideModal","htmlElement","handleUpdate","modalBody","_enforceFocus","_triggerBackdropTransition","_resetAdjustments","currentTarget","isModalOverflowing","isBodyOverflowing","paddingLeft","paddingRight","showEvent","OPEN_SELECTOR","Offcanvas","visibility","_enforceFocusOnElement","blur","allReadyOpen","el","uriAttrs","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeValue","regExp","attrRegex","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","createdDocument","DOMParser","parseFromString","allowlistKeys","elName","attributeList","allowedAttributes","innerHTML","BSCLS_PREFIX_REGEX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","customClass","sanitize","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","area","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","CLASS_NAME_FADE","HOVER_STATE_SHOW","HOVER_STATE_OUT","TRIGGER_HOVER","TRIGGER_FOCUS","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","_initializeOnDelegatedTarget","_isWithActiveTrigger","_enter","_leave","getTipElement","_hideModalHandler","isWithContent","shadowRoot","isInTheDom","tipId","setContent","attachment","_getAttachment","_addAttachmentClass","prevHoverState","_cleanTipClass","getTitle","setElementContent","content","textContent","updateAttachment","dataKey","_getDelegateConfig","_handlePopperPlacementChange","eventIn","eventOut","_fixTitle","originalTitleType","dataAttributes","dataAttr","tabClass","token","tClass","SELECTOR_TITLE","SELECTOR_CONTENT","Popover","_getContent","super","method","METHOD_POSITION","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targetSelector","targetBCR","item","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","queries","link","join","listGroup","navItem","spy","SELECTOR_ACTIVE","SELECTOR_ACTIVE_UL","Tab","listElement","itemSelector","hideEvent","complete","active","_transitionComplete","dropdownChild","dropdownElement","dropdown","CLASS_NAME_HIDE","CLASS_NAME_SHOWING","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","_onInteraction","isInteracting"],"mappings":"0OAaA,MAEMA,EAAiB,CACrBC,KAAI,CAACC,EAAUC,EAAUC,SAASC,kBACzB,GAAGC,UAAUC,QAAQC,UAAUC,iBAAiBC,KAAKP,EAASD,IAGvES,QAAO,CAACT,EAAUC,EAAUC,SAASC,kBAC5BE,QAAQC,UAAUI,cAAcF,KAAKP,EAASD,GAGvDW,SAAQ,CAACV,EAASD,IACT,GAAGI,UAAUH,EAAQU,UACzBC,QAAOC,GAASA,EAAMC,QAAQd,KAGnCe,QAAQd,EAASD,SACTe,EAAU,OAEZC,EAAWf,EAAQgB,gBAEhBD,GAAYA,EAASE,WAAaC,KAAKC,cArBhC,IAqBgDJ,EAASE,UACjEF,EAASF,QAAQd,IACnBe,EAAQM,KAAKL,GAGfA,EAAWA,EAASC,kBAGfF,GAGTO,KAAKrB,EAASD,OACRuB,EAAWtB,EAAQuB,4BAEhBD,GAAU,IACXA,EAAST,QAAQd,SACZ,CAACuB,GAGVA,EAAWA,EAASC,6BAGf,IAGTC,KAAKxB,EAASD,OACRyB,EAAOxB,EAAQyB,wBAEZD,GAAM,IACPA,EAAKX,QAAQd,SACR,CAACyB,GAGVA,EAAOA,EAAKC,yBAGP,KC3DLC,EAAiB,gBAiBjBC,EAASC,OAEXA,GAAUC,KAAKC,MArBH,IAqBSD,KAAKE,gBACnB9B,SAAS+B,eAAeJ,WAE1BA,GAGHK,EAAcjC,QACdD,EAAWC,EAAQkC,aAAa,sBAE/BnC,GAAyB,MAAbA,EAAkB,KAC7BoC,EAAWnC,EAAQkC,aAAa,YAM/BC,IAAcA,EAASC,SAAS,OAASD,EAASE,WAAW,YACzD,KAILF,EAASC,SAAS,OAASD,EAASE,WAAW,OACjDF,EAAY,IAAGA,EAASG,MAAM,KAAK,MAGrCvC,EAAWoC,GAAyB,MAAbA,EAAmBA,EAASI,OAAS,YAGvDxC,GAGHyC,EAAyBxC,UACvBD,EAAWkC,EAAYjC,UAEzBD,GACKE,SAASQ,cAAcV,GAAYA,EAGrC,MAGH0C,EAAyBzC,UACvBD,EAAWkC,EAAYjC,UAEtBD,EAAWE,SAASQ,cAAcV,GAAY,MA0BjD2C,EAAuB1C,IAC3BA,EAAQ2C,cAAc,IAAIC,MAAMlB,KAG5BmB,EAAYC,MACXA,GAAsB,iBAARA,UAIO,IAAfA,EAAIC,SACbD,EAAMA,EAAI,SAGmB,IAAjBA,EAAI7B,UAGd+B,EAAaF,GACbD,EAAUC,GACLA,EAAIC,OAASD,EAAI,GAAKA,EAGZ,iBAARA,GAAoBA,EAAIG,OAAS,EACnCpD,EAAeW,QAAQsC,GAGzB,KAGHI,EAAkB,CAACC,EAAeC,EAAQC,KAC9CC,OAAOC,KAAKF,GAAaG,SAAQC,UACzBC,EAAgBL,EAAYI,GAC5BE,EAAQP,EAAOK,GACfG,EAAYD,GAASd,EAAUc,GAAS,UArH5Cb,OADSA,EAsHsDa,GApHzD,GAAEb,IAGL,GAAGe,SAAStD,KAAKuC,GAAKgB,MAAM,eAAe,GAAGC,cALxCjB,IAAAA,MAwHN,IAAIkB,OAAON,GAAeO,KAAKL,SAC5B,IAAIM,UACP,GAAEf,EAAcgB,0BAA0BV,qBAA4BG,yBAAiCF,WAM1GU,EAAYpE,MACX6C,EAAU7C,IAAgD,IAApCA,EAAQqE,iBAAiBpB,SAIgB,YAA7DqB,iBAAiBtE,GAASuE,iBAAiB,cAG9CC,EAAaxE,IACZA,GAAWA,EAAQiB,WAAaC,KAAKC,gBAItCnB,EAAQyE,UAAUC,SAAS,mBAIC,IAArB1E,EAAQ2E,SACV3E,EAAQ2E,SAGV3E,EAAQ4E,aAAa,aAAoD,UAArC5E,EAAQkC,aAAa,aAG5D2C,EAAiB7E,QAChBC,SAASC,gBAAgB4E,oBACrB,QAI0B,mBAAxB9E,EAAQ+E,YAA4B,OACvCC,EAAOhF,EAAQ+E,qBACdC,aAAgBC,WAAaD,EAAO,YAGzChF,aAAmBiF,WACdjF,EAIJA,EAAQgB,WAIN6D,EAAe7E,EAAQgB,YAHrB,MAMLkE,EAAO,OAEPC,EAASnF,GAAWA,EAAQoF,aAE5BC,EAAY,WACVC,OAAEA,GAAWC,cAEfD,IAAWrF,SAASuF,KAAKZ,aAAa,qBACjCU,EAGF,MAGHG,EAA4B,GAiB5BC,EAAQ,IAAuC,QAAjCzF,SAASC,gBAAgByF,IAEvCC,EAAqBC,IAjBAC,IAAAA,EAAAA,EAkBN,WACXC,EAAIV,OAENU,EAAG,OACCC,EAAOH,EAAOI,KACdC,EAAqBH,EAAEI,GAAGH,GAChCD,EAAEI,GAAGH,GAAQH,EAAOO,gBACpBL,EAAEI,GAAGH,GAAMK,YAAcR,EACzBE,EAAEI,GAAGH,GAAMM,WAAa,KACtBP,EAAEI,GAAGH,GAAQE,EACNL,EAAOO,mBA3BQ,YAAxBnG,SAASsG,YAENd,EAA0BxC,QAC7BhD,SAASuG,iBAAiB,oBAAoB,KAC5Cf,EAA0BjC,SAAQsC,GAAYA,SAIlDL,EAA0BrE,KAAK0E,IAE/BA,KAuBEW,EAAUX,IACU,mBAAbA,GACTA,KAIEY,EAAyB,CAACZ,EAAUa,EAAmBC,GAAoB,SAC1EA,cACHH,EAAQX,SAKJe,EA/KiC7G,CAAAA,QAClCA,SACI,MAIL8G,mBAAEA,EAAFC,gBAAsBA,GAAoBxB,OAAOjB,iBAAiBtE,SAEhEgH,EAA0BC,OAAOC,WAAWJ,GAC5CK,EAAuBF,OAAOC,WAAWH,UAG1CC,GAA4BG,GAKjCL,EAAqBA,EAAmBxE,MAAM,KAAK,GACnDyE,EAAkBA,EAAgBzE,MAAM,KAAK,GArFf,KAuFtB2E,OAAOC,WAAWJ,GAAsBG,OAAOC,WAAWH,KAPzD,GAkKgBK,CAAiCT,GADlC,MAGpBU,GAAS,QAEPC,EAAU,EAAGC,OAAAA,MACbA,IAAWZ,IAIfU,GAAS,EACTV,EAAkBa,oBAAoB9F,EAAgB4F,GACtDb,EAAQX,KAGVa,EAAkBH,iBAAiB9E,EAAgB4F,GACnDG,YAAW,KACJJ,GACH3E,EAAqBiE,KAEtBE,IAYCa,EAAuB,CAACC,EAAMC,EAAeC,EAAeC,SAC5DC,EAAQJ,EAAKK,QAAQJ,OAGV,IAAXG,SACKJ,GAAME,GAAiBC,EAAiBH,EAAK1E,OAAS,EAAI,SAG7DgF,EAAaN,EAAK1E,cAExB8E,GAASF,EAAgB,GAAK,EAE1BC,IACFC,GAASA,EAAQE,GAAcA,GAG1BN,EAAK9F,KAAKqG,IAAI,EAAGrG,KAAKsG,IAAIJ,EAAOE,EAAa,MC5RjDG,EAAiB,qBACjBC,EAAiB,OACjBC,EAAgB,SAChBC,EAAgB,GACtB,IAAIC,EAAW,EACf,MAAMC,EAAe,CACnBC,WAAY,YACZC,WAAY,YAERC,EAAoB,4BACpBC,EAAe,IAAIC,IAAI,CAC3B,QACA,WACA,UACA,YACA,cACA,aACA,iBACA,YACA,WACA,YACA,cACA,YACA,UACA,WACA,QACA,oBACA,aACA,YACA,WACA,cACA,cACA,cACA,YACA,eACA,gBACA,eACA,gBACA,aACA,QACA,OACA,SACA,QACA,SACA,SACA,UACA,WACA,OACA,SACA,eACA,SACA,OACA,mBACA,mBACA,QACA,QACA,WASF,SAASC,EAAY/I,EAASgJ,UACpBA,GAAQ,GAAEA,MAAQR,OAAiBxI,EAAQwI,UAAYA,IAGjE,SAASS,EAASjJ,SACVgJ,EAAMD,EAAY/I,UAExBA,EAAQwI,SAAWQ,EACnBT,EAAcS,GAAOT,EAAcS,IAAQ,GAEpCT,EAAcS,GAuCvB,SAASE,EAAYC,EAAQ7B,EAAS8B,EAAqB,YACnDC,EAAe/F,OAAOC,KAAK4F,OAE5B,IAAIG,EAAI,EAAGC,EAAMF,EAAapG,OAAQqG,EAAIC,EAAKD,IAAK,OACjDE,EAAQL,EAAOE,EAAaC,OAE9BE,EAAMC,kBAAoBnC,GAAWkC,EAAMJ,qBAAuBA,SAC7DI,SAIJ,KAGT,SAASE,EAAgBC,EAAmBrC,EAASsC,SAC7CC,EAAgC,iBAAZvC,EACpBmC,EAAkBI,EAAaD,EAAetC,MAEhDwC,EAAYC,EAAaJ,UACZd,EAAamB,IAAIF,KAGhCA,EAAYH,GAGP,CAACE,EAAYJ,EAAiBK,GAGvC,SAASG,EAAWjK,EAAS2J,EAAmBrC,EAASsC,EAAcM,MACpC,iBAAtBP,IAAmC3J,YAIzCsH,IACHA,EAAUsC,EACVA,EAAe,MAKbhB,EAAkB3E,KAAK0F,GAAoB,OACvCQ,EAAShE,GACN,SAAUqD,OACVA,EAAMY,eAAkBZ,EAAMY,gBAAkBZ,EAAMa,iBAAmBb,EAAMa,eAAe3F,SAAS8E,EAAMY,sBACzGjE,EAAG5F,KAAK+J,KAAMd,IAKvBI,EACFA,EAAeO,EAAOP,GAEtBtC,EAAU6C,EAAO7C,SAIduC,EAAYJ,EAAiBK,GAAaJ,EAAgBC,EAAmBrC,EAASsC,GACvFT,EAASF,EAASjJ,GAClBuK,EAAWpB,EAAOW,KAAeX,EAAOW,GAAa,IACrDU,EAAatB,EAAYqB,EAAUd,EAAiBI,EAAavC,EAAU,SAE7EkD,cACFA,EAAWN,OAASM,EAAWN,QAAUA,SAKrClB,EAAMD,EAAYU,EAAiBE,EAAkBc,QAAQrC,EAAgB,KAC7EjC,EAAK0D,EA5Fb,SAAoC7J,EAASD,EAAUoG,UAC9C,SAASmB,EAAQkC,SAChBkB,EAAc1K,EAAQM,iBAAiBP,OAExC,IAAIwH,OAAEA,GAAWiC,EAAOjC,GAAUA,IAAW+C,KAAM/C,EAASA,EAAOvG,eACjE,IAAIsI,EAAIoB,EAAYzH,OAAQqG,QAC3BoB,EAAYpB,KAAO/B,SACrBiC,EAAMa,eAAiB9C,EAEnBD,EAAQ4C,QAEVS,EAAaC,IAAI5K,EAASwJ,EAAMqB,KAAM9K,EAAUoG,GAG3CA,EAAG2E,MAAMvD,EAAQ,CAACiC,WAMxB,MAyEPuB,CAA2B/K,EAASsH,EAASsC,GAzGjD,SAA0B5J,EAASmG,UAC1B,SAASmB,EAAQkC,UACtBA,EAAMa,eAAiBrK,EAEnBsH,EAAQ4C,QACVS,EAAaC,IAAI5K,EAASwJ,EAAMqB,KAAM1E,GAGjCA,EAAG2E,MAAM9K,EAAS,CAACwJ,KAkG1BwB,CAAiBhL,EAASsH,GAE5BnB,EAAGiD,mBAAqBS,EAAavC,EAAU,KAC/CnB,EAAGsD,gBAAkBA,EACrBtD,EAAG+D,OAASA,EACZ/D,EAAGqC,SAAWQ,EACduB,EAASvB,GAAO7C,EAEhBnG,EAAQwG,iBAAiBsD,EAAW3D,EAAI0D,GAG1C,SAASoB,EAAcjL,EAASmJ,EAAQW,EAAWxC,EAAS8B,SACpDjD,EAAK+C,EAAYC,EAAOW,GAAYxC,EAAS8B,GAE9CjD,IAILnG,EAAQwH,oBAAoBsC,EAAW3D,EAAI+E,QAAQ9B,WAC5CD,EAAOW,GAAW3D,EAAGqC,WAe9B,SAASuB,EAAaP,UAEpBA,EAAQA,EAAMiB,QAAQpC,EAAgB,IAC/BI,EAAae,IAAUA,EAGhC,MAAMmB,EAAe,CACnBQ,GAAGnL,EAASwJ,EAAOlC,EAASsC,GAC1BK,EAAWjK,EAASwJ,EAAOlC,EAASsC,GAAc,IAGpDwB,IAAIpL,EAASwJ,EAAOlC,EAASsC,GAC3BK,EAAWjK,EAASwJ,EAAOlC,EAASsC,GAAc,IAGpDgB,IAAI5K,EAAS2J,EAAmBrC,EAASsC,MACN,iBAAtBD,IAAmC3J,eAIvC6J,EAAYJ,EAAiBK,GAAaJ,EAAgBC,EAAmBrC,EAASsC,GACvFyB,EAAcvB,IAAcH,EAC5BR,EAASF,EAASjJ,GAClBsL,EAAc3B,EAAkBtH,WAAW,aAElB,IAApBoH,EAAiC,KAErCN,IAAWA,EAAOW,sBAIvBmB,EAAcjL,EAASmJ,EAAQW,EAAWL,EAAiBI,EAAavC,EAAU,MAIhFgE,GACFhI,OAAOC,KAAK4F,GAAQ3F,SAAQ+H,KAhDlC,SAAkCvL,EAASmJ,EAAQW,EAAW0B,SACtDC,EAAoBtC,EAAOW,IAAc,GAE/CxG,OAAOC,KAAKkI,GAAmBjI,SAAQkI,OACjCA,EAAWtJ,SAASoJ,GAAY,OAC5BhC,EAAQiC,EAAkBC,GAEhCT,EAAcjL,EAASmJ,EAAQW,EAAWN,EAAMC,gBAAiBD,EAAMJ,wBA0CrEuC,CAAyB3L,EAASmJ,EAAQoC,EAAc5B,EAAkBiC,MAAM,aAI9EH,EAAoBtC,EAAOW,IAAc,GAC/CxG,OAAOC,KAAKkI,GAAmBjI,SAAQqI,UAC/BH,EAAaG,EAAYpB,QAAQnC,EAAe,QAEjD+C,GAAe1B,EAAkBvH,SAASsJ,GAAa,OACpDlC,EAAQiC,EAAkBI,GAEhCZ,EAAcjL,EAASmJ,EAAQW,EAAWN,EAAMC,gBAAiBD,EAAMJ,yBAK7E0C,QAAQ9L,EAASwJ,EAAOuC,MACD,iBAAVvC,IAAuBxJ,SACzB,WAGH+F,EAAIV,IACJyE,EAAYC,EAAaP,GACzB6B,EAAc7B,IAAUM,EACxBkC,EAAWnD,EAAamB,IAAIF,OAE9BmC,EACAC,GAAU,EACVC,GAAiB,EACjBC,GAAmB,EACnBC,EAAM,YAENhB,GAAetF,IACjBkG,EAAclG,EAAEnD,MAAM4G,EAAOuC,GAE7BhG,EAAE/F,GAAS8L,QAAQG,GACnBC,GAAWD,EAAYK,uBACvBH,GAAkBF,EAAYM,gCAC9BH,EAAmBH,EAAYO,sBAG7BR,GACFK,EAAMpM,SAASwM,YAAY,cAC3BJ,EAAIK,UAAU5C,EAAWoC,GAAS,IAElCG,EAAM,IAAIM,YAAYnD,EAAO,CAC3B0C,QAAAA,EACAU,YAAY,SAKI,IAATb,GACTzI,OAAOC,KAAKwI,GAAMvI,SAAQqJ,IACxBvJ,OAAOwJ,eAAeT,EAAKQ,EAAK,CAC9BE,IAAG,IACMhB,EAAKc,QAMhBT,GACFC,EAAIW,iBAGFb,GACFnM,EAAQ2C,cAAc0J,GAGpBA,EAAID,uBAA2C,IAAhBH,GACjCA,EAAYe,iBAGPX,IC3ULY,EAAa,IAAIC,UAER,CACbC,IAAInN,EAAS6M,EAAKO,GACXH,EAAWjD,IAAIhK,IAClBiN,EAAWE,IAAInN,EAAS,IAAIkN,WAGxBG,EAAcJ,EAAWF,IAAI/M,GAI9BqN,EAAYrD,IAAI6C,IAA6B,IAArBQ,EAAYC,KAMzCD,EAAYF,IAAIN,EAAKO,GAJnBG,QAAQC,MAAO,+EAA8EC,MAAMC,KAAKL,EAAY9J,QAAQ,QAOhIwJ,IAAG,CAAC/M,EAAS6M,IACPI,EAAWjD,IAAIhK,IACViN,EAAWF,IAAI/M,GAAS+M,IAAIF,IAG9B,KAGTc,OAAO3N,EAAS6M,OACTI,EAAWjD,IAAIhK,gBAIdqN,EAAcJ,EAAWF,IAAI/M,GAEnCqN,EAAYO,OAAOf,GAGM,IAArBQ,EAAYC,MACdL,EAAWW,OAAO5N,KC/BxB,MAAM6N,EACJC,YAAY9N,IACVA,EAAUgD,EAAWhD,WAMhB+N,SAAW/N,EAChBgO,EAAKb,IAAI7C,KAAKyD,SAAUzD,KAAKwD,YAAYG,SAAU3D,OAGrD4D,UACEF,EAAKL,OAAOrD,KAAKyD,SAAUzD,KAAKwD,YAAYG,UAC5CtD,EAAaC,IAAIN,KAAKyD,SAAUzD,KAAKwD,YAAYK,WAEjD7K,OAAO8K,oBAAoB9D,MAAM9G,SAAQ6K,SAClCA,GAAgB,QAIzBC,eAAexI,EAAU9F,EAASuO,GAAa,GAC7C7H,EAAuBZ,EAAU9F,EAASuO,sBAKzBvO,UACVgO,EAAKjB,IAAI/M,EAASsK,KAAK2D,qCAGLjO,EAASoD,EAAS,WACpCkH,KAAKkE,YAAYxO,IAAY,IAAIsK,KAAKtK,EAA2B,iBAAXoD,EAAsBA,EAAS,iCAlChF,gCA0CN,IAAIqL,MAAM,mGAIR,MAAKnE,KAAKrE,oCAIV,IAAGqE,KAAK2D,YC7BpB,MAAMS,UAAcb,0BArBP,QA8BXc,MAAM3O,SACE4O,EAAc5O,EAAUsK,KAAKuE,gBAAgB7O,GAAWsK,KAAKyD,SAC7De,EAAcxE,KAAKyE,mBAAmBH,GAExB,OAAhBE,GAAwBA,EAAY1C,uBAInC4C,eAAeJ,GAKtBC,gBAAgB7O,UACPyC,EAAuBzC,IAAYA,EAAQiP,QAAS,UAG7DF,mBAAmB/O,UACV2K,EAAamB,QAAQ9L,EAzCX,kBA4CnBgP,eAAehP,GACbA,EAAQyE,UAAUkJ,OAvCE,cAyCdY,EAAavO,EAAQyE,UAAUC,SA1CjB,aA2Cf4J,gBAAe,IAAMhE,KAAK4E,gBAAgBlP,IAAUA,EAASuO,GAGpEW,gBAAgBlP,GACdA,EAAQ2N,SAERhD,EAAamB,QAAQ9L,EArDH,0CA0DGoD,UACdkH,KAAK6E,MAAK,iBACTC,EAAOV,EAAMW,oBAAoB/E,MAExB,UAAXlH,GACFgM,EAAKhM,GAAQkH,8BAKEgF,UACZ,SAAU9F,GACXA,GACFA,EAAMwD,iBAGRsC,EAAcX,MAAMrE,QAW1BK,EAAaQ,GAAGlL,SApFc,0BAJL,4BAwFyCyO,EAAMa,cAAc,IAAIb,IAS1F9I,EAAmB8I,GCzGnB,MAOMc,EAAuB,4BAU7B,MAAMC,UAAe5B,0BAjBR,SA0BX6B,cAEO3B,SAAS4B,aAAa,eAAgBrF,KAAKyD,SAAStJ,UAAUiL,OAvB7C,kCA4BDtM,UACdkH,KAAK6E,MAAK,iBACTC,EAAOK,EAAOJ,oBAAoB/E,MAEzB,WAAXlH,GACFgM,EAAKhM,SChDb,SAASwM,EAAcC,SACT,SAARA,GAIQ,UAARA,IAIAA,IAAQ5I,OAAO4I,GAAKhM,WACfoD,OAAO4I,GAGJ,KAARA,GAAsB,SAARA,EACT,KAGFA,GAGT,SAASC,EAAiBjD,UACjBA,EAAIpC,QAAQ,UAAUsF,GAAQ,IAAGA,EAAIhM,kBDuC9C4G,EAAaQ,GAAGlL,SAzCc,2BAyCkBuP,GAAsBhG,IACpEA,EAAMwD,uBAEAgD,EAASxG,EAAMjC,OAAO0H,QAAQO,GACvBC,EAAOJ,oBAAoBW,GAEnCN,YAUP9J,EAAmB6J,GCpDnB,MAAMQ,EAAc,CAClBC,iBAAiBlQ,EAAS6M,EAAKlJ,GAC7B3D,EAAQ2P,aAAc,WAAUG,EAAiBjD,KAAQlJ,IAG3DwM,oBAAoBnQ,EAAS6M,GAC3B7M,EAAQoQ,gBAAiB,WAAUN,EAAiBjD,OAGtDwD,kBAAkBrQ,OACXA,QACI,SAGHsQ,EAAa,UAEnBhN,OAAOC,KAAKvD,EAAQuQ,SACjB5P,QAAOkM,GAAOA,EAAIxK,WAAW,QAC7BmB,SAAQqJ,QACH2D,EAAU3D,EAAIpC,QAAQ,MAAO,IACjC+F,EAAUA,EAAQC,OAAO,GAAG1M,cAAgByM,EAAQ5E,MAAM,EAAG4E,EAAQvN,QACrEqN,EAAWE,GAAWZ,EAAc5P,EAAQuQ,QAAQ1D,OAGjDyD,GAGTI,iBAAgB,CAAC1Q,EAAS6M,IACjB+C,EAAc5P,EAAQkC,aAAc,WAAU4N,EAAiBjD,OAGxE8D,OAAO3Q,SACC4Q,EAAO5Q,EAAQ6Q,8BAEd,CACLC,IAAKF,EAAKE,IAAM7Q,SAASuF,KAAKuL,UAC9BC,KAAMJ,EAAKI,KAAO/Q,SAASuF,KAAKyL,aAIpCC,SAASlR,IACA,CACL8Q,IAAK9Q,EAAQmR,UACbH,KAAMhR,EAAQoR,cC9CdnL,EAAO,WAUPoL,EAAU,CACdC,SAAU,IACVC,UAAU,EACVC,OAAO,EACPC,MAAO,QACPC,MAAM,EACNC,OAAO,GAGHC,EAAc,CAClBN,SAAU,mBACVC,SAAU,UACVC,MAAO,mBACPC,MAAO,mBACPC,KAAM,UACNC,MAAO,WAGHE,EAAa,OACbC,EAAa,OACbC,EAAiB,OACjBC,EAAkB,QAElBC,GAAmB,WACLD,aACCD,GAIfG,GAAc,mBAcdC,GAAoB,SASpBC,GAAuB,wBASvBC,GAAqB,QAQ3B,MAAMC,WAAiBzE,EACrBC,YAAY9N,EAASoD,SACbpD,QAEDuS,OAAS,UACTC,UAAY,UACZC,eAAiB,UACjBC,WAAY,OACZC,YAAa,OACbC,aAAe,UACfC,YAAc,OACdC,YAAc,OAEdC,QAAUzI,KAAK0I,WAAW5P,QAC1B6P,mBAAqBpT,EAAeW,QA3BjB,uBA2B8C8J,KAAKyD,eACtEmF,gBAAkB,iBAAkBjT,SAASC,iBAAmBiT,UAAUC,eAAiB,OAC3FC,cAAgBnI,QAAQ3F,OAAO+N,mBAE/BC,iDAMElC,2BAIApL,EAKTzE,YACOgS,OAAO3B,GAGd4B,mBAGOxT,SAASyT,QAAUtP,EAAUkG,KAAKyD,gBAChCvM,OAITH,YACOmS,OAAO1B,GAGdL,MAAMjI,GACCA,SACEkJ,WAAY,GAGf7S,EAAeW,QApEI,2CAoEwB8J,KAAKyD,YAClDrL,EAAqB4H,KAAKyD,eACrB4F,OAAM,IAGbC,cAActJ,KAAKkI,gBACdA,UAAY,KAGnBmB,MAAMnK,GACCA,SACEkJ,WAAY,GAGfpI,KAAKkI,YACPoB,cAActJ,KAAKkI,gBACdA,UAAY,MAGflI,KAAKyI,SAAWzI,KAAKyI,QAAQzB,WAAahH,KAAKoI,iBAC5CmB,uBAEArB,UAAYsB,aACd7T,SAAS8T,gBAAkBzJ,KAAKmJ,gBAAkBnJ,KAAK9I,MAAMwS,KAAK1J,MACnEA,KAAKyI,QAAQzB,WAKnB2C,GAAGlM,QACI0K,eAAiB5S,EAAeW,QAAQ4R,GAAsB9H,KAAKyD,gBAClEmG,EAAc5J,KAAK6J,cAAc7J,KAAKmI,mBAExC1K,EAAQuC,KAAKiI,OAAOtP,OAAS,GAAK8E,EAAQ,YAI1CuC,KAAKqI,uBACPhI,EAAaS,IAAId,KAAKyD,SAAUmE,IAAY,IAAM5H,KAAK2J,GAAGlM,QAIxDmM,IAAgBnM,cACb0J,kBACAkC,cAIDS,EAAQrM,EAAQmM,EACpBrC,EACAC,OAEG0B,OAAOY,EAAO9J,KAAKiI,OAAOxK,IAKjCiL,WAAW5P,UACTA,EAAS,IACJiO,KACApB,EAAYI,kBAAkB/F,KAAKyD,aAChB,iBAAX3K,EAAsBA,EAAS,IAE5CF,EAAgB+C,EAAM7C,EAAQwO,GACvBxO,EAGTiR,qBACQC,EAAYzS,KAAK0S,IAAIjK,KAAKwI,gBAE5BwB,GAnMgB,gBAuMdE,EAAYF,EAAYhK,KAAKwI,iBAE9BA,YAAc,EAEd0B,QAIAhB,OAAOgB,EAAY,EAAIxC,EAAkBD,GAGhDwB,qBACMjJ,KAAKyI,QAAQxB,UACf5G,EAAaQ,GAAGb,KAAKyD,SApLJ,uBAoL6BvE,GAASc,KAAKmK,SAASjL,KAG5C,UAAvBc,KAAKyI,QAAQtB,QACf9G,EAAaQ,GAAGb,KAAKyD,SAvLD,0BAuL6BvE,GAASc,KAAKmH,MAAMjI,KACrEmB,EAAaQ,GAAGb,KAAKyD,SAvLD,0BAuL6BvE,GAASc,KAAKqJ,MAAMnK,MAGnEc,KAAKyI,QAAQpB,OAASrH,KAAK4I,sBACxBwB,0BAITA,gCACQC,EAAQnL,KACRc,KAAK+I,eAnKU,QAmKQ7J,EAAMoL,aAAoCpL,EAAMoL,cAAgBvC,GAE/E/H,KAAK+I,qBACVR,YAAcrJ,EAAMqL,QAAQ,GAAGC,cAF/BjC,YAAcrJ,EAAMsL,SAMvBC,EAAOvL,SAENsJ,YAActJ,EAAMqL,SAAWrL,EAAMqL,QAAQ5R,OAAS,EACzD,EACAuG,EAAMqL,QAAQ,GAAGC,QAAUxK,KAAKuI,aAG9BmC,EAAMxL,KACNc,KAAK+I,eAlLU,QAkLQ7J,EAAMoL,aAAoCpL,EAAMoL,cAAgBvC,UACpFS,YAActJ,EAAMsL,QAAUxK,KAAKuI,kBAGrCwB,eACsB,UAAvB/J,KAAKyI,QAAQtB,aASVA,QACDnH,KAAKsI,cACPqC,aAAa3K,KAAKsI,mBAGfA,aAAenL,YAAW+B,GAASc,KAAKqJ,MAAMnK,IAtQ5B,IAsQ6Dc,KAAKyI,QAAQzB,YAIrGzR,EAAeC,KAjNO,qBAiNiBwK,KAAKyD,UAAUvK,SAAQ0R,IAC5DvK,EAAaQ,GAAG+J,EAlOI,yBAkOuBC,GAAKA,EAAEnI,sBAGhD1C,KAAK+I,eACP1I,EAAaQ,GAAGb,KAAKyD,SAxOA,2BAwO6BvE,GAASmL,EAAMnL,KACjEmB,EAAaQ,GAAGb,KAAKyD,SAxOF,yBAwO6BvE,GAASwL,EAAIxL,UAExDuE,SAAStJ,UAAU2Q,IA9NG,mBAgO3BzK,EAAaQ,GAAGb,KAAKyD,SAhPD,0BAgP6BvE,GAASmL,EAAMnL,KAChEmB,EAAaQ,GAAGb,KAAKyD,SAhPF,yBAgP6BvE,GAASuL,EAAKvL,KAC9DmB,EAAaQ,GAAGb,KAAKyD,SAhPH,wBAgP6BvE,GAASwL,EAAIxL,MAIhEiL,SAASjL,MACH,kBAAkBvF,KAAKuF,EAAMjC,OAAO8N,sBAIlCb,EAAYvC,GAAiBzI,EAAMqD,KACrC2H,IACFhL,EAAMwD,sBACDwG,OAAOgB,IAIhBL,cAAcnU,eACPuS,OAASvS,GAAWA,EAAQgB,WAC/BnB,EAAeC,KAhPC,iBAgPmBE,EAAQgB,YAC3C,GAEKsJ,KAAKiI,OAAOvK,QAAQhI,GAG7BsV,gBAAgBlB,EAAOxM,SACf2N,EAASnB,IAAUvC,SAClBnK,EAAqB4C,KAAKiI,OAAQ3K,EAAe2N,EAAQjL,KAAKyI,QAAQrB,MAG/E8D,mBAAmBpL,EAAeqL,SAC1BC,EAAcpL,KAAK6J,cAAc/J,GACjCuL,EAAYrL,KAAK6J,cAActU,EAAeW,QAAQ4R,GAAsB9H,KAAKyD,kBAEhFpD,EAAamB,QAAQxB,KAAKyD,SAxRhB,oBAwRuC,CACtD3D,cAAAA,EACAoK,UAAWiB,EACX/H,KAAMiI,EACN1B,GAAIyB,IAIRE,2BAA2B5V,MACrBsK,KAAK2I,mBAAoB,OACrB4C,EAAkBhW,EAAeW,QA3QrB,UA2Q8C8J,KAAK2I,oBAErE4C,EAAgBpR,UAAUkJ,OAAOwE,IACjC0D,EAAgBzF,gBAAgB,sBAE1B0F,EAAajW,EAAeC,KA1Qb,mBA0QsCwK,KAAK2I,wBAE3D,IAAI3J,EAAI,EAAGA,EAAIwM,EAAW7S,OAAQqG,OACjCrC,OAAO8O,SAASD,EAAWxM,GAAGpH,aAAa,oBAAqB,MAAQoI,KAAK6J,cAAcnU,GAAU,CACvG8V,EAAWxM,GAAG7E,UAAU2Q,IAAIjD,IAC5B2D,EAAWxM,GAAGqG,aAAa,eAAgB,gBAOnDkE,wBACQ7T,EAAUsK,KAAKmI,gBAAkB5S,EAAeW,QAAQ4R,GAAsB9H,KAAKyD,cAEpF/N,eAICgW,EAAkB/O,OAAO8O,SAAS/V,EAAQkC,aAAa,oBAAqB,IAE9E8T,QACGjD,QAAQkD,gBAAkB3L,KAAKyI,QAAQkD,iBAAmB3L,KAAKyI,QAAQzB,cACvEyB,QAAQzB,SAAW0E,QAEnBjD,QAAQzB,SAAWhH,KAAKyI,QAAQkD,iBAAmB3L,KAAKyI,QAAQzB,SAIzEkC,OAAO0C,EAAkBlW,SACjBoU,EAAQ9J,KAAK6L,kBAAkBD,GAC/BtO,EAAgB/H,EAAeW,QAAQ4R,GAAsB9H,KAAKyD,UAClEqI,EAAqB9L,KAAK6J,cAAcvM,GACxCyO,EAAcrW,GAAWsK,KAAKgL,gBAAgBlB,EAAOxM,GAErD0O,EAAmBhM,KAAK6J,cAAckC,GACtCE,EAAYrL,QAAQZ,KAAKkI,WAEzB+C,EAASnB,IAAUvC,EACnB2E,EAAuBjB,EA5TR,sBADF,oBA8TbkB,EAAiBlB,EA5TH,qBACA,qBA4TdE,EAAqBnL,KAAKoM,kBAAkBtC,MAE9CiC,GAAeA,EAAY5R,UAAUC,SAASyN,qBAC3CQ,YAAa,MAIhBrI,KAAKqI,qBAIUrI,KAAKkL,mBAAmBa,EAAaZ,GACzCrJ,4BAIVxE,IAAkByO,cAKlB1D,YAAa,EAEd4D,QACG9E,aAGFmE,2BAA2BS,QAC3B5D,eAAiB4D,QAEhBM,EAAmB,KACvBhM,EAAamB,QAAQxB,KAAKyD,SAAUmE,GAAY,CAC9C9H,cAAeiM,EACf7B,UAAWiB,EACX/H,KAAM0I,EACNnC,GAAIqC,QAIJhM,KAAKyD,SAAStJ,UAAUC,SAvWP,SAuWmC,CACtD2R,EAAY5R,UAAU2Q,IAAIqB,GAE1BtR,EAAOkR,GAEPzO,EAAcnD,UAAU2Q,IAAIoB,GAC5BH,EAAY5R,UAAU2Q,IAAIoB,SAEpBI,EAAmB,KACvBP,EAAY5R,UAAUkJ,OAAO6I,EAAsBC,GACnDJ,EAAY5R,UAAU2Q,IAAIjD,IAE1BvK,EAAcnD,UAAUkJ,OAAOwE,GAAmBsE,EAAgBD,QAE7D7D,YAAa,EAElBlL,WAAWkP,EAAkB,SAG1BrI,eAAesI,EAAkBhP,GAAe,QAErDA,EAAcnD,UAAUkJ,OAAOwE,IAC/BkE,EAAY5R,UAAU2Q,IAAIjD,SAErBQ,YAAa,EAClBgE,IAGEJ,QACG5C,QAITwC,kBAAkB3B,SACX,CAACxC,EAAiBD,GAAgB3P,SAASoS,GAI5C9O,IACK8O,IAAczC,EAAiBD,EAAaD,EAG9C2C,IAAczC,EAAiBF,EAAaC,EAP1C0C,EAUXkC,kBAAkBtC,SACX,CAACvC,EAAYC,GAAY1P,SAASgS,GAInC1O,IACK0O,IAAUtC,EAAaC,EAAiBC,EAG1CoC,IAAUtC,EAAaE,EAAkBD,EAPvCqC,2BAYcpU,EAASoD,SAC1BgM,EAAOkD,GAASjD,oBAAoBrP,EAASoD,OAE/C2P,QAAEA,GAAY3D,EACI,iBAAXhM,IACT2P,EAAU,IACLA,KACA3P,UAIDyT,EAA2B,iBAAXzT,EAAsBA,EAAS2P,EAAQvB,SAEvC,iBAAXpO,EACTgM,EAAK6E,GAAG7Q,QACH,GAAsB,iBAAXyT,EAAqB,SACT,IAAjBzH,EAAKyH,SACR,IAAI3S,UAAW,oBAAmB2S,MAG1CzH,EAAKyH,UACI9D,EAAQzB,UAAYyB,EAAQ+D,OACrC1H,EAAKqC,QACLrC,EAAKuE,gCAIcvQ,UACdkH,KAAK6E,MAAK,WACfmD,GAASyE,kBAAkBzM,KAAMlH,iCAIVoG,SACnBjC,EAAS9E,EAAuB6H,UAEjC/C,IAAWA,EAAO9C,UAAUC,SAxcT,yBA4clBtB,EAAS,IACV6M,EAAYI,kBAAkB9I,MAC9B0I,EAAYI,kBAAkB/F,OAE7B0M,EAAa1M,KAAKpI,aAAa,oBAEjC8U,IACF5T,EAAOkO,UAAW,GAGpBgB,GAASyE,kBAAkBxP,EAAQnE,GAE/B4T,GACF1E,GAAS9D,YAAYjH,GAAQ0M,GAAG+C,GAGlCxN,EAAMwD,kBAUVrC,EAAaQ,GAAGlL,SAxec,6BAkBF,sCAsdyCqS,GAAS2E,qBAE9EtM,EAAaQ,GAAG5F,OA3ea,6BA2egB,WACrC2R,EAAYrX,EAAeC,KAxdR,iCA0dpB,IAAIwJ,EAAI,EAAGC,EAAM2N,EAAUjU,OAAQqG,EAAIC,EAAKD,IAC/CgJ,GAASyE,kBAAkBG,EAAU5N,GAAIgJ,GAAS9D,YAAY0I,EAAU5N,QAW5E1D,EAAmB0M,IC5iBnB,MAAMrM,GAAO,WAKPoL,GAAU,CACd3B,QAAQ,EACRyH,OAAQ,IAGJvF,GAAc,CAClBlC,OAAQ,UACRyH,OAAQ,oBASJC,GAAkB,OAClBC,GAAsB,WACtBC,GAAwB,aACxBC,GAAuB,YAEvBC,GAAQ,QAIRhI,GAAuB,8BAQ7B,MAAMiI,WAAiB5J,EACrBC,YAAY9N,EAASoD,SACbpD,QAED0X,kBAAmB,OACnB3E,QAAUzI,KAAK0I,WAAW5P,QAC1BuU,cAAgB9X,EAAeC,KACjC,GAAE0P,aAA+BlF,KAAKyD,SAAS6J,QAC7CpI,uBAAyClF,KAAKyD,SAAS6J,cAGtDC,EAAahY,EAAeC,KAAK0P,QAElC,IAAIlG,EAAI,EAAGC,EAAMsO,EAAW5U,OAAQqG,EAAIC,EAAKD,IAAK,OAC/CwO,EAAOD,EAAWvO,GAClBvJ,EAAWyC,EAAuBsV,GAClCC,EAAgBlY,EAAeC,KAAKC,GACvCY,QAAOqX,GAAaA,IAAc1N,KAAKyD,WAEzB,OAAbhO,GAAqBgY,EAAc9U,cAChCgV,UAAYlY,OACZ4X,cAAcvW,KAAK0W,SAIvBI,QAAU5N,KAAKyI,QAAQoE,OAAS7M,KAAK6N,aAAe,KAEpD7N,KAAKyI,QAAQoE,aACXiB,0BAA0B9N,KAAKyD,SAAUzD,KAAKqN,eAGjDrN,KAAKyI,QAAQrD,aACVA,qCAOA2B,4BAIApL,GAKTyJ,SACMpF,KAAKyD,SAAStJ,UAAUC,SAAS0S,SAC9BiB,YAEAC,OAITA,UACMhO,KAAKoN,kBAAoBpN,KAAKyD,SAAStJ,UAAUC,SAAS0S,eAI1DmB,EACAC,EAEAlO,KAAK4N,UACPK,EAAU1Y,EAAeC,KA1EN,qBA0E6BwK,KAAK4N,SAClDvX,QAAOmX,GAC6B,iBAAxBxN,KAAKyI,QAAQoE,OACfW,EAAK5V,aAAa,oBAAsBoI,KAAKyI,QAAQoE,OAGvDW,EAAKrT,UAAUC,SAAS2S,MAGZ,IAAnBkB,EAAQtV,SACVsV,EAAU,aAIRE,EAAY5Y,EAAeW,QAAQ8J,KAAK2N,cAC1CM,EAAS,OACLG,EAAiBH,EAAQzY,MAAKgY,GAAQW,IAAcX,OAC1DU,EAAcE,EAAiBjB,GAASjJ,YAAYkK,GAAkB,KAElEF,GAAeA,EAAYd,2BAKd/M,EAAamB,QAAQxB,KAAKyD,SAhH7B,oBAiHD3B,wBAIXmM,GACFA,EAAQ/U,SAAQmV,IACVF,IAAcE,GAChBlB,GAASmB,kBAAkBD,EAAY,QAGpCH,GACHxK,EAAKb,IAAIwL,EA1IF,cA0IwB,eAK/BE,EAAYvO,KAAKwO,qBAElB/K,SAAStJ,UAAUkJ,OAAO0J,SAC1BtJ,SAAStJ,UAAU2Q,IAAIkC,SAEvBvJ,SAASgL,MAAMF,GAAa,EAE7BvO,KAAKqN,cAAc1U,aAChB0U,cAAcnU,SAAQxD,IACzBA,EAAQyE,UAAUkJ,OAAO4J,IACzBvX,EAAQ2P,aAAa,iBAAiB,WAIrCqJ,kBAAiB,SAchBC,EAAc,SADSJ,EAAU,GAAG1U,cAAgB0U,EAAUjN,MAAM,UAGrE0C,gBAdY,UACVP,SAAStJ,UAAUkJ,OAAO2J,SAC1BvJ,SAAStJ,UAAU2Q,IAAIiC,GAAqBD,SAE5CrJ,SAASgL,MAAMF,GAAa,QAE5BG,kBAAiB,GAEtBrO,EAAamB,QAAQxB,KAAKyD,SAxJX,uBA8JazD,KAAKyD,UAAU,QACxCA,SAASgL,MAAMF,GAAc,GAAEvO,KAAKyD,SAASkL,OAGpDZ,UACM/N,KAAKoN,mBAAqBpN,KAAKyD,SAAStJ,UAAUC,SAAS0S,cAI5CzM,EAAamB,QAAQxB,KAAKyD,SAtK7B,oBAuKD3B,8BAITyM,EAAYvO,KAAKwO,qBAElB/K,SAASgL,MAAMF,GAAc,GAAEvO,KAAKyD,SAAS8C,wBAAwBgI,OAE1E1T,EAAOmF,KAAKyD,eAEPA,SAAStJ,UAAU2Q,IAAIkC,SACvBvJ,SAAStJ,UAAUkJ,OAAO0J,GAAqBD,UAE9C8B,EAAqB5O,KAAKqN,cAAc1U,UAC1CiW,EAAqB,MAClB,IAAI5P,EAAI,EAAGA,EAAI4P,EAAoB5P,IAAK,OACrCwC,EAAUxB,KAAKqN,cAAcrO,GAC7BwO,EAAOrV,EAAuBqJ,GAEhCgM,IAASA,EAAKrT,UAAUC,SAAS0S,MACnCtL,EAAQrH,UAAU2Q,IAAImC,IACtBzL,EAAQ6D,aAAa,iBAAiB,SAKvCqJ,kBAAiB,QASjBjL,SAASgL,MAAMF,GAAa,QAE5BvK,gBATY,UACV0K,kBAAiB,QACjBjL,SAAStJ,UAAUkJ,OAAO2J,SAC1BvJ,SAAStJ,UAAU2Q,IAAIiC,IAC5B1M,EAAamB,QAAQxB,KAAKyD,SAtMV,wBA2MYzD,KAAKyD,UAAU,GAG/CiL,iBAAiBG,QACVzB,iBAAmByB,EAK1BnG,WAAW5P,UACTA,EAAS,IACJiO,MACAjO,IAEEsM,OAASxE,QAAQ9H,EAAOsM,QAC/BxM,EAAgB+C,GAAM7C,EAAQwO,IACvBxO,EAGT0V,uBACSxO,KAAKyD,SAAStJ,UAAUC,SAAS8S,IAASA,GAtNtC,SAyNbW,iBACMhB,OAAEA,GAAW7M,KAAKyI,QAEtBoE,EAASnU,EAAWmU,SAEdpX,EAAY,GAAEyP,sBAAwC2H,aAE5DtX,EAAeC,KAAKC,EAAUoX,GAC3B3T,SAAQxD,UACDoZ,EAAW3W,EAAuBzC,QAEnCoY,0BACHgB,EACA,CAACpZ,OAIAmX,EAGTiB,0BAA0BpY,EAASqZ,OAC5BrZ,IAAYqZ,EAAapW,oBAIxBqW,EAAStZ,EAAQyE,UAAUC,SAAS0S,IAE1CiC,EAAa7V,SAAQsU,IACfwB,EACFxB,EAAKrT,UAAUkJ,OAAO4J,IAEtBO,EAAKrT,UAAU2Q,IAAImC,IAGrBO,EAAKnI,aAAa,gBAAiB2J,+BAMdtZ,EAASoD,OAC5BgM,EAAOqI,GAASjJ,YAAYxO,SAC1B+S,EAAU,IACX1B,MACApB,EAAYI,kBAAkBrQ,MACX,iBAAXoD,GAAuBA,EAASA,EAAS,QAGjDgM,GAAQ2D,EAAQrD,QAA4B,iBAAXtM,GAAuB,YAAYa,KAAKb,KAC5E2P,EAAQrD,QAAS,GAGdN,IACHA,EAAO,IAAIqI,GAASzX,EAAS+S,IAGT,iBAAX3P,EAAqB,SACF,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,6BAIcA,UACdkH,KAAK6E,MAAK,WACfsI,GAASmB,kBAAkBtO,KAAMlH,OAWvCuH,EAAaQ,GAAGlL,SA/Sc,6BA+SkBuP,IAAsB,SAAUhG,IAEjD,MAAzBA,EAAMjC,OAAO8N,SAAoB7L,EAAMa,gBAAmD,MAAjCb,EAAMa,eAAegL,UAChF7L,EAAMwD,uBAGFuM,EAActJ,EAAYI,kBAAkB/F,MAC5CvK,EAAWyC,EAAuB8H,MACfzK,EAAeC,KAAKC,GAE5ByD,SAAQxD,UACjBoP,EAAOqI,GAASjJ,YAAYxO,OAC9BoD,EACAgM,GAEmB,OAAjBA,EAAK8I,SAAkD,iBAAvBqB,EAAYpC,SAC9C/H,EAAK2D,QAAQoE,OAASoC,EAAYpC,OAClC/H,EAAK8I,QAAU9I,EAAK+I,cAGtB/U,EAAS,UAETA,EAASmW,EAGX9B,GAASmB,kBAAkB5Y,EAASoD,SAWxCwC,EAAmB6R,ICjYZ,IAAI3G,GAAM,MACN0I,GAAS,SACTC,GAAQ,QACRzI,GAAO,OACP0I,GAAO,OACPC,GAAiB,CAAC7I,GAAK0I,GAAQC,GAAOzI,IACtC2D,GAAQ,QACRK,GAAM,MACN4E,GAAkB,kBAClBC,GAAW,WACXC,GAAS,SACTC,GAAY,YACZC,GAAmCL,GAAeM,QAAO,SAAUC,EAAKC,UAC1ED,EAAI/Z,OAAO,CAACga,EAAY,IAAMxF,GAAOwF,EAAY,IAAMnF,OAC7D,IACQoF,GAA0B,GAAGja,OAAOwZ,GAAgB,CAACD,KAAOO,QAAO,SAAUC,EAAKC,UACpFD,EAAI/Z,OAAO,CAACga,EAAWA,EAAY,IAAMxF,GAAOwF,EAAY,IAAMnF,OACxE,IAEQqF,GAAa,aACbC,GAAO,OACPC,GAAY,YAEZC,GAAa,aACbC,GAAO,OACPC,GAAY,YAEZC,GAAc,cACdC,GAAQ,QACRC,GAAa,aACbC,GAAiB,CAACT,GAAYC,GAAMC,GAAWC,GAAYC,GAAMC,GAAWC,GAAaC,GAAOC,IC9B5F,SAASE,GAAY/a,UAC3BA,GAAWA,EAAQgb,UAAY,IAAIjX,cAAgB,KCD7C,SAASkX,GAAUC,MACpB,MAARA,SACK3V,UAGe,oBAApB2V,EAAKrX,WAAkC,KACrCsX,EAAgBD,EAAKC,qBAClBA,GAAgBA,EAAcC,aAAwB7V,cAGxD2V,ECRT,SAASrY,GAAUqY,UAEVA,aADUD,GAAUC,GAAM9a,SACI8a,aAAgB9a,QAGvD,SAASib,GAAcH,UAEdA,aADUD,GAAUC,GAAMI,aACIJ,aAAgBI,YAGvD,SAASC,GAAaL,SAEM,oBAAfjW,aAKJiW,aADUD,GAAUC,GAAMjW,YACIiW,aAAgBjW,mBCyDxC,CACbe,KAAM,cACNwV,SAAS,EACTC,MAAO,QACPtV,GA5EF,SAAqBuV,OACfC,EAAQD,EAAKC,MACjBrY,OAAOC,KAAKoY,EAAMC,UAAUpY,SAAQ,SAAUwC,OACxC+S,EAAQ4C,EAAME,OAAO7V,IAAS,GAC9BsK,EAAaqL,EAAMrL,WAAWtK,IAAS,GACvChG,EAAU2b,EAAMC,SAAS5V,GAExBqV,GAAcrb,IAAa+a,GAAY/a,KAO5CsD,OAAOwY,OAAO9b,EAAQ+Y,MAAOA,GAC7BzV,OAAOC,KAAK+M,GAAY9M,SAAQ,SAAUwC,OACpCrC,EAAQ2M,EAAWtK,IAET,IAAVrC,EACF3D,EAAQoQ,gBAAgBpK,GAExBhG,EAAQ2P,aAAa3J,GAAgB,IAAVrC,EAAiB,GAAKA,WAwDvDoY,OAlDF,SAAgBC,OACVL,EAAQK,EAAML,MACdM,EAAgB,CAClBnC,OAAQ,CACN5I,SAAUyK,EAAMO,QAAQC,SACxBnL,KAAM,IACNF,IAAK,IACLsL,OAAQ,KAEVC,MAAO,CACLnL,SAAU,YAEZ6I,UAAW,WAEbzW,OAAOwY,OAAOH,EAAMC,SAAS9B,OAAOf,MAAOkD,EAAcnC,QACzD6B,EAAME,OAASI,EAEXN,EAAMC,SAASS,OACjB/Y,OAAOwY,OAAOH,EAAMC,SAASS,MAAMtD,MAAOkD,EAAcI,OAGnD,WACL/Y,OAAOC,KAAKoY,EAAMC,UAAUpY,SAAQ,SAAUwC,OACxChG,EAAU2b,EAAMC,SAAS5V,GACzBsK,EAAaqL,EAAMrL,WAAWtK,IAAS,GAGvC+S,EAFkBzV,OAAOC,KAAKoY,EAAME,OAAOS,eAAetW,GAAQ2V,EAAME,OAAO7V,GAAQiW,EAAcjW,IAE7EiU,QAAO,SAAUlB,EAAOtV,UAClDsV,EAAMtV,GAAY,GACXsV,IACN,IAEEsC,GAAcrb,IAAa+a,GAAY/a,KAI5CsD,OAAOwY,OAAO9b,EAAQ+Y,MAAOA,GAC7BzV,OAAOC,KAAK+M,GAAY9M,SAAQ,SAAU+Y,GACxCvc,EAAQoQ,gBAAgBmM,YAa9BC,SAAU,CAAC,kBCjFE,SAASC,GAAiBtC,UAChCA,EAAU7X,MAAM,KAAK,GCFf,SAASuO,GAAsB7Q,OACxC4Q,EAAO5Q,EAAQ6Q,8BACZ,CACL6L,MAAO9L,EAAK8L,MACZC,OAAQ/L,EAAK+L,OACb7L,IAAKF,EAAKE,IACV2I,MAAO7I,EAAK6I,MACZD,OAAQ5I,EAAK4I,OACbxI,KAAMJ,EAAKI,KACX4L,EAAGhM,EAAKI,KACR6L,EAAGjM,EAAKE,KCPG,SAASgM,GAAc9c,OAChC+c,EAAalM,GAAsB7Q,GAGnC0c,EAAQ1c,EAAQgd,YAChBL,EAAS3c,EAAQoF,oBAEjBvD,KAAK0S,IAAIwI,EAAWL,MAAQA,IAAU,IACxCA,EAAQK,EAAWL,OAGjB7a,KAAK0S,IAAIwI,EAAWJ,OAASA,IAAW,IAC1CA,EAASI,EAAWJ,QAGf,CACLC,EAAG5c,EAAQoR,WACXyL,EAAG7c,EAAQmR,UACXuL,MAAOA,EACPC,OAAQA,GCrBG,SAASjY,GAASyS,EAAQvW,OACnCqc,EAAWrc,EAAMmE,aAAenE,EAAMmE,iBAEtCoS,EAAOzS,SAAS9D,UACX,EAEJ,GAAIqc,GAAY1B,GAAa0B,GAAW,KACrCzb,EAAOZ,IAER,IACGY,GAAQ2V,EAAO+F,WAAW1b,UACrB,EAITA,EAAOA,EAAKR,YAAcQ,EAAK2b,WACxB3b,UAIN,ECpBM,SAAS8C,GAAiBtE,UAChCib,GAAUjb,GAASsE,iBAAiBtE,GCD9B,SAASod,GAAepd,SAC9B,CAAC,QAAS,KAAM,MAAMgI,QAAQ+S,GAAY/a,KAAa,ECDjD,SAASqd,GAAmBrd,WAEhC6C,GAAU7C,GAAWA,EAAQmb,cACtCnb,EAAQC,WAAasF,OAAOtF,UAAUC,gBCDzB,SAASod,GAActd,SACP,SAAzB+a,GAAY/a,GACPA,EAMPA,EAAQud,cACRvd,EAAQgB,aACRua,GAAavb,GAAWA,EAAQmd,KAAO,OAEvCE,GAAmBrd,GCRvB,SAASwd,GAAoBxd,UACtBqb,GAAcrb,IACoB,UAAvCsE,GAAiBtE,GAASkR,SAInBlR,EAAQyd,aAHN,KAwCI,SAASC,GAAgB1d,WAClCuF,EAAS0V,GAAUjb,GACnByd,EAAeD,GAAoBxd,GAEhCyd,GAAgBL,GAAeK,IAA6D,WAA5CnZ,GAAiBmZ,GAAcvM,UACpFuM,EAAeD,GAAoBC,UAGjCA,IAA+C,SAA9B1C,GAAY0C,IAA0D,SAA9B1C,GAAY0C,IAAwE,WAA5CnZ,GAAiBmZ,GAAcvM,UAC3H3L,EAGFkY,GA5CT,SAA4Bzd,OACtB2d,GAAsE,IAA1DxK,UAAUyK,UAAU7Z,cAAciE,QAAQ,eACH,IAA5CmL,UAAUyK,UAAU5V,QAAQ,YAE3BqT,GAAcrb,IAII,UAFXsE,GAAiBtE,GAEnBkR,gBACN,aAIP2M,EAAcP,GAActd,GAEzBqb,GAAcwC,IAAgB,CAAC,OAAQ,QAAQ7V,QAAQ+S,GAAY8C,IAAgB,GAAG,KACvFC,EAAMxZ,GAAiBuZ,MAIL,SAAlBC,EAAIC,WAA4C,SAApBD,EAAIE,aAA0C,UAAhBF,EAAIG,UAAiF,IAA1D,CAAC,YAAa,eAAejW,QAAQ8V,EAAII,aAAsBP,GAAgC,WAAnBG,EAAII,YAA2BP,GAAaG,EAAInd,QAAyB,SAAfmd,EAAInd,cAC1Nkd,EAEPA,EAAcA,EAAY7c,kBAIvB,KAiBgBmd,CAAmBne,IAAYuF,EC9DzC,SAAS6Y,GAAyBjE,SACxC,CAAC,MAAO,UAAUnS,QAAQmS,IAAc,EAAI,IAAM,ICDpD,IAAIjS,GAAMrG,KAAKqG,IACXC,GAAMtG,KAAKsG,IACXkW,GAAQxc,KAAKwc,MCDT,SAASC,GAAOnW,EAAKxE,EAAOuE,UAClCqW,GAAQpW,EAAKqW,GAAQ7a,EAAOuE,ICDtB,SAASuW,GAAmBC,UAClCpb,OAAOwY,OAAO,GCDd,CACLhL,IAAK,EACL2I,MAAO,EACPD,OAAQ,EACRxI,KAAM,GDHuC0N,GEFlC,SAASC,GAAgBhb,EAAOJ,UACtCA,EAAK0W,QAAO,SAAU2E,EAAS/R,UACpC+R,EAAQ/R,GAAOlJ,EACRib,IACN,WCwFU,CACb5Y,KAAM,QACNwV,SAAS,EACTC,MAAO,OACPtV,GA9EF,SAAeuV,OACTmD,EAEAlD,EAAQD,EAAKC,MACb3V,EAAO0V,EAAK1V,KACZkW,EAAUR,EAAKQ,QACf4C,EAAenD,EAAMC,SAASS,MAC9B0C,EAAgBpD,EAAMqD,cAAcD,cACpCE,EAAgBxC,GAAiBd,EAAMxB,WACvC+E,EAAOd,GAAyBa,GAEhC1V,EADa,CAACyH,GAAMyI,IAAOzR,QAAQiX,IAAkB,EAClC,SAAW,WAE7BH,GAAiBC,OAIlBL,EAxBgB,SAAyBS,EAASxD,UAI/C8C,GAAsC,iBAH7CU,EAA6B,mBAAZA,EAAyBA,EAAQ7b,OAAOwY,OAAO,GAAIH,EAAMyD,MAAO,CAC/EjF,UAAWwB,EAAMxB,aACbgF,GACkDA,EAAUR,GAAgBQ,EAASxF,KAoBvE0F,CAAgBnD,EAAQiD,QAASxD,GACjD2D,EAAYxC,GAAcgC,GAC1BS,EAAmB,MAATL,EAAepO,GAAME,GAC/BwO,EAAmB,MAATN,EAAe1F,GAASC,GAClCgG,EAAU9D,EAAMyD,MAAMrF,UAAUxQ,GAAOoS,EAAMyD,MAAMrF,UAAUmF,GAAQH,EAAcG,GAAQvD,EAAMyD,MAAMtF,OAAOvQ,GAC9GmW,EAAYX,EAAcG,GAAQvD,EAAMyD,MAAMrF,UAAUmF,GACxDS,EAAoBjC,GAAgBoB,GACpCc,EAAaD,EAA6B,MAATT,EAAeS,EAAkBE,cAAgB,EAAIF,EAAkBG,aAAe,EAAI,EAC3HC,EAAoBN,EAAU,EAAIC,EAAY,EAG9CvX,EAAMuW,EAAca,GACpBrX,EAAM0X,EAAaN,EAAU/V,GAAOmV,EAAcc,GAClDQ,EAASJ,EAAa,EAAIN,EAAU/V,GAAO,EAAIwW,EAC/CpP,EAAS2N,GAAOnW,EAAK6X,EAAQ9X,GAE7B+X,EAAWf,EACfvD,EAAMqD,cAAchZ,KAAS6Y,EAAwB,IAA0BoB,GAAYtP,EAAQkO,EAAsBqB,aAAevP,EAASqP,EAAQnB,KA6CzJ9C,OA1CF,SAAgBC,OACVL,EAAQK,EAAML,MAEdwE,EADUnE,EAAME,QACWlc,QAC3B8e,OAAoC,IAArBqB,EAA8B,sBAAwBA,EAErD,MAAhBrB,IAKwB,iBAAjBA,IACTA,EAAenD,EAAMC,SAAS9B,OAAOrZ,cAAcqe,MAahDpa,GAASiX,EAAMC,SAAS9B,OAAQgF,KAQrCnD,EAAMC,SAASS,MAAQyC,IAUvBtC,SAAU,CAAC,iBACX4D,iBAAkB,CAAC,oBC3FjBC,GAAa,CACfvP,IAAK,OACL2I,MAAO,OACPD,OAAQ,OACRxI,KAAM,QAgBD,SAASsP,GAAYtE,OACtBuE,EAEAzG,EAASkC,EAAMlC,OACf0G,EAAaxE,EAAMwE,WACnBrG,EAAY6B,EAAM7B,UAClBsG,EAAUzE,EAAMyE,QAChBvP,EAAW8K,EAAM9K,SACjBwP,EAAkB1E,EAAM0E,gBACxBC,EAAW3E,EAAM2E,SACjBC,EAAe5E,EAAM4E,aAErBC,GAAyB,IAAjBD,EAvBd,SAA2BlF,OACrBkB,EAAIlB,EAAKkB,EACTC,EAAInB,EAAKmB,EAETiE,EADMvb,OACIwb,kBAAoB,QAC3B,CACLnE,EAAGyB,GAAMA,GAAMzB,EAAIkE,GAAOA,IAAQ,EAClCjE,EAAGwB,GAAMA,GAAMxB,EAAIiE,GAAOA,IAAQ,GAgBAE,CAAkBP,GAAmC,mBAAjBG,EAA8BA,EAAaH,GAAWA,EAC1HQ,EAAUJ,EAAMjE,EAChBA,OAAgB,IAAZqE,EAAqB,EAAIA,EAC7BC,EAAUL,EAAMhE,EAChBA,OAAgB,IAAZqE,EAAqB,EAAIA,EAE7BC,EAAOV,EAAQnE,eAAe,KAC9B8E,EAAOX,EAAQnE,eAAe,KAC9B+E,EAAQrQ,GACRsQ,EAAQxQ,GACRyQ,EAAMhc,UAENob,EAAU,KACRlD,EAAeC,GAAgB5D,GAC/B0H,EAAa,eACbC,EAAY,cAEZhE,IAAiBxC,GAAUnB,IAGmB,WAA5CxV,GAFJmZ,EAAeJ,GAAmBvD,IAEC5I,WACjCsQ,EAAa,eACbC,EAAY,eAKhBhE,EAAeA,EAEXtD,IAAcrJ,KAChBwQ,EAAQ9H,GAERqD,GAAKY,EAAa+D,GAAchB,EAAW7D,OAC3CE,GAAK6D,EAAkB,GAAK,GAG1BvG,IAAcnJ,KAChBqQ,EAAQ5H,GAERmD,GAAKa,EAAagE,GAAajB,EAAW9D,MAC1CE,GAAK8D,EAAkB,GAAK,OAS1BgB,EALFC,EAAere,OAAOwY,OAAO,CAC/B5K,SAAUA,GACTyP,GAAYN,WAEXK,EAGKpd,OAAOwY,OAAO,GAAI6F,IAAeD,EAAiB,IAAmBJ,GAASF,EAAO,IAAM,GAAIM,EAAeL,GAASF,EAAO,IAAM,GAAIO,EAAe3D,WAAawD,EAAIR,kBAAoB,GAAK,EAAI,aAAenE,EAAI,OAASC,EAAI,MAAQ,eAAiBD,EAAI,OAASC,EAAI,SAAU6E,IAG3Rpe,OAAOwY,OAAO,GAAI6F,IAAepB,EAAkB,IAAoBe,GAASF,EAAOvE,EAAI,KAAO,GAAI0D,EAAgBc,GAASF,EAAOvE,EAAI,KAAO,GAAI2D,EAAgBxC,UAAY,GAAIwC,WAsD/K,CACbva,KAAM,gBACNwV,SAAS,EACTC,MAAO,cACPtV,GAvDF,SAAuByb,OACjBjG,EAAQiG,EAAMjG,MACdO,EAAU0F,EAAM1F,QAChB2F,EAAwB3F,EAAQwE,gBAChCA,OAA4C,IAA1BmB,GAA0CA,EAC5DC,EAAoB5F,EAAQyE,SAC5BA,OAAiC,IAAtBmB,GAAsCA,EACjDC,EAAwB7F,EAAQ0E,aAChCA,OAAyC,IAA1BmB,GAA0CA,EAYzDJ,EAAe,CACjBxH,UAAWsC,GAAiBd,EAAMxB,WAClCL,OAAQ6B,EAAMC,SAAS9B,OACvB0G,WAAY7E,EAAMyD,MAAMtF,OACxB4G,gBAAiBA,GAGsB,MAArC/E,EAAMqD,cAAcD,gBACtBpD,EAAME,OAAO/B,OAASxW,OAAOwY,OAAO,GAAIH,EAAME,OAAO/B,OAAQwG,GAAYhd,OAAOwY,OAAO,GAAI6F,EAAc,CACvGlB,QAAS9E,EAAMqD,cAAcD,cAC7B7N,SAAUyK,EAAMO,QAAQC,SACxBwE,SAAUA,EACVC,aAAcA,OAIe,MAA7BjF,EAAMqD,cAAc3C,QACtBV,EAAME,OAAOQ,MAAQ/Y,OAAOwY,OAAO,GAAIH,EAAME,OAAOQ,MAAOiE,GAAYhd,OAAOwY,OAAO,GAAI6F,EAAc,CACrGlB,QAAS9E,EAAMqD,cAAc3C,MAC7BnL,SAAU,WACVyP,UAAU,EACVC,aAAcA,OAIlBjF,EAAMrL,WAAWwJ,OAASxW,OAAOwY,OAAO,GAAIH,EAAMrL,WAAWwJ,OAAQ,yBAC1C6B,EAAMxB,aAUjC/K,KAAM,ICvJJ4S,GAAU,CACZA,SAAS,MAsCI,CACbhc,KAAM,iBACNwV,SAAS,EACTC,MAAO,QACPtV,GAAI,aACJ4V,OAxCF,SAAgBL,OACVC,EAAQD,EAAKC,MACbvO,EAAWsO,EAAKtO,SAChB8O,EAAUR,EAAKQ,QACf+F,EAAkB/F,EAAQgG,OAC1BA,OAA6B,IAApBD,GAAoCA,EAC7CE,EAAkBjG,EAAQkG,OAC1BA,OAA6B,IAApBD,GAAoCA,EAC7C5c,EAAS0V,GAAUU,EAAMC,SAAS9B,QAClCuI,EAAgB,GAAGliB,OAAOwb,EAAM0G,cAActI,UAAW4B,EAAM0G,cAAcvI,eAE7EoI,GACFG,EAAc7e,SAAQ,SAAU8e,GAC9BA,EAAa9b,iBAAiB,SAAU4G,EAASmV,OAAQP,OAIzDI,GACF7c,EAAOiB,iBAAiB,SAAU4G,EAASmV,OAAQP,IAG9C,WACDE,GACFG,EAAc7e,SAAQ,SAAU8e,GAC9BA,EAAa9a,oBAAoB,SAAU4F,EAASmV,OAAQP,OAI5DI,GACF7c,EAAOiC,oBAAoB,SAAU4F,EAASmV,OAAQP,MAY1D5S,KAAM,IC/CJoT,GAAO,CACTxR,KAAM,QACNyI,MAAO,OACPD,OAAQ,MACR1I,IAAK,UAEQ,SAAS2R,GAAqBtI,UACpCA,EAAU1P,QAAQ,0BAA0B,SAAUiY,UACpDF,GAAKE,MCRhB,IAAIF,GAAO,CACT7N,MAAO,MACPK,IAAK,SAEQ,SAAS2N,GAA8BxI,UAC7CA,EAAU1P,QAAQ,cAAc,SAAUiY,UACxCF,GAAKE,MCLD,SAASE,GAAgB1H,OAClCqG,EAAMtG,GAAUC,SAGb,CACLjK,WAHesQ,EAAIsB,YAInB9R,UAHcwQ,EAAIuB,aCDP,SAASC,GAAoB/iB,UAQnC6Q,GAAsBwM,GAAmBrd,IAAUgR,KAAO4R,GAAgB5iB,GAASiR,WCV7E,SAAS+R,GAAehjB,OAEjCijB,EAAoB3e,GAAiBtE,GACrCkjB,EAAWD,EAAkBC,SAC7BC,EAAYF,EAAkBE,UAC9BC,EAAYH,EAAkBG,gBAE3B,6BAA6Bnf,KAAKif,EAAWE,EAAYD,GCJnD,SAASE,GAAgBnI,SAClC,CAAC,OAAQ,OAAQ,aAAalT,QAAQ+S,GAAYG,KAAU,EAEvDA,EAAKC,cAAc3V,KAGxB6V,GAAcH,IAAS8H,GAAe9H,GACjCA,EAGFmI,GAAgB/F,GAAcpC,ICHxB,SAASoI,GAAkBtjB,EAAS2H,OAC7C4b,OAES,IAAT5b,IACFA,EAAO,QAGL2a,EAAee,GAAgBrjB,GAC/BwjB,EAASlB,KAAqE,OAAlDiB,EAAwBvjB,EAAQmb,oBAAyB,EAASoI,EAAsB/d,MACpH+b,EAAMtG,GAAUqH,GAChB/a,EAASic,EAAS,CAACjC,GAAKphB,OAAOohB,EAAIkC,gBAAkB,GAAIT,GAAeV,GAAgBA,EAAe,IAAMA,EAC7GoB,EAAc/b,EAAKxH,OAAOoH,UACvBic,EAASE,EAChBA,EAAYvjB,OAAOmjB,GAAkBhG,GAAc/V,KCxBtC,SAASoc,GAAiB/S,UAChCtN,OAAOwY,OAAO,GAAIlL,EAAM,CAC7BI,KAAMJ,EAAKgM,EACX9L,IAAKF,EAAKiM,EACVpD,MAAO7I,EAAKgM,EAAIhM,EAAK8L,MACrBlD,OAAQ5I,EAAKiM,EAAIjM,EAAK+L,SCuB1B,SAASiH,GAA2B5jB,EAAS6jB,UACpCA,IAAmBhK,GAAW8J,GC1BxB,SAAyB3jB,OAClCuhB,EAAMtG,GAAUjb,GAChB8jB,EAAOzG,GAAmBrd,GAC1ByjB,EAAiBlC,EAAIkC,eACrB/G,EAAQoH,EAAKhE,YACbnD,EAASmH,EAAKjE,aACdjD,EAAI,EACJC,EAAI,SAMJ4G,IACF/G,EAAQ+G,EAAe/G,MACvBC,EAAS8G,EAAe9G,OASnB,iCAAiC1Y,KAAKkP,UAAUyK,aACnDhB,EAAI6G,EAAerS,WACnByL,EAAI4G,EAAetS,YAIhB,CACLuL,MAAOA,EACPC,OAAQA,EACRC,EAAGA,EAAImG,GAAoB/iB,GAC3B6c,EAAGA,GDRiDkH,CAAgB/jB,IAAYqb,GAAcwI,GAdlG,SAAoC7jB,OAC9B4Q,EAAOC,GAAsB7Q,UACjC4Q,EAAKE,IAAMF,EAAKE,IAAM9Q,EAAQgkB,UAC9BpT,EAAKI,KAAOJ,EAAKI,KAAOhR,EAAQikB,WAChCrT,EAAK4I,OAAS5I,EAAKE,IAAM9Q,EAAQ6f,aACjCjP,EAAK6I,MAAQ7I,EAAKI,KAAOhR,EAAQ8f,YACjClP,EAAK8L,MAAQ1c,EAAQ8f,YACrBlP,EAAK+L,OAAS3c,EAAQ6f,aACtBjP,EAAKgM,EAAIhM,EAAKI,KACdJ,EAAKiM,EAAIjM,EAAKE,IACPF,EAI2GsT,CAA2BL,GAAkBF,GEtBlJ,SAAyB3jB,OAClCujB,EAEAO,EAAOzG,GAAmBrd,GAC1BmkB,EAAYvB,GAAgB5iB,GAC5BwF,EAA0D,OAAlD+d,EAAwBvjB,EAAQmb,oBAAyB,EAASoI,EAAsB/d,KAChGkX,EAAQxU,GAAI4b,EAAKM,YAAaN,EAAKhE,YAAata,EAAOA,EAAK4e,YAAc,EAAG5e,EAAOA,EAAKsa,YAAc,GACvGnD,EAASzU,GAAI4b,EAAKO,aAAcP,EAAKjE,aAAcra,EAAOA,EAAK6e,aAAe,EAAG7e,EAAOA,EAAKqa,aAAe,GAC5GjD,GAAKuH,EAAUlT,WAAa8R,GAAoB/iB,GAChD6c,GAAKsH,EAAUpT,gBAE8B,QAA7CzM,GAAiBkB,GAAQse,GAAMtP,YACjCoI,GAAK1U,GAAI4b,EAAKhE,YAAata,EAAOA,EAAKsa,YAAc,GAAKpD,GAGrD,CACLA,MAAOA,EACPC,OAAQA,EACRC,EAAGA,EACHC,EAAGA,GFG2KyH,CAAgBjH,GAAmBrd,KG7BtM,SAASukB,GAAapK,UAC5BA,EAAU7X,MAAM,KAAK,GCGf,SAASkiB,GAAe9I,OAQjC+E,EAPA1G,EAAY2B,EAAK3B,UACjB/Z,EAAU0b,EAAK1b,QACfma,EAAYuB,EAAKvB,UACjB8E,EAAgB9E,EAAYsC,GAAiBtC,GAAa,KAC1DsK,EAAYtK,EAAYoK,GAAapK,GAAa,KAClDuK,EAAU3K,EAAU6C,EAAI7C,EAAU2C,MAAQ,EAAI1c,EAAQ0c,MAAQ,EAC9DiI,EAAU5K,EAAU8C,EAAI9C,EAAU4C,OAAS,EAAI3c,EAAQ2c,OAAS,SAG5DsC,QACDnO,GACH2P,EAAU,CACR7D,EAAG8H,EACH7H,EAAG9C,EAAU8C,EAAI7c,EAAQ2c,mBAIxBnD,GACHiH,EAAU,CACR7D,EAAG8H,EACH7H,EAAG9C,EAAU8C,EAAI9C,EAAU4C,mBAI1BlD,GACHgH,EAAU,CACR7D,EAAG7C,EAAU6C,EAAI7C,EAAU2C,MAC3BG,EAAG8H,cAIF3T,GACHyP,EAAU,CACR7D,EAAG7C,EAAU6C,EAAI5c,EAAQ0c,MACzBG,EAAG8H,iBAKLlE,EAAU,CACR7D,EAAG7C,EAAU6C,EACbC,EAAG9C,EAAU8C,OAIf+H,EAAW3F,EAAgBb,GAAyBa,GAAiB,QAEzD,MAAZ2F,EAAkB,KAChBrb,EAAmB,MAAbqb,EAAmB,SAAW,eAEhCH,QACD9P,GACH8L,EAAQmE,GAAYnE,EAAQmE,IAAa7K,EAAUxQ,GAAO,EAAIvJ,EAAQuJ,GAAO,cAG1EyL,GACHyL,EAAQmE,GAAYnE,EAAQmE,IAAa7K,EAAUxQ,GAAO,EAAIvJ,EAAQuJ,GAAO,WAO5EkX,EC1DM,SAASoE,GAAelJ,EAAOO,QAC5B,IAAZA,IACFA,EAAU,QAGR4I,EAAW5I,EACX6I,EAAqBD,EAAS3K,UAC9BA,OAAmC,IAAvB4K,EAAgCpJ,EAAMxB,UAAY4K,EAC9DC,EAAoBF,EAASG,SAC7BA,OAAiC,IAAtBD,EAA+BpL,GAAkBoL,EAC5DE,EAAwBJ,EAASK,aACjCA,OAAyC,IAA1BD,EAAmCrL,GAAWqL,EAC7DE,EAAwBN,EAASO,eACjCA,OAA2C,IAA1BD,EAAmCtL,GAASsL,EAC7DE,EAAuBR,EAASS,YAChCA,OAAuC,IAAzBD,GAA0CA,EACxDE,EAAmBV,EAAS3F,QAC5BA,OAA+B,IAArBqG,EAA8B,EAAIA,EAC5C9G,EAAgBD,GAAsC,iBAAZU,EAAuBA,EAAUR,GAAgBQ,EAASxF,KACpG8L,EAAaJ,IAAmBvL,GAASC,GAAYD,GACrD4L,EAAmB/J,EAAMC,SAAS7B,UAClCyG,EAAa7E,EAAMyD,MAAMtF,OACzB9Z,EAAU2b,EAAMC,SAAS2J,EAAcE,EAAaJ,GACpDM,ELmBS,SAAyB3lB,EAASilB,EAAUE,OACrDS,EAAmC,oBAAbX,EAlB5B,SAA4BjlB,OACtB4Z,EAAkB0J,GAAkBhG,GAActd,IAElD6lB,EADoB,CAAC,WAAY,SAAS7d,QAAQ1D,GAAiBtE,GAASkR,WAAa,GACnDmK,GAAcrb,GAAW0d,GAAgB1d,GAAWA,SAEzF6C,GAAUgjB,GAKRjM,EAAgBjZ,QAAO,SAAUkjB,UAC/BhhB,GAAUghB,IAAmBnf,GAASmf,EAAgBgC,IAAmD,SAAhC9K,GAAY8I,MALrF,GAYkDiC,CAAmB9lB,GAAW,GAAGG,OAAO8kB,GAC/FrL,EAAkB,GAAGzZ,OAAOylB,EAAqB,CAACT,IAClDY,EAAsBnM,EAAgB,GACtCoM,EAAepM,EAAgBK,QAAO,SAAUgM,EAASpC,OACvDjT,EAAOgT,GAA2B5jB,EAAS6jB,UAC/CoC,EAAQnV,IAAM5I,GAAI0I,EAAKE,IAAKmV,EAAQnV,KACpCmV,EAAQxM,MAAQtR,GAAIyI,EAAK6I,MAAOwM,EAAQxM,OACxCwM,EAAQzM,OAASrR,GAAIyI,EAAK4I,OAAQyM,EAAQzM,QAC1CyM,EAAQjV,KAAO9I,GAAI0I,EAAKI,KAAMiV,EAAQjV,MAC/BiV,IACNrC,GAA2B5jB,EAAS+lB,WACvCC,EAAatJ,MAAQsJ,EAAavM,MAAQuM,EAAahV,KACvDgV,EAAarJ,OAASqJ,EAAaxM,OAASwM,EAAalV,IACzDkV,EAAapJ,EAAIoJ,EAAahV,KAC9BgV,EAAanJ,EAAImJ,EAAalV,IACvBkV,EKnCkBE,CAAgBrjB,GAAU7C,GAAWA,EAAUA,EAAQmmB,gBAAkB9I,GAAmB1B,EAAMC,SAAS9B,QAASmL,EAAUE,GACnJiB,EAAsBvV,GAAsB6U,GAC5C3G,EAAgByF,GAAe,CACjCzK,UAAWqM,EACXpmB,QAASwgB,EACTrE,SAAU,WACVhC,UAAWA,IAETkM,EAAmB1C,GAAiBrgB,OAAOwY,OAAO,GAAI0E,EAAYzB,IAClEuH,EAAoBjB,IAAmBvL,GAASuM,EAAmBD,EAGnEG,EAAkB,CACpBzV,IAAK6U,EAAmB7U,IAAMwV,EAAkBxV,IAAM4N,EAAc5N,IACpE0I,OAAQ8M,EAAkB9M,OAASmM,EAAmBnM,OAASkF,EAAclF,OAC7ExI,KAAM2U,EAAmB3U,KAAOsV,EAAkBtV,KAAO0N,EAAc1N,KACvEyI,MAAO6M,EAAkB7M,MAAQkM,EAAmBlM,MAAQiF,EAAcjF,OAExE+M,EAAa7K,EAAMqD,cAAcrO,UAEjC0U,IAAmBvL,IAAU0M,EAAY,KACvC7V,EAAS6V,EAAWrM,GACxB7W,OAAOC,KAAKgjB,GAAiB/iB,SAAQ,SAAUqJ,OACzC4Z,EAAW,CAAChN,GAAOD,IAAQxR,QAAQ6E,IAAQ,EAAI,GAAK,EACpDqS,EAAO,CAACpO,GAAK0I,IAAQxR,QAAQ6E,IAAQ,EAAI,IAAM,IACnD0Z,EAAgB1Z,IAAQ8D,EAAOuO,GAAQuH,YAIpCF,EC1DM,SAASG,GAAqB/K,EAAOO,QAClC,IAAZA,IACFA,EAAU,QAGR4I,EAAW5I,EACX/B,EAAY2K,EAAS3K,UACrB8K,EAAWH,EAASG,SACpBE,EAAeL,EAASK,aACxBhG,EAAU2F,EAAS3F,QACnBwH,EAAiB7B,EAAS6B,eAC1BC,EAAwB9B,EAAS+B,sBACjCA,OAAkD,IAA1BD,EAAmCE,GAAgBF,EAC3EnC,EAAYF,GAAapK,GACzBC,EAAaqK,EAAYkC,EAAiB3M,GAAsBA,GAAoBrZ,QAAO,SAAUwZ,UAChGoK,GAAapK,KAAesK,KAChC9K,GACDoN,EAAoB3M,EAAWzZ,QAAO,SAAUwZ,UAC3C0M,EAAsB7e,QAAQmS,IAAc,KAGpB,IAA7B4M,EAAkB9jB,SACpB8jB,EAAoB3M,OAQlB4M,EAAYD,EAAkB9M,QAAO,SAAUC,EAAKC,UACtDD,EAAIC,GAAa0K,GAAelJ,EAAO,CACrCxB,UAAWA,EACX8K,SAAUA,EACVE,aAAcA,EACdhG,QAASA,IACR1C,GAAiBtC,IACbD,IACN,WACI5W,OAAOC,KAAKyjB,GAAWC,MAAK,SAAUC,EAAGC,UACvCH,EAAUE,GAAKF,EAAUG,aC6FrB,CACbnhB,KAAM,OACNwV,SAAS,EACTC,MAAO,OACPtV,GA5HF,SAAcuV,OACRC,EAAQD,EAAKC,MACbO,EAAUR,EAAKQ,QACflW,EAAO0V,EAAK1V,SAEZ2V,EAAMqD,cAAchZ,GAAMohB,eAI1BC,EAAoBnL,EAAQ0I,SAC5B0C,OAAsC,IAAtBD,GAAsCA,EACtDE,EAAmBrL,EAAQsL,QAC3BC,OAAoC,IAArBF,GAAqCA,EACpDG,EAA8BxL,EAAQyL,mBACtCxI,EAAUjD,EAAQiD,QAClB8F,EAAW/I,EAAQ+I,SACnBE,EAAejJ,EAAQiJ,aACvBI,EAAcrJ,EAAQqJ,YACtBqC,EAAwB1L,EAAQyK,eAChCA,OAA2C,IAA1BiB,GAA0CA,EAC3Df,EAAwB3K,EAAQ2K,sBAChCgB,EAAqBlM,EAAMO,QAAQ/B,UACnC8E,EAAgBxC,GAAiBoL,GAEjCF,EAAqBD,IADHzI,IAAkB4I,GACqClB,EAjC/E,SAAuCxM,MACjCsC,GAAiBtC,KAAeT,SAC3B,OAGLoO,EAAoBrF,GAAqBtI,SACtC,CAACwI,GAA8BxI,GAAY2N,EAAmBnF,GAA8BmF,IA2BwCC,CAA8BF,GAA3E,CAACpF,GAAqBoF,KAChHzN,EAAa,CAACyN,GAAoB1nB,OAAOwnB,GAAoB1N,QAAO,SAAUC,EAAKC,UAC9ED,EAAI/Z,OAAOsc,GAAiBtC,KAAeT,GAAOgN,GAAqB/K,EAAO,CACnFxB,UAAWA,EACX8K,SAAUA,EACVE,aAAcA,EACdhG,QAASA,EACTwH,eAAgBA,EAChBE,sBAAuBA,IACpB1M,KACJ,IACC6N,EAAgBrM,EAAMyD,MAAMrF,UAC5ByG,EAAa7E,EAAMyD,MAAMtF,OACzBmO,EAAY,IAAI/a,IAChBgb,GAAqB,EACrBC,EAAwB/N,EAAW,GAE9B9Q,EAAI,EAAGA,EAAI8Q,EAAWnX,OAAQqG,IAAK,KACtC6Q,EAAYC,EAAW9Q,GAEvB8e,EAAiB3L,GAAiBtC,GAElCkO,EAAmB9D,GAAapK,KAAexF,GAC/C2T,EAAa,CAACxX,GAAK0I,IAAQxR,QAAQogB,IAAmB,EACtD7e,EAAM+e,EAAa,QAAU,SAC7BpF,EAAW2B,GAAelJ,EAAO,CACnCxB,UAAWA,EACX8K,SAAUA,EACVE,aAAcA,EACdI,YAAaA,EACbpG,QAASA,IAEPoJ,EAAoBD,EAAaD,EAAmB5O,GAAQzI,GAAOqX,EAAmB7O,GAAS1I,GAE/FkX,EAAcze,GAAOiX,EAAWjX,KAClCgf,EAAoB9F,GAAqB8F,QAGvCC,EAAmB/F,GAAqB8F,GACxCE,EAAS,MAETnB,GACFmB,EAAOrnB,KAAK8hB,EAASkF,IAAmB,GAGtCX,GACFgB,EAAOrnB,KAAK8hB,EAASqF,IAAsB,EAAGrF,EAASsF,IAAqB,GAG1EC,EAAOC,OAAM,SAAUC,UAClBA,KACL,CACFR,EAAwBhO,EACxB+N,GAAqB,QAIvBD,EAAU9a,IAAIgN,EAAWsO,MAGvBP,UAIEU,EAAQ,SAAeC,OACrBC,EAAmB1O,EAAWta,MAAK,SAAUqa,OAC3CsO,EAASR,EAAUlb,IAAIoN,MAEvBsO,SACKA,EAAO7c,MAAM,EAAGid,GAAIH,OAAM,SAAUC,UAClCA,WAKTG,SACFX,EAAwBW,EACjB,SAIFD,EAnBYlC,EAAiB,EAAI,EAmBZkC,EAAK,GAGpB,UAFFD,EAAMC,GADmBA,KAOpClN,EAAMxB,YAAcgO,IACtBxM,EAAMqD,cAAchZ,GAAMohB,OAAQ,EAClCzL,EAAMxB,UAAYgO,EAClBxM,EAAMoN,OAAQ,KAUhB3I,iBAAkB,CAAC,UACnBhR,KAAM,CACJgY,OAAO,IC7IX,SAAS4B,GAAe9F,EAAUtS,EAAMqY,eACb,IAArBA,IACFA,EAAmB,CACjBrM,EAAG,EACHC,EAAG,IAIA,CACL/L,IAAKoS,EAASpS,IAAMF,EAAK+L,OAASsM,EAAiBpM,EACnDpD,MAAOyJ,EAASzJ,MAAQ7I,EAAK8L,MAAQuM,EAAiBrM,EACtDpD,OAAQ0J,EAAS1J,OAAS5I,EAAK+L,OAASsM,EAAiBpM,EACzD7L,KAAMkS,EAASlS,KAAOJ,EAAK8L,MAAQuM,EAAiBrM,GAIxD,SAASsM,GAAsBhG,SACtB,CAACpS,GAAK2I,GAAOD,GAAQxI,IAAMmY,MAAK,SAAUC,UACxClG,EAASkG,IAAS,YAiCd,CACbpjB,KAAM,OACNwV,SAAS,EACTC,MAAO,OACP2E,iBAAkB,CAAC,mBACnBja,GAlCF,SAAcuV,OACRC,EAAQD,EAAKC,MACb3V,EAAO0V,EAAK1V,KACZgiB,EAAgBrM,EAAMyD,MAAMrF,UAC5ByG,EAAa7E,EAAMyD,MAAMtF,OACzBmP,EAAmBtN,EAAMqD,cAAcqK,gBACvCC,EAAoBzE,GAAelJ,EAAO,CAC5C0J,eAAgB,cAEdkE,EAAoB1E,GAAelJ,EAAO,CAC5C4J,aAAa,IAEXiE,EAA2BR,GAAeM,EAAmBtB,GAC7DyB,EAAsBT,GAAeO,EAAmB/I,EAAYyI,GACpES,EAAoBR,GAAsBM,GAC1CG,EAAmBT,GAAsBO,GAC7C9N,EAAMqD,cAAchZ,GAAQ,CAC1BwjB,yBAA0BA,EAC1BC,oBAAqBA,EACrBC,kBAAmBA,EACnBC,iBAAkBA,GAEpBhO,EAAMrL,WAAWwJ,OAASxW,OAAOwY,OAAO,GAAIH,EAAMrL,WAAWwJ,OAAQ,gCACnC4P,wBACTC,SCHZ,CACb3jB,KAAM,SACNwV,SAAS,EACTC,MAAO,OACPe,SAAU,CAAC,iBACXrW,GA5BF,SAAgB6V,OACVL,EAAQK,EAAML,MACdO,EAAUF,EAAME,QAChBlW,EAAOgW,EAAMhW,KACb4jB,EAAkB1N,EAAQvL,OAC1BA,OAA6B,IAApBiZ,EAA6B,CAAC,EAAG,GAAKA,EAC/Cxa,EAAOgL,GAAWH,QAAO,SAAUC,EAAKC,UAC1CD,EAAIC,GA5BD,SAAiCA,EAAWiF,EAAOzO,OACpDsO,EAAgBxC,GAAiBtC,GACjC0P,EAAiB,CAAC7Y,GAAMF,IAAK9I,QAAQiX,IAAkB,GAAK,EAAI,EAEhEvD,EAAyB,mBAAX/K,EAAwBA,EAAOrN,OAAOwY,OAAO,GAAIsD,EAAO,CACxEjF,UAAWA,KACPxJ,EACFmZ,EAAWpO,EAAK,GAChBqO,EAAWrO,EAAK,UAEpBoO,EAAWA,GAAY,EACvBC,GAAYA,GAAY,GAAKF,EACtB,CAAC7Y,GAAMyI,IAAOzR,QAAQiX,IAAkB,EAAI,CACjDrC,EAAGmN,EACHlN,EAAGiN,GACD,CACFlN,EAAGkN,EACHjN,EAAGkN,GAWcC,CAAwB7P,EAAWwB,EAAMyD,MAAOzO,GAC1DuJ,IACN,IACC+P,EAAwB7a,EAAKuM,EAAMxB,WACnCyC,EAAIqN,EAAsBrN,EAC1BC,EAAIoN,EAAsBpN,EAEW,MAArClB,EAAMqD,cAAcD,gBACtBpD,EAAMqD,cAAcD,cAAcnC,GAAKA,EACvCjB,EAAMqD,cAAcD,cAAclC,GAAKA,GAGzClB,EAAMqD,cAAchZ,GAAQoJ,OCxBf,CACbpJ,KAAM,gBACNwV,SAAS,EACTC,MAAO,OACPtV,GApBF,SAAuBuV,OACjBC,EAAQD,EAAKC,MACb3V,EAAO0V,EAAK1V,KAKhB2V,EAAMqD,cAAchZ,GAAQwe,GAAe,CACzCzK,UAAW4B,EAAMyD,MAAMrF,UACvB/Z,QAAS2b,EAAMyD,MAAMtF,OACrBqC,SAAU,WACVhC,UAAWwB,EAAMxB,aAUnB/K,KAAM,OC6FO,CACbpJ,KAAM,kBACNwV,SAAS,EACTC,MAAO,OACPtV,GA5GF,SAAyBuV,OACnBC,EAAQD,EAAKC,MACbO,EAAUR,EAAKQ,QACflW,EAAO0V,EAAK1V,KACZqhB,EAAoBnL,EAAQ0I,SAC5B0C,OAAsC,IAAtBD,GAAsCA,EACtDE,EAAmBrL,EAAQsL,QAC3BC,OAAoC,IAArBF,GAAsCA,EACrDtC,EAAW/I,EAAQ+I,SACnBE,EAAejJ,EAAQiJ,aACvBI,EAAcrJ,EAAQqJ,YACtBpG,EAAUjD,EAAQiD,QAClB+K,EAAkBhO,EAAQiO,OAC1BA,OAA6B,IAApBD,GAAoCA,EAC7CE,EAAwBlO,EAAQmO,aAChCA,OAAyC,IAA1BD,EAAmC,EAAIA,EACtDlH,EAAW2B,GAAelJ,EAAO,CACnCsJ,SAAUA,EACVE,aAAcA,EACdhG,QAASA,EACToG,YAAaA,IAEXtG,EAAgBxC,GAAiBd,EAAMxB,WACvCsK,EAAYF,GAAa5I,EAAMxB,WAC/BmQ,GAAmB7F,EACnBG,EAAWxG,GAAyBa,GACpCuI,ECrCY,MDqCS5C,ECrCH,IAAM,IDsCxB7F,EAAgBpD,EAAMqD,cAAcD,cACpCiJ,EAAgBrM,EAAMyD,MAAMrF,UAC5ByG,EAAa7E,EAAMyD,MAAMtF,OACzByQ,EAA4C,mBAAjBF,EAA8BA,EAAa/mB,OAAOwY,OAAO,GAAIH,EAAMyD,MAAO,CACvGjF,UAAWwB,EAAMxB,aACbkQ,EACFjb,EAAO,CACTwN,EAAG,EACHC,EAAG,MAGAkC,MAIDuI,GAAiBG,EAAc,KAC7B+C,EAAwB,MAAb5F,EAAmB9T,GAAME,GACpCyZ,EAAuB,MAAb7F,EAAmBpL,GAASC,GACtClQ,EAAmB,MAAbqb,EAAmB,SAAW,QACpCjU,EAASoO,EAAc6F,GACvBzc,EAAM4W,EAAc6F,GAAY1B,EAASsH,GACzCtiB,EAAM6W,EAAc6F,GAAY1B,EAASuH,GACzCC,EAAWP,GAAU3J,EAAWjX,GAAO,EAAI,EAC3CohB,EAASlG,IAAc9P,GAAQqT,EAAcze,GAAOiX,EAAWjX,GAC/DqhB,EAASnG,IAAc9P,IAAS6L,EAAWjX,IAAQye,EAAcze,GAGjEuV,EAAenD,EAAMC,SAASS,MAC9BiD,EAAY6K,GAAUrL,EAAehC,GAAcgC,GAAgB,CACrEpC,MAAO,EACPC,OAAQ,GAENkO,EAAqBlP,EAAMqD,cAAc,oBAAsBrD,EAAMqD,cAAc,oBAAoBG,QxBtEtG,CACLrO,IAAK,EACL2I,MAAO,EACPD,OAAQ,EACRxI,KAAM,GwBmEF8Z,EAAkBD,EAAmBL,GACrCO,EAAkBF,EAAmBJ,GAMrCO,EAAW1M,GAAO,EAAG0J,EAAcze,GAAM+V,EAAU/V,IACnD0hB,EAAYX,EAAkBtC,EAAcze,GAAO,EAAImhB,EAAWM,EAAWF,EAAkBP,EAAoBI,EAASK,EAAWF,EAAkBP,EACzJW,EAAYZ,GAAmBtC,EAAcze,GAAO,EAAImhB,EAAWM,EAAWD,EAAkBR,EAAoBK,EAASI,EAAWD,EAAkBR,EAC1J5K,EAAoBhE,EAAMC,SAASS,OAASqB,GAAgB/B,EAAMC,SAASS,OAC3E8O,EAAexL,EAAiC,MAAbiF,EAAmBjF,EAAkBqE,WAAa,EAAIrE,EAAkBsE,YAAc,EAAI,EAC7HmH,EAAsBzP,EAAMqD,cAAcrO,OAASgL,EAAMqD,cAAcrO,OAAOgL,EAAMxB,WAAWyK,GAAY,EAC3GyG,EAAYtM,EAAc6F,GAAYqG,EAAYG,EAAsBD,EACxEG,EAAYvM,EAAc6F,GAAYsG,EAAYE,KAElD9D,EAAe,KACbiE,EAAkBjN,GAAO6L,EAAS3L,GAAQrW,EAAKkjB,GAAaljB,EAAKwI,EAAQwZ,EAAS5L,GAAQrW,EAAKojB,GAAapjB,GAChH6W,EAAc6F,GAAY2G,EAC1Bnc,EAAKwV,GAAY2G,EAAkB5a,KAGjC8W,EAAc,KACZ+D,EAAyB,MAAb5G,EAAmB9T,GAAME,GAErCya,EAAwB,MAAb7G,EAAmBpL,GAASC,GAEvCiS,EAAU3M,EAAcyI,GAExBmE,EAAOD,EAAUxI,EAASsI,GAE1BI,GAAOF,EAAUxI,EAASuI,GAE1BI,GAAmBvN,GAAO6L,EAAS3L,GAAQmN,EAAMN,GAAaM,EAAMD,EAASvB,EAAS5L,GAAQqN,GAAMN,GAAaM,IAErH7M,EAAcyI,GAAWqE,GACzBzc,EAAKoY,GAAWqE,GAAmBH,GAIvC/P,EAAMqD,cAAchZ,GAAQoJ,IAS5BgR,iBAAkB,CAAC,WEhHN,SAAS0L,GAAiBC,EAAyBtO,EAAcuO,QAC9D,IAAZA,IACFA,GAAU,OCPwB9Q,ECJOlb,EFcvCE,EAAkBmd,GAAmBI,GACrC7M,EAAOC,GAAsBkb,GAC7BE,EAA0B5Q,GAAcoC,GACxCyE,EAAS,CACXjR,WAAY,EACZF,UAAW,GAET0P,EAAU,CACZ7D,EAAG,EACHC,EAAG,UAGDoP,IAA4BA,IAA4BD,MACxB,SAA9BjR,GAAY0C,IAChBuF,GAAe9iB,MACbgiB,GCzBgChH,EDyBTuC,KCxBdxC,GAAUC,IAAUG,GAAcH,GCJxC,CACLjK,YAFyCjR,EDQbkb,GCNRjK,WACpBF,UAAW/Q,EAAQ+Q,WDGZ6R,GAAgB1H,ID0BnBG,GAAcoC,KAChBgD,EAAU5P,GAAsB4M,IACxBb,GAAKa,EAAawG,WAC1BxD,EAAQ5D,GAAKY,EAAauG,WACjB9jB,IACTugB,EAAQ7D,EAAImG,GAAoB7iB,KAI7B,CACL0c,EAAGhM,EAAKI,KAAOkR,EAAOjR,WAAawP,EAAQ7D,EAC3CC,EAAGjM,EAAKE,IAAMoR,EAAOnR,UAAY0P,EAAQ5D,EACzCH,MAAO9L,EAAK8L,MACZC,OAAQ/L,EAAK+L,QG3CjB,SAASvI,GAAM8X,OACTC,EAAM,IAAIjf,IACVkf,EAAU,IAAItjB,IACdujB,EAAS,YAKJpF,EAAKqF,GACZF,EAAQhX,IAAIkX,EAAStmB,MACN,GAAG7F,OAAOmsB,EAAS9P,UAAY,GAAI8P,EAASlM,kBAAoB,IACtE5c,SAAQ,SAAU+oB,OACpBH,EAAQpiB,IAAIuiB,GAAM,KACjBC,EAAcL,EAAIpf,IAAIwf,GAEtBC,GACFvF,EAAKuF,OAIXH,EAAOjrB,KAAKkrB,UAhBdJ,EAAU1oB,SAAQ,SAAU8oB,GAC1BH,EAAIhf,IAAImf,EAAStmB,KAAMsmB,MAkBzBJ,EAAU1oB,SAAQ,SAAU8oB,GACrBF,EAAQpiB,IAAIsiB,EAAStmB,OAExBihB,EAAKqF,MAGFD,ECfT,IAAII,GAAkB,CACpBtS,UAAW,SACX+R,UAAW,GACX/P,SAAU,YAGZ,SAASuQ,SACF,IAAIC,EAAOC,UAAU3pB,OAAQ8I,EAAO,IAAI0B,MAAMkf,GAAOE,EAAO,EAAGA,EAAOF,EAAME,IAC/E9gB,EAAK8gB,GAAQD,UAAUC,UAGjB9gB,EAAKod,MAAK,SAAUnpB,WACjBA,GAAoD,mBAAlCA,EAAQ6Q,0BAIhC,SAASic,GAAgBC,QACL,IAArBA,IACFA,EAAmB,QAGjBC,EAAoBD,EACpBE,EAAwBD,EAAkBE,iBAC1CA,OAA6C,IAA1BD,EAAmC,GAAKA,EAC3DE,EAAyBH,EAAkBI,eAC3CA,OAA4C,IAA3BD,EAAoCV,GAAkBU,SACpE,SAAsBpT,EAAWD,EAAQoC,QAC9B,IAAZA,IACFA,EAAUkR,OC5CiBjnB,EAC3BknB,ED8CE1R,EAAQ,CACVxB,UAAW,SACXmT,iBAAkB,GAClBpR,QAAS5Y,OAAOwY,OAAO,GAAI2Q,GAAiBW,GAC5CpO,cAAe,GACfpD,SAAU,CACR7B,UAAWA,EACXD,OAAQA,GAEVxJ,WAAY,GACZuL,OAAQ,IAEN0R,EAAmB,GACnBC,GAAc,EACdpgB,EAAW,CACbuO,MAAOA,EACP8R,WAAY,SAAoBvR,GAC9BwR,IACA/R,EAAMO,QAAU5Y,OAAOwY,OAAO,GAAIsR,EAAgBzR,EAAMO,QAASA,GACjEP,EAAM0G,cAAgB,CACpBtI,UAAWlX,GAAUkX,GAAauJ,GAAkBvJ,GAAaA,EAAUoM,eAAiB7C,GAAkBvJ,EAAUoM,gBAAkB,GAC1IrM,OAAQwJ,GAAkBxJ,QEpEAoS,EAC9ByB,EFuEML,EDtCG,SAAwBpB,OAEjCoB,EAAmBlZ,GAAM8X,UAEtBpR,GAAeb,QAAO,SAAUC,EAAKuB,UACnCvB,EAAI/Z,OAAOmtB,EAAiB3sB,QAAO,SAAU2rB,UAC3CA,EAAS7Q,QAAUA,QAE3B,IC8B0BmS,EExEK1B,EFwEsB,GAAG/rB,OAAO+sB,EAAkBvR,EAAMO,QAAQgQ,WEvE9FyB,EAASzB,EAAUjS,QAAO,SAAU0T,EAAQE,OAC1CC,EAAWH,EAAOE,EAAQ7nB,aAC9B2nB,EAAOE,EAAQ7nB,MAAQ8nB,EAAWxqB,OAAOwY,OAAO,GAAIgS,EAAUD,EAAS,CACrE3R,QAAS5Y,OAAOwY,OAAO,GAAIgS,EAAS5R,QAAS2R,EAAQ3R,SACrD9M,KAAM9L,OAAOwY,OAAO,GAAIgS,EAAS1e,KAAMye,EAAQze,QAC5Cye,EACEF,IACN,IAEIrqB,OAAOC,KAAKoqB,GAAQxB,KAAI,SAAUtf,UAChC8gB,EAAO9gB,eF+DV8O,EAAM2R,iBAAmBA,EAAiB3sB,QAAO,SAAUotB,UAClDA,EAAEvS,WAqJbG,EAAM2R,iBAAiB9pB,SAAQ,SAAUqd,OACnC7a,EAAO6a,EAAM7a,KACbgoB,EAAgBnN,EAAM3E,QACtBA,OAA4B,IAAlB8R,EAA2B,GAAKA,EAC1CjS,EAAS8E,EAAM9E,UAEG,mBAAXA,EAAuB,KAC5BkS,EAAYlS,EAAO,CACrBJ,MAAOA,EACP3V,KAAMA,EACNoH,SAAUA,EACV8O,QAASA,IAKXqR,EAAiBnsB,KAAK6sB,GAFT,kBA7HR7gB,EAASmV,UAOlB2L,YAAa,eACPV,OAIAW,EAAkBxS,EAAMC,SACxB7B,EAAYoU,EAAgBpU,UAC5BD,EAASqU,EAAgBrU,UAGxB4S,GAAiB3S,EAAWD,IASjC6B,EAAMyD,MAAQ,CACZrF,UAAW+R,GAAiB/R,EAAW2D,GAAgB5D,GAAoC,UAA3B6B,EAAMO,QAAQC,UAC9ErC,OAAQgD,GAAchD,IAOxB6B,EAAMoN,OAAQ,EACdpN,EAAMxB,UAAYwB,EAAMO,QAAQ/B,UAKhCwB,EAAM2R,iBAAiB9pB,SAAQ,SAAU8oB,UAChC3Q,EAAMqD,cAAcsN,EAAStmB,MAAQ1C,OAAOwY,OAAO,GAAIwQ,EAASld,aAIpE,IAAIrH,EAAQ,EAAGA,EAAQ4T,EAAM2R,iBAAiBrqB,OAAQ8E,QAUrC,IAAhB4T,EAAMoN,WAMNqF,EAAwBzS,EAAM2R,iBAAiBvlB,GAC/C5B,EAAKioB,EAAsBjoB,GAC3BkoB,EAAyBD,EAAsBlS,QAC/C4I,OAAsC,IAA3BuJ,EAAoC,GAAKA,EACpDroB,EAAOooB,EAAsBpoB,KAEf,mBAAPG,IACTwV,EAAQxV,EAAG,CACTwV,MAAOA,EACPO,QAAS4I,EACT9e,KAAMA,EACNoH,SAAUA,KACNuO,QAjBNA,EAAMoN,OAAQ,EACdhhB,GAAS,KAsBfwa,QCjM2Bpc,EDiMV,kBACR,IAAImoB,SAAQ,SAAUC,GAC3BnhB,EAAS8gB,cACTK,EAAQ5S,OClMT,kBACA0R,IACHA,EAAU,IAAIiB,SAAQ,SAAUC,GAC9BD,QAAQC,UAAUC,MAAK,WACrBnB,OAAUoB,EACVF,EAAQpoB,YAKPknB,ID2LLqB,QAAS,WACPhB,IACAF,GAAc,QAIbd,GAAiB3S,EAAWD,UAKxB1M,WAmCAsgB,IACPH,EAAiB/pB,SAAQ,SAAU2C,UAC1BA,OAETonB,EAAmB,UApCrBngB,EAASqgB,WAAWvR,GAASsS,MAAK,SAAU7S,IACrC6R,GAAetR,EAAQyS,eAC1BzS,EAAQyS,cAAchT,MAqCnBvO,GAGJ,IAAIwhB,GAA4B9B,KGzPnC8B,GAA4B9B,GAAgB,CAC9CI,iBAFqB,CAAC2B,GAAgB9P,GAAe+P,GAAeC,MCMlEH,GAA4B9B,GAAgB,CAC9CI,iBAFqB,CAAC2B,GAAgB9P,GAAe+P,GAAeC,GAAape,GAAQqe,GAAM3F,GAAiBhN,GAAOhE,oiBCsBzH,MAAMpS,GAAO,WAKPgpB,GAAa,SACbC,GAAY,QAEZC,GAAe,UACfC,GAAiB,YAGjBC,GAAiB,IAAIrrB,OAAQ,4BAO7BsrB,GAAwB,6BACxBC,GAA0B,+BAG1BnY,GAAkB,OAMlB5H,GAAuB,8BACvBggB,GAAgB,iBAIhBC,GAAgB/pB,IAAU,UAAY,YACtCgqB,GAAmBhqB,IAAU,YAAc,UAC3CiqB,GAAmBjqB,IAAU,aAAe,eAC5CkqB,GAAsBlqB,IAAU,eAAiB,aACjDmqB,GAAkBnqB,IAAU,aAAe,cAC3CoqB,GAAiBpqB,IAAU,cAAgB,aAE3C2L,GAAU,CACdV,OAAQ,CAAC,EAAG,GACZsU,SAAU,kBACVlL,UAAW,SACXgW,QAAS,UACTC,aAAc,KACdC,WAAW,GAGPre,GAAc,CAClBjB,OAAQ,0BACRsU,SAAU,mBACVlL,UAAW,0BACXgW,QAAS,SACTC,aAAc,yBACdC,UAAW,oBASb,MAAMC,WAAiBriB,EACrBC,YAAY9N,EAASoD,SACbpD,QAEDmwB,QAAU,UACVpd,QAAUzI,KAAK0I,WAAW5P,QAC1BgtB,MAAQ9lB,KAAK+lB,uBACbC,UAAYhmB,KAAKimB,qBAEjBhd,iDAMElC,mCAIAO,4BAIA3L,GAKTyJ,SACMlL,EAAW8F,KAAKyD,YAIHzD,KAAKyD,SAAStJ,UAAUC,SAAS0S,SAG3CiB,YAIFC,QAGPA,UACM9T,EAAW8F,KAAKyD,WAAazD,KAAK8lB,MAAM3rB,UAAUC,SAAS0S,iBAIzDD,EAAS+Y,GAASM,qBAAqBlmB,KAAKyD,UAC5C3D,EAAgB,CACpBA,cAAeE,KAAKyD,cAGJpD,EAAamB,QAAQxB,KAAKyD,SAtG5B,mBAsGkD3D,GAEpDgC,qBAKV9B,KAAKgmB,UACPrgB,EAAYC,iBAAiB5F,KAAK8lB,MAAO,SAAU,YAC9C,SACiB,IAAXK,SACH,IAAIvsB,UAAU,oEAGlBwhB,EAAmBpb,KAAKyD,SAEG,WAA3BzD,KAAKyI,QAAQgH,UACf2L,EAAmBvO,EACVtU,EAAUyH,KAAKyI,QAAQgH,WAChC2L,EAAmB1iB,EAAWsH,KAAKyI,QAAQgH,WACA,iBAA3BzP,KAAKyI,QAAQgH,YAC7B2L,EAAmBpb,KAAKyI,QAAQgH,iBAG5BiW,EAAe1lB,KAAKomB,mBACpBC,EAAkBX,EAAa9D,UAAUpsB,MAAKwsB,GAA8B,gBAAlBA,EAAStmB,OAA+C,IAArBsmB,EAAS9Q,eAEvG2U,QAAUM,GAAoB/K,EAAkBpb,KAAK8lB,MAAOJ,GAE7DW,GACF1gB,EAAYC,iBAAiB5F,KAAK8lB,MAAO,SAAU,UAQnD,iBAAkBnwB,SAASC,kBAC5BiX,EAAOlI,QA9Hc,mBA+HnB9O,UAAUF,SAASuF,KAAK9E,UACxB8C,SAAQsU,GAAQnN,EAAaQ,GAAG2M,EAAM,YAAa5S,UAGnD6I,SAAS6iB,aACT7iB,SAAS4B,aAAa,iBAAiB,QAEvCygB,MAAM3rB,UAAUiL,OAAO0H,SACvBrJ,SAAStJ,UAAUiL,OAAO0H,IAC/BzM,EAAamB,QAAQxB,KAAKyD,SAtJT,oBAsJgC3D,IAGnDiO,UACM7T,EAAW8F,KAAKyD,YAAczD,KAAK8lB,MAAM3rB,UAAUC,SAAS0S,iBAI1DhN,EAAgB,CACpBA,cAAeE,KAAKyD,eAGjB8iB,cAAczmB,GAGrB8D,UACM5D,KAAK6lB,cACFA,QAAQzB,gBAGTxgB,UAGRqU,cACO+N,UAAYhmB,KAAKimB,gBAClBjmB,KAAK6lB,cACFA,QAAQ5N,SAMjBhP,qBACE5I,EAAaQ,GAAGb,KAAKyD,SAtLJ,qBAsL2BvE,IAC1CA,EAAMwD,sBACD0C,YAITmhB,cAAczmB,GACMO,EAAamB,QAAQxB,KAAKyD,SAjM5B,mBAiMkD3D,GACpDgC,mBAMV,iBAAkBnM,SAASC,oBAC1BC,UAAUF,SAASuF,KAAK9E,UACxB8C,SAAQsU,GAAQnN,EAAaC,IAAIkN,EAAM,YAAa5S,KAGrDoF,KAAK6lB,cACFA,QAAQzB,eAGV0B,MAAM3rB,UAAUkJ,OAAOyJ,SACvBrJ,SAAStJ,UAAUkJ,OAAOyJ,SAC1BrJ,SAAS4B,aAAa,gBAAiB,SAC5CM,EAAYE,oBAAoB7F,KAAK8lB,MAAO,UAC5CzlB,EAAamB,QAAQxB,KAAKyD,SApNR,qBAoNgC3D,IAGpD4I,WAAW5P,MACTA,EAAS,IACJkH,KAAKwD,YAAYuD,WACjBpB,EAAYI,kBAAkB/F,KAAKyD,aACnC3K,GAGLF,EAAgB+C,GAAM7C,EAAQkH,KAAKwD,YAAY8D,aAEf,iBAArBxO,EAAO2W,YAA2BlX,EAAUO,EAAO2W,YACV,mBAA3C3W,EAAO2W,UAAUlJ,4BAGlB,IAAI3M,UAAW,GAAE+B,GAAK9B,sHAGvBf,EAGTitB,yBACSxwB,EAAe2B,KAAK8I,KAAKyD,SAAUyhB,IAAe,GAG3DsB,sBACQC,EAAiBzmB,KAAKyD,SAAS/M,cAEjC+vB,EAAetsB,UAAUC,SAvON,kBAwOdmrB,MAGLkB,EAAetsB,UAAUC,SA1OJ,oBA2OhBorB,SAIHkB,EAAkF,QAA1E1sB,iBAAiBgG,KAAK8lB,OAAO7rB,iBAAiB,iBAAiBhC,cAEzEwuB,EAAetsB,UAAUC,SAnPP,UAoPbssB,EAAQtB,GAAmBD,GAG7BuB,EAAQpB,GAAsBD,GAGvCY,uBAC4D,OAAnDjmB,KAAKyD,SAASkB,QAAS,WAGhCgiB,mBACQtgB,OAAEA,GAAWrG,KAAKyI,cAEF,iBAAXpC,EACFA,EAAOrO,MAAM,KAAK6pB,KAAItc,GAAO5I,OAAO8O,SAASlG,EAAK,MAGrC,mBAAXc,EACFugB,GAAcvgB,EAAOugB,EAAY5mB,KAAKyD,UAGxC4C,EAGT+f,yBACQS,EAAwB,CAC5BhX,UAAW7P,KAAKwmB,gBAChB5E,UAAW,CAAC,CACVlmB,KAAM,kBACNkW,QAAS,CACP+I,SAAU3a,KAAKyI,QAAQkS,WAG3B,CACEjf,KAAM,SACNkW,QAAS,CACPvL,OAAQrG,KAAK2mB,uBAMU,WAAzB3mB,KAAKyI,QAAQgd,UACfoB,EAAsBjF,UAAY,CAAC,CACjClmB,KAAM,cACNwV,SAAS,KAIN,IACF2V,KACsC,mBAA9B7mB,KAAKyI,QAAQid,aAA8B1lB,KAAKyI,QAAQid,aAAamB,GAAyB7mB,KAAKyI,QAAQid,cAI1HoB,iBAAgBvkB,IAAEA,EAAFtF,OAAOA,UACf8pB,EAAQxxB,EAAeC,KApSF,8DAoS+BwK,KAAK8lB,OAAOzvB,OAAOyD,GAExEitB,EAAMpuB,QAMXyE,EAAqB2pB,EAAO9pB,EAAQsF,IAAQuiB,IAAiBiC,EAAMjvB,SAASmF,IAASqpB,iCAK9D5wB,EAASoD,SAC1BgM,EAAO8gB,GAAS7gB,oBAAoBrP,EAASoD,MAE7B,iBAAXA,EAAqB,SACF,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,6BAIcA,UACdkH,KAAK6E,MAAK,WACf+gB,GAASoB,kBAAkBhnB,KAAMlH,wBAInBoG,MACZA,IA1VmB,IA0VTA,EAAMwG,QAAiD,UAAfxG,EAAMqB,MA7VhD,QA6VoErB,EAAMqD,kBAIhF0kB,EAAU1xB,EAAeC,KAAK0P,QAE/B,IAAIlG,EAAI,EAAGC,EAAMgoB,EAAQtuB,OAAQqG,EAAIC,EAAKD,IAAK,OAC5CkoB,EAAUtB,GAAS1hB,YAAY+iB,EAAQjoB,QACxCkoB,IAAyC,IAA9BA,EAAQze,QAAQkd,uBAI3BuB,EAAQzjB,SAAStJ,UAAUC,SAAS0S,mBAInChN,EAAgB,CACpBA,cAAeonB,EAAQzjB,aAGrBvE,EAAO,OACHioB,EAAejoB,EAAMioB,eACrBC,EAAeD,EAAarvB,SAASovB,EAAQpB,UAEjDqB,EAAarvB,SAASovB,EAAQzjB,WACC,WAA9ByjB,EAAQze,QAAQkd,YAA2ByB,GACb,YAA9BF,EAAQze,QAAQkd,WAA2ByB,cAM1CF,EAAQpB,MAAM1rB,SAAS8E,EAAMjC,UAA4B,UAAfiC,EAAMqB,MA7X5C,QA6XgErB,EAAMqD,KAAoB,qCAAqC5I,KAAKuF,EAAMjC,OAAO8N,mBAItI,UAAf7L,EAAMqB,OACRT,EAAcunB,WAAanoB,GAI/BgoB,EAAQX,cAAczmB,gCAIEpK,UACnByC,EAAuBzC,IAAYA,EAAQgB,wCAGvBwI,MAQvB,kBAAkBvF,KAAKuF,EAAMjC,OAAO8N,SACtC7L,EAAMqD,MAAQqiB,IAAc1lB,EAAMqD,MAAQoiB,KACxCzlB,EAAMqD,MAAQuiB,IAAkB5lB,EAAMqD,MAAQsiB,IAC9C3lB,EAAMjC,OAAO0H,QAAQugB,MACtBH,GAAeprB,KAAKuF,EAAMqD,kBAIvB+kB,EAAWtnB,KAAK7F,UAAUC,SAAS0S,QAEpCwa,GAAYpoB,EAAMqD,MAAQoiB,aAI/BzlB,EAAMwD,iBACNxD,EAAMqoB,kBAEFrtB,EAAW8F,mBAITwnB,EAAkB,IAAMxnB,KAAKzJ,QAAQ2O,IAAwBlF,KAAOzK,EAAewB,KAAKiJ,KAAMkF,IAAsB,UAEtHhG,EAAMqD,MAAQoiB,IAChB6C,IAAkBlB,aAClBV,GAAS6B,cAIPvoB,EAAMqD,MAAQsiB,IAAgB3lB,EAAMqD,MAAQuiB,IACzCwC,GACHE,IAAkBE,aAGpB9B,GAAS1hB,YAAYsjB,KAAmBV,gBAAgB5nB,SAIrDooB,GAAYpoB,EAAMqD,MAAQqiB,IAC7BgB,GAAS6B,eAWfpnB,EAAaQ,GAAGlL,SAAUsvB,GAAwB/f,GAAsB0gB,GAAS+B,uBACjFtnB,EAAaQ,GAAGlL,SAAUsvB,GAAwBC,GAAeU,GAAS+B,uBAC1EtnB,EAAaQ,GAAGlL,SAAUqvB,GAAsBY,GAAS6B,YACzDpnB,EAAaQ,GAAGlL,SA7bc,6BA6bkBiwB,GAAS6B,YACzDpnB,EAAaQ,GAAGlL,SAAUqvB,GAAsB9f,IAAsB,SAAUhG,GAC9EA,EAAMwD,iBACNkjB,GAASoB,kBAAkBhnB,SAU7B1E,EAAmBsqB,ICpfnB,MAAMgC,GAAyB,oDACzBC,GAA0B,cAEhC,MAAMC,GACJtkB,mBACOC,SAAW9N,SAASuF,KAG3B6sB,iBAEQC,EAAgBryB,SAASC,gBAAgB4f,mBACxCje,KAAK0S,IAAIhP,OAAOgtB,WAAaD,GAGtCja,aACQqE,EAAQpS,KAAK+nB,gBACdG,wBAEAC,sBAAsBnoB,KAAKyD,SAAU,gBAAgB2kB,GAAmBA,EAAkBhW,SAE1F+V,sBAAsBP,GAAwB,gBAAgBQ,GAAmBA,EAAkBhW,SACnG+V,sBAAsBN,GAAyB,eAAeO,GAAmBA,EAAkBhW,IAG1G8V,wBACOG,sBAAsBroB,KAAKyD,SAAU,iBACrCA,SAASgL,MAAMmK,SAAW,SAGjCuP,sBAAsB1yB,EAAU6yB,EAAW9sB,SACnC+sB,EAAiBvoB,KAAK+nB,gBAWvBS,2BAA2B/yB,GAVHC,OACvBA,IAAYsK,KAAKyD,UAAYxI,OAAOgtB,WAAavyB,EAAQ8f,YAAc+S,cAItEF,sBAAsB3yB,EAAS4yB,SAC9BF,EAAkBntB,OAAOjB,iBAAiBtE,GAAS4yB,GACzD5yB,EAAQ+Y,MAAM6Z,GAAc,GAAE9sB,EAASmB,OAAOC,WAAWwrB,WAM7D3J,aACOgK,wBAAwBzoB,KAAKyD,SAAU,iBACvCglB,wBAAwBzoB,KAAKyD,SAAU,qBACvCglB,wBAAwBb,GAAwB,qBAChDa,wBAAwBZ,GAAyB,eAGxDQ,sBAAsB3yB,EAAS4yB,SACvBI,EAAchzB,EAAQ+Y,MAAM6Z,GAC9BI,GACF/iB,EAAYC,iBAAiBlQ,EAAS4yB,EAAWI,GAIrDD,wBAAwBhzB,EAAU6yB,QAW3BE,2BAA2B/yB,GAVHC,UACrB2D,EAAQsM,EAAYS,iBAAiB1Q,EAAS4yB,QAC/B,IAAVjvB,EACT3D,EAAQ+Y,MAAMka,eAAeL,IAE7B3iB,EAAYE,oBAAoBnQ,EAAS4yB,GACzC5yB,EAAQ+Y,MAAM6Z,GAAajvB,MAOjCmvB,2BAA2B/yB,EAAUmzB,GAC/BrwB,EAAU9C,GACZmzB,EAASnzB,GAETF,EAAeC,KAAKC,EAAUuK,KAAKyD,UAAUvK,QAAQ0vB,GAIzDC,uBACS7oB,KAAK+nB,WAAa,GClF7B,MAAMhhB,GAAU,CACdjN,WAAW,EACXmK,YAAY,EACZK,YAAa,OACbwkB,cAAe,MAGXxhB,GAAc,CAClBxN,UAAW,UACXmK,WAAY,UACZK,YAAa,mBACbwkB,cAAe,mBAKXhc,GAAkB,OAElBic,GAAmB,wBAEzB,MAAMC,GACJxlB,YAAY1K,QACL2P,QAAUzI,KAAK0I,WAAW5P,QAC1BmwB,aAAc,OACdxlB,SAAW,KAGlBuK,KAAKxS,GACEwE,KAAKyI,QAAQ3O,gBAKbovB,UAEDlpB,KAAKyI,QAAQxE,YACfpJ,EAAOmF,KAAKmpB,oBAGTA,cAAchvB,UAAU2Q,IAAIgC,SAE5Bsc,mBAAkB,KACrBjtB,EAAQX,OAbRW,EAAQX,GAiBZuS,KAAKvS,GACEwE,KAAKyI,QAAQ3O,gBAKbqvB,cAAchvB,UAAUkJ,OAAOyJ,SAE/Bsc,mBAAkB,UAChBxlB,UACLzH,EAAQX,OARRW,EAAQX,GAcZ2tB,kBACOnpB,KAAKyD,SAAU,OACZ4lB,EAAW1zB,SAAS2zB,cAAc,OACxCD,EAASE,UAnDa,iBAoDlBvpB,KAAKyI,QAAQxE,YACfolB,EAASlvB,UAAU2Q,IApDH,aAuDbrH,SAAW4lB,SAGXrpB,KAAKyD,SAGdiF,WAAW5P,UACTA,EAAS,IACJiO,MACmB,iBAAXjO,EAAsBA,EAAS,KAIrCwL,YAAc5L,EAAWI,EAAOwL,aACvC1L,EAvES,WAuEaE,EAAQwO,IACvBxO,EAGTowB,UACMlpB,KAAKipB,mBAIJxgB,QAAQnE,YAAYklB,YAAYxpB,KAAKmpB,eAE1C9oB,EAAaQ,GAAGb,KAAKmpB,cAAeJ,IAAiB,KACnD5sB,EAAQ6D,KAAKyI,QAAQqgB,uBAGlBG,aAAc,GAGrBrlB,UACO5D,KAAKipB,cAIV5oB,EAAaC,IAAIN,KAAKyD,SAAUslB,SAE3BtlB,SAASJ,cACT4lB,aAAc,GAGrBG,kBAAkB5tB,GAChBY,EAAuBZ,EAAUwE,KAAKmpB,cAAenpB,KAAKyI,QAAQxE,aChGtE,MAAMtI,GAAO,QAIPgpB,GAAa,SAEb5d,GAAU,CACdsiB,UAAU,EACVpiB,UAAU,EACVqf,OAAO,GAGHhf,GAAc,CAClB+hB,SAAU,mBACVpiB,SAAU,UACVqf,MAAO,WAKHmD,GAAgB,kBAChBC,GAAc,gBAEdC,GAAiB,mBACjBC,GAAgB,kBAChBC,GAAuB,yBACvBC,GAAyB,2BAEzBC,GAA2B,6BAG3BC,GAAkB,aAElBld,GAAkB,OAClBmd,GAAoB,eAa1B,MAAMC,WAAc3mB,EAClBC,YAAY9N,EAASoD,SACbpD,QAED+S,QAAUzI,KAAK0I,WAAW5P,QAC1BqxB,QAAU50B,EAAeW,QAhBV,gBAgBmC8J,KAAKyD,eACvD2mB,UAAYpqB,KAAKqqB,2BACjBC,UAAW,OACXC,sBAAuB,OACvBnd,kBAAmB,OACnBod,WAAa,IAAI1C,+BAMf/gB,4BAIApL,GAKTyJ,OAAOtF,UACEE,KAAKsqB,SAAWtqB,KAAK+N,OAAS/N,KAAKgO,KAAKlO,GAGjDkO,KAAKlO,GACCE,KAAKsqB,UAAYtqB,KAAKoN,kBAIR/M,EAAamB,QAAQxB,KAAKyD,SAAUimB,GAAY,CAChE5pB,cAAAA,IAGYgC,wBAITwoB,UAAW,EAEZtqB,KAAKyqB,qBACFrd,kBAAmB,QAGrBod,WAAWzc,OAEhBpY,SAASuF,KAAKf,UAAU2Q,IAAIkf,SAEvBU,qBAEAC,uBACAC,kBAELvqB,EAAaQ,GAAGb,KAAKyD,SAAUomB,GAjEL,6BAiEiD3qB,GAASc,KAAK+N,KAAK7O,KAE9FmB,EAAaQ,GAAGb,KAAKmqB,QAASJ,IAAyB,KACrD1pB,EAAaS,IAAId,KAAKyD,SAhFG,4BAgF8BvE,IACjDA,EAAMjC,SAAW+C,KAAKyD,gBACnB8mB,sBAAuB,cAK7BM,eAAc,IAAM7qB,KAAK8qB,aAAahrB,MAG7CiO,KAAK7O,MACCA,GAAS,CAAC,IAAK,QAAQpH,SAASoH,EAAMjC,OAAO8N,UAC/C7L,EAAMwD,kBAGH1C,KAAKsqB,UAAYtqB,KAAKoN,2BAIT/M,EAAamB,QAAQxB,KAAKyD,SA5G5B,iBA8GF3B,6BAITwoB,UAAW,QACVrmB,EAAajE,KAAKyqB,cAEpBxmB,SACGmJ,kBAAmB,QAGrBud,uBACAC,kBAELvqB,EAAaC,IAAI3K,SAAUg0B,SAEtBlmB,SAAStJ,UAAUkJ,OAAOyJ,IAE/BzM,EAAaC,IAAIN,KAAKyD,SAAUomB,IAChCxpB,EAAaC,IAAIN,KAAKmqB,QAASJ,SAE1B/lB,gBAAe,IAAMhE,KAAK+qB,cAAc/qB,KAAKyD,SAAUQ,GAG9DL,WACG3I,OAAQ+E,KAAKmqB,SACXjxB,SAAQ8xB,GAAe3qB,EAAaC,IAAI0qB,EAxJ5B,oBA0JVZ,UAAUxmB,gBACTA,UAONvD,EAAaC,IAAI3K,SAAUg0B,IAG7BsB,oBACOP,gBAKPL,6BACS,IAAIrB,GAAS,CAClBlvB,UAAW8G,QAAQZ,KAAKyI,QAAQ4gB,UAChCplB,WAAYjE,KAAKyqB,gBAIrB/hB,WAAW5P,UACTA,EAAS,IACJiO,MACApB,EAAYI,kBAAkB/F,KAAKyD,aAChB,iBAAX3K,EAAsBA,EAAS,IAE5CF,EAAgB+C,GAAM7C,EAAQwO,IACvBxO,EAGTgyB,aAAahrB,SACLmE,EAAajE,KAAKyqB,cAClBS,EAAY31B,EAAeW,QA3JT,cA2JsC8J,KAAKmqB,SAE9DnqB,KAAKyD,SAAS/M,YAAcsJ,KAAKyD,SAAS/M,WAAWC,WAAaC,KAAKC,cAE1ElB,SAASuF,KAAKsuB,YAAYxpB,KAAKyD,eAG5BA,SAASgL,MAAMgX,QAAU,aACzBhiB,SAASqC,gBAAgB,oBACzBrC,SAAS4B,aAAa,cAAc,QACpC5B,SAAS4B,aAAa,OAAQ,eAC9B5B,SAASgD,UAAY,EAEtBykB,IACFA,EAAUzkB,UAAY,GAGpBxC,GACFpJ,EAAOmF,KAAKyD,eAGTA,SAAStJ,UAAU2Q,IAAIgC,IAExB9M,KAAKyI,QAAQ6d,YACV6E,qBAcFnnB,gBAXsB,KACrBhE,KAAKyI,QAAQ6d,YACV7iB,SAAS6iB,aAGXlZ,kBAAmB,EACxB/M,EAAamB,QAAQxB,KAAKyD,SA3MX,iBA2MkC,CAC/C3D,cAAAA,MAIoCE,KAAKmqB,QAASlmB,GAGxDknB,gBACE9qB,EAAaC,IAAI3K,SAAUg0B,IAC3BtpB,EAAaQ,GAAGlL,SAAUg0B,IAAezqB,IACnCvJ,WAAauJ,EAAMjC,QACnB+C,KAAKyD,WAAavE,EAAMjC,QACvB+C,KAAKyD,SAASrJ,SAAS8E,EAAMjC,cAC3BwG,SAAS6iB,WAKpBqE,kBACM3qB,KAAKsqB,SACPjqB,EAAaQ,GAAGb,KAAKyD,SAAUqmB,IAAuB5qB,IAChDc,KAAKyI,QAAQxB,UAAY/H,EAAMqD,MAAQoiB,IACzCzlB,EAAMwD,sBACDqL,QACK/N,KAAKyI,QAAQxB,UAAY/H,EAAMqD,MAAQoiB,SAC5CyG,gCAIT/qB,EAAaC,IAAIN,KAAKyD,SAAUqmB,IAIpCc,kBACM5qB,KAAKsqB,SACPjqB,EAAaQ,GAAG5F,OAAQ2uB,IAAc,IAAM5pB,KAAK0qB,kBAEjDrqB,EAAaC,IAAIrF,OAAQ2uB,IAI7BmB,kBACOtnB,SAASgL,MAAMgX,QAAU,YACzBhiB,SAAS4B,aAAa,eAAe,QACrC5B,SAASqC,gBAAgB,mBACzBrC,SAASqC,gBAAgB,aACzBsH,kBAAmB,OACnBgd,UAAUrc,MAAK,KAClBpY,SAASuF,KAAKf,UAAUkJ,OAAO2mB,SAC1BqB,yBACAb,WAAW/L,QAChBpe,EAAamB,QAAQxB,KAAKyD,SAAUgmB,OAIxCoB,cAAcrvB,GACZ6E,EAAaQ,GAAGb,KAAKyD,SAAUomB,IAAqB3qB,IAC9Cc,KAAKuqB,0BACFA,sBAAuB,EAI1BrrB,EAAMjC,SAAWiC,EAAMosB,iBAIG,IAA1BtrB,KAAKyI,QAAQ4gB,cACVtb,OAC8B,WAA1B/N,KAAKyI,QAAQ4gB,eACjB+B,sCAIJhB,UAAUpc,KAAKxS,GAGtBivB,qBACSzqB,KAAKyD,SAAStJ,UAAUC,SA/QX,QAkRtBgxB,gCACoB/qB,EAAamB,QAAQxB,KAAKyD,SAhSlB,0BAiSZ3B,8BAIR3H,UAAEA,EAAF4f,aAAaA,EAAbtL,MAA2BA,GAAUzO,KAAKyD,SAC1C8nB,EAAqBxR,EAAepkB,SAASC,gBAAgB2f,cAG7DgW,GAA0C,WAApB9c,EAAMqK,WAA2B3e,EAAUC,SAAS6vB,MAI3EsB,IACH9c,EAAMqK,UAAY,UAGpB3e,EAAU2Q,IAAImf,SACTjmB,gBAAe,KAClB7J,EAAUkJ,OAAO4mB,IACZsB,QACEvnB,gBAAe,KAClByK,EAAMqK,UAAY,KACjB9Y,KAAKmqB,WAETnqB,KAAKmqB,cAEH1mB,SAAS6iB,SAOhBoE,sBACQa,EAAqBvrB,KAAKyD,SAASsW,aAAepkB,SAASC,gBAAgB2f,aAC3EgT,EAAiBvoB,KAAKwqB,WAAWzC,WACjCyD,EAAoBjD,EAAiB,IAErCiD,GAAqBD,IAAuBnwB,KAAaowB,IAAsBD,GAAsBnwB,YACpGqI,SAASgL,MAAMgd,YAAe,GAAElD,QAGlCiD,IAAsBD,IAAuBnwB,MAAcowB,GAAqBD,GAAsBnwB,YACpGqI,SAASgL,MAAMid,aAAgB,GAAEnD,OAI1C8C,yBACO5nB,SAASgL,MAAMgd,YAAc,QAC7BhoB,SAASgL,MAAMid,aAAe,0BAKd5yB,EAAQgH,UACtBE,KAAK6E,MAAK,iBACTC,EAAOolB,GAAMnlB,oBAAoB/E,KAAMlH,MAEvB,iBAAXA,WAIiB,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,GAAQgH,QAWnBO,EAAaQ,GAAGlL,SApWc,0BASD,4BA2VyC,SAAUuJ,SACxEjC,EAAS9E,EAAuB6H,MAElC,CAAC,IAAK,QAAQlI,SAASkI,KAAK+K,UAC9B7L,EAAMwD,iBAGRrC,EAAaS,IAAI7D,EAAQysB,IAAYiC,IAC/BA,EAAU7pB,kBAKdzB,EAAaS,IAAI7D,EAAQwsB,IAAc,KACjC3vB,EAAUkG,YACPsmB,cAKE4D,GAAMnlB,oBAAoB9H,GAElCmI,OAAOpF,SAUd1E,EAAmB4uB,IClanB,MAAMvuB,GAAO,YAOPoL,GAAU,CACdsiB,UAAU,EACVpiB,UAAU,EACV2Q,QAAQ,GAGJtQ,GAAc,CAClB+hB,SAAU,UACVpiB,SAAU,UACV2Q,OAAQ,WAGJ9K,GAAkB,OAClB8e,GAAgB,kBAKhBnC,GAAgB,sBAChBE,GAAiB,uBAcvB,MAAMkC,WAAkBtoB,EACtBC,YAAY9N,EAASoD,SACbpD,QAED+S,QAAUzI,KAAK0I,WAAW5P,QAC1BwxB,UAAW,OACXF,UAAYpqB,KAAKqqB,2BACjBphB,8CAMEtN,+BAIAoL,GAKT3B,OAAOtF,UACEE,KAAKsqB,SAAWtqB,KAAK+N,OAAS/N,KAAKgO,KAAKlO,GAGjDkO,KAAKlO,GACCE,KAAKsqB,UAISjqB,EAAamB,QAAQxB,KAAKyD,SAjD5B,oBAiDkD,CAAE3D,cAAAA,IAEtDgC,wBAITwoB,UAAW,OACX7mB,SAASgL,MAAMqd,WAAa,eAE5B1B,UAAUpc,OAEVhO,KAAKyI,QAAQmP,cACZkQ,IAAkB/Z,YACjBge,uBAAuB/rB,KAAKyD,gBAG9BA,SAASqC,gBAAgB,oBACzBrC,SAAS4B,aAAa,cAAc,QACpC5B,SAAS4B,aAAa,OAAQ,eAC9B5B,SAAStJ,UAAU2Q,IAAIgC,SAMvB9I,gBAJoB,KACvB3D,EAAamB,QAAQxB,KAAKyD,SAtEX,qBAsEkC,CAAE3D,cAAAA,MAGfE,KAAKyD,UAAU,IAGvDsK,OACO/N,KAAKsqB,WAIQjqB,EAAamB,QAAQxB,KAAKyD,SAhF5B,qBAkFF3B,mBAIdzB,EAAaC,IAAI3K,SAAUg0B,SACtBlmB,SAASuoB,YACT1B,UAAW,OACX7mB,SAAStJ,UAAUkJ,OAAOyJ,SAC1Bsd,UAAUrc,YAeV/J,gBAboB,UAClBP,SAAS4B,aAAa,eAAe,QACrC5B,SAASqC,gBAAgB,mBACzBrC,SAASqC,gBAAgB,aACzBrC,SAASgL,MAAMqd,WAAa,SAE5B9rB,KAAKyI,QAAQmP,aACZkQ,IAAkBrJ,QAGxBpe,EAAamB,QAAQxB,KAAKyD,SAAUgmB,MAGAzpB,KAAKyD,UAAU,KAGvDG,eACOwmB,UAAUxmB,gBACTA,UACNvD,EAAaC,IAAI3K,SAAUg0B,IAK7BjhB,WAAW5P,UACTA,EAAS,IACJiO,MACApB,EAAYI,kBAAkB/F,KAAKyD,aAChB,iBAAX3K,EAAsBA,EAAS,IAE5CF,EAAgB+C,GAAM7C,EAAQwO,IACvBxO,EAGTuxB,6BACS,IAAIrB,GAAS,CAClBlvB,UAAWkG,KAAKyI,QAAQ4gB,SACxBplB,YAAY,EACZK,YAAatE,KAAKyD,SAAS/M,WAC3BoyB,cAAe,IAAM9oB,KAAK+N,SAI9Bge,uBAAuBr2B,GACrB2K,EAAaC,IAAI3K,SAAUg0B,IAC3BtpB,EAAaQ,GAAGlL,SAAUg0B,IAAezqB,IACnCvJ,WAAauJ,EAAMjC,QACrBvH,IAAYwJ,EAAMjC,QACjBvH,EAAQ0E,SAAS8E,EAAMjC,SACxBvH,EAAQ4wB,WAGZ5wB,EAAQ4wB,QAGVrd,qBACE5I,EAAaQ,GAAGb,KAAKyD,SAhJI,6BAGC,iCA6IiD,IAAMzD,KAAK+N,SAEtF1N,EAAaQ,GAAGb,KAAKyD,SAjJM,gCAiJ2BvE,IAChDc,KAAKyI,QAAQxB,UA1KJ,WA0KgB/H,EAAMqD,UAC5BwL,iCAOYjV,UACdkH,KAAK6E,MAAK,iBACTC,EAAO+mB,GAAU9mB,oBAAoB/E,KAAMlH,MAE3B,iBAAXA,WAIUqrB,IAAjBrf,EAAKhM,IAAyBA,EAAOf,WAAW,MAAmB,gBAAXe,QACpD,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,GAAQkH,WAWnBK,EAAaQ,GAAGlL,SAnLc,8BAKD,gCA8KyC,SAAUuJ,SACxEjC,EAAS9E,EAAuB6H,SAElC,CAAC,IAAK,QAAQlI,SAASkI,KAAK+K,UAC9B7L,EAAMwD,iBAGJxI,EAAW8F,aAIfK,EAAaS,IAAI7D,EAAQwsB,IAAc,KAEjC3vB,EAAUkG,YACPsmB,iBAKH2F,EAAe12B,EAAeW,QAAQ01B,IACxCK,GAAgBA,IAAiBhvB,GACnC4uB,GAAU3nB,YAAY+nB,GAAcle,OAGzB8d,GAAU9mB,oBAAoB9H,GACtCmI,OAAOpF,SAGdK,EAAaQ,GAAG5F,OAtOa,8BAsOgB,IAC3C1F,EAAeC,KAAKo2B,IAAe1yB,SAAQgzB,GAAML,GAAU9mB,oBAAoBmnB,GAAIle,WASrF1S,EAAmBuwB,ICxQnB,MAAMM,GAAW,IAAI3tB,IAAI,CACvB,aACA,OACA,OACA,WACA,WACA,SACA,MACA,eAUI4tB,GAAmB,6DAOnBC,GAAmB,qIAEnBC,GAAmB,CAACC,EAAMC,WACxBC,EAAWF,EAAK7b,SAASjX,iBAE3B+yB,EAAqB10B,SAAS20B,UAC5BN,GAASzsB,IAAI+sB,IACR7rB,QAAQwrB,GAAiBzyB,KAAK4yB,EAAKG,YAAcL,GAAiB1yB,KAAK4yB,EAAKG,kBAMjFC,EAASH,EAAqBn2B,QAAOu2B,GAAaA,aAAqBlzB,aAGxE,IAAIsF,EAAI,EAAGC,EAAM0tB,EAAOh0B,OAAQqG,EAAIC,EAAKD,OACxC2tB,EAAO3tB,GAAGrF,KAAK8yB,UACV,SAIJ,GAqCF,SAASI,GAAaC,EAAYC,EAAWC,OAC7CF,EAAWn0B,cACPm0B,KAGLE,GAAoC,mBAAfA,SAChBA,EAAWF,SAIdG,GADY,IAAIhyB,OAAOiyB,WACKC,gBAAgBL,EAAY,aACxDM,EAAgBp0B,OAAOC,KAAK8zB,GAC5Bzb,EAAW,GAAGzb,UAAUo3B,EAAgB/xB,KAAKlF,iBAAiB,UAE/D,IAAIgJ,EAAI,EAAGC,EAAMqS,EAAS3Y,OAAQqG,EAAIC,EAAKD,IAAK,OAC7CktB,EAAK5a,EAAStS,GACdquB,EAASnB,EAAGxb,SAASjX,kBAEtB2zB,EAAct1B,SAASu1B,GAAS,CACnCnB,EAAG7oB,wBAKCiqB,EAAgB,GAAGz3B,UAAUq2B,EAAGlmB,YAChCunB,EAAoB,GAAG13B,OAAOk3B,EAAU,MAAQ,GAAIA,EAAUM,IAAW,IAE/EC,EAAcp0B,SAAQqzB,IACfD,GAAiBC,EAAMgB,IAC1BrB,EAAGpmB,gBAAgBymB,EAAK7b,oBAKvBuc,EAAgB/xB,KAAKsyB,UC1F9B,MAAM7xB,GAAO,UAIP8xB,GAAqB,IAAI/zB,OAAQ,wBAA6B,KAC9Dg0B,GAAwB,IAAIlvB,IAAI,CAAC,WAAY,YAAa,eAE1D8I,GAAc,CAClBqmB,UAAW,UACXC,SAAU,SACVC,MAAO,4BACPrsB,QAAS,SACTssB,MAAO,kBACPtU,KAAM,UACN/jB,SAAU,mBACVoa,UAAW,oBACXxJ,OAAQ,0BACR8H,UAAW,2BACXkP,mBAAoB,QACpB1C,SAAU,mBACVoT,YAAa,oBACbC,SAAU,UACVhB,WAAY,kBACZD,UAAW,SACXrH,aAAc,0BAGVuI,GAAgB,CACpBC,KAAM,OACNC,IAAK,MACLC,MAAOhzB,IAAU,OAAS,QAC1BizB,OAAQ,SACRC,KAAMlzB,IAAU,QAAU,QAGtB2L,GAAU,CACd4mB,WAAW,EACXC,SAAU,+GAIVpsB,QAAS,cACTqsB,MAAO,GACPC,MAAO,EACPtU,MAAM,EACN/jB,UAAU,EACVoa,UAAW,MACXxJ,OAAQ,CAAC,EAAG,GACZ8H,WAAW,EACXkP,mBAAoB,CAAC,MAAO,QAAS,SAAU,QAC/C1C,SAAU,kBACVoT,YAAa,GACbC,UAAU,EACVhB,WAAY,KACZD,UDhC8B,KAEzB,CAAC,QAAS,MAAO,KAAM,OAAQ,OAzCP,kBA0C7BnQ,EAAG,CAAC,SAAU,OAAQ,QAAS,OAC/B2R,KAAM,GACN1R,EAAG,GACH2R,GAAI,GACJC,IAAK,GACLC,KAAM,GACNC,IAAK,GACLC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJC,GAAI,GACJnwB,EAAG,GACHowB,IAAK,CAAC,MAAO,SAAU,MAAO,QAAS,QAAS,UAChDC,GAAI,GACJC,GAAI,GACJC,EAAG,GACHC,IAAK,GACLC,EAAG,GACHC,MAAO,GACPC,KAAM,GACNC,IAAK,GACLC,IAAK,GACLC,OAAQ,GACRC,EAAG,GACHC,GAAI,ICEJtK,aAAc,MAGVptB,GAAQ,CACZ23B,KAAO,kBACPC,OAAS,oBACTC,KAAO,kBACPC,MAAQ,mBACRC,SAAW,sBACXC,MAAQ,mBACRC,QAAU,qBACVC,SAAW,sBACXC,WAAa,wBACbC,WAAa,yBAGTC,GAAkB,OAElB7jB,GAAkB,OAElB8jB,GAAmB,OACnBC,GAAkB,MAIlBC,GAAgB,QAChBC,GAAgB,QAUtB,MAAMC,WAAgBztB,EACpBC,YAAY9N,EAASoD,WACG,IAAXqtB,SACH,IAAIvsB,UAAU,qEAGhBlE,QAGDu7B,YAAa,OACbC,SAAW,OACXC,YAAc,QACdC,eAAiB,QACjBvL,QAAU,UAGVpd,QAAUzI,KAAK0I,WAAW5P,QAC1Bu4B,IAAM,UAENC,4CAMEvqB,4BAIApL,6BAIArD,mCAIAgP,GAKTiqB,cACON,YAAa,EAGpBO,eACOP,YAAa,EAGpBQ,qBACOR,YAAcjxB,KAAKixB,WAG1B7rB,OAAOlG,MACAc,KAAKixB,cAIN/xB,EAAO,OACHgoB,EAAUlnB,KAAK0xB,6BAA6BxyB,GAElDgoB,EAAQkK,eAAe1J,OAASR,EAAQkK,eAAe1J,MAEnDR,EAAQyK,uBACVzK,EAAQ0K,OAAO,KAAM1K,GAErBA,EAAQ2K,OAAO,KAAM3K,OAElB,IACDlnB,KAAK8xB,gBAAgB33B,UAAUC,SAAS0S,qBACrC+kB,OAAO,KAAM7xB,WAIf4xB,OAAO,KAAM5xB,OAItB4D,UACE+G,aAAa3K,KAAKkxB,UAElB7wB,EAAaC,IAAIN,KAAKyD,SAASkB,QAAS,UAAwB,gBAAiB3E,KAAK+xB,mBAElF/xB,KAAKqxB,UACFA,IAAIhuB,SAGPrD,KAAK6lB,cACFA,QAAQzB,gBAGTxgB,UAGRoK,UACsC,SAAhChO,KAAKyD,SAASgL,MAAMgX,cAChB,IAAIthB,MAAM,2CAGZnE,KAAKgyB,kBAAmBhyB,KAAKixB,wBAI7BtF,EAAYtrB,EAAamB,QAAQxB,KAAKyD,SAAUzD,KAAKwD,YAAYlL,MAAM63B,MACvE8B,EAAa13B,EAAeyF,KAAKyD,UACjCyuB,EAA4B,OAAfD,EACjBjyB,KAAKyD,SAASoN,cAAcjb,gBAAgBwE,SAAS4F,KAAKyD,UAC1DwuB,EAAW73B,SAAS4F,KAAKyD,aAEvBkoB,EAAU7pB,mBAAqBowB,eAI7Bb,EAAMrxB,KAAK8xB,gBACXK,EAAQ96B,EAAO2I,KAAKwD,YAAY7H,MAEtC01B,EAAIhsB,aAAa,KAAM8sB,QAClB1uB,SAAS4B,aAAa,mBAAoB8sB,QAE1CC,aAEDpyB,KAAKyI,QAAQklB,WACf0D,EAAIl3B,UAAU2Q,IAAI6lB,UAGd9gB,EAA8C,mBAA3B7P,KAAKyI,QAAQoH,UACpC7P,KAAKyI,QAAQoH,UAAU5Z,KAAK+J,KAAMqxB,EAAKrxB,KAAKyD,UAC5CzD,KAAKyI,QAAQoH,UAETwiB,EAAaryB,KAAKsyB,eAAeziB,QAClC0iB,oBAAoBF,SAEnBlkB,UAAEA,GAAcnO,KAAKyI,QAC3B/E,EAAKb,IAAIwuB,EAAKrxB,KAAKwD,YAAYG,SAAU3D,MAEpCA,KAAKyD,SAASoN,cAAcjb,gBAAgBwE,SAAS4F,KAAKqxB,OAC7DljB,EAAUqb,YAAY6H,GACtBhxB,EAAamB,QAAQxB,KAAKyD,SAAUzD,KAAKwD,YAAYlL,MAAM+3B,WAGzDrwB,KAAK6lB,aACFA,QAAQ5N,cAER4N,QAAUM,GAAoBnmB,KAAKyD,SAAU4tB,EAAKrxB,KAAKomB,iBAAiBiM,IAG/EhB,EAAIl3B,UAAU2Q,IAAIgC,UAEZihB,EAAkD,mBAA7B/tB,KAAKyI,QAAQslB,YAA6B/tB,KAAKyI,QAAQslB,cAAgB/tB,KAAKyI,QAAQslB,YAC3GA,GACFsD,EAAIl3B,UAAU2Q,OAAOijB,EAAY/1B,MAAM,MAOrC,iBAAkBrC,SAASC,oBAC1BC,UAAUF,SAASuF,KAAK9E,UAAU8C,SAAQxD,IAC3C2K,EAAaQ,GAAGnL,EAAS,YAAakF,YAepCqJ,EAAajE,KAAKqxB,IAAIl3B,UAAUC,SAASu2B,SAC1C3sB,gBAZY,WACTwuB,EAAiBxyB,KAAKmxB,iBAEvBA,YAAc,KACnB9wB,EAAamB,QAAQxB,KAAKyD,SAAUzD,KAAKwD,YAAYlL,MAAM83B,OAEvDoC,IAAmB3B,SAChBgB,OAAO,KAAM7xB,QAKQA,KAAKqxB,IAAKptB,GAG1C8J,WACO/N,KAAK6lB,qBAIJwL,EAAMrxB,KAAK8xB,mBAoBCzxB,EAAamB,QAAQxB,KAAKyD,SAAUzD,KAAKwD,YAAYlL,MAAM23B,MAC/DnuB,wBAIduvB,EAAIl3B,UAAUkJ,OAAOyJ,IAIjB,iBAAkBnX,SAASC,oBAC1BC,UAAUF,SAASuF,KAAK9E,UACxB8C,SAAQxD,GAAW2K,EAAaC,IAAI5K,EAAS,YAAakF,UAG1Dw2B,eAAL,OAAqC,OAChCA,eAAL,OAAqC,OAChCA,eAAL,OAAqC,QAE/BntB,EAAajE,KAAKqxB,IAAIl3B,UAAUC,SAASu2B,SAC1C3sB,gBAtCY,KACXhE,KAAK2xB,yBAIL3xB,KAAKmxB,cAAgBP,IACvBS,EAAIhuB,cAGDovB,sBACAhvB,SAASqC,gBAAgB,oBAC9BzF,EAAamB,QAAQxB,KAAKyD,SAAUzD,KAAKwD,YAAYlL,MAAM43B,QAEvDlwB,KAAK6lB,eACFA,QAAQzB,eACRyB,QAAU,SAuBW7lB,KAAKqxB,IAAKptB,QACnCktB,YAAc,GAGrBlZ,SACuB,OAAjBjY,KAAK6lB,cACFA,QAAQ5N,SAMjB+Z,uBACSpxB,QAAQZ,KAAK0yB,YAGtBZ,mBACM9xB,KAAKqxB,WACArxB,KAAKqxB,UAGR37B,EAAUC,SAAS2zB,cAAc,cACvC5zB,EAAQ83B,UAAYxtB,KAAKyI,QAAQmlB,cAE5ByD,IAAM37B,EAAQU,SAAS,GACrB4J,KAAKqxB,IAGde,mBACQf,EAAMrxB,KAAK8xB,qBACZa,kBAAkBp9B,EAAeW,QA1QX,iBA0Q2Cm7B,GAAMrxB,KAAK0yB,YACjFrB,EAAIl3B,UAAUkJ,OAAOstB,GAAiB7jB,IAGxC6lB,kBAAkBj9B,EAASk9B,MACT,OAAZl9B,SAIA6C,EAAUq6B,IACZA,EAAUl6B,EAAWk6B,QAGjB5yB,KAAKyI,QAAQ+Q,KACXoZ,EAAQl8B,aAAehB,IACzBA,EAAQ83B,UAAY,GACpB93B,EAAQ8zB,YAAYoJ,IAGtBl9B,EAAQm9B,YAAcD,EAAQC,mBAM9B7yB,KAAKyI,QAAQ+Q,MACXxZ,KAAKyI,QAAQulB,WACf4E,EAAU/F,GAAa+F,EAAS5yB,KAAKyI,QAAQskB,UAAW/sB,KAAKyI,QAAQukB,aAGvEt3B,EAAQ83B,UAAYoF,GAEpBl9B,EAAQm9B,YAAcD,GAI1BF,eACM7E,EAAQ7tB,KAAKyD,SAAS7L,aAAa,iCAElCi2B,IACHA,EAAsC,mBAAvB7tB,KAAKyI,QAAQolB,MAC1B7tB,KAAKyI,QAAQolB,MAAM53B,KAAK+J,KAAKyD,UAC7BzD,KAAKyI,QAAQolB,OAGVA,EAGTiF,iBAAiBT,SACI,UAAfA,EACK,MAGU,SAAfA,EACK,QAGFA,EAKTX,6BAA6BxyB,EAAOgoB,SAC5B6L,EAAU/yB,KAAKwD,YAAYG,gBACjCujB,EAAUA,GAAWxjB,EAAKjB,IAAIvD,EAAMa,eAAgBgzB,MAGlD7L,EAAU,IAAIlnB,KAAKwD,YAAYtE,EAAMa,eAAgBC,KAAKgzB,sBAC1DtvB,EAAKb,IAAI3D,EAAMa,eAAgBgzB,EAAS7L,IAGnCA,EAGTP,mBACQtgB,OAAEA,GAAWrG,KAAKyI,cAEF,iBAAXpC,EACFA,EAAOrO,MAAM,KAAK6pB,KAAItc,GAAO5I,OAAO8O,SAASlG,EAAK,MAGrC,mBAAXc,EACFugB,GAAcvgB,EAAOugB,EAAY5mB,KAAKyD,UAGxC4C,EAGT+f,iBAAiBiM,SACTxL,EAAwB,CAC5BhX,UAAWwiB,EACXzQ,UAAW,CACT,CACElmB,KAAM,OACNkW,QAAS,CACPyL,mBAAoBrd,KAAKyI,QAAQ4U,qBAGrC,CACE3hB,KAAM,SACNkW,QAAS,CACPvL,OAAQrG,KAAK2mB,eAGjB,CACEjrB,KAAM,kBACNkW,QAAS,CACP+I,SAAU3a,KAAKyI,QAAQkS,WAG3B,CACEjf,KAAM,QACNkW,QAAS,CACPlc,QAAU,IAAGsK,KAAKwD,YAAY7H,eAGlC,CACED,KAAM,WACNwV,SAAS,EACTC,MAAO,aACPtV,GAAIiJ,GAAQ9E,KAAKizB,6BAA6BnuB,KAGlDuf,cAAevf,IACTA,EAAK8M,QAAQ/B,YAAc/K,EAAK+K,gBAC7BojB,6BAA6BnuB,WAKjC,IACF+hB,KACsC,mBAA9B7mB,KAAKyI,QAAQid,aAA8B1lB,KAAKyI,QAAQid,aAAamB,GAAyB7mB,KAAKyI,QAAQid,cAI1H6M,oBAAoBF,QACbP,gBAAgB33B,UAAU2Q,IAAK,cAAkB9K,KAAK8yB,iBAAiBT,MAG9EC,eAAeziB,UACNoe,GAAcpe,EAAUhW,eAGjCy3B,gBACmBtxB,KAAKyI,QAAQjH,QAAQxJ,MAAM,KAEnCkB,SAAQsI,OACC,UAAZA,EACFnB,EAAaQ,GAAGb,KAAKyD,SAAUzD,KAAKwD,YAAYlL,MAAMg4B,MAAOtwB,KAAKyI,QAAQhT,UAAUyJ,GAASc,KAAKoF,OAAOlG,UACpG,GA3ZU,WA2ZNsC,EAA4B,OAC/B0xB,EAAU1xB,IAAYsvB,GAC1B9wB,KAAKwD,YAAYlL,MAAMm4B,WACvBzwB,KAAKwD,YAAYlL,MAAMi4B,QACnB4C,EAAW3xB,IAAYsvB,GAC3B9wB,KAAKwD,YAAYlL,MAAMo4B,WACvB1wB,KAAKwD,YAAYlL,MAAMk4B,SAEzBnwB,EAAaQ,GAAGb,KAAKyD,SAAUyvB,EAASlzB,KAAKyI,QAAQhT,UAAUyJ,GAASc,KAAK4xB,OAAO1yB,KACpFmB,EAAaQ,GAAGb,KAAKyD,SAAU0vB,EAAUnzB,KAAKyI,QAAQhT,UAAUyJ,GAASc,KAAK6xB,OAAO3yB,cAIpF6yB,kBAAoB,KACnB/xB,KAAKyD,eACFsK,QAIT1N,EAAaQ,GAAGb,KAAKyD,SAASkB,QAAS,UAAwB,gBAAiB3E,KAAK+xB,mBAEjF/xB,KAAKyI,QAAQhT,cACVgT,QAAU,IACVzI,KAAKyI,QACRjH,QAAS,SACT/L,SAAU,SAGP29B,YAITA,kBACQvF,EAAQ7tB,KAAKyD,SAAS7L,aAAa,SACnCy7B,SAA2BrzB,KAAKyD,SAAS7L,aAAa,2BAExDi2B,GAA+B,WAAtBwF,UACN5vB,SAAS4B,aAAa,yBAA0BwoB,GAAS,KAC1DA,GAAU7tB,KAAKyD,SAAS7L,aAAa,eAAkBoI,KAAKyD,SAASovB,kBAClEpvB,SAAS4B,aAAa,aAAcwoB,QAGtCpqB,SAAS4B,aAAa,QAAS,KAIxCusB,OAAO1yB,EAAOgoB,GACZA,EAAUlnB,KAAK0xB,6BAA6BxyB,EAAOgoB,GAE/ChoB,IACFgoB,EAAQkK,eACS,YAAflyB,EAAMqB,KAAqBwwB,GAAgBD,KACzC,GAGF5J,EAAQ4K,gBAAgB33B,UAAUC,SAAS0S,KAAoBoa,EAAQiK,cAAgBP,GACzF1J,EAAQiK,YAAcP,IAIxBjmB,aAAauc,EAAQgK,UAErBhK,EAAQiK,YAAcP,GAEjB1J,EAAQze,QAAQqlB,OAAU5G,EAAQze,QAAQqlB,MAAM9f,KAKrDkZ,EAAQgK,SAAW/zB,YAAW,KACxB+pB,EAAQiK,cAAgBP,IAC1B1J,EAAQlZ,SAETkZ,EAAQze,QAAQqlB,MAAM9f,MARvBkZ,EAAQlZ,QAWZ6jB,OAAO3yB,EAAOgoB,GACZA,EAAUlnB,KAAK0xB,6BAA6BxyB,EAAOgoB,GAE/ChoB,IACFgoB,EAAQkK,eACS,aAAflyB,EAAMqB,KAAsBwwB,GAAgBD,IAC1C5J,EAAQzjB,SAASrJ,SAAS8E,EAAMY,gBAGlConB,EAAQyK,yBAIZhnB,aAAauc,EAAQgK,UAErBhK,EAAQiK,YAAcN,GAEjB3J,EAAQze,QAAQqlB,OAAU5G,EAAQze,QAAQqlB,MAAM/f,KAKrDmZ,EAAQgK,SAAW/zB,YAAW,KACxB+pB,EAAQiK,cAAgBN,IAC1B3J,EAAQnZ,SAETmZ,EAAQze,QAAQqlB,MAAM/f,MARvBmZ,EAAQnZ,QAWZ4jB,2BACO,MAAMnwB,KAAWxB,KAAKoxB,kBACrBpxB,KAAKoxB,eAAe5vB,UACf,SAIJ,EAGTkH,WAAW5P,SACHw6B,EAAiB3tB,EAAYI,kBAAkB/F,KAAKyD,iBAE1DzK,OAAOC,KAAKq6B,GAAgBp6B,SAAQq6B,IAC9B7F,GAAsBhuB,IAAI6zB,WACrBD,EAAeC,OAI1Bz6B,EAAS,IACJkH,KAAKwD,YAAYuD,WACjBusB,KACmB,iBAAXx6B,GAAuBA,EAASA,EAAS,KAG/CqV,WAAiC,IAArBrV,EAAOqV,UAAsBxY,SAASuF,KAAOxC,EAAWI,EAAOqV,WAEtD,iBAAjBrV,EAAOg1B,QAChBh1B,EAAOg1B,MAAQ,CACb9f,KAAMlV,EAAOg1B,MACb/f,KAAMjV,EAAOg1B,QAIW,iBAAjBh1B,EAAO+0B,QAChB/0B,EAAO+0B,MAAQ/0B,EAAO+0B,MAAMt0B,YAGA,iBAAnBT,EAAO85B,UAChB95B,EAAO85B,QAAU95B,EAAO85B,QAAQr5B,YAGlCX,EAAgB+C,GAAM7C,EAAQkH,KAAKwD,YAAY8D,aAE3CxO,EAAOk1B,WACTl1B,EAAO80B,SAAWf,GAAa/zB,EAAO80B,SAAU90B,EAAOi0B,UAAWj0B,EAAOk0B,aAGpEl0B,EAGTk6B,2BACQl6B,EAAS,MAEXkH,KAAKyI,YACF,MAAMlG,KAAOvC,KAAKyI,QACjBzI,KAAKwD,YAAYuD,QAAQxE,KAASvC,KAAKyI,QAAQlG,KACjDzJ,EAAOyJ,GAAOvC,KAAKyI,QAAQlG,WAK1BzJ,EAGT25B,uBACQpB,EAAMrxB,KAAK8xB,gBACX0B,EAAWnC,EAAIz5B,aAAa,SAAS4B,MAAMi0B,IAChC,OAAb+F,GAAqBA,EAAS76B,OAAS,GACzC66B,EAAS3R,KAAI4R,GAASA,EAAMx7B,SACzBiB,SAAQw6B,GAAUrC,EAAIl3B,UAAUkJ,OAAOqwB,KAI9CT,6BAA6BrM,SACrBvV,MAAEA,GAAUuV,EAEbvV,SAIAggB,IAAMhgB,EAAMC,SAAS9B,YACrBijB,sBACAF,oBAAoBvyB,KAAKsyB,eAAejhB,EAAMxB,oCAK9B/W,UACdkH,KAAK6E,MAAK,iBACTC,EAAOksB,GAAQjsB,oBAAoB/E,KAAMlH,MAEzB,iBAAXA,EAAqB,SACF,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,UAabwC,EAAmB01B,ICvtBnB,MAIMvD,GAAqB,IAAI/zB,OAAQ,wBAA6B,KAE9DqN,GAAU,IACXiqB,GAAQjqB,QACX8I,UAAW,QACXxJ,OAAQ,CAAC,EAAG,GACZ7E,QAAS,QACToxB,QAAS,GACThF,SAAU,+IAONtmB,GAAc,IACf0pB,GAAQ1pB,YACXsrB,QAAS,6BAGLt6B,GAAQ,CACZ23B,KAAO,kBACPC,OAAS,oBACTC,KAAO,kBACPC,MAAQ,mBACRC,SAAW,sBACXC,MAAQ,mBACRC,QAAU,qBACVC,SAAW,sBACXC,WAAa,wBACbC,WAAa,yBAMTiD,GAAiB,kBACjBC,GAAmB,gBAQzB,MAAMC,WAAgB7C,+BAIXjqB,2BArDE,oCA6DFzO,mCAIAgP,GAKT0qB,uBACShyB,KAAK0yB,YAAc1yB,KAAK8zB,cAGjChC,uBACM9xB,KAAKqxB,WAIJA,IAAM0C,MAAMjC,gBAEZ9xB,KAAK0yB,YACRn9B,EAAeW,QAAQy9B,GAAgB3zB,KAAKqxB,KAAKhuB,SAG9CrD,KAAK8zB,eACRv+B,EAAeW,QAAQ09B,GAAkB5zB,KAAKqxB,KAAKhuB,UAV5CrD,KAAKqxB,IAgBhBe,mBACQf,EAAMrxB,KAAK8xB,qBAGZa,kBAAkBp9B,EAAeW,QAAQy9B,GAAgBtC,GAAMrxB,KAAK0yB,gBACrEE,EAAU5yB,KAAK8zB,cACI,mBAAZlB,IACTA,EAAUA,EAAQ38B,KAAK+J,KAAKyD,gBAGzBkvB,kBAAkBp9B,EAAeW,QAAQ09B,GAAkBvC,GAAMuB,GAEtEvB,EAAIl3B,UAAUkJ,OAnEM,OACA,QAuEtBkvB,oBAAoBF,QACbP,gBAAgB33B,UAAU2Q,IAAK,cAAkB9K,KAAK8yB,iBAAiBT,MAG9EyB,qBACS9zB,KAAKyD,SAAS7L,aAAa,oBAAsBoI,KAAKyI,QAAQmqB,QAGvEH,uBACQpB,EAAMrxB,KAAK8xB,gBACX0B,EAAWnC,EAAIz5B,aAAa,SAAS4B,MAAMi0B,IAChC,OAAb+F,GAAqBA,EAAS76B,OAAS,GACzC66B,EAAS3R,KAAI4R,GAASA,EAAMx7B,SACzBiB,SAAQw6B,GAAUrC,EAAIl3B,UAAUkJ,OAAOqwB,4BAMvB56B,UACdkH,KAAK6E,MAAK,iBACTC,EAAO+uB,GAAQ9uB,oBAAoB/E,KAAMlH,MAEzB,iBAAXA,EAAqB,SACF,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,UAabwC,EAAmBu4B,IC9InB,MAAMl4B,GAAO,YAKPoL,GAAU,CACdV,OAAQ,GACR2tB,OAAQ,OACR/2B,OAAQ,IAGJqK,GAAc,CAClBjB,OAAQ,SACR2tB,OAAQ,SACR/2B,OAAQ,oBAQJ4K,GAAoB,SAWpBosB,GAAkB,WAQxB,MAAMC,WAAkB3wB,EACtBC,YAAY9N,EAASoD,SACbpD,QACDy+B,eAA2C,SAA1Bn0B,KAAKyD,SAASsH,QAAqB9P,OAAS+E,KAAKyD,cAClEgF,QAAUzI,KAAK0I,WAAW5P,QAC1B6U,UAAa,GAAE3N,KAAKyI,QAAQxL,qBAAiC+C,KAAKyI,QAAQxL,4BAAkC+C,KAAKyI,QAAQxL,6BACzHm3B,SAAW,QACXC,SAAW,QACXC,cAAgB,UAChBC,cAAgB,EAErBl0B,EAAaQ,GAAGb,KAAKm0B,eAlCH,uBAkCiC,IAAMn0B,KAAKw0B,kBAEzDC,eACAD,uCAMEztB,4BAIApL,GAKT84B,gBACQC,EAAa10B,KAAKm0B,iBAAmBn0B,KAAKm0B,eAAel5B,OAvC7C,SAyChBg5B,GAEIU,EAAuC,SAAxB30B,KAAKyI,QAAQurB,OAChCU,EACA10B,KAAKyI,QAAQurB,OAETY,EAAaD,IAAiBV,GAClCj0B,KAAK60B,gBACL,OAEGT,SAAW,QACXC,SAAW,QACXE,cAAgBv0B,KAAK80B,mBAEVv/B,EAAeC,KAAKwK,KAAK2N,WAEjCkU,KAAInsB,UACJq/B,EAAiB78B,EAAuBxC,GACxCuH,EAAS83B,EAAiBx/B,EAAeW,QAAQ6+B,GAAkB,QAErE93B,EAAQ,OACJ+3B,EAAY/3B,EAAOsJ,2BACrByuB,EAAU5iB,OAAS4iB,EAAU3iB,aACxB,CACL1M,EAAYgvB,GAAc13B,GAAQuJ,IAAMouB,EACxCG,UAKC,QAEN1+B,QAAO4+B,GAAQA,IACftY,MAAK,CAACC,EAAGC,IAAMD,EAAE,GAAKC,EAAE,KACxB3jB,SAAQ+7B,SACFb,SAASt9B,KAAKm+B,EAAK,SACnBZ,SAASv9B,KAAKm+B,EAAK,OAI9BrxB,UACEvD,EAAaC,IAAIN,KAAKm0B,eAhHP,uBAiHTvwB,UAKR8E,WAAW5P,MAOoB,iBAN7BA,EAAS,IACJiO,MACApB,EAAYI,kBAAkB/F,KAAKyD,aAChB,iBAAX3K,GAAuBA,EAASA,EAAS,KAGpCmE,QAAuB1E,EAAUO,EAAOmE,QAAS,KAC7DqQ,GAAEA,GAAOxU,EAAOmE,OACfqQ,IACHA,EAAKjW,EAAOsE,IACZ7C,EAAOmE,OAAOqQ,GAAKA,GAGrBxU,EAAOmE,OAAU,IAAGqQ,WAGtB1U,EAAgB+C,GAAM7C,EAAQwO,IAEvBxO,EAGT+7B,uBACS70B,KAAKm0B,iBAAmBl5B,OAC7B+E,KAAKm0B,eAAe3b,YACpBxY,KAAKm0B,eAAe1tB,UAGxBquB,0BACS90B,KAAKm0B,eAAepa,cAAgBxiB,KAAKqG,IAC9CjI,SAASuF,KAAK6e,aACdpkB,SAASC,gBAAgBmkB,cAI7Bmb,0BACSl1B,KAAKm0B,iBAAmBl5B,OAC7BA,OAAOk6B,YACPn1B,KAAKm0B,eAAe5tB,wBAAwB8L,OAGhDmiB,iBACQ/tB,EAAYzG,KAAK60B,gBAAkB70B,KAAKyI,QAAQpC,OAChD0T,EAAe/Z,KAAK80B,mBACpBM,EAAYp1B,KAAKyI,QAAQpC,OAAS0T,EAAe/Z,KAAKk1B,sBAExDl1B,KAAKu0B,gBAAkBxa,QACpB0a,UAGHhuB,GAAa2uB,SACTn4B,EAAS+C,KAAKq0B,SAASr0B,KAAKq0B,SAAS17B,OAAS,GAEhDqH,KAAKs0B,gBAAkBr3B,QACpBo4B,UAAUp4B,WAMf+C,KAAKs0B,eAAiB7tB,EAAYzG,KAAKo0B,SAAS,IAAMp0B,KAAKo0B,SAAS,GAAK,cACtEE,cAAgB,eAChBgB,aAIF,IAAIt2B,EAAIgB,KAAKo0B,SAASz7B,OAAQqG,KACVgB,KAAKs0B,gBAAkBt0B,KAAKq0B,SAASr1B,IACxDyH,GAAazG,KAAKo0B,SAASp1B,UACM,IAAzBgB,KAAKo0B,SAASp1B,EAAI,IAAsByH,EAAYzG,KAAKo0B,SAASp1B,EAAI,UAG3Eq2B,UAAUr1B,KAAKq0B,SAASr1B,KAKnCq2B,UAAUp4B,QACHq3B,cAAgBr3B,OAEhBq4B,eAECC,EAAUv1B,KAAK2N,UAAU3V,MAAM,KAClC6pB,KAAIpsB,GAAa,GAAEA,qBAA4BwH,OAAYxH,WAAkBwH,QAE1Eu4B,EAAOjgC,EAAeW,QAAQq/B,EAAQE,KAAK,MAE7CD,EAAKr7B,UAAUC,SA1LU,kBA2L3B7E,EAAeW,QAlLY,mBAkLsBs/B,EAAK7wB,QAnLlC,cAoLjBxK,UAAU2Q,IAAIjD,IAEjB2tB,EAAKr7B,UAAU2Q,IAAIjD,MAGnB2tB,EAAKr7B,UAAU2Q,IAAIjD,IAEnBtS,EAAeiB,QAAQg/B,EA/LG,qBAgMvBt8B,SAAQw8B,IAGPngC,EAAewB,KAAK2+B,EAAY,+BAC7Bx8B,SAAQ+7B,GAAQA,EAAK96B,UAAU2Q,IAAIjD,MAGtCtS,EAAewB,KAAK2+B,EArMH,aAsMdx8B,SAAQy8B,IACPpgC,EAAea,SAASu/B,EAxMX,aAyMVz8B,SAAQ+7B,GAAQA,EAAK96B,UAAU2Q,IAAIjD,aAKhDxH,EAAamB,QAAQxB,KAAKm0B,eAvNN,wBAuNsC,CACxDr0B,cAAe7C,IAInBq4B,SACE//B,EAAeC,KAAKwK,KAAK2N,WACtBtX,QAAOua,GAAQA,EAAKzW,UAAUC,SAASyN,MACvC3O,SAAQ0X,GAAQA,EAAKzW,UAAUkJ,OAAOwE,6BAKpB/O,UACdkH,KAAK6E,MAAK,iBACTC,EAAOovB,GAAUnvB,oBAAoB/E,KAAMlH,MAE3B,iBAAXA,WAIiB,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,UAWXuH,EAAaQ,GAAG5F,OAzPa,8BAyPgB,KAC3C1F,EAAeC,KArPS,0BAsPrB0D,SAAQ08B,GAAO,IAAI1B,GAAU0B,QAUlCt6B,EAAmB44B,IC1RnB,MAYMrsB,GAAoB,SACpB8oB,GAAkB,OAClB7jB,GAAkB,OAIlB+oB,GAAkB,UAClBC,GAAqB,wBAW3B,MAAMC,WAAYxyB,0BA9BL,MAuCXyK,UACOhO,KAAKyD,SAAS/M,YACjBsJ,KAAKyD,SAAS/M,WAAWC,WAAaC,KAAKC,cAC3CmJ,KAAKyD,SAAStJ,UAAUC,SAASyN,eAI/B7Q,QACEiG,EAAS9E,EAAuB6H,KAAKyD,UACrCuyB,EAAch2B,KAAKyD,SAASkB,QA/BN,wBAiCxBqxB,EAAa,OACTC,EAAwC,OAAzBD,EAAYtlB,UAA8C,OAAzBslB,EAAYtlB,SAAoBolB,GAAqBD,GAC3G7+B,EAAWzB,EAAeC,KAAKygC,EAAcD,GAC7Ch/B,EAAWA,EAASA,EAAS2B,OAAS,SAGlCu9B,EAAYl/B,EAChBqJ,EAAamB,QAAQxK,EApDP,cAoD6B,CACzC8I,cAAeE,KAAKyD,WAEtB,QAEgBpD,EAAamB,QAAQxB,KAAKyD,SAvD5B,cAuDkD,CAChE3D,cAAe9I,IAGH8K,kBAAmC,OAAdo0B,GAAsBA,EAAUp0B,6BAI9DuzB,UAAUr1B,KAAKyD,SAAUuyB,SAExBG,EAAW,KACf91B,EAAamB,QAAQxK,EAnEL,gBAmE6B,CAC3C8I,cAAeE,KAAKyD,WAEtBpD,EAAamB,QAAQxB,KAAKyD,SApEX,eAoEkC,CAC/C3D,cAAe9I,KAIfiG,OACGo4B,UAAUp4B,EAAQA,EAAOvG,WAAYy/B,GAE1CA,IAMJd,UAAU3/B,EAASyY,EAAW3S,SAKtB46B,IAJiBjoB,GAAqC,OAAvBA,EAAUuC,UAA4C,OAAvBvC,EAAUuC,SAE5Enb,EAAea,SAAS+X,EAAW0nB,IADnCtgC,EAAeC,KAAKsgC,GAAoB3nB,IAGZ,GACxBU,EAAkBrT,GAAa46B,GAAUA,EAAOj8B,UAAUC,SAASu2B,IAEnEwF,EAAW,IAAMn2B,KAAKq2B,oBAAoB3gC,EAAS0gC,EAAQ56B,GAE7D46B,GAAUvnB,GACZunB,EAAOj8B,UAAUkJ,OAAOyJ,SACnB9I,eAAemyB,EAAUzgC,GAAS,IAEvCygC,IAIJE,oBAAoB3gC,EAAS0gC,EAAQ56B,MAC/B46B,EAAQ,CACVA,EAAOj8B,UAAUkJ,OAAOwE,UAElByuB,EAAgB/gC,EAAeW,QA1FJ,kCA0F4CkgC,EAAO1/B,YAEhF4/B,GACFA,EAAcn8B,UAAUkJ,OAAOwE,IAGG,QAAhCuuB,EAAOx+B,aAAa,SACtBw+B,EAAO/wB,aAAa,iBAAiB,GAIzC3P,EAAQyE,UAAU2Q,IAAIjD,IACe,QAAjCnS,EAAQkC,aAAa,SACvBlC,EAAQ2P,aAAa,iBAAiB,GAGxCxK,EAAOnF,GAEHA,EAAQyE,UAAUC,SAASu2B,KAC7Bj7B,EAAQyE,UAAU2Q,IAAIgC,QAGpBD,EAASnX,EAAQgB,cACjBmW,GAA8B,OAApBA,EAAO6D,WACnB7D,EAASA,EAAOnW,YAGdmW,GAAUA,EAAO1S,UAAUC,SAhIF,iBAgIsC,OAC3Dm8B,EAAkB7gC,EAAQiP,QA5HZ,aA8HhB4xB,GACFhhC,EAAeC,KA1HU,mBA0HqB+gC,GAC3Cr9B,SAAQs9B,GAAYA,EAASr8B,UAAU2Q,IAAIjD,MAGhDnS,EAAQ2P,aAAa,iBAAiB,GAGpC7J,GACFA,2BAMmB1C,UACdkH,KAAK6E,MAAK,iBACTC,EAAOixB,GAAIhxB,oBAAoB/E,SAEf,iBAAXlH,EAAqB,SACF,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,UAYbuH,EAAaQ,GAAGlL,SAzKc,wBAWD,4EA8JyC,SAAUuJ,GAC1E,CAAC,IAAK,QAAQpH,SAASkI,KAAK+K,UAC9B7L,EAAMwD,iBAGJxI,EAAW8F,OAIF+1B,GAAIhxB,oBAAoB/E,MAChCgO,UAUP1S,EAAmBy6B,ICvMnB,MAAMp6B,GAAO,QAeP86B,GAAkB,OAClB3pB,GAAkB,OAClB4pB,GAAqB,UAErBpvB,GAAc,CAClBqmB,UAAW,UACXgJ,SAAU,UACV7I,MAAO,UAGH/mB,GAAU,CACd4mB,WAAW,EACXgJ,UAAU,EACV7I,MAAO,KAWT,MAAM8I,WAAcrzB,EAClBC,YAAY9N,EAASoD,SACbpD,QAED+S,QAAUzI,KAAK0I,WAAW5P,QAC1Bo4B,SAAW,UACX2F,sBAAuB,OACvBC,yBAA0B,OAC1BxF,gDAMEhqB,+BAIAP,4BAIApL,GAKTqS,OACoB3N,EAAamB,QAAQxB,KAAKyD,SAxD5B,iBA0DF3B,wBAITi1B,gBAED/2B,KAAKyI,QAAQklB,gBACVlqB,SAAStJ,UAAU2Q,IA9DN,aA0EfrH,SAAStJ,UAAUkJ,OAAOozB,IAC/B57B,EAAOmF,KAAKyD,eACPA,SAAStJ,UAAU2Q,IAAI4rB,SAEvB1yB,gBAbY,UACVP,SAAStJ,UAAUkJ,OAAOqzB,SAC1BjzB,SAAStJ,UAAU2Q,IAAIgC,IAE5BzM,EAAamB,QAAQxB,KAAKyD,SAvEX,uBAyEVuzB,uBAOuBh3B,KAAKyD,SAAUzD,KAAKyI,QAAQklB,YAG5D5f,OACO/N,KAAKyD,SAAStJ,UAAUC,SAAS0S,MAIpBzM,EAAamB,QAAQxB,KAAKyD,SA3F5B,iBA6FF3B,wBAST2B,SAAStJ,UAAUkJ,OAAOyJ,SAC1B9I,gBANY,UACVP,SAAStJ,UAAU2Q,IAAI2rB,IAC5Bp2B,EAAamB,QAAQxB,KAAKyD,SAlGV,qBAsGYzD,KAAKyD,SAAUzD,KAAKyI,QAAQklB,aAG5D/pB,eACOmzB,gBAED/2B,KAAKyD,SAAStJ,UAAUC,SAAS0S,UAC9BrJ,SAAStJ,UAAUkJ,OAAOyJ,UAG3BlJ,UAKR8E,WAAW5P,UACTA,EAAS,IACJiO,MACApB,EAAYI,kBAAkB/F,KAAKyD,aAChB,iBAAX3K,GAAuBA,EAASA,EAAS,IAGtDF,EAAgB+C,GAAM7C,EAAQkH,KAAKwD,YAAY8D,aAExCxO,EAGTk+B,qBACOh3B,KAAKyI,QAAQkuB,WAId32B,KAAK62B,sBAAwB72B,KAAK82B,+BAIjC5F,SAAW/zB,YAAW,UACpB4Q,SACJ/N,KAAKyI,QAAQqlB,SAGlBmJ,eAAe/3B,EAAOg4B,UACZh4B,EAAMqB,UACP,gBACA,gBACEs2B,qBAAuBK,YAEzB,cACA,gBACEJ,wBAA0BI,KAM/BA,mBACGH,sBAIDhrB,EAAc7M,EAAMY,cACtBE,KAAKyD,WAAasI,GAAe/L,KAAKyD,SAASrJ,SAAS2R,SAIvDirB,qBAGP1F,gBACEjxB,EAAaQ,GAAGb,KAAKyD,SAjLI,yBA2BC,6BAsJiD,IAAMzD,KAAK+N,SACtF1N,EAAaQ,GAAGb,KAAKyD,SAjLA,sBAiL2BvE,GAASc,KAAKi3B,eAAe/3B,GAAO,KACpFmB,EAAaQ,GAAGb,KAAKyD,SAjLD,qBAiL2BvE,GAASc,KAAKi3B,eAAe/3B,GAAO,KACnFmB,EAAaQ,GAAGb,KAAKyD,SAjLF,oBAiL2BvE,GAASc,KAAKi3B,eAAe/3B,GAAO,KAClFmB,EAAaQ,GAAGb,KAAKyD,SAjLD,qBAiL2BvE,GAASc,KAAKi3B,eAAe/3B,GAAO,KAGrF63B,gBACEpsB,aAAa3K,KAAKkxB,eACbA,SAAW,4BAKKp4B,UACdkH,KAAK6E,MAAK,iBACTC,EAAO8xB,GAAM7xB,oBAAoB/E,KAAMlH,MAEvB,iBAAXA,EAAqB,SACF,IAAjBgM,EAAKhM,SACR,IAAIc,UAAW,oBAAmBd,MAG1CgM,EAAKhM,GAAQkH,kBAarB1E,EAAmBs7B,IC3NJ,CACbxyB,MAAAA,EACAe,OAAAA,EACA6C,SAAAA,GACAmF,SAAAA,GACAyY,SAAAA,GACAsE,MAAAA,GACA2B,UAAAA,GACAgI,QAAAA,GACAK,UAAAA,GACA6B,IAAAA,GACAa,MAAAA,GACA5F,QAAAA"} \ No newline at end of file diff --git a/assets/js/oe-bcl-default.esm.js b/assets/js/oe-bcl-default.esm.js deleted file mode 100644 index 5e82d702..00000000 --- a/assets/js/oe-bcl-default.esm.js +++ /dev/null @@ -1,4962 +0,0 @@ -import * as Popper from '@popperjs/core'; - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): dom/selector-engine.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ -const NODE_TEXT = 3; -const SelectorEngine = { - find(selector, element = document.documentElement) { - return [].concat(...Element.prototype.querySelectorAll.call(element, selector)); - }, - - findOne(selector, element = document.documentElement) { - return Element.prototype.querySelector.call(element, selector); - }, - - children(element, selector) { - return [].concat(...element.children).filter(child => child.matches(selector)); - }, - - parents(element, selector) { - const parents = []; - let ancestor = element.parentNode; - - while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) { - if (ancestor.matches(selector)) { - parents.push(ancestor); - } - - ancestor = ancestor.parentNode; - } - - return parents; - }, - - prev(element, selector) { - let previous = element.previousElementSibling; - - while (previous) { - if (previous.matches(selector)) { - return [previous]; - } - - previous = previous.previousElementSibling; - } - - return []; - }, - - next(element, selector) { - let next = element.nextElementSibling; - - while (next) { - if (next.matches(selector)) { - return [next]; - } - - next = next.nextElementSibling; - } - - return []; - } - -}; - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): util/index.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - -const MAX_UID = 1000000; -const MILLISECONDS_MULTIPLIER = 1000; -const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp) - -const toType = obj => { - if (obj === null || obj === undefined) { - return `${obj}`; - } - - return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase(); -}; -/** - * -------------------------------------------------------------------------- - * Public Util Api - * -------------------------------------------------------------------------- - */ - - -const getUID = prefix => { - do { - prefix += Math.floor(Math.random() * MAX_UID); - } while (document.getElementById(prefix)); - - return prefix; -}; - -const getSelector = element => { - let selector = element.getAttribute('data-bs-target'); - - if (!selector || selector === '#') { - let hrefAttr = element.getAttribute('href'); // The only valid content that could double as a selector are IDs or classes, - // so everything starting with `#` or `.`. If a "real" URL is used as the selector, - // `document.querySelector` will rightfully complain it is invalid. - // See https://github.com/twbs/bootstrap/issues/32273 - - if (!hrefAttr || !hrefAttr.includes('#') && !hrefAttr.startsWith('.')) { - return null; - } // Just in case some CMS puts out a full URL with the anchor appended - - - if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) { - hrefAttr = `#${hrefAttr.split('#')[1]}`; - } - - selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null; - } - - return selector; -}; - -const getSelectorFromElement = element => { - const selector = getSelector(element); - - if (selector) { - return document.querySelector(selector) ? selector : null; - } - - return null; -}; - -const getElementFromSelector = element => { - const selector = getSelector(element); - return selector ? document.querySelector(selector) : null; -}; - -const getTransitionDurationFromElement = element => { - if (!element) { - return 0; - } // Get transition-duration of the element - - - let { - transitionDuration, - transitionDelay - } = window.getComputedStyle(element); - const floatTransitionDuration = Number.parseFloat(transitionDuration); - const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found - - if (!floatTransitionDuration && !floatTransitionDelay) { - return 0; - } // If multiple durations are defined, take the first - - - transitionDuration = transitionDuration.split(',')[0]; - transitionDelay = transitionDelay.split(',')[0]; - return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; -}; - -const triggerTransitionEnd = element => { - element.dispatchEvent(new Event(TRANSITION_END)); -}; - -const isElement = obj => { - if (!obj || typeof obj !== 'object') { - return false; - } - - if (typeof obj.jquery !== 'undefined') { - obj = obj[0]; - } - - return typeof obj.nodeType !== 'undefined'; -}; - -const getElement = obj => { - if (isElement(obj)) { - // it's a jQuery object or a node element - return obj.jquery ? obj[0] : obj; - } - - if (typeof obj === 'string' && obj.length > 0) { - return SelectorEngine.findOne(obj); - } - - return null; -}; - -const typeCheckConfig = (componentName, config, configTypes) => { - Object.keys(configTypes).forEach(property => { - const expectedTypes = configTypes[property]; - const value = config[property]; - const valueType = value && isElement(value) ? 'element' : toType(value); - - if (!new RegExp(expectedTypes).test(valueType)) { - throw new TypeError(`${componentName.toUpperCase()}: Option "${property}" provided type "${valueType}" but expected type "${expectedTypes}".`); - } - }); -}; - -const isVisible = element => { - if (!isElement(element) || element.getClientRects().length === 0) { - return false; - } - - return getComputedStyle(element).getPropertyValue('visibility') === 'visible'; -}; - -const isDisabled = element => { - if (!element || element.nodeType !== Node.ELEMENT_NODE) { - return true; - } - - if (element.classList.contains('disabled')) { - return true; - } - - if (typeof element.disabled !== 'undefined') { - return element.disabled; - } - - return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'; -}; - -const findShadowRoot = element => { - if (!document.documentElement.attachShadow) { - return null; - } // Can find the shadow root otherwise it'll return the document - - - if (typeof element.getRootNode === 'function') { - const root = element.getRootNode(); - return root instanceof ShadowRoot ? root : null; - } - - if (element instanceof ShadowRoot) { - return element; - } // when we don't find a shadow root - - - if (!element.parentNode) { - return null; - } - - return findShadowRoot(element.parentNode); -}; - -const noop = () => {}; - -const reflow = element => element.offsetHeight; - -const getjQuery = () => { - const { - jQuery - } = window; - - if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) { - return jQuery; - } - - return null; -}; - -const DOMContentLoadedCallbacks = []; - -const onDOMContentLoaded = callback => { - if (document.readyState === 'loading') { - // add listener on the first call when the document is in loading state - if (!DOMContentLoadedCallbacks.length) { - document.addEventListener('DOMContentLoaded', () => { - DOMContentLoadedCallbacks.forEach(callback => callback()); - }); - } - - DOMContentLoadedCallbacks.push(callback); - } else { - callback(); - } -}; - -const isRTL = () => document.documentElement.dir === 'rtl'; - -const defineJQueryPlugin = plugin => { - onDOMContentLoaded(() => { - const $ = getjQuery(); - /* istanbul ignore if */ - - if ($) { - const name = plugin.NAME; - const JQUERY_NO_CONFLICT = $.fn[name]; - $.fn[name] = plugin.jQueryInterface; - $.fn[name].Constructor = plugin; - - $.fn[name].noConflict = () => { - $.fn[name] = JQUERY_NO_CONFLICT; - return plugin.jQueryInterface; - }; - } - }); -}; - -const execute = callback => { - if (typeof callback === 'function') { - callback(); - } -}; - -const executeAfterTransition = (callback, transitionElement, waitForTransition = true) => { - if (!waitForTransition) { - execute(callback); - return; - } - - const durationPadding = 5; - const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding; - let called = false; - - const handler = ({ - target - }) => { - if (target !== transitionElement) { - return; - } - - called = true; - transitionElement.removeEventListener(TRANSITION_END, handler); - execute(callback); - }; - - transitionElement.addEventListener(TRANSITION_END, handler); - setTimeout(() => { - if (!called) { - triggerTransitionEnd(transitionElement); - } - }, emulatedDuration); -}; -/** - * Return the previous/next element of a list. - * - * @param {array} list The list of elements - * @param activeElement The active element - * @param shouldGetNext Choose to get next or previous element - * @param isCycleAllowed - * @return {Element|elem} The proper element - */ - - -const getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => { - let index = list.indexOf(activeElement); // if the element does not exist in the list return an element depending on the direction and if cycle is allowed - - if (index === -1) { - return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]; - } - - const listLength = list.length; - index += shouldGetNext ? 1 : -1; - - if (isCycleAllowed) { - index = (index + listLength) % listLength; - } - - return list[Math.max(0, Math.min(index, listLength - 1))]; -}; - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): dom/event-handler.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - -const namespaceRegex = /[^.]*(?=\..*)\.|.*/; -const stripNameRegex = /\..*/; -const stripUidRegex = /::\d+$/; -const eventRegistry = {}; // Events storage - -let uidEvent = 1; -const customEvents = { - mouseenter: 'mouseover', - mouseleave: 'mouseout' -}; -const customEventsRegex = /^(mouseenter|mouseleave)/i; -const nativeEvents = 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']); -/** - * ------------------------------------------------------------------------ - * Private methods - * ------------------------------------------------------------------------ - */ - -function getUidEvent(element, uid) { - return uid && `${uid}::${uidEvent++}` || element.uidEvent || uidEvent++; -} - -function getEvent(element) { - const uid = getUidEvent(element); - element.uidEvent = uid; - eventRegistry[uid] = eventRegistry[uid] || {}; - return eventRegistry[uid]; -} - -function bootstrapHandler(element, fn) { - return function handler(event) { - event.delegateTarget = element; - - if (handler.oneOff) { - EventHandler.off(element, event.type, fn); - } - - return fn.apply(element, [event]); - }; -} - -function bootstrapDelegationHandler(element, selector, fn) { - return function handler(event) { - const domElements = element.querySelectorAll(selector); - - for (let { - target - } = event; target && target !== this; target = target.parentNode) { - for (let i = domElements.length; i--;) { - if (domElements[i] === target) { - event.delegateTarget = target; - - if (handler.oneOff) { - // eslint-disable-next-line unicorn/consistent-destructuring - EventHandler.off(element, event.type, selector, fn); - } - - return fn.apply(target, [event]); - } - } - } // To please ESLint - - - return null; - }; -} - -function findHandler(events, handler, delegationSelector = null) { - const uidEventList = Object.keys(events); - - for (let i = 0, len = uidEventList.length; i < len; i++) { - const event = events[uidEventList[i]]; - - if (event.originalHandler === handler && event.delegationSelector === delegationSelector) { - return event; - } - } - - return null; -} - -function normalizeParams(originalTypeEvent, handler, delegationFn) { - const delegation = typeof handler === 'string'; - const originalHandler = delegation ? delegationFn : handler; - let typeEvent = getTypeEvent(originalTypeEvent); - const isNative = nativeEvents.has(typeEvent); - - if (!isNative) { - typeEvent = originalTypeEvent; - } - - return [delegation, originalHandler, typeEvent]; -} - -function addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) { - if (typeof originalTypeEvent !== 'string' || !element) { - return; - } - - if (!handler) { - handler = delegationFn; - delegationFn = null; - } // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position - // this prevents the handler from being dispatched the same way as mouseover or mouseout does - - - if (customEventsRegex.test(originalTypeEvent)) { - const wrapFn = fn => { - return function (event) { - if (!event.relatedTarget || event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget)) { - return fn.call(this, event); - } - }; - }; - - if (delegationFn) { - delegationFn = wrapFn(delegationFn); - } else { - handler = wrapFn(handler); - } - } - - const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn); - const events = getEvent(element); - const handlers = events[typeEvent] || (events[typeEvent] = {}); - const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null); - - if (previousFn) { - previousFn.oneOff = previousFn.oneOff && oneOff; - return; - } - - const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, '')); - const fn = delegation ? bootstrapDelegationHandler(element, handler, delegationFn) : bootstrapHandler(element, handler); - fn.delegationSelector = delegation ? handler : null; - fn.originalHandler = originalHandler; - fn.oneOff = oneOff; - fn.uidEvent = uid; - handlers[uid] = fn; - element.addEventListener(typeEvent, fn, delegation); -} - -function removeHandler(element, events, typeEvent, handler, delegationSelector) { - const fn = findHandler(events[typeEvent], handler, delegationSelector); - - if (!fn) { - return; - } - - element.removeEventListener(typeEvent, fn, Boolean(delegationSelector)); - delete events[typeEvent][fn.uidEvent]; -} - -function removeNamespacedHandlers(element, events, typeEvent, namespace) { - const storeElementEvent = events[typeEvent] || {}; - Object.keys(storeElementEvent).forEach(handlerKey => { - if (handlerKey.includes(namespace)) { - const event = storeElementEvent[handlerKey]; - removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector); - } - }); -} - -function getTypeEvent(event) { - // allow to get the native events from namespaced events ('click.bs.button' --> 'click') - event = event.replace(stripNameRegex, ''); - return customEvents[event] || event; -} - -const EventHandler = { - on(element, event, handler, delegationFn) { - addHandler(element, event, handler, delegationFn, false); - }, - - one(element, event, handler, delegationFn) { - addHandler(element, event, handler, delegationFn, true); - }, - - off(element, originalTypeEvent, handler, delegationFn) { - if (typeof originalTypeEvent !== 'string' || !element) { - return; - } - - const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn); - const inNamespace = typeEvent !== originalTypeEvent; - const events = getEvent(element); - const isNamespace = originalTypeEvent.startsWith('.'); - - if (typeof originalHandler !== 'undefined') { - // Simplest case: handler is passed, remove that listener ONLY. - if (!events || !events[typeEvent]) { - return; - } - - removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null); - return; - } - - if (isNamespace) { - Object.keys(events).forEach(elementEvent => { - removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1)); - }); - } - - const storeElementEvent = events[typeEvent] || {}; - Object.keys(storeElementEvent).forEach(keyHandlers => { - const handlerKey = keyHandlers.replace(stripUidRegex, ''); - - if (!inNamespace || originalTypeEvent.includes(handlerKey)) { - const event = storeElementEvent[keyHandlers]; - removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector); - } - }); - }, - - trigger(element, event, args) { - if (typeof event !== 'string' || !element) { - return null; - } - - const $ = getjQuery(); - const typeEvent = getTypeEvent(event); - const inNamespace = event !== typeEvent; - const isNative = nativeEvents.has(typeEvent); - let jQueryEvent; - let bubbles = true; - let nativeDispatch = true; - let defaultPrevented = false; - let evt = null; - - if (inNamespace && $) { - jQueryEvent = $.Event(event, args); - $(element).trigger(jQueryEvent); - bubbles = !jQueryEvent.isPropagationStopped(); - nativeDispatch = !jQueryEvent.isImmediatePropagationStopped(); - defaultPrevented = jQueryEvent.isDefaultPrevented(); - } - - if (isNative) { - evt = document.createEvent('HTMLEvents'); - evt.initEvent(typeEvent, bubbles, true); - } else { - evt = new CustomEvent(event, { - bubbles, - cancelable: true - }); - } // merge custom information in our event - - - if (typeof args !== 'undefined') { - Object.keys(args).forEach(key => { - Object.defineProperty(evt, key, { - get() { - return args[key]; - } - - }); - }); - } - - if (defaultPrevented) { - evt.preventDefault(); - } - - if (nativeDispatch) { - element.dispatchEvent(evt); - } - - if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') { - jQueryEvent.preventDefault(); - } - - return evt; - } - -}; - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): dom/data.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ -const elementMap = new Map(); -var Data = { - set(element, key, instance) { - if (!elementMap.has(element)) { - elementMap.set(element, new Map()); - } - - const instanceMap = elementMap.get(element); // make it clear we only want one instance per element - // can be removed later when multiple key/instances are fine to be used - - if (!instanceMap.has(key) && instanceMap.size !== 0) { - // eslint-disable-next-line no-console - console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`); - return; - } - - instanceMap.set(key, instance); - }, - - get(element, key) { - if (elementMap.has(element)) { - return elementMap.get(element).get(key) || null; - } - - return null; - }, - - remove(element, key) { - if (!elementMap.has(element)) { - return; - } - - const instanceMap = elementMap.get(element); - instanceMap.delete(key); // free up element references if there are no instances left for an element - - if (instanceMap.size === 0) { - elementMap.delete(element); - } - } - -}; - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): base-component.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - -const VERSION = '5.0.2'; - -class BaseComponent { - constructor(element) { - element = getElement(element); - - if (!element) { - return; - } - - this._element = element; - Data.set(this._element, this.constructor.DATA_KEY, this); - } - - dispose() { - Data.remove(this._element, this.constructor.DATA_KEY); - EventHandler.off(this._element, this.constructor.EVENT_KEY); - Object.getOwnPropertyNames(this).forEach(propertyName => { - this[propertyName] = null; - }); - } - - _queueCallback(callback, element, isAnimated = true) { - executeAfterTransition(callback, element, isAnimated); - } - /** Static */ - - - static getInstance(element) { - return Data.get(element, this.DATA_KEY); - } - - static getOrCreateInstance(element, config = {}) { - return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null); - } - - static get VERSION() { - return VERSION; - } - - 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}`; - } - -} - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): alert.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - -const NAME$c = 'alert'; -const DATA_KEY$b = 'bs.alert'; -const EVENT_KEY$b = `.${DATA_KEY$b}`; -const DATA_API_KEY$8 = '.data-api'; -const SELECTOR_DISMISS = '[data-bs-dismiss="alert"]'; -const EVENT_CLOSE = `close${EVENT_KEY$b}`; -const EVENT_CLOSED = `closed${EVENT_KEY$b}`; -const EVENT_CLICK_DATA_API$7 = `click${EVENT_KEY$b}${DATA_API_KEY$8}`; -const CLASS_NAME_ALERT = 'alert'; -const CLASS_NAME_FADE$6 = 'fade'; -const CLASS_NAME_SHOW$9 = 'show'; -/** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - -class Alert extends BaseComponent { - // Getters - static get NAME() { - return NAME$c; - } // Public - - - close(element) { - const rootElement = element ? this._getRootElement(element) : this._element; - - const customEvent = this._triggerCloseEvent(rootElement); - - if (customEvent === null || customEvent.defaultPrevented) { - return; - } - - this._removeElement(rootElement); - } // Private - - - _getRootElement(element) { - return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`); - } - - _triggerCloseEvent(element) { - return EventHandler.trigger(element, EVENT_CLOSE); - } - - _removeElement(element) { - element.classList.remove(CLASS_NAME_SHOW$9); - const isAnimated = element.classList.contains(CLASS_NAME_FADE$6); - - this._queueCallback(() => this._destroyElement(element), element, isAnimated); - } - - _destroyElement(element) { - element.remove(); - EventHandler.trigger(element, EVENT_CLOSED); - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Alert.getOrCreateInstance(this); - - if (config === 'close') { - data[config](this); - } - }); - } - - static handleDismiss(alertInstance) { - return function (event) { - if (event) { - event.preventDefault(); - } - - alertInstance.close(this); - }; - } - -} -/** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - -EventHandler.on(document, EVENT_CLICK_DATA_API$7, SELECTOR_DISMISS, Alert.handleDismiss(new Alert())); -/** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Alert to jQuery only if jQuery is present - */ - -defineJQueryPlugin(Alert); - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): button.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - -const NAME$b = 'button'; -const DATA_KEY$a = 'bs.button'; -const EVENT_KEY$a = `.${DATA_KEY$a}`; -const DATA_API_KEY$7 = '.data-api'; -const CLASS_NAME_ACTIVE$3 = 'active'; -const SELECTOR_DATA_TOGGLE$5 = '[data-bs-toggle="button"]'; -const EVENT_CLICK_DATA_API$6 = `click${EVENT_KEY$a}${DATA_API_KEY$7}`; -/** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - -class Button extends BaseComponent { - // Getters - static get NAME() { - return NAME$b; - } // Public - - - toggle() { - // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method - this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE$3)); - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Button.getOrCreateInstance(this); - - if (config === 'toggle') { - data[config](); - } - }); - } - -} -/** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - -EventHandler.on(document, EVENT_CLICK_DATA_API$6, SELECTOR_DATA_TOGGLE$5, event => { - event.preventDefault(); - const button = event.target.closest(SELECTOR_DATA_TOGGLE$5); - const data = Button.getOrCreateInstance(button); - data.toggle(); -}); -/** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Button to jQuery only if jQuery is present - */ - -defineJQueryPlugin(Button); - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): dom/manipulator.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -function normalizeData(val) { - if (val === 'true') { - return true; - } - - if (val === 'false') { - return false; - } - - if (val === Number(val).toString()) { - return Number(val); - } - - if (val === '' || val === 'null') { - return null; - } - - return val; -} - -function normalizeDataKey(key) { - return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`); -} - -const Manipulator = { - setDataAttribute(element, key, value) { - element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value); - }, - - removeDataAttribute(element, key) { - element.removeAttribute(`data-bs-${normalizeDataKey(key)}`); - }, - - getDataAttributes(element) { - if (!element) { - return {}; - } - - const attributes = {}; - Object.keys(element.dataset).filter(key => key.startsWith('bs')).forEach(key => { - let pureKey = key.replace(/^bs/, ''); - pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length); - attributes[pureKey] = normalizeData(element.dataset[key]); - }); - return attributes; - }, - - getDataAttribute(element, key) { - return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`)); - }, - - offset(element) { - const rect = element.getBoundingClientRect(); - return { - top: rect.top + document.body.scrollTop, - left: rect.left + document.body.scrollLeft - }; - }, - - position(element) { - return { - top: element.offsetTop, - left: element.offsetLeft - }; - } - -}; - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): carousel.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - -const NAME$a = 'carousel'; -const DATA_KEY$9 = 'bs.carousel'; -const EVENT_KEY$9 = `.${DATA_KEY$9}`; -const DATA_API_KEY$6 = '.data-api'; -const ARROW_LEFT_KEY = 'ArrowLeft'; -const ARROW_RIGHT_KEY = 'ArrowRight'; -const TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch - -const SWIPE_THRESHOLD = 40; -const Default$9 = { - interval: 5000, - keyboard: true, - slide: false, - pause: 'hover', - wrap: true, - touch: true -}; -const DefaultType$9 = { - interval: '(number|boolean)', - keyboard: 'boolean', - slide: '(boolean|string)', - pause: '(string|boolean)', - wrap: 'boolean', - touch: 'boolean' -}; -const ORDER_NEXT = 'next'; -const ORDER_PREV = 'prev'; -const DIRECTION_LEFT = 'left'; -const DIRECTION_RIGHT = 'right'; -const KEY_TO_DIRECTION = { - [ARROW_LEFT_KEY]: DIRECTION_RIGHT, - [ARROW_RIGHT_KEY]: DIRECTION_LEFT -}; -const EVENT_SLIDE = `slide${EVENT_KEY$9}`; -const EVENT_SLID = `slid${EVENT_KEY$9}`; -const EVENT_KEYDOWN = `keydown${EVENT_KEY$9}`; -const EVENT_MOUSEENTER = `mouseenter${EVENT_KEY$9}`; -const EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY$9}`; -const EVENT_TOUCHSTART = `touchstart${EVENT_KEY$9}`; -const EVENT_TOUCHMOVE = `touchmove${EVENT_KEY$9}`; -const EVENT_TOUCHEND = `touchend${EVENT_KEY$9}`; -const EVENT_POINTERDOWN = `pointerdown${EVENT_KEY$9}`; -const EVENT_POINTERUP = `pointerup${EVENT_KEY$9}`; -const EVENT_DRAG_START = `dragstart${EVENT_KEY$9}`; -const EVENT_LOAD_DATA_API$2 = `load${EVENT_KEY$9}${DATA_API_KEY$6}`; -const EVENT_CLICK_DATA_API$5 = `click${EVENT_KEY$9}${DATA_API_KEY$6}`; -const CLASS_NAME_CAROUSEL = 'carousel'; -const CLASS_NAME_ACTIVE$2 = 'active'; -const CLASS_NAME_SLIDE = 'slide'; -const CLASS_NAME_END = 'carousel-item-end'; -const CLASS_NAME_START = 'carousel-item-start'; -const CLASS_NAME_NEXT = 'carousel-item-next'; -const CLASS_NAME_PREV = 'carousel-item-prev'; -const CLASS_NAME_POINTER_EVENT = 'pointer-event'; -const SELECTOR_ACTIVE$1 = '.active'; -const SELECTOR_ACTIVE_ITEM = '.active.carousel-item'; -const SELECTOR_ITEM = '.carousel-item'; -const SELECTOR_ITEM_IMG = '.carousel-item img'; -const SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'; -const SELECTOR_INDICATORS = '.carousel-indicators'; -const SELECTOR_INDICATOR = '[data-bs-target]'; -const SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'; -const SELECTOR_DATA_RIDE = '[data-bs-ride="carousel"]'; -const POINTER_TYPE_TOUCH = 'touch'; -const POINTER_TYPE_PEN = 'pen'; -/** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - -class Carousel extends BaseComponent { - constructor(element, config) { - super(element); - this._items = null; - this._interval = null; - this._activeElement = null; - this._isPaused = false; - this._isSliding = false; - this.touchTimeout = null; - this.touchStartX = 0; - this.touchDeltaX = 0; - this._config = this._getConfig(config); - this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element); - this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0; - this._pointerEvent = Boolean(window.PointerEvent); - - this._addEventListeners(); - } // Getters - - - static get Default() { - return Default$9; - } - - static get NAME() { - return NAME$a; - } // Public - - - next() { - this._slide(ORDER_NEXT); - } - - nextWhenVisible() { - // Don't call next when the page isn't visible - // or the carousel or its parent isn't visible - if (!document.hidden && isVisible(this._element)) { - this.next(); - } - } - - prev() { - this._slide(ORDER_PREV); - } - - pause(event) { - if (!event) { - this._isPaused = true; - } - - if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) { - triggerTransitionEnd(this._element); - this.cycle(true); - } - - clearInterval(this._interval); - this._interval = null; - } - - cycle(event) { - if (!event) { - this._isPaused = false; - } - - if (this._interval) { - clearInterval(this._interval); - this._interval = null; - } - - if (this._config && this._config.interval && !this._isPaused) { - this._updateInterval(); - - this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval); - } - } - - to(index) { - this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); - - const activeIndex = this._getItemIndex(this._activeElement); - - if (index > this._items.length - 1 || index < 0) { - return; - } - - if (this._isSliding) { - EventHandler.one(this._element, EVENT_SLID, () => this.to(index)); - return; - } - - if (activeIndex === index) { - this.pause(); - this.cycle(); - return; - } - - const order = index > activeIndex ? ORDER_NEXT : ORDER_PREV; - - this._slide(order, this._items[index]); - } // Private - - - _getConfig(config) { - config = { ...Default$9, - ...Manipulator.getDataAttributes(this._element), - ...(typeof config === 'object' ? config : {}) - }; - typeCheckConfig(NAME$a, config, DefaultType$9); - return config; - } - - _handleSwipe() { - const absDeltax = Math.abs(this.touchDeltaX); - - if (absDeltax <= SWIPE_THRESHOLD) { - return; - } - - const direction = absDeltax / this.touchDeltaX; - this.touchDeltaX = 0; - - if (!direction) { - return; - } - - this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT); - } - - _addEventListeners() { - if (this._config.keyboard) { - EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event)); - } - - if (this._config.pause === 'hover') { - EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event)); - EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event)); - } - - if (this._config.touch && this._touchSupported) { - this._addTouchEventListeners(); - } - } - - _addTouchEventListeners() { - const start = event => { - if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) { - this.touchStartX = event.clientX; - } else if (!this._pointerEvent) { - this.touchStartX = event.touches[0].clientX; - } - }; - - const move = event => { - // ensure swiping with one touch and not pinching - this.touchDeltaX = event.touches && event.touches.length > 1 ? 0 : event.touches[0].clientX - this.touchStartX; - }; - - const end = event => { - if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) { - this.touchDeltaX = event.clientX - this.touchStartX; - } - - this._handleSwipe(); - - if (this._config.pause === 'hover') { - // If it's a touch-enabled device, mouseenter/leave are fired as - // part of the mouse compatibility events on first tap - the carousel - // would stop cycling until user tapped out of it; - // here, we listen for touchend, explicitly pause the carousel - // (as if it's the second time we tap on it, mouseenter compat event - // is NOT fired) and after a timeout (to allow for mouse compatibility - // events to fire) we explicitly restart cycling - this.pause(); - - if (this.touchTimeout) { - clearTimeout(this.touchTimeout); - } - - this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval); - } - }; - - SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => { - EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault()); - }); - - if (this._pointerEvent) { - EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event)); - EventHandler.on(this._element, EVENT_POINTERUP, event => end(event)); - - this._element.classList.add(CLASS_NAME_POINTER_EVENT); - } else { - EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event)); - EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event)); - EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event)); - } - } - - _keydown(event) { - if (/input|textarea/i.test(event.target.tagName)) { - return; - } - - const direction = KEY_TO_DIRECTION[event.key]; - - if (direction) { - event.preventDefault(); - - this._slide(direction); - } - } - - _getItemIndex(element) { - this._items = element && element.parentNode ? SelectorEngine.find(SELECTOR_ITEM, element.parentNode) : []; - return this._items.indexOf(element); - } - - _getItemByOrder(order, activeElement) { - const isNext = order === ORDER_NEXT; - return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap); - } - - _triggerSlideEvent(relatedTarget, eventDirectionName) { - const targetIndex = this._getItemIndex(relatedTarget); - - const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)); - - return EventHandler.trigger(this._element, EVENT_SLIDE, { - relatedTarget, - direction: eventDirectionName, - from: fromIndex, - to: targetIndex - }); - } - - _setActiveIndicatorElement(element) { - if (this._indicatorsElement) { - const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE$1, this._indicatorsElement); - activeIndicator.classList.remove(CLASS_NAME_ACTIVE$2); - activeIndicator.removeAttribute('aria-current'); - const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement); - - for (let i = 0; i < indicators.length; i++) { - if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) { - indicators[i].classList.add(CLASS_NAME_ACTIVE$2); - indicators[i].setAttribute('aria-current', 'true'); - break; - } - } - } - } - - _updateInterval() { - const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); - - if (!element) { - return; - } - - const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10); - - if (elementInterval) { - this._config.defaultInterval = this._config.defaultInterval || this._config.interval; - this._config.interval = elementInterval; - } else { - this._config.interval = this._config.defaultInterval || this._config.interval; - } - } - - _slide(directionOrOrder, element) { - const order = this._directionToOrder(directionOrOrder); - - const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); - - const activeElementIndex = this._getItemIndex(activeElement); - - const nextElement = element || this._getItemByOrder(order, activeElement); - - const nextElementIndex = this._getItemIndex(nextElement); - - const isCycling = Boolean(this._interval); - const isNext = order === ORDER_NEXT; - const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END; - const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV; - - const eventDirectionName = this._orderToDirection(order); - - if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE$2)) { - this._isSliding = false; - return; - } - - if (this._isSliding) { - return; - } - - const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName); - - if (slideEvent.defaultPrevented) { - return; - } - - if (!activeElement || !nextElement) { - // Some weirdness is happening, so we bail - return; - } - - this._isSliding = true; - - if (isCycling) { - this.pause(); - } - - this._setActiveIndicatorElement(nextElement); - - this._activeElement = nextElement; - - const triggerSlidEvent = () => { - EventHandler.trigger(this._element, EVENT_SLID, { - relatedTarget: nextElement, - direction: eventDirectionName, - from: activeElementIndex, - to: nextElementIndex - }); - }; - - if (this._element.classList.contains(CLASS_NAME_SLIDE)) { - nextElement.classList.add(orderClassName); - reflow(nextElement); - activeElement.classList.add(directionalClassName); - nextElement.classList.add(directionalClassName); - - const completeCallBack = () => { - nextElement.classList.remove(directionalClassName, orderClassName); - nextElement.classList.add(CLASS_NAME_ACTIVE$2); - activeElement.classList.remove(CLASS_NAME_ACTIVE$2, orderClassName, directionalClassName); - this._isSliding = false; - setTimeout(triggerSlidEvent, 0); - }; - - this._queueCallback(completeCallBack, activeElement, true); - } else { - activeElement.classList.remove(CLASS_NAME_ACTIVE$2); - nextElement.classList.add(CLASS_NAME_ACTIVE$2); - this._isSliding = false; - triggerSlidEvent(); - } - - if (isCycling) { - this.cycle(); - } - } - - _directionToOrder(direction) { - if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) { - return direction; - } - - if (isRTL()) { - return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT; - } - - return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV; - } - - _orderToDirection(order) { - if (![ORDER_NEXT, ORDER_PREV].includes(order)) { - return order; - } - - if (isRTL()) { - return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT; - } - - return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT; - } // Static - - - static carouselInterface(element, config) { - const data = Carousel.getOrCreateInstance(element, config); - let { - _config - } = data; - - if (typeof config === 'object') { - _config = { ..._config, - ...config - }; - } - - const action = typeof config === 'string' ? config : _config.slide; - - if (typeof config === 'number') { - data.to(config); - } else if (typeof action === 'string') { - if (typeof data[action] === 'undefined') { - throw new TypeError(`No method named "${action}"`); - } - - data[action](); - } else if (_config.interval && _config.ride) { - data.pause(); - data.cycle(); - } - } - - static jQueryInterface(config) { - return this.each(function () { - Carousel.carouselInterface(this, config); - }); - } - - static dataApiClickHandler(event) { - const target = getElementFromSelector(this); - - if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) { - return; - } - - const config = { ...Manipulator.getDataAttributes(target), - ...Manipulator.getDataAttributes(this) - }; - const slideIndex = this.getAttribute('data-bs-slide-to'); - - if (slideIndex) { - config.interval = false; - } - - Carousel.carouselInterface(target, config); - - if (slideIndex) { - Carousel.getInstance(target).to(slideIndex); - } - - event.preventDefault(); - } - -} -/** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - -EventHandler.on(document, EVENT_CLICK_DATA_API$5, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler); -EventHandler.on(window, EVENT_LOAD_DATA_API$2, () => { - const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE); - - for (let i = 0, len = carousels.length; i < len; i++) { - Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i])); - } -}); -/** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Carousel to jQuery only if jQuery is present - */ - -defineJQueryPlugin(Carousel); - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): collapse.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - -const NAME$9 = 'collapse'; -const DATA_KEY$8 = 'bs.collapse'; -const EVENT_KEY$8 = `.${DATA_KEY$8}`; -const DATA_API_KEY$5 = '.data-api'; -const Default$8 = { - toggle: true, - parent: '' -}; -const DefaultType$8 = { - toggle: 'boolean', - parent: '(string|element)' -}; -const EVENT_SHOW$5 = `show${EVENT_KEY$8}`; -const EVENT_SHOWN$5 = `shown${EVENT_KEY$8}`; -const EVENT_HIDE$5 = `hide${EVENT_KEY$8}`; -const EVENT_HIDDEN$5 = `hidden${EVENT_KEY$8}`; -const EVENT_CLICK_DATA_API$4 = `click${EVENT_KEY$8}${DATA_API_KEY$5}`; -const CLASS_NAME_SHOW$8 = 'show'; -const CLASS_NAME_COLLAPSE = 'collapse'; -const CLASS_NAME_COLLAPSING = 'collapsing'; -const CLASS_NAME_COLLAPSED = 'collapsed'; -const WIDTH = 'width'; -const HEIGHT = 'height'; -const SELECTOR_ACTIVES = '.show, .collapsing'; -const SELECTOR_DATA_TOGGLE$4 = '[data-bs-toggle="collapse"]'; -/** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - -class Collapse extends BaseComponent { - constructor(element, config) { - super(element); - this._isTransitioning = false; - this._config = this._getConfig(config); - this._triggerArray = SelectorEngine.find(`${SELECTOR_DATA_TOGGLE$4}[href="#${this._element.id}"],` + `${SELECTOR_DATA_TOGGLE$4}[data-bs-target="#${this._element.id}"]`); - const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE$4); - - for (let i = 0, len = toggleList.length; i < len; i++) { - const elem = toggleList[i]; - const selector = getSelectorFromElement(elem); - const filterElement = SelectorEngine.find(selector).filter(foundElem => foundElem === this._element); - - if (selector !== null && filterElement.length) { - this._selector = selector; - - this._triggerArray.push(elem); - } - } - - this._parent = this._config.parent ? this._getParent() : null; - - if (!this._config.parent) { - this._addAriaAndCollapsedClass(this._element, this._triggerArray); - } - - if (this._config.toggle) { - this.toggle(); - } - } // Getters - - - static get Default() { - return Default$8; - } - - static get NAME() { - return NAME$9; - } // Public - - - toggle() { - if (this._element.classList.contains(CLASS_NAME_SHOW$8)) { - this.hide(); - } else { - this.show(); - } - } - - show() { - if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW$8)) { - return; - } - - let actives; - let activesData; - - if (this._parent) { - actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent).filter(elem => { - if (typeof this._config.parent === 'string') { - return elem.getAttribute('data-bs-parent') === this._config.parent; - } - - return elem.classList.contains(CLASS_NAME_COLLAPSE); - }); - - if (actives.length === 0) { - actives = null; - } - } - - const container = SelectorEngine.findOne(this._selector); - - if (actives) { - const tempActiveData = actives.find(elem => container !== elem); - activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null; - - if (activesData && activesData._isTransitioning) { - return; - } - } - - const startEvent = EventHandler.trigger(this._element, EVENT_SHOW$5); - - if (startEvent.defaultPrevented) { - return; - } - - if (actives) { - actives.forEach(elemActive => { - if (container !== elemActive) { - Collapse.collapseInterface(elemActive, 'hide'); - } - - if (!activesData) { - Data.set(elemActive, DATA_KEY$8, null); - } - }); - } - - const dimension = this._getDimension(); - - this._element.classList.remove(CLASS_NAME_COLLAPSE); - - this._element.classList.add(CLASS_NAME_COLLAPSING); - - this._element.style[dimension] = 0; - - if (this._triggerArray.length) { - this._triggerArray.forEach(element => { - element.classList.remove(CLASS_NAME_COLLAPSED); - element.setAttribute('aria-expanded', true); - }); - } - - this.setTransitioning(true); - - const complete = () => { - this._element.classList.remove(CLASS_NAME_COLLAPSING); - - this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$8); - - this._element.style[dimension] = ''; - this.setTransitioning(false); - EventHandler.trigger(this._element, EVENT_SHOWN$5); - }; - - const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1); - const scrollSize = `scroll${capitalizedDimension}`; - - this._queueCallback(complete, this._element, true); - - this._element.style[dimension] = `${this._element[scrollSize]}px`; - } - - hide() { - if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW$8)) { - return; - } - - const startEvent = EventHandler.trigger(this._element, EVENT_HIDE$5); - - if (startEvent.defaultPrevented) { - return; - } - - const dimension = this._getDimension(); - - this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`; - reflow(this._element); - - this._element.classList.add(CLASS_NAME_COLLAPSING); - - this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$8); - - const triggerArrayLength = this._triggerArray.length; - - if (triggerArrayLength > 0) { - for (let i = 0; i < triggerArrayLength; i++) { - const trigger = this._triggerArray[i]; - const elem = getElementFromSelector(trigger); - - if (elem && !elem.classList.contains(CLASS_NAME_SHOW$8)) { - trigger.classList.add(CLASS_NAME_COLLAPSED); - trigger.setAttribute('aria-expanded', false); - } - } - } - - this.setTransitioning(true); - - const complete = () => { - this.setTransitioning(false); - - this._element.classList.remove(CLASS_NAME_COLLAPSING); - - this._element.classList.add(CLASS_NAME_COLLAPSE); - - EventHandler.trigger(this._element, EVENT_HIDDEN$5); - }; - - this._element.style[dimension] = ''; - - this._queueCallback(complete, this._element, true); - } - - setTransitioning(isTransitioning) { - this._isTransitioning = isTransitioning; - } // Private - - - _getConfig(config) { - config = { ...Default$8, - ...config - }; - config.toggle = Boolean(config.toggle); // Coerce string values - - typeCheckConfig(NAME$9, config, DefaultType$8); - return config; - } - - _getDimension() { - return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT; - } - - _getParent() { - let { - parent - } = this._config; - parent = getElement(parent); - const selector = `${SELECTOR_DATA_TOGGLE$4}[data-bs-parent="${parent}"]`; - SelectorEngine.find(selector, parent).forEach(element => { - const selected = getElementFromSelector(element); - - this._addAriaAndCollapsedClass(selected, [element]); - }); - return parent; - } - - _addAriaAndCollapsedClass(element, triggerArray) { - if (!element || !triggerArray.length) { - return; - } - - const isOpen = element.classList.contains(CLASS_NAME_SHOW$8); - triggerArray.forEach(elem => { - if (isOpen) { - elem.classList.remove(CLASS_NAME_COLLAPSED); - } else { - elem.classList.add(CLASS_NAME_COLLAPSED); - } - - elem.setAttribute('aria-expanded', isOpen); - }); - } // Static - - - static collapseInterface(element, config) { - let data = Collapse.getInstance(element); - const _config = { ...Default$8, - ...Manipulator.getDataAttributes(element), - ...(typeof config === 'object' && config ? config : {}) - }; - - if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) { - _config.toggle = false; - } - - if (!data) { - data = new Collapse(element, _config); - } - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - } - } - - static jQueryInterface(config) { - return this.each(function () { - Collapse.collapseInterface(this, config); - }); - } - -} -/** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - -EventHandler.on(document, EVENT_CLICK_DATA_API$4, SELECTOR_DATA_TOGGLE$4, function (event) { - // preventDefault only for <a> elements (which change the URL) not inside the collapsible element - if (event.target.tagName === 'A' || event.delegateTarget && event.delegateTarget.tagName === 'A') { - event.preventDefault(); - } - - const triggerData = Manipulator.getDataAttributes(this); - const selector = getSelectorFromElement(this); - const selectorElements = SelectorEngine.find(selector); - selectorElements.forEach(element => { - const data = Collapse.getInstance(element); - let config; - - if (data) { - // update parent attribute - if (data._parent === null && typeof triggerData.parent === 'string') { - data._config.parent = triggerData.parent; - data._parent = data._getParent(); - } - - config = 'toggle'; - } else { - config = triggerData; - } - - Collapse.collapseInterface(element, config); - }); -}); -/** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Collapse to jQuery only if jQuery is present - */ - -defineJQueryPlugin(Collapse); - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): dropdown.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - -const NAME$8 = 'dropdown'; -const DATA_KEY$7 = 'bs.dropdown'; -const EVENT_KEY$7 = `.${DATA_KEY$7}`; -const DATA_API_KEY$4 = '.data-api'; -const ESCAPE_KEY$2 = 'Escape'; -const SPACE_KEY = 'Space'; -const TAB_KEY = 'Tab'; -const ARROW_UP_KEY = 'ArrowUp'; -const ARROW_DOWN_KEY = 'ArrowDown'; -const RIGHT_MOUSE_BUTTON = 2; // MouseEvent.button value for the secondary button, usually the right button - -const REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY$2}`); -const EVENT_HIDE$4 = `hide${EVENT_KEY$7}`; -const EVENT_HIDDEN$4 = `hidden${EVENT_KEY$7}`; -const EVENT_SHOW$4 = `show${EVENT_KEY$7}`; -const EVENT_SHOWN$4 = `shown${EVENT_KEY$7}`; -const EVENT_CLICK = `click${EVENT_KEY$7}`; -const EVENT_CLICK_DATA_API$3 = `click${EVENT_KEY$7}${DATA_API_KEY$4}`; -const EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY$7}${DATA_API_KEY$4}`; -const EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY$7}${DATA_API_KEY$4}`; -const CLASS_NAME_SHOW$7 = 'show'; -const CLASS_NAME_DROPUP = 'dropup'; -const CLASS_NAME_DROPEND = 'dropend'; -const CLASS_NAME_DROPSTART = 'dropstart'; -const CLASS_NAME_NAVBAR = 'navbar'; -const SELECTOR_DATA_TOGGLE$3 = '[data-bs-toggle="dropdown"]'; -const SELECTOR_MENU = '.dropdown-menu'; -const SELECTOR_NAVBAR_NAV = '.navbar-nav'; -const SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'; -const PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'; -const PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'; -const PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'; -const PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'; -const PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'; -const PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'; -const Default$7 = { - offset: [0, 2], - boundary: 'clippingParents', - reference: 'toggle', - display: 'dynamic', - popperConfig: null, - autoClose: true -}; -const DefaultType$7 = { - offset: '(array|string|function)', - boundary: '(string|element)', - reference: '(string|element|object)', - display: 'string', - popperConfig: '(null|object|function)', - autoClose: '(boolean|string)' -}; -/** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - -class Dropdown extends BaseComponent { - constructor(element, config) { - super(element); - this._popper = null; - this._config = this._getConfig(config); - this._menu = this._getMenuElement(); - this._inNavbar = this._detectNavbar(); - - this._addEventListeners(); - } // Getters - - - static get Default() { - return Default$7; - } - - static get DefaultType() { - return DefaultType$7; - } - - static get NAME() { - return NAME$8; - } // Public - - - toggle() { - if (isDisabled(this._element)) { - return; - } - - const isActive = this._element.classList.contains(CLASS_NAME_SHOW$7); - - if (isActive) { - this.hide(); - return; - } - - this.show(); - } - - show() { - if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW$7)) { - return; - } - - const parent = Dropdown.getParentFromElement(this._element); - const relatedTarget = { - relatedTarget: this._element - }; - const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$4, relatedTarget); - - if (showEvent.defaultPrevented) { - return; - } // Totally disable Popper for Dropdowns in Navbar - - - if (this._inNavbar) { - Manipulator.setDataAttribute(this._menu, 'popper', 'none'); - } else { - if (typeof Popper === 'undefined') { - throw new TypeError('Bootstrap\'s dropdowns require Popper (https://popper.js.org)'); - } - - let referenceElement = this._element; - - if (this._config.reference === 'parent') { - referenceElement = parent; - } else if (isElement(this._config.reference)) { - referenceElement = getElement(this._config.reference); - } else if (typeof this._config.reference === 'object') { - referenceElement = this._config.reference; - } - - const popperConfig = this._getPopperConfig(); - - const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false); - this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig); - - if (isDisplayStatic) { - Manipulator.setDataAttribute(this._menu, 'popper', 'static'); - } - } // If this is a touch-enabled device we add extra - // empty mouseover listeners to the body's immediate children; - // only needed because of broken event delegation on iOS - // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html - - - if ('ontouchstart' in document.documentElement && !parent.closest(SELECTOR_NAVBAR_NAV)) { - [].concat(...document.body.children).forEach(elem => EventHandler.on(elem, 'mouseover', noop)); - } - - this._element.focus(); - - this._element.setAttribute('aria-expanded', true); - - this._menu.classList.toggle(CLASS_NAME_SHOW$7); - - this._element.classList.toggle(CLASS_NAME_SHOW$7); - - EventHandler.trigger(this._element, EVENT_SHOWN$4, relatedTarget); - } - - hide() { - if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW$7)) { - return; - } - - const relatedTarget = { - relatedTarget: this._element - }; - - this._completeHide(relatedTarget); - } - - dispose() { - if (this._popper) { - this._popper.destroy(); - } - - super.dispose(); - } - - update() { - this._inNavbar = this._detectNavbar(); - - if (this._popper) { - this._popper.update(); - } - } // Private - - - _addEventListeners() { - EventHandler.on(this._element, EVENT_CLICK, event => { - event.preventDefault(); - this.toggle(); - }); - } - - _completeHide(relatedTarget) { - const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$4, relatedTarget); - - if (hideEvent.defaultPrevented) { - return; - } // If this is a touch-enabled device we remove the extra - // empty mouseover listeners we added for iOS support - - - if ('ontouchstart' in document.documentElement) { - [].concat(...document.body.children).forEach(elem => EventHandler.off(elem, 'mouseover', noop)); - } - - if (this._popper) { - this._popper.destroy(); - } - - this._menu.classList.remove(CLASS_NAME_SHOW$7); - - this._element.classList.remove(CLASS_NAME_SHOW$7); - - this._element.setAttribute('aria-expanded', 'false'); - - Manipulator.removeDataAttribute(this._menu, 'popper'); - EventHandler.trigger(this._element, EVENT_HIDDEN$4, relatedTarget); - } - - _getConfig(config) { - config = { ...this.constructor.Default, - ...Manipulator.getDataAttributes(this._element), - ...config - }; - typeCheckConfig(NAME$8, config, this.constructor.DefaultType); - - if (typeof config.reference === 'object' && !isElement(config.reference) && typeof config.reference.getBoundingClientRect !== 'function') { - // Popper virtual elements require a getBoundingClientRect method - throw new TypeError(`${NAME$8.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`); - } - - return config; - } - - _getMenuElement() { - return SelectorEngine.next(this._element, SELECTOR_MENU)[0]; - } - - _getPlacement() { - const parentDropdown = this._element.parentNode; - - if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) { - return PLACEMENT_RIGHT; - } - - if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) { - return PLACEMENT_LEFT; - } // We need to trim the value because custom properties can also include spaces - - - const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'; - - if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) { - return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP; - } - - return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM; - } - - _detectNavbar() { - return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null; - } - - _getOffset() { - const { - offset - } = this._config; - - if (typeof offset === 'string') { - return offset.split(',').map(val => Number.parseInt(val, 10)); - } - - if (typeof offset === 'function') { - return popperData => offset(popperData, this._element); - } - - return offset; - } - - _getPopperConfig() { - const defaultBsPopperConfig = { - placement: this._getPlacement(), - modifiers: [{ - name: 'preventOverflow', - options: { - boundary: this._config.boundary - } - }, { - name: 'offset', - options: { - offset: this._getOffset() - } - }] - }; // Disable Popper if we have a static display - - if (this._config.display === 'static') { - defaultBsPopperConfig.modifiers = [{ - name: 'applyStyles', - enabled: false - }]; - } - - return { ...defaultBsPopperConfig, - ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig) - }; - } - - _selectMenuItem({ - key, - target - }) { - const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible); - - if (!items.length) { - return; - } // if target isn't included in items (e.g. when expanding the dropdown) - // allow cycling to get the last item in case key equals ARROW_UP_KEY - - - getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus(); - } // Static - - - static dropdownInterface(element, config) { - const data = Dropdown.getOrCreateInstance(element, config); - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - } - } - - static jQueryInterface(config) { - return this.each(function () { - Dropdown.dropdownInterface(this, config); - }); - } - - static clearMenus(event) { - if (event && (event.button === RIGHT_MOUSE_BUTTON || event.type === 'keyup' && event.key !== TAB_KEY)) { - return; - } - - const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE$3); - - for (let i = 0, len = toggles.length; i < len; i++) { - const context = Dropdown.getInstance(toggles[i]); - - if (!context || context._config.autoClose === false) { - continue; - } - - if (!context._element.classList.contains(CLASS_NAME_SHOW$7)) { - continue; - } - - const relatedTarget = { - relatedTarget: context._element - }; - - if (event) { - const composedPath = event.composedPath(); - const isMenuTarget = composedPath.includes(context._menu); - - if (composedPath.includes(context._element) || context._config.autoClose === 'inside' && !isMenuTarget || context._config.autoClose === 'outside' && isMenuTarget) { - continue; - } // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu - - - if (context._menu.contains(event.target) && (event.type === 'keyup' && event.key === TAB_KEY || /input|select|option|textarea|form/i.test(event.target.tagName))) { - continue; - } - - if (event.type === 'click') { - relatedTarget.clickEvent = event; - } - } - - context._completeHide(relatedTarget); - } - } - - static getParentFromElement(element) { - return getElementFromSelector(element) || element.parentNode; - } - - static dataApiKeydownHandler(event) { - // If not input/textarea: - // - And not a key in REGEXP_KEYDOWN => not a dropdown command - // If input/textarea: - // - If space key => not a dropdown command - // - If key is other than escape - // - If key is not up or down => not a dropdown command - // - If trigger inside the menu => not a dropdown command - if (/input|textarea/i.test(event.target.tagName) ? event.key === SPACE_KEY || event.key !== ESCAPE_KEY$2 && (event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY || event.target.closest(SELECTOR_MENU)) : !REGEXP_KEYDOWN.test(event.key)) { - return; - } - - const isActive = this.classList.contains(CLASS_NAME_SHOW$7); - - if (!isActive && event.key === ESCAPE_KEY$2) { - return; - } - - event.preventDefault(); - event.stopPropagation(); - - if (isDisabled(this)) { - return; - } - - const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0]; - - if (event.key === ESCAPE_KEY$2) { - getToggleButton().focus(); - Dropdown.clearMenus(); - return; - } - - if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) { - if (!isActive) { - getToggleButton().click(); - } - - Dropdown.getInstance(getToggleButton())._selectMenuItem(event); - - return; - } - - if (!isActive || event.key === SPACE_KEY) { - Dropdown.clearMenus(); - } - } - -} -/** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - -EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE$3, Dropdown.dataApiKeydownHandler); -EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler); -EventHandler.on(document, EVENT_CLICK_DATA_API$3, Dropdown.clearMenus); -EventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus); -EventHandler.on(document, EVENT_CLICK_DATA_API$3, SELECTOR_DATA_TOGGLE$3, function (event) { - event.preventDefault(); - Dropdown.dropdownInterface(this); -}); -/** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Dropdown to jQuery only if jQuery is present - */ - -defineJQueryPlugin(Dropdown); - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): util/scrollBar.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -const SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'; -const SELECTOR_STICKY_CONTENT = '.sticky-top'; - -class ScrollBarHelper { - constructor() { - this._element = document.body; - } - - getWidth() { - // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes - const documentWidth = document.documentElement.clientWidth; - return Math.abs(window.innerWidth - documentWidth); - } - - hide() { - const width = this.getWidth(); - - this._disableOverFlow(); // give padding to element to balance the hidden scrollbar width - - - this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width); // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth - - - this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width); - - this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width); - } - - _disableOverFlow() { - this._saveInitialAttribute(this._element, 'overflow'); - - this._element.style.overflow = 'hidden'; - } - - _setElementAttributes(selector, styleProp, callback) { - const scrollbarWidth = this.getWidth(); - - const manipulationCallBack = element => { - if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) { - return; - } - - this._saveInitialAttribute(element, styleProp); - - const calculatedValue = window.getComputedStyle(element)[styleProp]; - element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`; - }; - - this._applyManipulationCallback(selector, manipulationCallBack); - } - - reset() { - this._resetElementAttributes(this._element, 'overflow'); - - this._resetElementAttributes(this._element, 'paddingRight'); - - this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight'); - - this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight'); - } - - _saveInitialAttribute(element, styleProp) { - const actualValue = element.style[styleProp]; - - if (actualValue) { - Manipulator.setDataAttribute(element, styleProp, actualValue); - } - } - - _resetElementAttributes(selector, styleProp) { - const manipulationCallBack = element => { - const value = Manipulator.getDataAttribute(element, styleProp); - - if (typeof value === 'undefined') { - element.style.removeProperty(styleProp); - } else { - Manipulator.removeDataAttribute(element, styleProp); - element.style[styleProp] = value; - } - }; - - this._applyManipulationCallback(selector, manipulationCallBack); - } - - _applyManipulationCallback(selector, callBack) { - if (isElement(selector)) { - callBack(selector); - } else { - SelectorEngine.find(selector, this._element).forEach(callBack); - } - } - - isOverflowing() { - return this.getWidth() > 0; - } - -} - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): util/backdrop.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * -------------------------------------------------------------------------- - */ -const Default$6 = { - isVisible: true, - // if false, we use the backdrop helper without adding any element to the dom - isAnimated: false, - rootElement: 'body', - // give the choice to place backdrop under different elements - clickCallback: null -}; -const DefaultType$6 = { - isVisible: 'boolean', - isAnimated: 'boolean', - rootElement: '(element|string)', - clickCallback: '(function|null)' -}; -const NAME$7 = 'backdrop'; -const CLASS_NAME_BACKDROP = 'modal-backdrop'; -const CLASS_NAME_FADE$5 = 'fade'; -const CLASS_NAME_SHOW$6 = 'show'; -const EVENT_MOUSEDOWN = `mousedown.bs.${NAME$7}`; - -class Backdrop { - constructor(config) { - this._config = this._getConfig(config); - this._isAppended = false; - this._element = null; - } - - show(callback) { - if (!this._config.isVisible) { - execute(callback); - return; - } - - this._append(); - - if (this._config.isAnimated) { - reflow(this._getElement()); - } - - this._getElement().classList.add(CLASS_NAME_SHOW$6); - - this._emulateAnimation(() => { - execute(callback); - }); - } - - hide(callback) { - if (!this._config.isVisible) { - execute(callback); - return; - } - - this._getElement().classList.remove(CLASS_NAME_SHOW$6); - - this._emulateAnimation(() => { - this.dispose(); - execute(callback); - }); - } // Private - - - _getElement() { - if (!this._element) { - const backdrop = document.createElement('div'); - backdrop.className = CLASS_NAME_BACKDROP; - - if (this._config.isAnimated) { - backdrop.classList.add(CLASS_NAME_FADE$5); - } - - this._element = backdrop; - } - - return this._element; - } - - _getConfig(config) { - config = { ...Default$6, - ...(typeof config === 'object' ? config : {}) - }; // use getElement() with the default "body" to get a fresh Element on each instantiation - - config.rootElement = getElement(config.rootElement); - typeCheckConfig(NAME$7, config, DefaultType$6); - return config; - } - - _append() { - if (this._isAppended) { - return; - } - - this._config.rootElement.appendChild(this._getElement()); - - EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => { - execute(this._config.clickCallback); - }); - this._isAppended = true; - } - - dispose() { - if (!this._isAppended) { - return; - } - - EventHandler.off(this._element, EVENT_MOUSEDOWN); - - this._element.remove(); - - this._isAppended = false; - } - - _emulateAnimation(callback) { - executeAfterTransition(callback, this._getElement(), this._config.isAnimated); - } - -} - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): modal.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - -const NAME$6 = 'modal'; -const DATA_KEY$6 = 'bs.modal'; -const EVENT_KEY$6 = `.${DATA_KEY$6}`; -const DATA_API_KEY$3 = '.data-api'; -const ESCAPE_KEY$1 = 'Escape'; -const Default$5 = { - backdrop: true, - keyboard: true, - focus: true -}; -const DefaultType$5 = { - backdrop: '(boolean|string)', - keyboard: 'boolean', - focus: 'boolean' -}; -const EVENT_HIDE$3 = `hide${EVENT_KEY$6}`; -const EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY$6}`; -const EVENT_HIDDEN$3 = `hidden${EVENT_KEY$6}`; -const EVENT_SHOW$3 = `show${EVENT_KEY$6}`; -const EVENT_SHOWN$3 = `shown${EVENT_KEY$6}`; -const EVENT_FOCUSIN$2 = `focusin${EVENT_KEY$6}`; -const EVENT_RESIZE = `resize${EVENT_KEY$6}`; -const EVENT_CLICK_DISMISS$2 = `click.dismiss${EVENT_KEY$6}`; -const EVENT_KEYDOWN_DISMISS$1 = `keydown.dismiss${EVENT_KEY$6}`; -const EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY$6}`; -const EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY$6}`; -const EVENT_CLICK_DATA_API$2 = `click${EVENT_KEY$6}${DATA_API_KEY$3}`; -const CLASS_NAME_OPEN = 'modal-open'; -const CLASS_NAME_FADE$4 = 'fade'; -const CLASS_NAME_SHOW$5 = 'show'; -const CLASS_NAME_STATIC = 'modal-static'; -const SELECTOR_DIALOG = '.modal-dialog'; -const SELECTOR_MODAL_BODY = '.modal-body'; -const SELECTOR_DATA_TOGGLE$2 = '[data-bs-toggle="modal"]'; -const SELECTOR_DATA_DISMISS$2 = '[data-bs-dismiss="modal"]'; -/** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - -class Modal extends BaseComponent { - constructor(element, config) { - super(element); - this._config = this._getConfig(config); - this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element); - this._backdrop = this._initializeBackDrop(); - this._isShown = false; - this._ignoreBackdropClick = false; - this._isTransitioning = false; - this._scrollBar = new ScrollBarHelper(); - } // Getters - - - static get Default() { - return Default$5; - } - - static get NAME() { - return NAME$6; - } // Public - - - toggle(relatedTarget) { - return this._isShown ? this.hide() : this.show(relatedTarget); - } - - show(relatedTarget) { - if (this._isShown || this._isTransitioning) { - return; - } - - const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$3, { - relatedTarget - }); - - if (showEvent.defaultPrevented) { - return; - } - - this._isShown = true; - - if (this._isAnimated()) { - this._isTransitioning = true; - } - - this._scrollBar.hide(); - - document.body.classList.add(CLASS_NAME_OPEN); - - this._adjustDialog(); - - this._setEscapeEvent(); - - this._setResizeEvent(); - - EventHandler.on(this._element, EVENT_CLICK_DISMISS$2, SELECTOR_DATA_DISMISS$2, event => this.hide(event)); - EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => { - EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => { - if (event.target === this._element) { - this._ignoreBackdropClick = true; - } - }); - }); - - this._showBackdrop(() => this._showElement(relatedTarget)); - } - - hide(event) { - if (event && ['A', 'AREA'].includes(event.target.tagName)) { - event.preventDefault(); - } - - if (!this._isShown || this._isTransitioning) { - return; - } - - const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$3); - - if (hideEvent.defaultPrevented) { - return; - } - - this._isShown = false; - - const isAnimated = this._isAnimated(); - - if (isAnimated) { - this._isTransitioning = true; - } - - this._setEscapeEvent(); - - this._setResizeEvent(); - - EventHandler.off(document, EVENT_FOCUSIN$2); - - this._element.classList.remove(CLASS_NAME_SHOW$5); - - EventHandler.off(this._element, EVENT_CLICK_DISMISS$2); - EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS); - - this._queueCallback(() => this._hideModal(), this._element, isAnimated); - } - - dispose() { - [window, this._dialog].forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY$6)); - - this._backdrop.dispose(); - - super.dispose(); - /** - * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API` - * Do not move `document` in `htmlElements` array - * It will remove `EVENT_CLICK_DATA_API` event that should remain - */ - - EventHandler.off(document, EVENT_FOCUSIN$2); - } - - handleUpdate() { - this._adjustDialog(); - } // Private - - - _initializeBackDrop() { - return new Backdrop({ - isVisible: Boolean(this._config.backdrop), - // 'static' option will be translated to true, and booleans will keep their value - isAnimated: this._isAnimated() - }); - } - - _getConfig(config) { - config = { ...Default$5, - ...Manipulator.getDataAttributes(this._element), - ...(typeof config === 'object' ? config : {}) - }; - typeCheckConfig(NAME$6, config, DefaultType$5); - return config; - } - - _showElement(relatedTarget) { - const isAnimated = this._isAnimated(); - - const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog); - - if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) { - // Don't move modal's DOM position - document.body.appendChild(this._element); - } - - this._element.style.display = 'block'; - - this._element.removeAttribute('aria-hidden'); - - this._element.setAttribute('aria-modal', true); - - this._element.setAttribute('role', 'dialog'); - - this._element.scrollTop = 0; - - if (modalBody) { - modalBody.scrollTop = 0; - } - - if (isAnimated) { - reflow(this._element); - } - - this._element.classList.add(CLASS_NAME_SHOW$5); - - if (this._config.focus) { - this._enforceFocus(); - } - - const transitionComplete = () => { - if (this._config.focus) { - this._element.focus(); - } - - this._isTransitioning = false; - EventHandler.trigger(this._element, EVENT_SHOWN$3, { - relatedTarget - }); - }; - - this._queueCallback(transitionComplete, this._dialog, isAnimated); - } - - _enforceFocus() { - EventHandler.off(document, EVENT_FOCUSIN$2); // guard against infinite focus loop - - EventHandler.on(document, EVENT_FOCUSIN$2, event => { - if (document !== event.target && this._element !== event.target && !this._element.contains(event.target)) { - this._element.focus(); - } - }); - } - - _setEscapeEvent() { - if (this._isShown) { - EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS$1, event => { - if (this._config.keyboard && event.key === ESCAPE_KEY$1) { - event.preventDefault(); - this.hide(); - } else if (!this._config.keyboard && event.key === ESCAPE_KEY$1) { - this._triggerBackdropTransition(); - } - }); - } else { - EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS$1); - } - } - - _setResizeEvent() { - if (this._isShown) { - EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog()); - } else { - EventHandler.off(window, EVENT_RESIZE); - } - } - - _hideModal() { - this._element.style.display = 'none'; - - this._element.setAttribute('aria-hidden', true); - - this._element.removeAttribute('aria-modal'); - - this._element.removeAttribute('role'); - - this._isTransitioning = false; - - this._backdrop.hide(() => { - document.body.classList.remove(CLASS_NAME_OPEN); - - this._resetAdjustments(); - - this._scrollBar.reset(); - - EventHandler.trigger(this._element, EVENT_HIDDEN$3); - }); - } - - _showBackdrop(callback) { - EventHandler.on(this._element, EVENT_CLICK_DISMISS$2, event => { - if (this._ignoreBackdropClick) { - this._ignoreBackdropClick = false; - return; - } - - if (event.target !== event.currentTarget) { - return; - } - - if (this._config.backdrop === true) { - this.hide(); - } else if (this._config.backdrop === 'static') { - this._triggerBackdropTransition(); - } - }); - - this._backdrop.show(callback); - } - - _isAnimated() { - return this._element.classList.contains(CLASS_NAME_FADE$4); - } - - _triggerBackdropTransition() { - const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED); - - if (hideEvent.defaultPrevented) { - return; - } - - const { - classList, - scrollHeight, - style - } = this._element; - const isModalOverflowing = scrollHeight > document.documentElement.clientHeight; // return if the following background transition hasn't yet completed - - if (!isModalOverflowing && style.overflowY === 'hidden' || classList.contains(CLASS_NAME_STATIC)) { - return; - } - - if (!isModalOverflowing) { - style.overflowY = 'hidden'; - } - - classList.add(CLASS_NAME_STATIC); - - this._queueCallback(() => { - classList.remove(CLASS_NAME_STATIC); - - if (!isModalOverflowing) { - this._queueCallback(() => { - style.overflowY = ''; - }, this._dialog); - } - }, this._dialog); - - this._element.focus(); - } // ---------------------------------------------------------------------- - // the following methods are used to handle overflowing modals - // ---------------------------------------------------------------------- - - - _adjustDialog() { - const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight; - - const scrollbarWidth = this._scrollBar.getWidth(); - - const isBodyOverflowing = scrollbarWidth > 0; - - if (!isBodyOverflowing && isModalOverflowing && !isRTL() || isBodyOverflowing && !isModalOverflowing && isRTL()) { - this._element.style.paddingLeft = `${scrollbarWidth}px`; - } - - if (isBodyOverflowing && !isModalOverflowing && !isRTL() || !isBodyOverflowing && isModalOverflowing && isRTL()) { - this._element.style.paddingRight = `${scrollbarWidth}px`; - } - } - - _resetAdjustments() { - this._element.style.paddingLeft = ''; - this._element.style.paddingRight = ''; - } // Static - - - static jQueryInterface(config, relatedTarget) { - return this.each(function () { - const data = Modal.getOrCreateInstance(this, config); - - if (typeof config !== 'string') { - return; - } - - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](relatedTarget); - }); - } - -} -/** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - -EventHandler.on(document, EVENT_CLICK_DATA_API$2, SELECTOR_DATA_TOGGLE$2, function (event) { - const target = getElementFromSelector(this); - - if (['A', 'AREA'].includes(this.tagName)) { - event.preventDefault(); - } - - EventHandler.one(target, EVENT_SHOW$3, showEvent => { - if (showEvent.defaultPrevented) { - // only register focus restorer if modal will actually get shown - return; - } - - EventHandler.one(target, EVENT_HIDDEN$3, () => { - if (isVisible(this)) { - this.focus(); - } - }); - }); - const data = Modal.getOrCreateInstance(target); - data.toggle(this); -}); -/** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Modal to jQuery only if jQuery is present - */ - -defineJQueryPlugin(Modal); - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): offcanvas.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * -------------------------------------------------------------------------- - */ -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - -const NAME$5 = 'offcanvas'; -const DATA_KEY$5 = 'bs.offcanvas'; -const EVENT_KEY$5 = `.${DATA_KEY$5}`; -const DATA_API_KEY$2 = '.data-api'; -const EVENT_LOAD_DATA_API$1 = `load${EVENT_KEY$5}${DATA_API_KEY$2}`; -const ESCAPE_KEY = 'Escape'; -const Default$4 = { - backdrop: true, - keyboard: true, - scroll: false -}; -const DefaultType$4 = { - backdrop: 'boolean', - keyboard: 'boolean', - scroll: 'boolean' -}; -const CLASS_NAME_SHOW$4 = 'show'; -const OPEN_SELECTOR = '.offcanvas.show'; -const EVENT_SHOW$2 = `show${EVENT_KEY$5}`; -const EVENT_SHOWN$2 = `shown${EVENT_KEY$5}`; -const EVENT_HIDE$2 = `hide${EVENT_KEY$5}`; -const EVENT_HIDDEN$2 = `hidden${EVENT_KEY$5}`; -const EVENT_FOCUSIN$1 = `focusin${EVENT_KEY$5}`; -const EVENT_CLICK_DATA_API$1 = `click${EVENT_KEY$5}${DATA_API_KEY$2}`; -const EVENT_CLICK_DISMISS$1 = `click.dismiss${EVENT_KEY$5}`; -const EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY$5}`; -const SELECTOR_DATA_DISMISS$1 = '[data-bs-dismiss="offcanvas"]'; -const SELECTOR_DATA_TOGGLE$1 = '[data-bs-toggle="offcanvas"]'; -/** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - -class Offcanvas extends BaseComponent { - constructor(element, config) { - super(element); - this._config = this._getConfig(config); - this._isShown = false; - this._backdrop = this._initializeBackDrop(); - - this._addEventListeners(); - } // Getters - - - static get NAME() { - return NAME$5; - } - - static get Default() { - return Default$4; - } // Public - - - toggle(relatedTarget) { - return this._isShown ? this.hide() : this.show(relatedTarget); - } - - show(relatedTarget) { - if (this._isShown) { - return; - } - - const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$2, { - relatedTarget - }); - - if (showEvent.defaultPrevented) { - return; - } - - this._isShown = true; - this._element.style.visibility = 'visible'; - - this._backdrop.show(); - - if (!this._config.scroll) { - new ScrollBarHelper().hide(); - - this._enforceFocusOnElement(this._element); - } - - this._element.removeAttribute('aria-hidden'); - - this._element.setAttribute('aria-modal', true); - - this._element.setAttribute('role', 'dialog'); - - this._element.classList.add(CLASS_NAME_SHOW$4); - - const completeCallBack = () => { - EventHandler.trigger(this._element, EVENT_SHOWN$2, { - relatedTarget - }); - }; - - this._queueCallback(completeCallBack, this._element, true); - } - - hide() { - if (!this._isShown) { - return; - } - - const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$2); - - if (hideEvent.defaultPrevented) { - return; - } - - EventHandler.off(document, EVENT_FOCUSIN$1); - - this._element.blur(); - - this._isShown = false; - - this._element.classList.remove(CLASS_NAME_SHOW$4); - - this._backdrop.hide(); - - const completeCallback = () => { - this._element.setAttribute('aria-hidden', true); - - this._element.removeAttribute('aria-modal'); - - this._element.removeAttribute('role'); - - this._element.style.visibility = 'hidden'; - - if (!this._config.scroll) { - new ScrollBarHelper().reset(); - } - - EventHandler.trigger(this._element, EVENT_HIDDEN$2); - }; - - this._queueCallback(completeCallback, this._element, true); - } - - dispose() { - this._backdrop.dispose(); - - super.dispose(); - EventHandler.off(document, EVENT_FOCUSIN$1); - } // Private - - - _getConfig(config) { - config = { ...Default$4, - ...Manipulator.getDataAttributes(this._element), - ...(typeof config === 'object' ? config : {}) - }; - typeCheckConfig(NAME$5, config, DefaultType$4); - return config; - } - - _initializeBackDrop() { - return new Backdrop({ - isVisible: this._config.backdrop, - isAnimated: true, - rootElement: this._element.parentNode, - clickCallback: () => this.hide() - }); - } - - _enforceFocusOnElement(element) { - EventHandler.off(document, EVENT_FOCUSIN$1); // guard against infinite focus loop - - EventHandler.on(document, EVENT_FOCUSIN$1, event => { - if (document !== event.target && element !== event.target && !element.contains(event.target)) { - element.focus(); - } - }); - element.focus(); - } - - _addEventListeners() { - EventHandler.on(this._element, EVENT_CLICK_DISMISS$1, SELECTOR_DATA_DISMISS$1, () => this.hide()); - EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => { - if (this._config.keyboard && event.key === ESCAPE_KEY) { - this.hide(); - } - }); - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Offcanvas.getOrCreateInstance(this, config); - - if (typeof config !== 'string') { - return; - } - - if (data[config] === undefined || config.startsWith('_') || config === 'constructor') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](this); - }); - } - -} -/** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - -EventHandler.on(document, EVENT_CLICK_DATA_API$1, SELECTOR_DATA_TOGGLE$1, function (event) { - const target = getElementFromSelector(this); - - if (['A', 'AREA'].includes(this.tagName)) { - event.preventDefault(); - } - - if (isDisabled(this)) { - return; - } - - EventHandler.one(target, EVENT_HIDDEN$2, () => { - // focus on trigger when it is closed - if (isVisible(this)) { - this.focus(); - } - }); // avoid conflict when clicking a toggler of an offcanvas, while another is open - - const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR); - - if (allReadyOpen && allReadyOpen !== target) { - Offcanvas.getInstance(allReadyOpen).hide(); - } - - const data = Offcanvas.getOrCreateInstance(target); - data.toggle(this); -}); -EventHandler.on(window, EVENT_LOAD_DATA_API$1, () => SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())); -/** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - */ - -defineJQueryPlugin(Offcanvas); - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): util/sanitizer.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -const uriAttrs = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']); -const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i; -/** - * A pattern that recognizes a commonly useful subset of URLs that are safe. - * - * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts - */ - -const SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i; -/** - * A pattern that matches safe data URLs. Only matches image, video and audio types. - * - * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts - */ - -const DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i; - -const allowedAttribute = (attr, allowedAttributeList) => { - const attrName = attr.nodeName.toLowerCase(); - - if (allowedAttributeList.includes(attrName)) { - if (uriAttrs.has(attrName)) { - return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue)); - } - - return true; - } - - const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp); // Check if a regular expression validates the attribute. - - for (let i = 0, len = regExp.length; i < len; i++) { - if (regExp[i].test(attrName)) { - return true; - } - } - - return false; -}; - -const DefaultAllowlist = { - // Global attributes allowed on any supplied element below. - '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN], - 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: [] -}; -function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) { - if (!unsafeHtml.length) { - return unsafeHtml; - } - - if (sanitizeFn && typeof sanitizeFn === 'function') { - return sanitizeFn(unsafeHtml); - } - - const domParser = new window.DOMParser(); - const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html'); - const allowlistKeys = Object.keys(allowList); - const elements = [].concat(...createdDocument.body.querySelectorAll('*')); - - for (let i = 0, len = elements.length; i < len; i++) { - const el = elements[i]; - const elName = el.nodeName.toLowerCase(); - - if (!allowlistKeys.includes(elName)) { - el.remove(); - continue; - } - - const attributeList = [].concat(...el.attributes); - const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || []); - attributeList.forEach(attr => { - if (!allowedAttribute(attr, allowedAttributes)) { - el.removeAttribute(attr.nodeName); - } - }); - } - - return createdDocument.body.innerHTML; -} - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): tooltip.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - -const NAME$4 = 'tooltip'; -const DATA_KEY$4 = 'bs.tooltip'; -const EVENT_KEY$4 = `.${DATA_KEY$4}`; -const CLASS_PREFIX$1 = 'bs-tooltip'; -const BSCLS_PREFIX_REGEX$1 = new RegExp(`(^|\\s)${CLASS_PREFIX$1}\\S+`, 'g'); -const DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn']); -const DefaultType$3 = { - 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)' -}; -const AttachmentMap = { - AUTO: 'auto', - TOP: 'top', - RIGHT: isRTL() ? 'left' : 'right', - BOTTOM: 'bottom', - LEFT: isRTL() ? 'right' : 'left' -}; -const Default$3 = { - animation: true, - template: '<div class="tooltip" role="tooltip">' + '<div class="tooltip-arrow"></div>' + '<div class="tooltip-inner"></div>' + '</div>', - trigger: 'hover focus', - title: '', - delay: 0, - html: false, - selector: false, - placement: 'top', - offset: [0, 0], - container: false, - fallbackPlacements: ['top', 'right', 'bottom', 'left'], - boundary: 'clippingParents', - customClass: '', - sanitize: true, - sanitizeFn: null, - allowList: DefaultAllowlist, - popperConfig: null -}; -const Event$2 = { - HIDE: `hide${EVENT_KEY$4}`, - HIDDEN: `hidden${EVENT_KEY$4}`, - SHOW: `show${EVENT_KEY$4}`, - SHOWN: `shown${EVENT_KEY$4}`, - INSERTED: `inserted${EVENT_KEY$4}`, - CLICK: `click${EVENT_KEY$4}`, - FOCUSIN: `focusin${EVENT_KEY$4}`, - FOCUSOUT: `focusout${EVENT_KEY$4}`, - MOUSEENTER: `mouseenter${EVENT_KEY$4}`, - MOUSELEAVE: `mouseleave${EVENT_KEY$4}` -}; -const CLASS_NAME_FADE$3 = 'fade'; -const CLASS_NAME_MODAL = 'modal'; -const CLASS_NAME_SHOW$3 = 'show'; -const HOVER_STATE_SHOW = 'show'; -const HOVER_STATE_OUT = 'out'; -const SELECTOR_TOOLTIP_INNER = '.tooltip-inner'; -const TRIGGER_HOVER = 'hover'; -const TRIGGER_FOCUS = 'focus'; -const TRIGGER_CLICK = 'click'; -const TRIGGER_MANUAL = 'manual'; -/** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - -class Tooltip extends BaseComponent { - constructor(element, config) { - if (typeof Popper === 'undefined') { - throw new TypeError('Bootstrap\'s tooltips require Popper (https://popper.js.org)'); - } - - super(element); // private - - this._isEnabled = true; - this._timeout = 0; - this._hoverState = ''; - this._activeTrigger = {}; - this._popper = null; // Protected - - this._config = this._getConfig(config); - this.tip = null; - - this._setListeners(); - } // Getters - - - static get Default() { - return Default$3; - } - - static get NAME() { - return NAME$4; - } - - static get Event() { - return Event$2; - } - - static get DefaultType() { - return DefaultType$3; - } // Public - - - enable() { - this._isEnabled = true; - } - - disable() { - this._isEnabled = false; - } - - toggleEnabled() { - this._isEnabled = !this._isEnabled; - } - - toggle(event) { - if (!this._isEnabled) { - return; - } - - if (event) { - const context = this._initializeOnDelegatedTarget(event); - - context._activeTrigger.click = !context._activeTrigger.click; - - if (context._isWithActiveTrigger()) { - context._enter(null, context); - } else { - context._leave(null, context); - } - } else { - if (this.getTipElement().classList.contains(CLASS_NAME_SHOW$3)) { - this._leave(null, this); - - return; - } - - this._enter(null, this); - } - } - - dispose() { - clearTimeout(this._timeout); - EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler); - - if (this.tip) { - this.tip.remove(); - } - - if (this._popper) { - this._popper.destroy(); - } - - super.dispose(); - } - - show() { - if (this._element.style.display === 'none') { - throw new Error('Please use show on visible elements'); - } - - if (!(this.isWithContent() && this._isEnabled)) { - return; - } - - const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW); - const shadowRoot = findShadowRoot(this._element); - const isInTheDom = shadowRoot === null ? this._element.ownerDocument.documentElement.contains(this._element) : shadowRoot.contains(this._element); - - if (showEvent.defaultPrevented || !isInTheDom) { - return; - } - - const tip = this.getTipElement(); - const tipId = getUID(this.constructor.NAME); - tip.setAttribute('id', tipId); - - this._element.setAttribute('aria-describedby', tipId); - - this.setContent(); - - if (this._config.animation) { - tip.classList.add(CLASS_NAME_FADE$3); - } - - const placement = typeof this._config.placement === 'function' ? this._config.placement.call(this, tip, this._element) : this._config.placement; - - const attachment = this._getAttachment(placement); - - this._addAttachmentClass(attachment); - - const { - container - } = this._config; - Data.set(tip, this.constructor.DATA_KEY, this); - - if (!this._element.ownerDocument.documentElement.contains(this.tip)) { - container.appendChild(tip); - EventHandler.trigger(this._element, this.constructor.Event.INSERTED); - } - - if (this._popper) { - this._popper.update(); - } else { - this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment)); - } - - tip.classList.add(CLASS_NAME_SHOW$3); - const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass; - - if (customClass) { - tip.classList.add(...customClass.split(' ')); - } // If this is a touch-enabled device we add extra - // empty mouseover listeners to the body's immediate children; - // only needed because of broken event delegation on iOS - // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html - - - if ('ontouchstart' in document.documentElement) { - [].concat(...document.body.children).forEach(element => { - EventHandler.on(element, 'mouseover', noop); - }); - } - - const complete = () => { - const prevHoverState = this._hoverState; - this._hoverState = null; - EventHandler.trigger(this._element, this.constructor.Event.SHOWN); - - if (prevHoverState === HOVER_STATE_OUT) { - this._leave(null, this); - } - }; - - const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE$3); - - this._queueCallback(complete, this.tip, isAnimated); - } - - hide() { - if (!this._popper) { - return; - } - - const tip = this.getTipElement(); - - const complete = () => { - if (this._isWithActiveTrigger()) { - return; - } - - if (this._hoverState !== HOVER_STATE_SHOW) { - tip.remove(); - } - - this._cleanTipClass(); - - this._element.removeAttribute('aria-describedby'); - - EventHandler.trigger(this._element, this.constructor.Event.HIDDEN); - - if (this._popper) { - this._popper.destroy(); - - this._popper = null; - } - }; - - const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE); - - if (hideEvent.defaultPrevented) { - return; - } - - tip.classList.remove(CLASS_NAME_SHOW$3); // If this is a touch-enabled device we remove the extra - // empty mouseover listeners we added for iOS support - - if ('ontouchstart' in document.documentElement) { - [].concat(...document.body.children).forEach(element => EventHandler.off(element, 'mouseover', noop)); - } - - this._activeTrigger[TRIGGER_CLICK] = false; - this._activeTrigger[TRIGGER_FOCUS] = false; - this._activeTrigger[TRIGGER_HOVER] = false; - const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE$3); - - this._queueCallback(complete, this.tip, isAnimated); - - this._hoverState = ''; - } - - update() { - if (this._popper !== null) { - this._popper.update(); - } - } // Protected - - - isWithContent() { - return Boolean(this.getTitle()); - } - - getTipElement() { - if (this.tip) { - return this.tip; - } - - const element = document.createElement('div'); - element.innerHTML = this._config.template; - this.tip = element.children[0]; - return this.tip; - } - - setContent() { - const tip = this.getTipElement(); - this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle()); - tip.classList.remove(CLASS_NAME_FADE$3, CLASS_NAME_SHOW$3); - } - - setElementContent(element, content) { - if (element === null) { - return; - } - - if (isElement(content)) { - content = getElement(content); // content is a DOM node or a jQuery - - if (this._config.html) { - if (content.parentNode !== element) { - element.innerHTML = ''; - element.appendChild(content); - } - } else { - element.textContent = content.textContent; - } - - return; - } - - if (this._config.html) { - if (this._config.sanitize) { - content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn); - } - - element.innerHTML = content; - } else { - element.textContent = content; - } - } - - getTitle() { - let title = this._element.getAttribute('data-bs-original-title'); - - if (!title) { - title = typeof this._config.title === 'function' ? this._config.title.call(this._element) : this._config.title; - } - - return title; - } - - updateAttachment(attachment) { - if (attachment === 'right') { - return 'end'; - } - - if (attachment === 'left') { - return 'start'; - } - - return attachment; - } // Private - - - _initializeOnDelegatedTarget(event, context) { - const dataKey = this.constructor.DATA_KEY; - context = context || Data.get(event.delegateTarget, dataKey); - - if (!context) { - context = new this.constructor(event.delegateTarget, this._getDelegateConfig()); - Data.set(event.delegateTarget, dataKey, context); - } - - return context; - } - - _getOffset() { - const { - offset - } = this._config; - - if (typeof offset === 'string') { - return offset.split(',').map(val => Number.parseInt(val, 10)); - } - - if (typeof offset === 'function') { - return popperData => offset(popperData, this._element); - } - - return offset; - } - - _getPopperConfig(attachment) { - const defaultBsPopperConfig = { - placement: attachment, - 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: true, - phase: 'afterWrite', - fn: data => this._handlePopperPlacementChange(data) - }], - onFirstUpdate: data => { - if (data.options.placement !== data.placement) { - this._handlePopperPlacementChange(data); - } - } - }; - return { ...defaultBsPopperConfig, - ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig) - }; - } - - _addAttachmentClass(attachment) { - this.getTipElement().classList.add(`${CLASS_PREFIX$1}-${this.updateAttachment(attachment)}`); - } - - _getAttachment(placement) { - return AttachmentMap[placement.toUpperCase()]; - } - - _setListeners() { - const triggers = this._config.trigger.split(' '); - - triggers.forEach(trigger => { - if (trigger === 'click') { - EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event)); - } else if (trigger !== TRIGGER_MANUAL) { - const eventIn = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSEENTER : this.constructor.Event.FOCUSIN; - const eventOut = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSELEAVE : this.constructor.Event.FOCUSOUT; - EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event)); - EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event)); - } - }); - - this._hideModalHandler = () => { - if (this._element) { - this.hide(); - } - }; - - EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler); - - if (this._config.selector) { - this._config = { ...this._config, - trigger: 'manual', - selector: '' - }; - } else { - this._fixTitle(); - } - } - - _fixTitle() { - const title = this._element.getAttribute('title'); - - const originalTitleType = typeof this._element.getAttribute('data-bs-original-title'); - - if (title || originalTitleType !== 'string') { - this._element.setAttribute('data-bs-original-title', title || ''); - - if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) { - this._element.setAttribute('aria-label', title); - } - - this._element.setAttribute('title', ''); - } - } - - _enter(event, context) { - context = this._initializeOnDelegatedTarget(event, context); - - if (event) { - context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true; - } - - if (context.getTipElement().classList.contains(CLASS_NAME_SHOW$3) || context._hoverState === HOVER_STATE_SHOW) { - context._hoverState = HOVER_STATE_SHOW; - return; - } - - clearTimeout(context._timeout); - context._hoverState = HOVER_STATE_SHOW; - - if (!context._config.delay || !context._config.delay.show) { - context.show(); - return; - } - - context._timeout = setTimeout(() => { - if (context._hoverState === HOVER_STATE_SHOW) { - context.show(); - } - }, context._config.delay.show); - } - - _leave(event, context) { - context = this._initializeOnDelegatedTarget(event, context); - - if (event) { - context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] = context._element.contains(event.relatedTarget); - } - - if (context._isWithActiveTrigger()) { - return; - } - - clearTimeout(context._timeout); - context._hoverState = HOVER_STATE_OUT; - - if (!context._config.delay || !context._config.delay.hide) { - context.hide(); - return; - } - - context._timeout = setTimeout(() => { - if (context._hoverState === HOVER_STATE_OUT) { - context.hide(); - } - }, context._config.delay.hide); - } - - _isWithActiveTrigger() { - for (const trigger in this._activeTrigger) { - if (this._activeTrigger[trigger]) { - return true; - } - } - - return false; - } - - _getConfig(config) { - const dataAttributes = Manipulator.getDataAttributes(this._element); - Object.keys(dataAttributes).forEach(dataAttr => { - if (DISALLOWED_ATTRIBUTES.has(dataAttr)) { - delete dataAttributes[dataAttr]; - } - }); - config = { ...this.constructor.Default, - ...dataAttributes, - ...(typeof config === 'object' && config ? config : {}) - }; - config.container = config.container === false ? document.body : getElement(config.container); - - if (typeof config.delay === 'number') { - config.delay = { - show: config.delay, - hide: config.delay - }; - } - - if (typeof config.title === 'number') { - config.title = config.title.toString(); - } - - if (typeof config.content === 'number') { - config.content = config.content.toString(); - } - - typeCheckConfig(NAME$4, config, this.constructor.DefaultType); - - if (config.sanitize) { - config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn); - } - - return config; - } - - _getDelegateConfig() { - const config = {}; - - if (this._config) { - for (const key in this._config) { - if (this.constructor.Default[key] !== this._config[key]) { - config[key] = this._config[key]; - } - } - } - - return config; - } - - _cleanTipClass() { - const tip = this.getTipElement(); - const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX$1); - - if (tabClass !== null && tabClass.length > 0) { - tabClass.map(token => token.trim()).forEach(tClass => tip.classList.remove(tClass)); - } - } - - _handlePopperPlacementChange(popperData) { - const { - state - } = popperData; - - if (!state) { - return; - } - - this.tip = state.elements.popper; - - this._cleanTipClass(); - - this._addAttachmentClass(this._getAttachment(state.placement)); - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Tooltip.getOrCreateInstance(this, config); - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - } - }); - } - -} -/** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Tooltip to jQuery only if jQuery is present - */ - - -defineJQueryPlugin(Tooltip); - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): popover.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - -const NAME$3 = 'popover'; -const DATA_KEY$3 = 'bs.popover'; -const EVENT_KEY$3 = `.${DATA_KEY$3}`; -const CLASS_PREFIX = 'bs-popover'; -const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`, 'g'); -const Default$2 = { ...Tooltip.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>' -}; -const DefaultType$2 = { ...Tooltip.DefaultType, - content: '(string|element|function)' -}; -const Event$1 = { - HIDE: `hide${EVENT_KEY$3}`, - HIDDEN: `hidden${EVENT_KEY$3}`, - SHOW: `show${EVENT_KEY$3}`, - SHOWN: `shown${EVENT_KEY$3}`, - INSERTED: `inserted${EVENT_KEY$3}`, - CLICK: `click${EVENT_KEY$3}`, - FOCUSIN: `focusin${EVENT_KEY$3}`, - FOCUSOUT: `focusout${EVENT_KEY$3}`, - MOUSEENTER: `mouseenter${EVENT_KEY$3}`, - MOUSELEAVE: `mouseleave${EVENT_KEY$3}` -}; -const CLASS_NAME_FADE$2 = 'fade'; -const CLASS_NAME_SHOW$2 = 'show'; -const SELECTOR_TITLE = '.popover-header'; -const SELECTOR_CONTENT = '.popover-body'; -/** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - -class Popover extends Tooltip { - // Getters - static get Default() { - return Default$2; - } - - static get NAME() { - return NAME$3; - } - - static get Event() { - return Event$1; - } - - static get DefaultType() { - return DefaultType$2; - } // Overrides - - - isWithContent() { - return this.getTitle() || this._getContent(); - } - - getTipElement() { - if (this.tip) { - return this.tip; - } - - this.tip = super.getTipElement(); - - if (!this.getTitle()) { - SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove(); - } - - if (!this._getContent()) { - SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove(); - } - - return this.tip; - } - - setContent() { - const tip = this.getTipElement(); // we use append for html objects to maintain js events - - this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle()); - - let content = this._getContent(); - - if (typeof content === 'function') { - content = content.call(this._element); - } - - this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content); - tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2); - } // Private - - - _addAttachmentClass(attachment) { - this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`); - } - - _getContent() { - return this._element.getAttribute('data-bs-content') || this._config.content; - } - - _cleanTipClass() { - const tip = this.getTipElement(); - const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX); - - if (tabClass !== null && tabClass.length > 0) { - tabClass.map(token => token.trim()).forEach(tClass => tip.classList.remove(tClass)); - } - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Popover.getOrCreateInstance(this, config); - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - } - }); - } - -} -/** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Popover to jQuery only if jQuery is present - */ - - -defineJQueryPlugin(Popover); - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): scrollspy.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - -const NAME$2 = 'scrollspy'; -const DATA_KEY$2 = 'bs.scrollspy'; -const EVENT_KEY$2 = `.${DATA_KEY$2}`; -const DATA_API_KEY$1 = '.data-api'; -const Default$1 = { - offset: 10, - method: 'auto', - target: '' -}; -const DefaultType$1 = { - offset: 'number', - method: 'string', - target: '(string|element)' -}; -const EVENT_ACTIVATE = `activate${EVENT_KEY$2}`; -const EVENT_SCROLL = `scroll${EVENT_KEY$2}`; -const EVENT_LOAD_DATA_API = `load${EVENT_KEY$2}${DATA_API_KEY$1}`; -const CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'; -const CLASS_NAME_ACTIVE$1 = 'active'; -const SELECTOR_DATA_SPY = '[data-bs-spy="scroll"]'; -const SELECTOR_NAV_LIST_GROUP$1 = '.nav, .list-group'; -const SELECTOR_NAV_LINKS = '.nav-link'; -const SELECTOR_NAV_ITEMS = '.nav-item'; -const SELECTOR_LIST_ITEMS = '.list-group-item'; -const SELECTOR_DROPDOWN$1 = '.dropdown'; -const SELECTOR_DROPDOWN_TOGGLE$1 = '.dropdown-toggle'; -const METHOD_OFFSET = 'offset'; -const METHOD_POSITION = 'position'; -/** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - -class ScrollSpy extends BaseComponent { - constructor(element, config) { - super(element); - this._scrollElement = this._element.tagName === 'BODY' ? window : this._element; - this._config = this._getConfig(config); - this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`; - this._offsets = []; - this._targets = []; - this._activeTarget = null; - this._scrollHeight = 0; - EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process()); - this.refresh(); - - this._process(); - } // Getters - - - static get Default() { - return Default$1; - } - - static get NAME() { - return NAME$2; - } // Public - - - refresh() { - const autoMethod = this._scrollElement === this._scrollElement.window ? METHOD_OFFSET : METHOD_POSITION; - const offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method; - const offsetBase = offsetMethod === METHOD_POSITION ? this._getScrollTop() : 0; - this._offsets = []; - this._targets = []; - this._scrollHeight = this._getScrollHeight(); - const targets = SelectorEngine.find(this._selector); - targets.map(element => { - const targetSelector = getSelectorFromElement(element); - const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null; - - if (target) { - const targetBCR = target.getBoundingClientRect(); - - if (targetBCR.width || targetBCR.height) { - return [Manipulator[offsetMethod](target).top + offsetBase, targetSelector]; - } - } - - return null; - }).filter(item => item).sort((a, b) => a[0] - b[0]).forEach(item => { - this._offsets.push(item[0]); - - this._targets.push(item[1]); - }); - } - - dispose() { - EventHandler.off(this._scrollElement, EVENT_KEY$2); - super.dispose(); - } // Private - - - _getConfig(config) { - config = { ...Default$1, - ...Manipulator.getDataAttributes(this._element), - ...(typeof config === 'object' && config ? config : {}) - }; - - if (typeof config.target !== 'string' && isElement(config.target)) { - let { - id - } = config.target; - - if (!id) { - id = getUID(NAME$2); - config.target.id = id; - } - - config.target = `#${id}`; - } - - typeCheckConfig(NAME$2, config, DefaultType$1); - return config; - } - - _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 scrollTop = this._getScrollTop() + this._config.offset; - - const scrollHeight = this._getScrollHeight(); - - const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight(); - - if (this._scrollHeight !== scrollHeight) { - this.refresh(); - } - - if (scrollTop >= maxScroll) { - const target = this._targets[this._targets.length - 1]; - - if (this._activeTarget !== target) { - this._activate(target); - } - - return; - } - - if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) { - this._activeTarget = null; - - this._clear(); - - return; - } - - for (let i = this._offsets.length; i--;) { - const isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]); - - if (isActiveTarget) { - this._activate(this._targets[i]); - } - } - } - - _activate(target) { - this._activeTarget = target; - - this._clear(); - - const queries = this._selector.split(',').map(selector => `${selector}[data-bs-target="${target}"],${selector}[href="${target}"]`); - - const link = SelectorEngine.findOne(queries.join(',')); - - if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) { - SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE$1, link.closest(SELECTOR_DROPDOWN$1)).classList.add(CLASS_NAME_ACTIVE$1); - link.classList.add(CLASS_NAME_ACTIVE$1); - } else { - // Set triggered link as active - link.classList.add(CLASS_NAME_ACTIVE$1); - SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP$1).forEach(listGroup => { - // Set triggered links parents as active - // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor - SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`).forEach(item => item.classList.add(CLASS_NAME_ACTIVE$1)); // Handle special case when .nav-link is inside .nav-item - - SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS).forEach(navItem => { - SelectorEngine.children(navItem, SELECTOR_NAV_LINKS).forEach(item => item.classList.add(CLASS_NAME_ACTIVE$1)); - }); - }); - } - - EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, { - relatedTarget: target - }); - } - - _clear() { - SelectorEngine.find(this._selector).filter(node => node.classList.contains(CLASS_NAME_ACTIVE$1)).forEach(node => node.classList.remove(CLASS_NAME_ACTIVE$1)); - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = ScrollSpy.getOrCreateInstance(this, config); - - if (typeof config !== 'string') { - return; - } - - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - }); - } - -} -/** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - -EventHandler.on(window, EVENT_LOAD_DATA_API, () => { - SelectorEngine.find(SELECTOR_DATA_SPY).forEach(spy => new ScrollSpy(spy)); -}); -/** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .ScrollSpy to jQuery only if jQuery is present - */ - -defineJQueryPlugin(ScrollSpy); - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): tab.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - -const NAME$1 = 'tab'; -const DATA_KEY$1 = 'bs.tab'; -const EVENT_KEY$1 = `.${DATA_KEY$1}`; -const DATA_API_KEY = '.data-api'; -const EVENT_HIDE$1 = `hide${EVENT_KEY$1}`; -const EVENT_HIDDEN$1 = `hidden${EVENT_KEY$1}`; -const EVENT_SHOW$1 = `show${EVENT_KEY$1}`; -const EVENT_SHOWN$1 = `shown${EVENT_KEY$1}`; -const EVENT_CLICK_DATA_API = `click${EVENT_KEY$1}${DATA_API_KEY}`; -const CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'; -const CLASS_NAME_ACTIVE = 'active'; -const CLASS_NAME_FADE$1 = 'fade'; -const CLASS_NAME_SHOW$1 = 'show'; -const SELECTOR_DROPDOWN = '.dropdown'; -const SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'; -const SELECTOR_ACTIVE = '.active'; -const SELECTOR_ACTIVE_UL = ':scope > li > .active'; -const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]'; -const SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'; -const SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'; -/** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - -class Tab extends BaseComponent { - // Getters - static get NAME() { - return NAME$1; - } // Public - - - show() { - if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && this._element.classList.contains(CLASS_NAME_ACTIVE)) { - return; - } - - let previous; - const target = getElementFromSelector(this._element); - - const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP); - - if (listElement) { - const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE; - previous = SelectorEngine.find(itemSelector, listElement); - previous = previous[previous.length - 1]; - } - - const hideEvent = previous ? EventHandler.trigger(previous, EVENT_HIDE$1, { - relatedTarget: this._element - }) : null; - const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$1, { - relatedTarget: previous - }); - - if (showEvent.defaultPrevented || hideEvent !== null && hideEvent.defaultPrevented) { - return; - } - - this._activate(this._element, listElement); - - const complete = () => { - EventHandler.trigger(previous, EVENT_HIDDEN$1, { - relatedTarget: this._element - }); - EventHandler.trigger(this._element, EVENT_SHOWN$1, { - relatedTarget: previous - }); - }; - - if (target) { - this._activate(target, target.parentNode, complete); - } else { - complete(); - } - } // Private - - - _activate(element, container, callback) { - const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? SelectorEngine.find(SELECTOR_ACTIVE_UL, container) : SelectorEngine.children(container, SELECTOR_ACTIVE); - const active = activeElements[0]; - const isTransitioning = callback && active && active.classList.contains(CLASS_NAME_FADE$1); - - const complete = () => this._transitionComplete(element, active, callback); - - if (active && isTransitioning) { - active.classList.remove(CLASS_NAME_SHOW$1); - - this._queueCallback(complete, element, true); - } else { - complete(); - } - } - - _transitionComplete(element, active, callback) { - if (active) { - active.classList.remove(CLASS_NAME_ACTIVE); - const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode); - - if (dropdownChild) { - dropdownChild.classList.remove(CLASS_NAME_ACTIVE); - } - - if (active.getAttribute('role') === 'tab') { - active.setAttribute('aria-selected', false); - } - } - - element.classList.add(CLASS_NAME_ACTIVE); - - if (element.getAttribute('role') === 'tab') { - element.setAttribute('aria-selected', true); - } - - reflow(element); - - if (element.classList.contains(CLASS_NAME_FADE$1)) { - element.classList.add(CLASS_NAME_SHOW$1); - } - - let parent = element.parentNode; - - if (parent && parent.nodeName === 'LI') { - parent = parent.parentNode; - } - - if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) { - const dropdownElement = element.closest(SELECTOR_DROPDOWN); - - if (dropdownElement) { - SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement).forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE)); - } - - element.setAttribute('aria-expanded', true); - } - - if (callback) { - callback(); - } - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Tab.getOrCreateInstance(this); - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - } - }); - } - -} -/** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - -EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) { - if (['A', 'AREA'].includes(this.tagName)) { - event.preventDefault(); - } - - if (isDisabled(this)) { - return; - } - - const data = Tab.getOrCreateInstance(this); - data.show(); -}); -/** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Tab to jQuery only if jQuery is present - */ - -defineJQueryPlugin(Tab); - -/** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): toast.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ -/** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - -const NAME = 'toast'; -const DATA_KEY = 'bs.toast'; -const EVENT_KEY = `.${DATA_KEY}`; -const EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`; -const EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`; -const EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`; -const EVENT_FOCUSIN = `focusin${EVENT_KEY}`; -const EVENT_FOCUSOUT = `focusout${EVENT_KEY}`; -const EVENT_HIDE = `hide${EVENT_KEY}`; -const EVENT_HIDDEN = `hidden${EVENT_KEY}`; -const EVENT_SHOW = `show${EVENT_KEY}`; -const EVENT_SHOWN = `shown${EVENT_KEY}`; -const CLASS_NAME_FADE = 'fade'; -const CLASS_NAME_HIDE = 'hide'; -const CLASS_NAME_SHOW = 'show'; -const CLASS_NAME_SHOWING = 'showing'; -const DefaultType = { - animation: 'boolean', - autohide: 'boolean', - delay: 'number' -}; -const Default = { - animation: true, - autohide: true, - delay: 5000 -}; -const SELECTOR_DATA_DISMISS = '[data-bs-dismiss="toast"]'; -/** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - -class Toast extends BaseComponent { - constructor(element, config) { - super(element); - this._config = this._getConfig(config); - this._timeout = null; - this._hasMouseInteraction = false; - this._hasKeyboardInteraction = false; - - this._setListeners(); - } // Getters - - - static get DefaultType() { - return DefaultType; - } - - static get Default() { - return Default; - } - - static get NAME() { - return NAME; - } // Public - - - show() { - const showEvent = EventHandler.trigger(this._element, EVENT_SHOW); - - if (showEvent.defaultPrevented) { - return; - } - - this._clearTimeout(); - - if (this._config.animation) { - this._element.classList.add(CLASS_NAME_FADE); - } - - const complete = () => { - this._element.classList.remove(CLASS_NAME_SHOWING); - - this._element.classList.add(CLASS_NAME_SHOW); - - EventHandler.trigger(this._element, EVENT_SHOWN); - - this._maybeScheduleHide(); - }; - - this._element.classList.remove(CLASS_NAME_HIDE); - - reflow(this._element); - - this._element.classList.add(CLASS_NAME_SHOWING); - - this._queueCallback(complete, this._element, this._config.animation); - } - - hide() { - if (!this._element.classList.contains(CLASS_NAME_SHOW)) { - return; - } - - const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE); - - if (hideEvent.defaultPrevented) { - return; - } - - const complete = () => { - this._element.classList.add(CLASS_NAME_HIDE); - - EventHandler.trigger(this._element, EVENT_HIDDEN); - }; - - this._element.classList.remove(CLASS_NAME_SHOW); - - this._queueCallback(complete, this._element, this._config.animation); - } - - dispose() { - this._clearTimeout(); - - if (this._element.classList.contains(CLASS_NAME_SHOW)) { - this._element.classList.remove(CLASS_NAME_SHOW); - } - - super.dispose(); - } // Private - - - _getConfig(config) { - config = { ...Default, - ...Manipulator.getDataAttributes(this._element), - ...(typeof config === 'object' && config ? config : {}) - }; - typeCheckConfig(NAME, config, this.constructor.DefaultType); - return config; - } - - _maybeScheduleHide() { - if (!this._config.autohide) { - return; - } - - if (this._hasMouseInteraction || this._hasKeyboardInteraction) { - return; - } - - this._timeout = setTimeout(() => { - this.hide(); - }, this._config.delay); - } - - _onInteraction(event, isInteracting) { - switch (event.type) { - case 'mouseover': - case 'mouseout': - this._hasMouseInteraction = isInteracting; - break; - - case 'focusin': - case 'focusout': - this._hasKeyboardInteraction = isInteracting; - break; - } - - if (isInteracting) { - this._clearTimeout(); - - return; - } - - const nextElement = event.relatedTarget; - - if (this._element === nextElement || this._element.contains(nextElement)) { - return; - } - - this._maybeScheduleHide(); - } - - _setListeners() { - EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide()); - EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true)); - EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false)); - EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true)); - EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false)); - } - - _clearTimeout() { - clearTimeout(this._timeout); - this._timeout = null; - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Toast.getOrCreateInstance(this, config); - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](this); - } - }); - } - -} -/** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Toast to jQuery only if jQuery is present - */ - - -defineJQueryPlugin(Toast); - -export { Alert, Button, Carousel, Collapse, Dropdown, Modal, Offcanvas, Popover, ScrollSpy, Tab, Toast, Tooltip }; -//# sourceMappingURL=oe-bcl-default.esm.js.map diff --git a/assets/js/oe-bcl-default.esm.js.map b/assets/js/oe-bcl-default.esm.js.map deleted file mode 100644 index 73abb89b..00000000 --- a/assets/js/oe-bcl-default.esm.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"oe-bcl-default.esm.js","sources":["../../../../bootstrap/js/src/dom/selector-engine.js","../../../../bootstrap/js/src/util/index.js","../../../../bootstrap/js/src/dom/event-handler.js","../../../../bootstrap/js/src/dom/data.js","../../../../bootstrap/js/src/base-component.js","../../../../bootstrap/js/src/alert.js","../../../../bootstrap/js/src/button.js","../../../../bootstrap/js/src/dom/manipulator.js","../../../../bootstrap/js/src/carousel.js","../../../../bootstrap/js/src/collapse.js","../../../../bootstrap/js/src/dropdown.js","../../../../bootstrap/js/src/util/scrollbar.js","../../../../bootstrap/js/src/util/backdrop.js","../../../../bootstrap/js/src/modal.js","../../../../bootstrap/js/src/offcanvas.js","../../../../bootstrap/js/src/util/sanitizer.js","../../../../bootstrap/js/src/tooltip.js","../../../../bootstrap/js/src/popover.js","../../../../bootstrap/js/src/scrollspy.js","../../../../bootstrap/js/src/tab.js","../../../../bootstrap/js/src/toast.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NODE_TEXT = 3\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children)\n .filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n\n let ancestor = element.parentNode\n\n while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {\n if (ancestor.matches(selector)) {\n parents.push(ancestor)\n }\n\n ancestor = ancestor.parentNode\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n }\n}\n\nexport default SelectorEngine\n","import SelectorEngine from '../dom/selector-engine'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = obj => {\n if (obj === null || obj === undefined) {\n return `${obj}`\n }\n\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return SelectorEngine.findOne(obj)\n }\n\n return null\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n return getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\nconst reflow = element => element.offsetHeight\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n DOMContentLoadedCallbacks.forEach(callback => callback())\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element depending on the direction and if cycle is allowed\n if (index === -1) {\n return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]\n }\n\n const listLength = list.length\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n getNextActiveElement,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute,\n executeAfterTransition\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\nconst customEventsRegex = /^(mouseenter|mouseleave)/i\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * ------------------------------------------------------------------------\n * Private methods\n * ------------------------------------------------------------------------\n */\n\nfunction getUidEvent(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getEvent(element) {\n const uid = getUidEvent(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n event.delegateTarget = element\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (let i = domElements.length; i--;) {\n if (domElements[i] === target) {\n event.delegateTarget = target\n\n if (handler.oneOff) {\n // eslint-disable-next-line unicorn/consistent-destructuring\n EventHandler.off(element, event.type, selector, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n\n // To please ESLint\n return null\n }\n}\n\nfunction findHandler(events, handler, delegationSelector = null) {\n const uidEventList = Object.keys(events)\n\n for (let i = 0, len = uidEventList.length; i < len; i++) {\n const event = events[uidEventList[i]]\n\n if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {\n return event\n }\n }\n\n return null\n}\n\nfunction normalizeParams(originalTypeEvent, handler, delegationFn) {\n const delegation = typeof handler === 'string'\n const originalHandler = delegation ? delegationFn : handler\n\n let typeEvent = getTypeEvent(originalTypeEvent)\n const isNative = nativeEvents.has(typeEvent)\n\n if (!isNative) {\n typeEvent = originalTypeEvent\n }\n\n return [delegation, originalHandler, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n if (!handler) {\n handler = delegationFn\n delegationFn = null\n }\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (customEventsRegex.test(originalTypeEvent)) {\n const wrapFn = fn => {\n return function (event) {\n if (!event.relatedTarget || (event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget))) {\n return fn.call(this, event)\n }\n }\n }\n\n if (delegationFn) {\n delegationFn = wrapFn(delegationFn)\n } else {\n handler = wrapFn(handler)\n }\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const events = getEvent(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null)\n\n if (previousFn) {\n previousFn.oneOff = previousFn.oneOff && oneOff\n\n return\n }\n\n const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = delegation ?\n bootstrapDelegationHandler(element, handler, delegationFn) :\n bootstrapHandler(element, handler)\n\n fn.delegationSelector = delegation ? handler : null\n fn.originalHandler = originalHandler\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, delegation)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n Object.keys(storeElementEvent).forEach(handlerKey => {\n if (handlerKey.includes(namespace)) {\n const event = storeElementEvent[handlerKey]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n}\n\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '')\n return customEvents[event] || event\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, false)\n },\n\n one(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFn) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getEvent(element)\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof originalHandler !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!events || !events[typeEvent]) {\n return\n }\n\n removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null)\n return\n }\n\n if (isNamespace) {\n Object.keys(events).forEach(elementEvent => {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n })\n }\n\n const storeElementEvent = events[typeEvent] || {}\n Object.keys(storeElementEvent).forEach(keyHandlers => {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n const event = storeElementEvent[keyHandlers]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = getTypeEvent(event)\n const inNamespace = event !== typeEvent\n const isNative = nativeEvents.has(typeEvent)\n\n let jQueryEvent\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n let evt = null\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n if (isNative) {\n evt = document.createEvent('HTMLEvents')\n evt.initEvent(typeEvent, bubbles, true)\n } else {\n evt = new CustomEvent(event, {\n bubbles,\n cancelable: true\n })\n }\n\n // merge custom information in our event\n if (typeof args !== 'undefined') {\n Object.keys(args).forEach(key => {\n Object.defineProperty(evt, key, {\n get() {\n return args[key]\n }\n })\n })\n }\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst elementMap = new Map()\n\nexport default {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map())\n }\n\n const instanceMap = elementMap.get(element)\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`)\n return\n }\n\n instanceMap.set(key, instance)\n },\n\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null\n }\n\n return null\n },\n\n remove(element, key) {\n if (!elementMap.has(element)) {\n return\n }\n\n const instanceMap = elementMap.get(element)\n\n instanceMap.delete(key)\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element)\n }\n }\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\nimport {\n executeAfterTransition,\n getElement\n} from './util/index'\nimport EventHandler from './dom/event-handler'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst VERSION = '5.0.2'\n\nclass BaseComponent {\n constructor(element) {\n element = getElement(element)\n\n if (!element) {\n return\n }\n\n this._element = element\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n Object.getOwnPropertyNames(this).forEach(propertyName => {\n this[propertyName] = null\n })\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated)\n }\n\n /** Static */\n\n static getInstance(element) {\n return Data.get(element, this.DATA_KEY)\n }\n\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DISMISS = '[data-bs-dismiss=\"alert\"]'\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_ALERT = 'alert'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n close(element) {\n const rootElement = element ? this._getRootElement(element) : this._element\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent === null || customEvent.defaultPrevented) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n // Private\n\n _getRootElement(element) {\n return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`)\n }\n\n _triggerCloseEvent(element) {\n return EventHandler.trigger(element, EVENT_CLOSE)\n }\n\n _removeElement(element) {\n element.classList.remove(CLASS_NAME_SHOW)\n\n const isAnimated = element.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(() => this._destroyElement(element), element, isAnimated)\n }\n\n _destroyElement(element) {\n element.remove()\n\n EventHandler.trigger(element, EVENT_CLOSED)\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this)\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert.handleDismiss(new Alert()))\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Alert to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this)\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n const data = Button.getOrCreateInstance(button)\n\n data.toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Button to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(val) {\n if (val === 'true') {\n return true\n }\n\n if (val === 'false') {\n return false\n }\n\n if (val === Number(val).toString()) {\n return Number(val)\n }\n\n if (val === '' || val === 'null') {\n return null\n }\n\n return val\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n\n Object.keys(element.dataset)\n .filter(key => key.startsWith('bs'))\n .forEach(key => {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n })\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n },\n\n offset(element) {\n const rect = element.getBoundingClientRect()\n\n return {\n top: rect.top + document.body.scrollTop,\n left: rect.left + document.body.scrollLeft\n }\n },\n\n position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n }\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n getNextActiveElement,\n reflow,\n triggerTransitionEnd,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n slide: false,\n pause: 'hover',\n wrap: true,\n touch: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)',\n keyboard: 'boolean',\n slide: '(boolean|string)',\n pause: '(string|boolean)',\n wrap: 'boolean',\n touch: 'boolean'\n}\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY]: DIRECTION_LEFT\n}\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_INDICATOR = '[data-bs-target]'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n next() {\n this._slide(ORDER_NEXT)\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n this._slide(ORDER_PREV)\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) {\n triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config && this._config.interval && !this._isPaused) {\n this._updateInterval()\n\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const order = index > activeIndex ?\n ORDER_NEXT :\n ORDER_PREV\n\n this._slide(order, this._items[index])\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n this.touchDeltaX = 0\n\n if (!direction) {\n return\n }\n\n this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT)\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event))\n EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event))\n }\n\n if (this._config.touch && this._touchSupported) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n const start = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchStartX = event.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.touches[0].clientX\n }\n }\n\n const move = event => {\n // ensure swiping with one touch and not pinching\n this.touchDeltaX = event.touches && event.touches.length > 1 ?\n 0 :\n event.touches[0].clientX - this.touchStartX\n }\n\n const end = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {\n EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault())\n })\n\n if (this._pointerEvent) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n const direction = KEY_TO_DIRECTION[event.key]\n if (direction) {\n event.preventDefault()\n this._slide(direction)\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode ?\n SelectorEngine.find(SELECTOR_ITEM, element.parentNode) :\n []\n\n return this._items.indexOf(element)\n }\n\n _getItemByOrder(order, activeElement) {\n const isNext = order === ORDER_NEXT\n return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap)\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element))\n\n return EventHandler.trigger(this._element, EVENT_SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement)\n\n for (let i = 0; i < indicators.length; i++) {\n if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {\n indicators[i].classList.add(CLASS_NAME_ACTIVE)\n indicators[i].setAttribute('aria-current', 'true')\n break\n }\n }\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n if (elementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = elementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n }\n\n _slide(directionOrOrder, element) {\n const order = this._directionToOrder(directionOrOrder)\n const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || this._getItemByOrder(order, activeElement)\n\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n const isNext = order === ORDER_NEXT\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n const eventDirectionName = this._orderToDirection(order)\n\n if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {\n this._isSliding = false\n return\n }\n\n if (this._isSliding) {\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n this._activeElement = nextElement\n\n const triggerSlidEvent = () => {\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }\n\n if (this._element.classList.contains(CLASS_NAME_SLIDE)) {\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n setTimeout(triggerSlidEvent, 0)\n }\n\n this._queueCallback(completeCallBack, activeElement, true)\n } else {\n activeElement.classList.remove(CLASS_NAME_ACTIVE)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n this._isSliding = false\n triggerSlidEvent()\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _directionToOrder(direction) {\n if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) {\n return direction\n }\n\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (![ORDER_NEXT, ORDER_PREV].includes(order)) {\n return order\n }\n\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n\n static carouselInterface(element, config) {\n const data = Carousel.getOrCreateInstance(element, config)\n\n let { _config } = data\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Carousel.carouselInterface(this, config)\n })\n }\n\n static dataApiClickHandler(event) {\n const target = getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel.carouselInterface(target, config)\n\n if (slideIndex) {\n Carousel.getInstance(target).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler)\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (let i = 0, len = carousels.length; i < len; i++) {\n Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i]))\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Carousel to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElement,\n getSelectorFromElement,\n getElementFromSelector,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n toggle: true,\n parent: ''\n}\n\nconst DefaultType = {\n toggle: 'boolean',\n parent: '(string|element)'\n}\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.show, .collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._isTransitioning = false\n this._config = this._getConfig(config)\n this._triggerArray = SelectorEngine.find(\n `${SELECTOR_DATA_TOGGLE}[href=\"#${this._element.id}\"],` +\n `${SELECTOR_DATA_TOGGLE}[data-bs-target=\"#${this._element.id}\"]`\n )\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElem => foundElem === this._element)\n\n if (selector !== null && filterElement.length) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent)\n .filter(elem => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-bs-parent') === this._config.parent\n }\n\n return elem.classList.contains(CLASS_NAME_COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n const container = SelectorEngine.findOne(this._selector)\n if (actives) {\n const tempActiveData = actives.find(elem => container !== elem)\n activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null\n\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n if (actives) {\n actives.forEach(elemActive => {\n if (container !== elemActive) {\n Collapse.collapseInterface(elemActive, 'hide')\n }\n\n if (!activesData) {\n Data.set(elemActive, DATA_KEY, null)\n }\n })\n }\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n this._triggerArray.forEach(element => {\n element.classList.remove(CLASS_NAME_COLLAPSED)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n\n this._queueCallback(complete, this._element, true)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const elem = getElementFromSelector(trigger)\n\n if (elem && !elem.classList.contains(CLASS_NAME_SHOW)) {\n trigger.classList.add(CLASS_NAME_COLLAPSED)\n trigger.setAttribute('aria-expanded', false)\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n\n this._queueCallback(complete, this._element, true)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT\n }\n\n _getParent() {\n let { parent } = this._config\n\n parent = getElement(parent)\n\n const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent=\"${parent}\"]`\n\n SelectorEngine.find(selector, parent)\n .forEach(element => {\n const selected = getElementFromSelector(element)\n\n this._addAriaAndCollapsedClass(\n selected,\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (!element || !triggerArray.length) {\n return\n }\n\n const isOpen = element.classList.contains(CLASS_NAME_SHOW)\n\n triggerArray.forEach(elem => {\n if (isOpen) {\n elem.classList.remove(CLASS_NAME_COLLAPSED)\n } else {\n elem.classList.add(CLASS_NAME_COLLAPSED)\n }\n\n elem.setAttribute('aria-expanded', isOpen)\n })\n }\n\n // Static\n\n static collapseInterface(element, config) {\n let data = Collapse.getInstance(element)\n const _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Collapse.collapseInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n const triggerData = Manipulator.getDataAttributes(this)\n const selector = getSelectorFromElement(this)\n const selectorElements = SelectorEngine.find(selector)\n\n selectorElements.forEach(element => {\n const data = Collapse.getInstance(element)\n let config\n if (data) {\n // update parent attribute\n if (data._parent === null && typeof triggerData.parent === 'string') {\n data._config.parent = triggerData.parent\n data._parent = data._getParent()\n }\n\n config = 'toggle'\n } else {\n config = triggerData\n }\n\n Collapse.collapseInterface(element, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Collapse to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Collapse)\n\nexport default Collapse\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n getElement,\n getElementFromSelector,\n isDisabled,\n isElement,\n isVisible,\n isRTL,\n noop,\n getNextActiveElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst SPACE_KEY = 'Space'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY}`)\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_NAVBAR = 'navbar'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]'\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'\n\nconst Default = {\n offset: [0, 2],\n boundary: 'clippingParents',\n reference: 'toggle',\n display: 'dynamic',\n popperConfig: null,\n autoClose: true\n}\n\nconst DefaultType = {\n offset: '(array|string|function)',\n boundary: '(string|element)',\n reference: '(string|element|object)',\n display: 'string',\n popperConfig: '(null|object|function)',\n autoClose: '(boolean|string)'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (isDisabled(this._element)) {\n return\n }\n\n const isActive = this._element.classList.contains(CLASS_NAME_SHOW)\n\n if (isActive) {\n this.hide()\n return\n }\n\n this.show()\n }\n\n show() {\n if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this._element)\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n // Totally disable Popper for Dropdowns in Navbar\n if (this._inNavbar) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'none')\n } else {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference)\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false)\n\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n\n if (isDisplayStatic) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static')\n }\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n !parent.closest(SELECTOR_NAVBAR_NAV)) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.on(elem, 'mouseover', noop))\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.toggle(CLASS_NAME_SHOW)\n this._element.classList.toggle(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n this._completeHide(relatedTarget)\n }\n\n dispose() {\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK, event => {\n event.preventDefault()\n this.toggle()\n })\n }\n\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.off(elem, 'mouseover', noop))\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.remove(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._element.setAttribute('aria-expanded', 'false')\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _getMenuElement() {\n return SelectorEngine.next(this._element, SELECTOR_MENU)[0]\n }\n\n _getPlacement() {\n const parentDropdown = this._element.parentNode\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display\n if (this._config.display === 'static') {\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _selectMenuItem({ key, target }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible)\n\n if (!items.length) {\n return\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus()\n }\n\n // Static\n\n static dropdownInterface(element, config) {\n const data = Dropdown.getOrCreateInstance(element, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Dropdown.dropdownInterface(this, config)\n })\n }\n\n static clearMenus(event) {\n if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {\n return\n }\n\n const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const context = Dropdown.getInstance(toggles[i])\n if (!context || context._config.autoClose === false) {\n continue\n }\n\n if (!context._element.classList.contains(CLASS_NAME_SHOW)) {\n continue\n }\n\n const relatedTarget = {\n relatedTarget: context._element\n }\n\n if (event) {\n const composedPath = event.composedPath()\n const isMenuTarget = composedPath.includes(context._menu)\n if (\n composedPath.includes(context._element) ||\n (context._config.autoClose === 'inside' && !isMenuTarget) ||\n (context._config.autoClose === 'outside' && isMenuTarget)\n ) {\n continue\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue\n }\n\n if (event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n }\n\n context._completeHide(relatedTarget)\n }\n }\n\n static getParentFromElement(element) {\n return getElementFromSelector(element) || element.parentNode\n }\n\n static dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName) ?\n event.key === SPACE_KEY || (event.key !== ESCAPE_KEY &&\n ((event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY) ||\n event.target.closest(SELECTOR_MENU))) :\n !REGEXP_KEYDOWN.test(event.key)) {\n return\n }\n\n const isActive = this.classList.contains(CLASS_NAME_SHOW)\n\n if (!isActive && event.key === ESCAPE_KEY) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (isDisabled(this)) {\n return\n }\n\n const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n\n if (event.key === ESCAPE_KEY) {\n getToggleButton().focus()\n Dropdown.clearMenus()\n return\n }\n\n if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) {\n if (!isActive) {\n getToggleButton().click()\n }\n\n Dropdown.getInstance(getToggleButton())._selectMenuItem(event)\n return\n }\n\n if (!isActive || event.key === SPACE_KEY) {\n Dropdown.clearMenus()\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n Dropdown.dropdownInterface(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Dropdown to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport SelectorEngine from '../dom/selector-engine'\nimport Manipulator from '../dom/manipulator'\nimport { isElement } from './index'\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body\n }\n\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth\n return Math.abs(window.innerWidth - documentWidth)\n }\n\n hide() {\n const width = this.getWidth()\n this._disableOverFlow()\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width)\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width)\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width)\n }\n\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow')\n this._element.style.overflow = 'hidden'\n }\n\n _setElementAttributes(selector, styleProp, callback) {\n const scrollbarWidth = this.getWidth()\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return\n }\n\n this._saveInitialAttribute(element, styleProp)\n const calculatedValue = window.getComputedStyle(element)[styleProp]\n element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n reset() {\n this._resetElementAttributes(this._element, 'overflow')\n this._resetElementAttributes(this._element, 'paddingRight')\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight')\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight')\n }\n\n _saveInitialAttribute(element, styleProp) {\n const actualValue = element.style[styleProp]\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProp, actualValue)\n }\n }\n\n _resetElementAttributes(selector, styleProp) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProp)\n if (typeof value === 'undefined') {\n element.style.removeProperty(styleProp)\n } else {\n Manipulator.removeDataAttribute(element, styleProp)\n element.style[styleProp] = value\n }\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector)\n } else {\n SelectorEngine.find(selector, this._element).forEach(callBack)\n }\n }\n\n isOverflowing() {\n return this.getWidth() > 0\n }\n}\n\nexport default ScrollBarHelper\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { execute, executeAfterTransition, getElement, reflow, typeCheckConfig } from './index'\n\nconst Default = {\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n isAnimated: false,\n rootElement: 'body', // give the choice to place backdrop under different elements\n clickCallback: null\n}\n\nconst DefaultType = {\n isVisible: 'boolean',\n isAnimated: 'boolean',\n rootElement: '(element|string)',\n clickCallback: '(function|null)'\n}\nconst NAME = 'backdrop'\nconst CLASS_NAME_BACKDROP = 'modal-backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nclass Backdrop {\n constructor(config) {\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\n }\n\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n if (this._config.isAnimated) {\n reflow(this._getElement())\n }\n\n this._getElement().classList.add(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n execute(callback)\n })\n }\n\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._getElement().classList.remove(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n this.dispose()\n execute(callback)\n })\n }\n\n // Private\n\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div')\n backdrop.className = CLASS_NAME_BACKDROP\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE)\n }\n\n this._element = backdrop\n }\n\n return this._element\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' ? config : {})\n }\n\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement)\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n this._config.rootElement.appendChild(this._getElement())\n\n EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n dispose() {\n if (!this._isAppended) {\n return\n }\n\n EventHandler.off(this._element, EVENT_MOUSEDOWN)\n\n this._element.remove()\n this._isAppended = false\n }\n\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated)\n }\n}\n\nexport default Backdrop\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport ScrollBarHelper from './util/scrollbar'\nimport BaseComponent from './base-component'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean'\n}\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"modal\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element)\n this._backdrop = this._initializeBackDrop()\n this._isShown = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollBar = new ScrollBarHelper()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n\n if (this._isAnimated()) {\n this._isTransitioning = true\n }\n\n this._scrollBar.hide()\n\n document.body.classList.add(CLASS_NAME_OPEN)\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, event => this.hide(event))\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event && ['A', 'AREA'].includes(event.target.tagName)) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n const isAnimated = this._isAnimated()\n\n if (isAnimated) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.off(document, EVENT_FOCUSIN)\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS)\n\n this._queueCallback(() => this._hideModal(), this._element, isAnimated)\n }\n\n dispose() {\n [window, this._dialog]\n .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))\n\n this._backdrop.dispose()\n super.dispose()\n\n /**\n * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `EVENT_CLICK_DATA_API` event that should remain\n */\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value\n isAnimated: this._isAnimated()\n })\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const isAnimated = this._isAnimated()\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n if (isAnimated) {\n reflow(this._element)\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, isAnimated)\n }\n\n _enforceFocus() {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n this._element !== event.target &&\n !this._element.contains(event.target)) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault()\n this.hide()\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition()\n }\n })\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog())\n } else {\n EventHandler.off(window, EVENT_RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n this._scrollBar.reset()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _showBackdrop(callback) {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, event => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n\n if (event.target !== event.currentTarget) {\n return\n }\n\n if (this._config.backdrop === true) {\n this.hide()\n } else if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n }\n })\n\n this._backdrop.show(callback)\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE)\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const { classList, scrollHeight, style } = this._element\n const isModalOverflowing = scrollHeight > document.documentElement.clientHeight\n\n // return if the following background transition hasn't yet completed\n if ((!isModalOverflowing && style.overflowY === 'hidden') || classList.contains(CLASS_NAME_STATIC)) {\n return\n }\n\n if (!isModalOverflowing) {\n style.overflowY = 'hidden'\n }\n\n classList.add(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n classList.remove(CLASS_NAME_STATIC)\n if (!isModalOverflowing) {\n this._queueCallback(() => {\n style.overflowY = ''\n }, this._dialog)\n }\n }, this._dialog)\n\n this._element.focus()\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const scrollbarWidth = this._scrollBar.getWidth()\n const isBodyOverflowing = scrollbarWidth > 0\n\n if ((!isBodyOverflowing && isModalOverflowing && !isRTL()) || (isBodyOverflowing && !isModalOverflowing && isRTL())) {\n this._element.style.paddingLeft = `${scrollbarWidth}px`\n }\n\n if ((isBodyOverflowing && !isModalOverflowing && !isRTL()) || (!isBodyOverflowing && isModalOverflowing && isRTL())) {\n this._element.style.paddingRight = `${scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n const data = Modal.getOrCreateInstance(target)\n\n data.toggle(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible,\n typeCheckConfig\n} from './util/index'\nimport ScrollBarHelper from './util/scrollbar'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Manipulator from './dom/manipulator'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: 'boolean',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\nconst CLASS_NAME_SHOW = 'show'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"offcanvas\"]'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._addEventListeners()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._element.style.visibility = 'visible'\n\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n this._enforceFocusOnElement(this._element)\n }\n\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const completeCallBack = () => {\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n EventHandler.off(document, EVENT_FOCUSIN)\n this._element.blur()\n this._isShown = false\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._element.style.visibility = 'hidden'\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n super.dispose()\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: this._config.backdrop,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _enforceFocusOnElement(element) {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n element !== event.target &&\n !element.contains(event.target)) {\n element.focus()\n }\n })\n element.focus()\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n this.hide()\n }\n })\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (allReadyOpen && allReadyOpen !== target) {\n Offcanvas.getInstance(allReadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () =>\n SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())\n)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attr, allowedAttributeList) => {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attrName)) {\n if (uriAttrs.has(attrName)) {\n return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attrName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const allowlistKeys = Object.keys(allowList)\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (!allowlistKeys.includes(elName)) {\n el.remove()\n\n continue\n }\n\n const attributeList = [].concat(...el.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || [])\n\n attributeList.forEach(attr => {\n if (!allowedAttribute(attr, allowedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport {\n DefaultAllowlist,\n sanitizeHtml\n} from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.appendChild(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n this.tip = element.children[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle())\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.appendChild(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n let title = this._element.getAttribute('data-bs-original-title')\n\n if (!title) {\n title = typeof this._config.title === 'function' ?\n this._config.title.call(this._element) :\n this._config.title\n }\n\n return title\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || Data.get(event.delegateTarget, dataKey)\n\n if (!context) {\n context = new this.constructor(event.delegateTarget, this._getDelegateConfig())\n Data.set(event.delegateTarget, dataKey, context)\n }\n\n return context\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this._config) {\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport SelectorEngine from './dom/selector-engine'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement: 'right',\n offset: [0, 8],\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(string|element|function)'\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n this.tip = super.getTipElement()\n\n if (!this.getTitle()) {\n SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove()\n }\n\n if (!this._getContent()) {\n SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove()\n }\n\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n\n // we use append for html objects to maintain js events\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this._element)\n }\n\n this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n // Private\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getContent() {\n return this._element.getAttribute('data-bs-content') || this._config.content\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Popover to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getSelectorFromElement,\n getUID,\n isElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n offset: 10,\n method: 'auto',\n target: ''\n}\n\nconst DefaultType = {\n offset: 'number',\n method: 'string',\n target: '(string|element)'\n}\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._scrollElement = this._element.tagName === 'BODY' ? window : this._element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process())\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window ?\n METHOD_OFFSET :\n METHOD_POSITION\n\n const offsetMethod = this._config.method === 'auto' ?\n autoMethod :\n this._config.method\n\n const offsetBase = offsetMethod === METHOD_POSITION ?\n this._getScrollTop() :\n 0\n\n this._offsets = []\n this._targets = []\n this._scrollHeight = this._getScrollHeight()\n\n const targets = SelectorEngine.find(this._selector)\n\n targets.map(element => {\n const targetSelector = getSelectorFromElement(element)\n const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n return [\n Manipulator[offsetMethod](target).top + offsetBase,\n targetSelector\n ]\n }\n }\n\n return null\n })\n .filter(item => item)\n .sort((a, b) => a[0] - b[0])\n .forEach(item => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n EventHandler.off(this._scrollElement, EVENT_KEY)\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (typeof config.target !== 'string' && isElement(config.target)) {\n let { id } = config.target\n if (!id) {\n id = getUID(NAME)\n config.target.id = id\n }\n\n config.target = `#${id}`\n }\n\n typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window ?\n this._scrollElement.pageYOffset :\n this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window ?\n window.innerHeight :\n this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n for (let i = this._offsets.length; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = this._selector.split(',')\n .map(selector => `${selector}[data-bs-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const link = SelectorEngine.findOne(queries.join(','))\n\n if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, link.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n\n link.classList.add(CLASS_NAME_ACTIVE)\n } else {\n // Set triggered link as active\n link.classList.add(CLASS_NAME_ACTIVE)\n\n SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP)\n .forEach(listGroup => {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n\n // Handle special case when .nav-link is inside .nav-item\n SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS)\n .forEach(navItem => {\n SelectorEngine.children(navItem, SELECTOR_NAV_LINKS)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n })\n })\n }\n\n EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, {\n relatedTarget: target\n })\n }\n\n _clear() {\n SelectorEngine.find(this._selector)\n .filter(node => node.classList.contains(CLASS_NAME_ACTIVE))\n .forEach(node => node.classList.remove(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n SelectorEngine.find(SELECTOR_DATA_SPY)\n .forEach(spy => new ScrollSpy(spy))\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .ScrollSpy to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n reflow\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_UL = ':scope > li > .active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tab extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n if ((this._element.parentNode &&\n this._element.parentNode.nodeType === Node.ELEMENT_NODE &&\n this._element.classList.contains(CLASS_NAME_ACTIVE))) {\n return\n }\n\n let previous\n const target = getElementFromSelector(this._element)\n const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP)\n\n if (listElement) {\n const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE\n previous = SelectorEngine.find(itemSelector, listElement)\n previous = previous[previous.length - 1]\n }\n\n const hideEvent = previous ?\n EventHandler.trigger(previous, EVENT_HIDE, {\n relatedTarget: this._element\n }) :\n null\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget: previous\n })\n\n if (showEvent.defaultPrevented || (hideEvent !== null && hideEvent.defaultPrevented)) {\n return\n }\n\n this._activate(this._element, listElement)\n\n const complete = () => {\n EventHandler.trigger(previous, EVENT_HIDDEN, {\n relatedTarget: this._element\n })\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget: previous\n })\n }\n\n if (target) {\n this._activate(target, target.parentNode, complete)\n } else {\n complete()\n }\n }\n\n // Private\n\n _activate(element, container, callback) {\n const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ?\n SelectorEngine.find(SELECTOR_ACTIVE_UL, container) :\n SelectorEngine.children(container, SELECTOR_ACTIVE)\n\n const active = activeElements[0]\n const isTransitioning = callback && (active && active.classList.contains(CLASS_NAME_FADE))\n\n const complete = () => this._transitionComplete(element, active, callback)\n\n if (active && isTransitioning) {\n active.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, element, true)\n } else {\n complete()\n }\n }\n\n _transitionComplete(element, active, callback) {\n if (active) {\n active.classList.remove(CLASS_NAME_ACTIVE)\n\n const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode)\n\n if (dropdownChild) {\n dropdownChild.classList.remove(CLASS_NAME_ACTIVE)\n }\n\n if (active.getAttribute('role') === 'tab') {\n active.setAttribute('aria-selected', false)\n }\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n if (element.getAttribute('role') === 'tab') {\n element.setAttribute('aria-selected', true)\n }\n\n reflow(element)\n\n if (element.classList.contains(CLASS_NAME_FADE)) {\n element.classList.add(CLASS_NAME_SHOW)\n }\n\n let parent = element.parentNode\n if (parent && parent.nodeName === 'LI') {\n parent = parent.parentNode\n }\n\n if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) {\n const dropdownElement = element.closest(SELECTOR_DROPDOWN)\n\n if (dropdownElement) {\n SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement)\n .forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE))\n }\n\n element.setAttribute('aria-expanded', true)\n }\n\n if (callback) {\n callback()\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tab.getOrCreateInstance(this)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const data = Tab.getOrCreateInstance(this)\n data.show()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tab to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'bs.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`\nconst EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_FOCUSOUT = `focusout${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"toast\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._timeout = null\n this._hasMouseInteraction = false\n this._hasKeyboardInteraction = false\n this._setListeners()\n }\n\n // Getters\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n this._element.classList.add(CLASS_NAME_SHOW)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n this._maybeScheduleHide()\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE)\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n hide() {\n if (!this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n return config\n }\n\n _maybeScheduleHide() {\n if (!this._config.autohide) {\n return\n }\n\n if (this._hasMouseInteraction || this._hasKeyboardInteraction) {\n return\n }\n\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n\n _onInteraction(event, isInteracting) {\n switch (event.type) {\n case 'mouseover':\n case 'mouseout':\n this._hasMouseInteraction = isInteracting\n break\n case 'focusin':\n case 'focusout':\n this._hasKeyboardInteraction = isInteracting\n break\n default:\n break\n }\n\n if (isInteracting) {\n this._clearTimeout()\n return\n }\n\n const nextElement = event.relatedTarget\n if (this._element === nextElement || this._element.contains(nextElement)) {\n return\n }\n\n this._maybeScheduleHide()\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false))\n EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false))\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Toast.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Toast to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Toast)\n\nexport default Toast\n"],"names":["NODE_TEXT","SelectorEngine","find","selector","element","document","documentElement","concat","Element","prototype","querySelectorAll","call","findOne","querySelector","children","filter","child","matches","parents","ancestor","parentNode","nodeType","Node","ELEMENT_NODE","push","prev","previous","previousElementSibling","next","nextElementSibling","MAX_UID","MILLISECONDS_MULTIPLIER","TRANSITION_END","toType","obj","undefined","toString","match","toLowerCase","getUID","prefix","Math","floor","random","getElementById","getSelector","getAttribute","hrefAttr","includes","startsWith","split","trim","getSelectorFromElement","getElementFromSelector","getTransitionDurationFromElement","transitionDuration","transitionDelay","window","getComputedStyle","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","triggerTransitionEnd","dispatchEvent","Event","isElement","jquery","getElement","length","typeCheckConfig","componentName","config","configTypes","Object","keys","forEach","property","expectedTypes","value","valueType","RegExp","test","TypeError","toUpperCase","isVisible","getClientRects","getPropertyValue","isDisabled","classList","contains","disabled","hasAttribute","findShadowRoot","attachShadow","getRootNode","root","ShadowRoot","noop","reflow","offsetHeight","getjQuery","jQuery","body","DOMContentLoadedCallbacks","onDOMContentLoaded","callback","readyState","addEventListener","isRTL","dir","defineJQueryPlugin","plugin","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","execute","executeAfterTransition","transitionElement","waitForTransition","durationPadding","emulatedDuration","called","handler","target","removeEventListener","setTimeout","getNextActiveElement","list","activeElement","shouldGetNext","isCycleAllowed","index","indexOf","listLength","max","min","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","customEventsRegex","nativeEvents","Set","getUidEvent","uid","getEvent","bootstrapHandler","event","delegateTarget","oneOff","EventHandler","off","type","apply","bootstrapDelegationHandler","domElements","i","findHandler","events","delegationSelector","uidEventList","len","originalHandler","normalizeParams","originalTypeEvent","delegationFn","delegation","typeEvent","getTypeEvent","isNative","has","addHandler","wrapFn","relatedTarget","handlers","previousFn","replace","removeHandler","Boolean","removeNamespacedHandlers","namespace","storeElementEvent","handlerKey","on","one","inNamespace","isNamespace","elementEvent","slice","keyHandlers","trigger","args","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","evt","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","createEvent","initEvent","CustomEvent","cancelable","key","defineProperty","get","preventDefault","elementMap","Map","set","instance","instanceMap","size","console","error","Array","from","remove","delete","VERSION","BaseComponent","constructor","_element","Data","DATA_KEY","dispose","EVENT_KEY","getOwnPropertyNames","propertyName","_queueCallback","isAnimated","getInstance","getOrCreateInstance","Error","DATA_API_KEY","SELECTOR_DISMISS","EVENT_CLOSE","EVENT_CLOSED","EVENT_CLICK_DATA_API","CLASS_NAME_ALERT","CLASS_NAME_FADE","CLASS_NAME_SHOW","Alert","close","rootElement","_getRootElement","customEvent","_triggerCloseEvent","_removeElement","closest","_destroyElement","each","data","handleDismiss","alertInstance","CLASS_NAME_ACTIVE","SELECTOR_DATA_TOGGLE","Button","toggle","setAttribute","button","normalizeData","val","normalizeDataKey","chr","Manipulator","setDataAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","dataset","pureKey","charAt","getDataAttribute","offset","rect","getBoundingClientRect","top","scrollTop","left","scrollLeft","position","offsetTop","offsetLeft","ARROW_LEFT_KEY","ARROW_RIGHT_KEY","TOUCHEVENT_COMPAT_WAIT","SWIPE_THRESHOLD","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","KEY_TO_DIRECTION","EVENT_SLIDE","EVENT_SLID","EVENT_KEYDOWN","EVENT_MOUSEENTER","EVENT_MOUSELEAVE","EVENT_TOUCHSTART","EVENT_TOUCHMOVE","EVENT_TOUCHEND","EVENT_POINTERDOWN","EVENT_POINTERUP","EVENT_DRAG_START","EVENT_LOAD_DATA_API","CLASS_NAME_CAROUSEL","CLASS_NAME_SLIDE","CLASS_NAME_END","CLASS_NAME_START","CLASS_NAME_NEXT","CLASS_NAME_PREV","CLASS_NAME_POINTER_EVENT","SELECTOR_ACTIVE","SELECTOR_ACTIVE_ITEM","SELECTOR_ITEM","SELECTOR_ITEM_IMG","SELECTOR_NEXT_PREV","SELECTOR_INDICATORS","SELECTOR_INDICATOR","SELECTOR_DATA_SLIDE","SELECTOR_DATA_RIDE","POINTER_TYPE_TOUCH","POINTER_TYPE_PEN","Carousel","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","PointerEvent","_addEventListeners","_slide","nextWhenVisible","hidden","cycle","clearInterval","_updateInterval","setInterval","visibilityState","bind","to","activeIndex","_getItemIndex","order","_handleSwipe","absDeltax","abs","direction","_keydown","_addTouchEventListeners","start","pointerType","clientX","touches","move","end","clearTimeout","itemImg","e","add","tagName","_getItemByOrder","isNext","_triggerSlideEvent","eventDirectionName","targetIndex","fromIndex","_setActiveIndicatorElement","activeIndicator","indicators","parseInt","elementInterval","defaultInterval","directionOrOrder","_directionToOrder","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","_orderToDirection","slideEvent","triggerSlidEvent","completeCallBack","carouselInterface","action","ride","dataApiClickHandler","slideIndex","carousels","parent","EVENT_SHOW","EVENT_SHOWN","EVENT_HIDE","EVENT_HIDDEN","CLASS_NAME_COLLAPSE","CLASS_NAME_COLLAPSING","CLASS_NAME_COLLAPSED","WIDTH","HEIGHT","SELECTOR_ACTIVES","Collapse","_isTransitioning","_triggerArray","id","toggleList","elem","filterElement","foundElem","_selector","_parent","_getParent","_addAriaAndCollapsedClass","hide","show","actives","activesData","container","tempActiveData","startEvent","elemActive","collapseInterface","dimension","_getDimension","style","setTransitioning","complete","capitalizedDimension","scrollSize","triggerArrayLength","isTransitioning","selected","triggerArray","isOpen","triggerData","selectorElements","ESCAPE_KEY","SPACE_KEY","TAB_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","RIGHT_MOUSE_BUTTON","REGEXP_KEYDOWN","EVENT_CLICK","EVENT_KEYDOWN_DATA_API","EVENT_KEYUP_DATA_API","CLASS_NAME_DROPUP","CLASS_NAME_DROPEND","CLASS_NAME_DROPSTART","CLASS_NAME_NAVBAR","SELECTOR_MENU","SELECTOR_NAVBAR_NAV","SELECTOR_VISIBLE_ITEMS","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","boundary","reference","display","popperConfig","autoClose","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","isActive","getParentFromElement","showEvent","Popper","referenceElement","_getPopperConfig","isDisplayStatic","modifiers","modifier","enabled","createPopper","focus","_completeHide","destroy","update","hideEvent","_getPlacement","parentDropdown","isEnd","_getOffset","map","popperData","defaultBsPopperConfig","placement","options","_selectMenuItem","items","dropdownInterface","clearMenus","toggles","context","composedPath","isMenuTarget","clickEvent","dataApiKeydownHandler","stopPropagation","getToggleButton","click","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","ScrollBarHelper","getWidth","documentWidth","clientWidth","innerWidth","width","_disableOverFlow","_setElementAttributes","calculatedValue","_saveInitialAttribute","overflow","styleProp","scrollbarWidth","manipulationCallBack","_applyManipulationCallback","reset","_resetElementAttributes","actualValue","removeProperty","callBack","isOverflowing","clickCallback","CLASS_NAME_BACKDROP","EVENT_MOUSEDOWN","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","createElement","className","appendChild","EVENT_HIDE_PREVENTED","EVENT_FOCUSIN","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_KEYDOWN_DISMISS","EVENT_MOUSEUP_DISMISS","EVENT_MOUSEDOWN_DISMISS","CLASS_NAME_OPEN","CLASS_NAME_STATIC","SELECTOR_DIALOG","SELECTOR_MODAL_BODY","SELECTOR_DATA_DISMISS","Modal","_dialog","_backdrop","_initializeBackDrop","_isShown","_ignoreBackdropClick","_scrollBar","_isAnimated","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","_hideModal","htmlElement","handleUpdate","modalBody","_enforceFocus","transitionComplete","_triggerBackdropTransition","_resetAdjustments","currentTarget","scrollHeight","isModalOverflowing","clientHeight","overflowY","isBodyOverflowing","paddingLeft","paddingRight","scroll","OPEN_SELECTOR","Offcanvas","visibility","_enforceFocusOnElement","blur","completeCallback","allReadyOpen","el","uriAttrs","ARIA_ATTRIBUTE_PATTERN","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeName","nodeValue","regExp","attrRegex","DefaultAllowlist","a","area","b","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","domParser","DOMParser","createdDocument","parseFromString","allowlistKeys","elements","elName","attributeList","allowedAttributes","innerHTML","CLASS_PREFIX","BSCLS_PREFIX_REGEX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","html","fallbackPlacements","customClass","sanitize","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","CLASS_NAME_MODAL","HOVER_STATE_SHOW","HOVER_STATE_OUT","SELECTOR_TOOLTIP_INNER","TRIGGER_HOVER","TRIGGER_FOCUS","TRIGGER_CLICK","TRIGGER_MANUAL","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","_initializeOnDelegatedTarget","_isWithActiveTrigger","_enter","_leave","getTipElement","_hideModalHandler","isWithContent","shadowRoot","isInTheDom","ownerDocument","tipId","setContent","attachment","_getAttachment","_addAttachmentClass","prevHoverState","_cleanTipClass","getTitle","setElementContent","content","textContent","updateAttachment","dataKey","_getDelegateConfig","phase","_handlePopperPlacementChange","onFirstUpdate","triggers","eventIn","eventOut","_fixTitle","originalTitleType","dataAttributes","dataAttr","tabClass","token","tClass","state","popper","SELECTOR_TITLE","SELECTOR_CONTENT","Popover","_getContent","method","EVENT_ACTIVATE","EVENT_SCROLL","CLASS_NAME_DROPDOWN_ITEM","SELECTOR_DATA_SPY","SELECTOR_NAV_LIST_GROUP","SELECTOR_NAV_LINKS","SELECTOR_NAV_ITEMS","SELECTOR_LIST_ITEMS","SELECTOR_DROPDOWN","SELECTOR_DROPDOWN_TOGGLE","METHOD_OFFSET","METHOD_POSITION","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targets","targetSelector","targetBCR","height","item","sort","pageYOffset","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","isActiveTarget","queries","link","join","listGroup","navItem","node","spy","CLASS_NAME_DROPDOWN_MENU","SELECTOR_ACTIVE_UL","SELECTOR_DROPDOWN_ACTIVE_CHILD","Tab","listElement","itemSelector","activeElements","active","_transitionComplete","dropdownChild","dropdownElement","dropdown","EVENT_MOUSEOVER","EVENT_MOUSEOUT","EVENT_FOCUSOUT","CLASS_NAME_HIDE","CLASS_NAME_SHOWING","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","_onInteraction","isInteracting"],"mappings":"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"} \ No newline at end of file diff --git a/assets/js/oe-bcl-default.esm.min.js b/assets/js/oe-bcl-default.esm.min.js deleted file mode 100644 index 246b3df8..00000000 --- a/assets/js/oe-bcl-default.esm.min.js +++ /dev/null @@ -1,2 +0,0 @@ -import*as t from"@popperjs/core";const e={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 s=[];let i=t.parentNode;for(;i&&i.nodeType===Node.ELEMENT_NODE&&3!==i.nodeType;)i.matches(e)&&s.push(i),i=i.parentNode;return s},prev(t,e){let s=t.previousElementSibling;for(;s;){if(s.matches(e))return[s];s=s.previousElementSibling}return[]},next(t,e){let s=t.nextElementSibling;for(;s;){if(s.matches(e))return[s];s=s.nextElementSibling}return[]}},s=t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t},i=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let s=t.getAttribute("href");if(!s||!s.includes("#")&&!s.startsWith("."))return null;s.includes("#")&&!s.startsWith("#")&&(s=`#${s.split("#")[1]}`),e=s&&"#"!==s?s.trim():null}return e},n=t=>{const e=i(t);return e&&document.querySelector(e)?e:null},o=t=>{const e=i(t);return e?document.querySelector(e):null},r=t=>{t.dispatchEvent(new Event("transitionend"))},a=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),l=t=>a(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?e.findOne(t):null,c=(t,e,s)=>{Object.keys(s).forEach((i=>{const n=s[i],o=e[i],r=o&&a(o)?"element":null==(l=o)?`${l}`:{}.toString.call(l).match(/\s([a-z]+)/i)[1].toLowerCase();var l;if(!new RegExp(n).test(r))throw new TypeError(`${t.toUpperCase()}: Option "${i}" provided type "${r}" but expected type "${n}".`)}))},h=t=>!(!a(t)||0===t.getClientRects().length)&&"visible"===getComputedStyle(t).getPropertyValue("visibility"),d=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),u=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?u(t.parentNode):null},g=()=>{},m=t=>t.offsetHeight,p=()=>{const{jQuery:t}=window;return t&&!document.body.hasAttribute("data-bs-no-jquery")?t:null},f=[],_=()=>"rtl"===document.documentElement.dir,b=t=>{var e;e=()=>{const e=p();if(e){const s=t.NAME,i=e.fn[s];e.fn[s]=t.jQueryInterface,e.fn[s].Constructor=t,e.fn[s].noConflict=()=>(e.fn[s]=i,t.jQueryInterface)}},"loading"===document.readyState?(f.length||document.addEventListener("DOMContentLoaded",(()=>{f.forEach((t=>t()))})),f.push(e)):e()},v=t=>{"function"==typeof t&&t()},y=(t,e,s=!0)=>{if(!s)return void v(t);const i=(t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:s}=window.getComputedStyle(t);const i=Number.parseFloat(e),n=Number.parseFloat(s);return i||n?(e=e.split(",")[0],s=s.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(s))):0})(e)+5;let n=!1;const o=({target:s})=>{s===e&&(n=!0,e.removeEventListener("transitionend",o),v(t))};e.addEventListener("transitionend",o),setTimeout((()=>{n||r(e)}),i)},E=(t,e,s,i)=>{let n=t.indexOf(e);if(-1===n)return t[!s&&i?t.length-1:0];const o=t.length;return n+=s?1:-1,i&&(n=(n+o)%o),t[Math.max(0,Math.min(n,o-1))]},w=/[^.]*(?=\..*)\.|.*/,A=/\..*/,T=/::\d+$/,C={};let k=1;const L={mouseenter:"mouseover",mouseleave:"mouseout"},D=/^(mouseenter|mouseleave)/i,O=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 I(t,e){return e&&`${e}::${k++}`||t.uidEvent||k++}function N(t){const e=I(t);return t.uidEvent=e,C[e]=C[e]||{},C[e]}function S(t,e,s=null){const i=Object.keys(t);for(let n=0,o=i.length;n<o;n++){const o=t[i[n]];if(o.originalHandler===e&&o.delegationSelector===s)return o}return null}function x(t,e,s){const i="string"==typeof e,n=i?s:e;let o=j(t);return O.has(o)||(o=t),[i,n,o]}function M(t,e,s,i,n){if("string"!=typeof e||!t)return;if(s||(s=i,i=null),D.test(e)){const t=t=>function(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};i?i=t(i):s=t(s)}const[o,r,a]=x(e,s,i),l=N(t),c=l[a]||(l[a]={}),h=S(c,r,o?s:null);if(h)return void(h.oneOff=h.oneOff&&n);const d=I(r,e.replace(w,"")),u=o?function(t,e,s){return function i(n){const o=t.querySelectorAll(e);for(let{target:r}=n;r&&r!==this;r=r.parentNode)for(let a=o.length;a--;)if(o[a]===r)return n.delegateTarget=r,i.oneOff&&H.off(t,n.type,e,s),s.apply(r,[n]);return null}}(t,s,i):function(t,e){return function s(i){return i.delegateTarget=t,s.oneOff&&H.off(t,i.type,e),e.apply(t,[i])}}(t,s);u.delegationSelector=o?s:null,u.originalHandler=r,u.oneOff=n,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function P(t,e,s,i,n){const o=S(e[s],i,n);o&&(t.removeEventListener(s,o,Boolean(n)),delete e[s][o.uidEvent])}function j(t){return t=t.replace(A,""),L[t]||t}const H={on(t,e,s,i){M(t,e,s,i,!1)},one(t,e,s,i){M(t,e,s,i,!0)},off(t,e,s,i){if("string"!=typeof e||!t)return;const[n,o,r]=x(e,s,i),a=r!==e,l=N(t),c=e.startsWith(".");if(void 0!==o){if(!l||!l[r])return;return void P(t,l,r,o,n?s:null)}c&&Object.keys(l).forEach((s=>{!function(t,e,s,i){const n=e[s]||{};Object.keys(n).forEach((o=>{if(o.includes(i)){const i=n[o];P(t,e,s,i.originalHandler,i.delegationSelector)}}))}(t,l,s,e.slice(1))}));const h=l[r]||{};Object.keys(h).forEach((s=>{const i=s.replace(T,"");if(!a||e.includes(i)){const e=h[s];P(t,l,r,e.originalHandler,e.delegationSelector)}}))},trigger(t,e,s){if("string"!=typeof e||!t)return null;const i=p(),n=j(e),o=e!==n,r=O.has(n);let a,l=!0,c=!0,h=!1,d=null;return o&&i&&(a=i.Event(e,s),i(t).trigger(a),l=!a.isPropagationStopped(),c=!a.isImmediatePropagationStopped(),h=a.isDefaultPrevented()),r?(d=document.createEvent("HTMLEvents"),d.initEvent(n,l,!0)):d=new CustomEvent(e,{bubbles:l,cancelable:!0}),void 0!==s&&Object.keys(s).forEach((t=>{Object.defineProperty(d,t,{get:()=>s[t]})})),h&&d.preventDefault(),c&&t.dispatchEvent(d),d.defaultPrevented&&void 0!==a&&a.preventDefault(),d}},$=new Map;var R={set(t,e,s){$.has(t)||$.set(t,new Map);const i=$.get(t);i.has(e)||0===i.size?i.set(e,s):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(i.keys())[0]}.`)},get:(t,e)=>$.has(t)&&$.get(t).get(e)||null,remove(t,e){if(!$.has(t))return;const s=$.get(t);s.delete(e),0===s.size&&$.delete(t)}};class B{constructor(t){(t=l(t))&&(this._element=t,R.set(this._element,this.constructor.DATA_KEY,this))}dispose(){R.remove(this._element,this.constructor.DATA_KEY),H.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach((t=>{this[t]=null}))}_queueCallback(t,e,s=!0){y(t,e,s)}static getInstance(t){return R.get(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.0.2"}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}`}}class W extends B{static get NAME(){return"alert"}close(t){const e=t?this._getRootElement(t):this._element,s=this._triggerCloseEvent(e);null===s||s.defaultPrevented||this._removeElement(e)}_getRootElement(t){return o(t)||t.closest(".alert")}_triggerCloseEvent(t){return H.trigger(t,"close.bs.alert")}_removeElement(t){t.classList.remove("show");const e=t.classList.contains("fade");this._queueCallback((()=>this._destroyElement(t)),t,e)}_destroyElement(t){t.remove(),H.trigger(t,"closed.bs.alert")}static jQueryInterface(t){return this.each((function(){const e=W.getOrCreateInstance(this);"close"===t&&e[t](this)}))}static handleDismiss(t){return function(e){e&&e.preventDefault(),t.close(this)}}}H.on(document,"click.bs.alert.data-api",'[data-bs-dismiss="alert"]',W.handleDismiss(new W)),b(W);class q 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=q.getOrCreateInstance(this);"toggle"===t&&e[t]()}))}}function z(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()}`))}H.on(document,"click.bs.button.data-api",'[data-bs-toggle="button"]',(t=>{t.preventDefault();const e=t.target.closest('[data-bs-toggle="button"]');q.getOrCreateInstance(e).toggle()})),b(q);const U={setDataAttribute(t,e,s){t.setAttribute(`data-bs-${F(e)}`,s)},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((s=>{let i=s.replace(/^bs/,"");i=i.charAt(0).toLowerCase()+i.slice(1,i.length),e[i]=z(t.dataset[s])})),e},getDataAttribute:(t,e)=>z(t.getAttribute(`data-bs-${F(e)}`)),offset(t){const e=t.getBoundingClientRect();return{top:e.top+document.body.scrollTop,left:e.left+document.body.scrollLeft}},position:t=>({top:t.offsetTop,left:t.offsetLeft})},K={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},V={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},Q="next",X="prev",Y="left",G="right",Z={ArrowLeft:G,ArrowRight:Y};class J extends B{constructor(t,s){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(s),this._indicatorsElement=e.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 K}static get NAME(){return"carousel"}next(){this._slide(Q)}nextWhenVisible(){!document.hidden&&h(this._element)&&this.next()}prev(){this._slide(X)}pause(t){t||(this._isPaused=!0),e.findOne(".carousel-item-next, .carousel-item-prev",this._element)&&(r(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=e.findOne(".active.carousel-item",this._element);const s=this._getItemIndex(this._activeElement);if(t>this._items.length-1||t<0)return;if(this._isSliding)return void H.one(this._element,"slid.bs.carousel",(()=>this.to(t)));if(s===t)return this.pause(),void this.cycle();const i=t>s?Q:X;this._slide(i,this._items[t])}_getConfig(t){return t={...K,...U.getDataAttributes(this._element),..."object"==typeof t?t:{}},c("carousel",t,V),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?G:Y)}_addEventListeners(){this._config.keyboard&&H.on(this._element,"keydown.bs.carousel",(t=>this._keydown(t))),"hover"===this._config.pause&&(H.on(this._element,"mouseenter.bs.carousel",(t=>this.pause(t))),H.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?this._pointerEvent||(this.touchStartX=t.touches[0].clientX):this.touchStartX=t.clientX},s=t=>{this.touchDeltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this.touchStartX},i=t=>{!this._pointerEvent||"pen"!==t.pointerType&&"touch"!==t.pointerType||(this.touchDeltaX=t.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))};e.find(".carousel-item img",this._element).forEach((t=>{H.on(t,"dragstart.bs.carousel",(t=>t.preventDefault()))})),this._pointerEvent?(H.on(this._element,"pointerdown.bs.carousel",(e=>t(e))),H.on(this._element,"pointerup.bs.carousel",(t=>i(t))),this._element.classList.add("pointer-event")):(H.on(this._element,"touchstart.bs.carousel",(e=>t(e))),H.on(this._element,"touchmove.bs.carousel",(t=>s(t))),H.on(this._element,"touchend.bs.carousel",(t=>i(t))))}_keydown(t){if(/input|textarea/i.test(t.target.tagName))return;const e=Z[t.key];e&&(t.preventDefault(),this._slide(e))}_getItemIndex(t){return this._items=t&&t.parentNode?e.find(".carousel-item",t.parentNode):[],this._items.indexOf(t)}_getItemByOrder(t,e){const s=t===Q;return E(this._items,e,s,this._config.wrap)}_triggerSlideEvent(t,s){const i=this._getItemIndex(t),n=this._getItemIndex(e.findOne(".active.carousel-item",this._element));return H.trigger(this._element,"slide.bs.carousel",{relatedTarget:t,direction:s,from:n,to:i})}_setActiveIndicatorElement(t){if(this._indicatorsElement){const s=e.findOne(".active",this._indicatorsElement);s.classList.remove("active"),s.removeAttribute("aria-current");const i=e.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("active"),i[e].setAttribute("aria-current","true");break}}}_updateInterval(){const t=this._activeElement||e.findOne(".active.carousel-item",this._element);if(!t)return;const s=Number.parseInt(t.getAttribute("data-bs-interval"),10);s?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,this._config.interval=s):this._config.interval=this._config.defaultInterval||this._config.interval}_slide(t,s){const i=this._directionToOrder(t),n=e.findOne(".active.carousel-item",this._element),o=this._getItemIndex(n),r=s||this._getItemByOrder(i,n),a=this._getItemIndex(r),l=Boolean(this._interval),c=i===Q,h=c?"carousel-item-start":"carousel-item-end",d=c?"carousel-item-next":"carousel-item-prev",u=this._orderToDirection(i);if(r&&r.classList.contains("active"))return void(this._isSliding=!1);if(this._isSliding)return;if(this._triggerSlideEvent(r,u).defaultPrevented)return;if(!n||!r)return;this._isSliding=!0,l&&this.pause(),this._setActiveIndicatorElement(r),this._activeElement=r;const g=()=>{H.trigger(this._element,"slid.bs.carousel",{relatedTarget:r,direction:u,from:o,to:a})};if(this._element.classList.contains("slide")){r.classList.add(d),m(r),n.classList.add(h),r.classList.add(h);const t=()=>{r.classList.remove(h,d),r.classList.add("active"),n.classList.remove("active",d,h),this._isSliding=!1,setTimeout(g,0)};this._queueCallback(t,n,!0)}else n.classList.remove("active"),r.classList.add("active"),this._isSliding=!1,g();l&&this.cycle()}_directionToOrder(t){return[G,Y].includes(t)?_()?t===Y?X:Q:t===Y?Q:X:t}_orderToDirection(t){return[Q,X].includes(t)?_()?t===X?Y:G:t===X?G:Y:t}static carouselInterface(t,e){const s=J.getOrCreateInstance(t,e);let{_config:i}=s;"object"==typeof e&&(i={...i,...e});const n="string"==typeof e?e:i.slide;if("number"==typeof e)s.to(e);else if("string"==typeof n){if(void 0===s[n])throw new TypeError(`No method named "${n}"`);s[n]()}else i.interval&&i.ride&&(s.pause(),s.cycle())}static jQueryInterface(t){return this.each((function(){J.carouselInterface(this,t)}))}static dataApiClickHandler(t){const e=o(this);if(!e||!e.classList.contains("carousel"))return;const s={...U.getDataAttributes(e),...U.getDataAttributes(this)},i=this.getAttribute("data-bs-slide-to");i&&(s.interval=!1),J.carouselInterface(e,s),i&&J.getInstance(e).to(i),t.preventDefault()}}H.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",J.dataApiClickHandler),H.on(window,"load.bs.carousel.data-api",(()=>{const t=e.find('[data-bs-ride="carousel"]');for(let e=0,s=t.length;e<s;e++)J.carouselInterface(t[e],J.getInstance(t[e]))})),b(J);const tt={toggle:!0,parent:""},et={toggle:"boolean",parent:"(string|element)"};class st extends B{constructor(t,s){super(t),this._isTransitioning=!1,this._config=this._getConfig(s),this._triggerArray=e.find(`[data-bs-toggle="collapse"][href="#${this._element.id}"],[data-bs-toggle="collapse"][data-bs-target="#${this._element.id}"]`);const i=e.find('[data-bs-toggle="collapse"]');for(let t=0,s=i.length;t<s;t++){const s=i[t],o=n(s),r=e.find(o).filter((t=>t===this._element));null!==o&&r.length&&(this._selector=o,this._triggerArray.push(s))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}static get Default(){return tt}static get NAME(){return"collapse"}toggle(){this._element.classList.contains("show")?this.hide():this.show()}show(){if(this._isTransitioning||this._element.classList.contains("show"))return;let t,s;this._parent&&(t=e.find(".show, .collapsing",this._parent).filter((t=>"string"==typeof this._config.parent?t.getAttribute("data-bs-parent")===this._config.parent:t.classList.contains("collapse"))),0===t.length&&(t=null));const i=e.findOne(this._selector);if(t){const e=t.find((t=>i!==t));if(s=e?st.getInstance(e):null,s&&s._isTransitioning)return}if(H.trigger(this._element,"show.bs.collapse").defaultPrevented)return;t&&t.forEach((t=>{i!==t&&st.collapseInterface(t,"hide"),s||R.set(t,"bs.collapse",null)}));const n=this._getDimension();this._element.classList.remove("collapse"),this._element.classList.add("collapsing"),this._element.style[n]=0,this._triggerArray.length&&this._triggerArray.forEach((t=>{t.classList.remove("collapsed"),t.setAttribute("aria-expanded",!0)})),this.setTransitioning(!0);const o=`scroll${n[0].toUpperCase()+n.slice(1)}`;this._queueCallback((()=>{this._element.classList.remove("collapsing"),this._element.classList.add("collapse","show"),this._element.style[n]="",this.setTransitioning(!1),H.trigger(this._element,"shown.bs.collapse")}),this._element,!0),this._element.style[n]=`${this._element[o]}px`}hide(){if(this._isTransitioning||!this._element.classList.contains("show"))return;if(H.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const t=this._getDimension();this._element.style[t]=`${this._element.getBoundingClientRect()[t]}px`,m(this._element),this._element.classList.add("collapsing"),this._element.classList.remove("collapse","show");const e=this._triggerArray.length;if(e>0)for(let t=0;t<e;t++){const e=this._triggerArray[t],s=o(e);s&&!s.classList.contains("show")&&(e.classList.add("collapsed"),e.setAttribute("aria-expanded",!1))}this.setTransitioning(!0),this._element.style[t]="",this._queueCallback((()=>{this.setTransitioning(!1),this._element.classList.remove("collapsing"),this._element.classList.add("collapse"),H.trigger(this._element,"hidden.bs.collapse")}),this._element,!0)}setTransitioning(t){this._isTransitioning=t}_getConfig(t){return(t={...tt,...t}).toggle=Boolean(t.toggle),c("collapse",t,et),t}_getDimension(){return this._element.classList.contains("width")?"width":"height"}_getParent(){let{parent:t}=this._config;t=l(t);const s=`[data-bs-toggle="collapse"][data-bs-parent="${t}"]`;return e.find(s,t).forEach((t=>{const e=o(t);this._addAriaAndCollapsedClass(e,[t])})),t}_addAriaAndCollapsedClass(t,e){if(!t||!e.length)return;const s=t.classList.contains("show");e.forEach((t=>{s?t.classList.remove("collapsed"):t.classList.add("collapsed"),t.setAttribute("aria-expanded",s)}))}static collapseInterface(t,e){let s=st.getInstance(t);const i={...tt,...U.getDataAttributes(t),..."object"==typeof e&&e?e:{}};if(!s&&i.toggle&&"string"==typeof e&&/show|hide/.test(e)&&(i.toggle=!1),s||(s=new st(t,i)),"string"==typeof e){if(void 0===s[e])throw new TypeError(`No method named "${e}"`);s[e]()}}static jQueryInterface(t){return this.each((function(){st.collapseInterface(this,t)}))}}H.on(document,"click.bs.collapse.data-api",'[data-bs-toggle="collapse"]',(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();const s=U.getDataAttributes(this),i=n(this);e.find(i).forEach((t=>{const e=st.getInstance(t);let i;e?(null===e._parent&&"string"==typeof s.parent&&(e._config.parent=s.parent,e._parent=e._getParent()),i="toggle"):i=s,st.collapseInterface(t,i)}))})),b(st);const it=new RegExp("ArrowUp|ArrowDown|Escape"),nt=_()?"top-end":"top-start",ot=_()?"top-start":"top-end",rt=_()?"bottom-end":"bottom-start",at=_()?"bottom-start":"bottom-end",lt=_()?"left-start":"right-start",ct=_()?"right-start":"left-start",ht={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},dt={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class ut extends B{constructor(t,e){super(t),this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}static get Default(){return ht}static get DefaultType(){return dt}static get NAME(){return"dropdown"}toggle(){d(this._element)||(this._element.classList.contains("show")?this.hide():this.show())}show(){if(d(this._element)||this._menu.classList.contains("show"))return;const e=ut.getParentFromElement(this._element),s={relatedTarget:this._element};if(!H.trigger(this._element,"show.bs.dropdown",s).defaultPrevented){if(this._inNavbar)U.setDataAttribute(this._menu,"popper","none");else{if(void 0===t)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let s=this._element;"parent"===this._config.reference?s=e:a(this._config.reference)?s=l(this._config.reference):"object"==typeof this._config.reference&&(s=this._config.reference);const i=this._getPopperConfig(),n=i.modifiers.find((t=>"applyStyles"===t.name&&!1===t.enabled));this._popper=t.createPopper(s,this._menu,i),n&&U.setDataAttribute(this._menu,"popper","static")}"ontouchstart"in document.documentElement&&!e.closest(".navbar-nav")&&[].concat(...document.body.children).forEach((t=>H.on(t,"mouseover",g))),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.toggle("show"),this._element.classList.toggle("show"),H.trigger(this._element,"shown.bs.dropdown",s)}}hide(){if(d(this._element)||!this._menu.classList.contains("show"))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()}_addEventListeners(){H.on(this._element,"click.bs.dropdown",(t=>{t.preventDefault(),this.toggle()}))}_completeHide(t){H.trigger(this._element,"hide.bs.dropdown",t).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>H.off(t,"mouseover",g))),this._popper&&this._popper.destroy(),this._menu.classList.remove("show"),this._element.classList.remove("show"),this._element.setAttribute("aria-expanded","false"),U.removeDataAttribute(this._menu,"popper"),H.trigger(this._element,"hidden.bs.dropdown",t))}_getConfig(t){if(t={...this.constructor.Default,...U.getDataAttributes(this._element),...t},c("dropdown",t,this.constructor.DefaultType),"object"==typeof t.reference&&!a(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError(`${"dropdown".toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return t}_getMenuElement(){return e.next(this._element,".dropdown-menu")[0]}_getPlacement(){const t=this._element.parentNode;if(t.classList.contains("dropend"))return lt;if(t.classList.contains("dropstart"))return ct;const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?ot:nt:e?at:rt}_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:s}){const i=e.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(h);i.length&&E(i,s,"ArrowDown"===t,!i.includes(s)).focus()}static dropdownInterface(t,e){const s=ut.getOrCreateInstance(t,e);if("string"==typeof e){if(void 0===s[e])throw new TypeError(`No method named "${e}"`);s[e]()}}static jQueryInterface(t){return this.each((function(){ut.dropdownInterface(this,t)}))}static clearMenus(t){if(t&&(2===t.button||"keyup"===t.type&&"Tab"!==t.key))return;const s=e.find('[data-bs-toggle="dropdown"]');for(let e=0,i=s.length;e<i;e++){const i=ut.getInstance(s[e]);if(!i||!1===i._config.autoClose)continue;if(!i._element.classList.contains("show"))continue;const n={relatedTarget:i._element};if(t){const e=t.composedPath(),s=e.includes(i._menu);if(e.includes(i._element)||"inside"===i._config.autoClose&&!s||"outside"===i._config.autoClose&&s)continue;if(i._menu.contains(t.target)&&("keyup"===t.type&&"Tab"===t.key||/input|select|option|textarea|form/i.test(t.target.tagName)))continue;"click"===t.type&&(n.clickEvent=t)}i._completeHide(n)}}static getParentFromElement(t){return o(t)||t.parentNode}static dataApiKeydownHandler(t){if(/input|textarea/i.test(t.target.tagName)?"Space"===t.key||"Escape"!==t.key&&("ArrowDown"!==t.key&&"ArrowUp"!==t.key||t.target.closest(".dropdown-menu")):!it.test(t.key))return;const s=this.classList.contains("show");if(!s&&"Escape"===t.key)return;if(t.preventDefault(),t.stopPropagation(),d(this))return;const i=()=>this.matches('[data-bs-toggle="dropdown"]')?this:e.prev(this,'[data-bs-toggle="dropdown"]')[0];return"Escape"===t.key?(i().focus(),void ut.clearMenus()):"ArrowUp"===t.key||"ArrowDown"===t.key?(s||i().click(),void ut.getInstance(i())._selectMenuItem(t)):void(s&&"Space"!==t.key||ut.clearMenus())}}H.on(document,"keydown.bs.dropdown.data-api",'[data-bs-toggle="dropdown"]',ut.dataApiKeydownHandler),H.on(document,"keydown.bs.dropdown.data-api",".dropdown-menu",ut.dataApiKeydownHandler),H.on(document,"click.bs.dropdown.data-api",ut.clearMenus),H.on(document,"keyup.bs.dropdown.data-api",ut.clearMenus),H.on(document,"click.bs.dropdown.data-api",'[data-bs-toggle="dropdown"]',(function(t){t.preventDefault(),ut.dropdownInterface(this)})),b(ut);class gt{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(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top","paddingRight",(e=>e+t)),this._setElementAttributes(".sticky-top","marginRight",(e=>e-t))}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(t,e,s){const i=this.getWidth();this._applyManipulationCallback(t,(t=>{if(t!==this._element&&window.innerWidth>t.clientWidth+i)return;this._saveInitialAttribute(t,e);const n=window.getComputedStyle(t)[e];t.style[e]=`${s(Number.parseFloat(n))}px`}))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top","paddingRight"),this._resetElementAttributes(".sticky-top","marginRight")}_saveInitialAttribute(t,e){const s=t.style[e];s&&U.setDataAttribute(t,e,s)}_resetElementAttributes(t,e){this._applyManipulationCallback(t,(t=>{const s=U.getDataAttribute(t,e);void 0===s?t.style.removeProperty(e):(U.removeDataAttribute(t,e),t.style[e]=s)}))}_applyManipulationCallback(t,s){a(t)?s(t):e.find(t,this._element).forEach(s)}isOverflowing(){return this.getWidth()>0}}const mt={isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},pt={isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"};class ft{constructor(t){this._config=this._getConfig(t),this._isAppended=!1,this._element=null}show(t){this._config.isVisible?(this._append(),this._config.isAnimated&&m(this._getElement()),this._getElement().classList.add("show"),this._emulateAnimation((()=>{v(t)}))):v(t)}hide(t){this._config.isVisible?(this._getElement().classList.remove("show"),this._emulateAnimation((()=>{this.dispose(),v(t)}))):v(t)}_getElement(){if(!this._element){const t=document.createElement("div");t.className="modal-backdrop",this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_getConfig(t){return(t={...mt,..."object"==typeof t?t:{}}).rootElement=l(t.rootElement),c("backdrop",t,pt),t}_append(){this._isAppended||(this._config.rootElement.appendChild(this._getElement()),H.on(this._getElement(),"mousedown.bs.backdrop",(()=>{v(this._config.clickCallback)})),this._isAppended=!0)}dispose(){this._isAppended&&(H.off(this._element,"mousedown.bs.backdrop"),this._element.remove(),this._isAppended=!1)}_emulateAnimation(t){y(t,this._getElement(),this._config.isAnimated)}}const _t={backdrop:!0,keyboard:!0,focus:!0},bt={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"};class vt extends B{constructor(t,s){super(t),this._config=this._getConfig(s),this._dialog=e.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new gt}static get Default(){return _t}static get NAME(){return"modal"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||this._isTransitioning||H.trigger(this._element,"show.bs.modal",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add("modal-open"),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),H.on(this._element,"click.dismiss.bs.modal",'[data-bs-dismiss="modal"]',(t=>this.hide(t))),H.on(this._dialog,"mousedown.dismiss.bs.modal",(()=>{H.one(this._element,"mouseup.dismiss.bs.modal",(t=>{t.target===this._element&&(this._ignoreBackdropClick=!0)}))})),this._showBackdrop((()=>this._showElement(t))))}hide(t){if(t&&["A","AREA"].includes(t.target.tagName)&&t.preventDefault(),!this._isShown||this._isTransitioning)return;if(H.trigger(this._element,"hide.bs.modal").defaultPrevented)return;this._isShown=!1;const e=this._isAnimated();e&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),H.off(document,"focusin.bs.modal"),this._element.classList.remove("show"),H.off(this._element,"click.dismiss.bs.modal"),H.off(this._dialog,"mousedown.dismiss.bs.modal"),this._queueCallback((()=>this._hideModal()),this._element,e)}dispose(){[window,this._dialog].forEach((t=>H.off(t,".bs.modal"))),this._backdrop.dispose(),super.dispose(),H.off(document,"focusin.bs.modal")}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new ft({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_getConfig(t){return t={..._t,...U.getDataAttributes(this._element),..."object"==typeof t?t:{}},c("modal",t,bt),t}_showElement(t){const s=this._isAnimated(),i=e.findOne(".modal-body",this._dialog);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(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),s&&m(this._element),this._element.classList.add("show"),this._config.focus&&this._enforceFocus(),this._queueCallback((()=>{this._config.focus&&this._element.focus(),this._isTransitioning=!1,H.trigger(this._element,"shown.bs.modal",{relatedTarget:t})}),this._dialog,s)}_enforceFocus(){H.off(document,"focusin.bs.modal"),H.on(document,"focusin.bs.modal",(t=>{document===t.target||this._element===t.target||this._element.contains(t.target)||this._element.focus()}))}_setEscapeEvent(){this._isShown?H.on(this._element,"keydown.dismiss.bs.modal",(t=>{this._config.keyboard&&"Escape"===t.key?(t.preventDefault(),this.hide()):this._config.keyboard||"Escape"!==t.key||this._triggerBackdropTransition()})):H.off(this._element,"keydown.dismiss.bs.modal")}_setResizeEvent(){this._isShown?H.on(window,"resize.bs.modal",(()=>this._adjustDialog())):H.off(window,"resize.bs.modal")}_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("modal-open"),this._resetAdjustments(),this._scrollBar.reset(),H.trigger(this._element,"hidden.bs.modal")}))}_showBackdrop(t){H.on(this._element,"click.dismiss.bs.modal",(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(H.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const{classList:t,scrollHeight:e,style:s}=this._element,i=e>document.documentElement.clientHeight;!i&&"hidden"===s.overflowY||t.contains("modal-static")||(i||(s.overflowY="hidden"),t.add("modal-static"),this._queueCallback((()=>{t.remove("modal-static"),i||this._queueCallback((()=>{s.overflowY=""}),this._dialog)}),this._dialog),this._element.focus())}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._scrollBar.getWidth(),s=e>0;(!s&&t&&!_()||s&&!t&&_())&&(this._element.style.paddingLeft=`${e}px`),(s&&!t&&!_()||!s&&t&&_())&&(this._element.style.paddingRight=`${e}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const s=vt.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===s[t])throw new TypeError(`No method named "${t}"`);s[t](e)}}))}}H.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(t){const e=o(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),H.one(e,"show.bs.modal",(t=>{t.defaultPrevented||H.one(e,"hidden.bs.modal",(()=>{h(this)&&this.focus()}))})),vt.getOrCreateInstance(e).toggle(this)})),b(vt);const yt={backdrop:!0,keyboard:!0,scroll:!1},Et={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"};class wt extends B{constructor(t,e){super(t),this._config=this._getConfig(e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._addEventListeners()}static get NAME(){return"offcanvas"}static get Default(){return yt}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||H.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||((new gt).hide(),this._enforceFocusOnElement(this._element)),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add("show"),this._queueCallback((()=>{H.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})}),this._element,!0))}hide(){this._isShown&&(H.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||(H.off(document,"focusin.bs.offcanvas"),this._element.blur(),this._isShown=!1,this._element.classList.remove("show"),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 gt).reset(),H.trigger(this._element,"hidden.bs.offcanvas")}),this._element,!0)))}dispose(){this._backdrop.dispose(),super.dispose(),H.off(document,"focusin.bs.offcanvas")}_getConfig(t){return t={...yt,...U.getDataAttributes(this._element),..."object"==typeof t?t:{}},c("offcanvas",t,Et),t}_initializeBackDrop(){return new ft({isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_enforceFocusOnElement(t){H.off(document,"focusin.bs.offcanvas"),H.on(document,"focusin.bs.offcanvas",(e=>{document===e.target||t===e.target||t.contains(e.target)||t.focus()})),t.focus()}_addEventListeners(){H.on(this._element,"click.dismiss.bs.offcanvas",'[data-bs-dismiss="offcanvas"]',(()=>this.hide())),H.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=wt.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)}}))}}H.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(t){const s=o(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),d(this))return;H.one(s,"hidden.bs.offcanvas",(()=>{h(this)&&this.focus()}));const i=e.findOne(".offcanvas.show");i&&i!==s&&wt.getInstance(i).hide(),wt.getOrCreateInstance(s).toggle(this)})),H.on(window,"load.bs.offcanvas.data-api",(()=>e.find(".offcanvas.show").forEach((t=>wt.getOrCreateInstance(t).show())))),b(wt);const At=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Tt=/^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i,Ct=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,kt=(t,e)=>{const s=t.nodeName.toLowerCase();if(e.includes(s))return!At.has(s)||Boolean(Tt.test(t.nodeValue)||Ct.test(t.nodeValue));const i=e.filter((t=>t instanceof RegExp));for(let t=0,e=i.length;t<e;t++)if(i[t].test(s))return!0;return!1};function Lt(t,e,s){if(!t.length)return t;if(s&&"function"==typeof s)return s(t);const i=(new window.DOMParser).parseFromString(t,"text/html"),n=Object.keys(e),o=[].concat(...i.body.querySelectorAll("*"));for(let t=0,s=o.length;t<s;t++){const s=o[t],i=s.nodeName.toLowerCase();if(!n.includes(i)){s.remove();continue}const r=[].concat(...s.attributes),a=[].concat(e["*"]||[],e[i]||[]);r.forEach((t=>{kt(t,a)||s.removeAttribute(t.nodeName)}))}return i.body.innerHTML}const Dt=new RegExp("(^|\\s)bs-tooltip\\S+","g"),Ot=new Set(["sanitize","allowList","sanitizeFn"]),It={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)"},Nt={AUTO:"auto",TOP:"top",RIGHT:_()?"left":"right",BOTTOM:"bottom",LEFT:_()?"right":"left"},St={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},xt={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"};class Mt extends B{constructor(e,s){if(void 0===t)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(s),this.tip=null,this._setListeners()}static get Default(){return St}static get NAME(){return"tooltip"}static get Event(){return xt}static get DefaultType(){return It}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("show"))return void this._leave(null,this);this._enter(null,this)}}dispose(){clearTimeout(this._timeout),H.off(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this.tip&&this.tip.remove(),this._popper&&this._popper.destroy(),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 e=H.trigger(this._element,this.constructor.Event.SHOW),i=u(this._element),n=null===i?this._element.ownerDocument.documentElement.contains(this._element):i.contains(this._element);if(e.defaultPrevented||!n)return;const o=this.getTipElement(),r=s(this.constructor.NAME);o.setAttribute("id",r),this._element.setAttribute("aria-describedby",r),this.setContent(),this._config.animation&&o.classList.add("fade");const a="function"==typeof this._config.placement?this._config.placement.call(this,o,this._element):this._config.placement,l=this._getAttachment(a);this._addAttachmentClass(l);const{container:c}=this._config;R.set(o,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(c.appendChild(o),H.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=t.createPopper(this._element,o,this._getPopperConfig(l)),o.classList.add("show");const h="function"==typeof this._config.customClass?this._config.customClass():this._config.customClass;h&&o.classList.add(...h.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>{H.on(t,"mouseover",g)}));const d=this.tip.classList.contains("fade");this._queueCallback((()=>{const t=this._hoverState;this._hoverState=null,H.trigger(this._element,this.constructor.Event.SHOWN),"out"===t&&this._leave(null,this)}),this.tip,d)}hide(){if(!this._popper)return;const t=this.getTipElement();if(H.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;t.classList.remove("show"),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>H.off(t,"mouseover",g))),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1;const e=this.tip.classList.contains("fade");this._queueCallback((()=>{this._isWithActiveTrigger()||("show"!==this._hoverState&&t.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),H.trigger(this._element,this.constructor.Event.HIDDEN),this._popper&&(this._popper.destroy(),this._popper=null))}),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");return t.innerHTML=this._config.template,this.tip=t.children[0],this.tip}setContent(){const t=this.getTipElement();this.setElementContent(e.findOne(".tooltip-inner",t),this.getTitle()),t.classList.remove("fade","show")}setElementContent(t,e){if(null!==t)return a(e)?(e=l(e),void(this._config.html?e.parentNode!==t&&(t.innerHTML="",t.appendChild(e)):t.textContent=e.textContent)):void(this._config.html?(this._config.sanitize&&(e=Lt(e,this._config.allowList,this._config.sanitizeFn)),t.innerHTML=e):t.textContent=e)}getTitle(){let t=this._element.getAttribute("data-bs-original-title");return t||(t="function"==typeof this._config.title?this._config.title.call(this._element):this._config.title),t}updateAttachment(t){return"right"===t?"end":"left"===t?"start":t}_initializeOnDelegatedTarget(t,e){const s=this.constructor.DATA_KEY;return(e=e||R.get(t.delegateTarget,s))||(e=new this.constructor(t.delegateTarget,this._getDelegateConfig()),R.set(t.delegateTarget,s,e)),e}_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(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(`bs-tooltip-${this.updateAttachment(t)}`)}_getAttachment(t){return Nt[t.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach((t=>{if("click"===t)H.on(this._element,this.constructor.Event.CLICK,this._config.selector,(t=>this.toggle(t)));else if("manual"!==t){const e="hover"===t?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,s="hover"===t?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;H.on(this._element,e,this._config.selector,(t=>this._enter(t))),H.on(this._element,s,this._config.selector,(t=>this._leave(t)))}})),this._hideModalHandler=()=>{this._element&&this.hide()},H.on(this._element.closest(".modal"),"hide.bs.modal",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?"focus":"hover"]=!0),e.getTipElement().classList.contains("show")||"show"===e._hoverState?e._hoverState="show":(clearTimeout(e._timeout),e._hoverState="show",e._config.delay&&e._config.delay.show?e._timeout=setTimeout((()=>{"show"===e._hoverState&&e.show()}),e._config.delay.show):e.show())}_leave(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusout"===t.type?"focus":"hover"]=e._element.contains(t.relatedTarget)),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState="out",e._config.delay&&e._config.delay.hide?e._timeout=setTimeout((()=>{"out"===e._hoverState&&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=>{Ot.has(t)&&delete e[t]})),(t={...this.constructor.Default,...e,..."object"==typeof t&&t?t:{}}).container=!1===t.container?document.body:l(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()),c("tooltip",t,this.constructor.DefaultType),t.sanitize&&(t.template=Lt(t.template,t.allowList,t.sanitizeFn)),t}_getDelegateConfig(){const t={};if(this._config)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=t.getAttribute("class").match(Dt);null!==e&&e.length>0&&e.map((t=>t.trim())).forEach((e=>t.classList.remove(e)))}_handlePopperPlacementChange(t){const{state:e}=t;e&&(this.tip=e.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(e.placement)))}static jQueryInterface(t){return this.each((function(){const e=Mt.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}b(Mt);const Pt=new RegExp("(^|\\s)bs-popover\\S+","g"),jt={...Mt.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>'},Ht={...Mt.DefaultType,content:"(string|element|function)"},$t={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 Rt extends Mt{static get Default(){return jt}static get NAME(){return"popover"}static get Event(){return $t}static get DefaultType(){return Ht}isWithContent(){return this.getTitle()||this._getContent()}getTipElement(){return this.tip||(this.tip=super.getTipElement(),this.getTitle()||e.findOne(".popover-header",this.tip).remove(),this._getContent()||e.findOne(".popover-body",this.tip).remove()),this.tip}setContent(){const t=this.getTipElement();this.setElementContent(e.findOne(".popover-header",t),this.getTitle());let s=this._getContent();"function"==typeof s&&(s=s.call(this._element)),this.setElementContent(e.findOne(".popover-body",t),s),t.classList.remove("fade","show")}_addAttachmentClass(t){this.getTipElement().classList.add(`bs-popover-${this.updateAttachment(t)}`)}_getContent(){return this._element.getAttribute("data-bs-content")||this._config.content}_cleanTipClass(){const t=this.getTipElement(),e=t.getAttribute("class").match(Pt);null!==e&&e.length>0&&e.map((t=>t.trim())).forEach((e=>t.classList.remove(e)))}static jQueryInterface(t){return this.each((function(){const e=Rt.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}b(Rt);const Bt={offset:10,method:"auto",target:""},Wt={offset:"number",method:"string",target:"(string|element)"};class qt extends B{constructor(t,e){super(t),this._scrollElement="BODY"===this._element.tagName?window:this._element,this._config=this._getConfig(e),this._selector=`${this._config.target} .nav-link, ${this._config.target} .list-group-item, ${this._config.target} .dropdown-item`,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,H.on(this._scrollElement,"scroll.bs.scrollspy",(()=>this._process())),this.refresh(),this._process()}static get Default(){return Bt}static get NAME(){return"scrollspy"}refresh(){const t=this._scrollElement===this._scrollElement.window?"offset":"position",s="auto"===this._config.method?t:this._config.method,i="position"===s?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),e.find(this._selector).map((t=>{const o=n(t),r=o?e.findOne(o):null;if(r){const t=r.getBoundingClientRect();if(t.width||t.height)return[U[s](r).top+i,o]}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(){H.off(this._scrollElement,".bs.scrollspy"),super.dispose()}_getConfig(t){if("string"!=typeof(t={...Bt,...U.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}}).target&&a(t.target)){let{id:e}=t.target;e||(e=s("scrollspy"),t.target.id=e),t.target=`#${e}`}return c("scrollspy",t,Wt),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(),s=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=s){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 s=this._selector.split(",").map((e=>`${e}[data-bs-target="${t}"],${e}[href="${t}"]`)),i=e.findOne(s.join(","));i.classList.contains("dropdown-item")?(e.findOne(".dropdown-toggle",i.closest(".dropdown")).classList.add("active"),i.classList.add("active")):(i.classList.add("active"),e.parents(i,".nav, .list-group").forEach((t=>{e.prev(t,".nav-link, .list-group-item").forEach((t=>t.classList.add("active"))),e.prev(t,".nav-item").forEach((t=>{e.children(t,".nav-link").forEach((t=>t.classList.add("active")))}))}))),H.trigger(this._scrollElement,"activate.bs.scrollspy",{relatedTarget:t})}_clear(){e.find(this._selector).filter((t=>t.classList.contains("active"))).forEach((t=>t.classList.remove("active")))}static jQueryInterface(t){return this.each((function(){const e=qt.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}H.on(window,"load.bs.scrollspy.data-api",(()=>{e.find('[data-bs-spy="scroll"]').forEach((t=>new qt(t)))})),b(qt);class zt extends B{static get NAME(){return"tab"}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains("active"))return;let t;const s=o(this._element),i=this._element.closest(".nav, .list-group");if(i){const s="UL"===i.nodeName||"OL"===i.nodeName?":scope > li > .active":".active";t=e.find(s,i),t=t[t.length-1]}const n=t?H.trigger(t,"hide.bs.tab",{relatedTarget:this._element}):null;if(H.trigger(this._element,"show.bs.tab",{relatedTarget:t}).defaultPrevented||null!==n&&n.defaultPrevented)return;this._activate(this._element,i);const r=()=>{H.trigger(t,"hidden.bs.tab",{relatedTarget:this._element}),H.trigger(this._element,"shown.bs.tab",{relatedTarget:t})};s?this._activate(s,s.parentNode,r):r()}_activate(t,s,i){const n=(!s||"UL"!==s.nodeName&&"OL"!==s.nodeName?e.children(s,".active"):e.find(":scope > li > .active",s))[0],o=i&&n&&n.classList.contains("fade"),r=()=>this._transitionComplete(t,n,i);n&&o?(n.classList.remove("show"),this._queueCallback(r,t,!0)):r()}_transitionComplete(t,s,i){if(s){s.classList.remove("active");const t=e.findOne(":scope > .dropdown-menu .active",s.parentNode);t&&t.classList.remove("active"),"tab"===s.getAttribute("role")&&s.setAttribute("aria-selected",!1)}t.classList.add("active"),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),m(t),t.classList.contains("fade")&&t.classList.add("show");let n=t.parentNode;if(n&&"LI"===n.nodeName&&(n=n.parentNode),n&&n.classList.contains("dropdown-menu")){const s=t.closest(".dropdown");s&&e.find(".dropdown-toggle",s).forEach((t=>t.classList.add("active"))),t.setAttribute("aria-expanded",!0)}i&&i()}static jQueryInterface(t){return this.each((function(){const e=zt.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}H.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(),d(this)||zt.getOrCreateInstance(this).show()})),b(zt);const Ft={animation:"boolean",autohide:"boolean",delay:"number"},Ut={animation:!0,autohide:!0,delay:5e3};class Kt 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 Ft}static get Default(){return Ut}static get NAME(){return"toast"}show(){H.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove("hide"),m(this._element),this._element.classList.add("showing"),this._queueCallback((()=>{this._element.classList.remove("showing"),this._element.classList.add("show"),H.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()}),this._element,this._config.animation))}hide(){this._element.classList.contains("show")&&(H.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.remove("show"),this._queueCallback((()=>{this._element.classList.add("hide"),H.trigger(this._element,"hidden.bs.toast")}),this._element,this._config.animation)))}dispose(){this._clearTimeout(),this._element.classList.contains("show")&&this._element.classList.remove("show"),super.dispose()}_getConfig(t){return t={...Ut,...U.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}},c("toast",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 s=t.relatedTarget;this._element===s||this._element.contains(s)||this._maybeScheduleHide()}_setListeners(){H.on(this._element,"click.dismiss.bs.toast",'[data-bs-dismiss="toast"]',(()=>this.hide())),H.on(this._element,"mouseover.bs.toast",(t=>this._onInteraction(t,!0))),H.on(this._element,"mouseout.bs.toast",(t=>this._onInteraction(t,!1))),H.on(this._element,"focusin.bs.toast",(t=>this._onInteraction(t,!0))),H.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=Kt.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}b(Kt);export{W as Alert,q as Button,J as Carousel,st as Collapse,ut as Dropdown,vt as Modal,wt as Offcanvas,Rt as Popover,qt as ScrollSpy,zt as Tab,Kt as Toast,Mt as Tooltip}; -//# sourceMappingURL=oe-bcl-default.esm.min.js.map diff --git a/assets/js/oe-bcl-default.esm.min.js.map b/assets/js/oe-bcl-default.esm.min.js.map deleted file mode 100644 index cd6edf42..00000000 --- a/assets/js/oe-bcl-default.esm.min.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"oe-bcl-default.esm.min.js","sources":["../../../../bootstrap/js/src/dom/selector-engine.js","../../../../bootstrap/js/src/util/index.js","../../../../bootstrap/js/src/dom/event-handler.js","../../../../bootstrap/js/src/dom/data.js","../../../../bootstrap/js/src/base-component.js","../../../../bootstrap/js/src/alert.js","../../../../bootstrap/js/src/button.js","../../../../bootstrap/js/src/dom/manipulator.js","../../../../bootstrap/js/src/carousel.js","../../../../bootstrap/js/src/collapse.js","../../../../bootstrap/js/src/dropdown.js","../../../../bootstrap/js/src/util/scrollbar.js","../../../../bootstrap/js/src/util/backdrop.js","../../../../bootstrap/js/src/modal.js","../../../../bootstrap/js/src/offcanvas.js","../../../../bootstrap/js/src/util/sanitizer.js","../../../../bootstrap/js/src/tooltip.js","../../../../bootstrap/js/src/popover.js","../../../../bootstrap/js/src/scrollspy.js","../../../../bootstrap/js/src/tab.js","../../../../bootstrap/js/src/toast.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NODE_TEXT = 3\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children)\n .filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n\n let ancestor = element.parentNode\n\n while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {\n if (ancestor.matches(selector)) {\n parents.push(ancestor)\n }\n\n ancestor = ancestor.parentNode\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n }\n}\n\nexport default SelectorEngine\n","import SelectorEngine from '../dom/selector-engine'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = obj => {\n if (obj === null || obj === undefined) {\n return `${obj}`\n }\n\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return SelectorEngine.findOne(obj)\n }\n\n return null\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n return getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\nconst reflow = element => element.offsetHeight\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n DOMContentLoadedCallbacks.forEach(callback => callback())\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element depending on the direction and if cycle is allowed\n if (index === -1) {\n return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]\n }\n\n const listLength = list.length\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n getNextActiveElement,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute,\n executeAfterTransition\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\nconst customEventsRegex = /^(mouseenter|mouseleave)/i\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * ------------------------------------------------------------------------\n * Private methods\n * ------------------------------------------------------------------------\n */\n\nfunction getUidEvent(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getEvent(element) {\n const uid = getUidEvent(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n event.delegateTarget = element\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (let i = domElements.length; i--;) {\n if (domElements[i] === target) {\n event.delegateTarget = target\n\n if (handler.oneOff) {\n // eslint-disable-next-line unicorn/consistent-destructuring\n EventHandler.off(element, event.type, selector, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n\n // To please ESLint\n return null\n }\n}\n\nfunction findHandler(events, handler, delegationSelector = null) {\n const uidEventList = Object.keys(events)\n\n for (let i = 0, len = uidEventList.length; i < len; i++) {\n const event = events[uidEventList[i]]\n\n if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {\n return event\n }\n }\n\n return null\n}\n\nfunction normalizeParams(originalTypeEvent, handler, delegationFn) {\n const delegation = typeof handler === 'string'\n const originalHandler = delegation ? delegationFn : handler\n\n let typeEvent = getTypeEvent(originalTypeEvent)\n const isNative = nativeEvents.has(typeEvent)\n\n if (!isNative) {\n typeEvent = originalTypeEvent\n }\n\n return [delegation, originalHandler, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n if (!handler) {\n handler = delegationFn\n delegationFn = null\n }\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (customEventsRegex.test(originalTypeEvent)) {\n const wrapFn = fn => {\n return function (event) {\n if (!event.relatedTarget || (event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget))) {\n return fn.call(this, event)\n }\n }\n }\n\n if (delegationFn) {\n delegationFn = wrapFn(delegationFn)\n } else {\n handler = wrapFn(handler)\n }\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const events = getEvent(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null)\n\n if (previousFn) {\n previousFn.oneOff = previousFn.oneOff && oneOff\n\n return\n }\n\n const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = delegation ?\n bootstrapDelegationHandler(element, handler, delegationFn) :\n bootstrapHandler(element, handler)\n\n fn.delegationSelector = delegation ? handler : null\n fn.originalHandler = originalHandler\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, delegation)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n Object.keys(storeElementEvent).forEach(handlerKey => {\n if (handlerKey.includes(namespace)) {\n const event = storeElementEvent[handlerKey]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n}\n\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '')\n return customEvents[event] || event\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, false)\n },\n\n one(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFn) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getEvent(element)\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof originalHandler !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!events || !events[typeEvent]) {\n return\n }\n\n removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null)\n return\n }\n\n if (isNamespace) {\n Object.keys(events).forEach(elementEvent => {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n })\n }\n\n const storeElementEvent = events[typeEvent] || {}\n Object.keys(storeElementEvent).forEach(keyHandlers => {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n const event = storeElementEvent[keyHandlers]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = getTypeEvent(event)\n const inNamespace = event !== typeEvent\n const isNative = nativeEvents.has(typeEvent)\n\n let jQueryEvent\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n let evt = null\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n if (isNative) {\n evt = document.createEvent('HTMLEvents')\n evt.initEvent(typeEvent, bubbles, true)\n } else {\n evt = new CustomEvent(event, {\n bubbles,\n cancelable: true\n })\n }\n\n // merge custom information in our event\n if (typeof args !== 'undefined') {\n Object.keys(args).forEach(key => {\n Object.defineProperty(evt, key, {\n get() {\n return args[key]\n }\n })\n })\n }\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst elementMap = new Map()\n\nexport default {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map())\n }\n\n const instanceMap = elementMap.get(element)\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`)\n return\n }\n\n instanceMap.set(key, instance)\n },\n\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null\n }\n\n return null\n },\n\n remove(element, key) {\n if (!elementMap.has(element)) {\n return\n }\n\n const instanceMap = elementMap.get(element)\n\n instanceMap.delete(key)\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element)\n }\n }\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\nimport {\n executeAfterTransition,\n getElement\n} from './util/index'\nimport EventHandler from './dom/event-handler'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst VERSION = '5.0.2'\n\nclass BaseComponent {\n constructor(element) {\n element = getElement(element)\n\n if (!element) {\n return\n }\n\n this._element = element\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n Object.getOwnPropertyNames(this).forEach(propertyName => {\n this[propertyName] = null\n })\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated)\n }\n\n /** Static */\n\n static getInstance(element) {\n return Data.get(element, this.DATA_KEY)\n }\n\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DISMISS = '[data-bs-dismiss=\"alert\"]'\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_ALERT = 'alert'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n close(element) {\n const rootElement = element ? this._getRootElement(element) : this._element\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent === null || customEvent.defaultPrevented) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n // Private\n\n _getRootElement(element) {\n return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`)\n }\n\n _triggerCloseEvent(element) {\n return EventHandler.trigger(element, EVENT_CLOSE)\n }\n\n _removeElement(element) {\n element.classList.remove(CLASS_NAME_SHOW)\n\n const isAnimated = element.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(() => this._destroyElement(element), element, isAnimated)\n }\n\n _destroyElement(element) {\n element.remove()\n\n EventHandler.trigger(element, EVENT_CLOSED)\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this)\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert.handleDismiss(new Alert()))\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Alert to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this)\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n const data = Button.getOrCreateInstance(button)\n\n data.toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Button to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(val) {\n if (val === 'true') {\n return true\n }\n\n if (val === 'false') {\n return false\n }\n\n if (val === Number(val).toString()) {\n return Number(val)\n }\n\n if (val === '' || val === 'null') {\n return null\n }\n\n return val\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n\n Object.keys(element.dataset)\n .filter(key => key.startsWith('bs'))\n .forEach(key => {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n })\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n },\n\n offset(element) {\n const rect = element.getBoundingClientRect()\n\n return {\n top: rect.top + document.body.scrollTop,\n left: rect.left + document.body.scrollLeft\n }\n },\n\n position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n }\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n getNextActiveElement,\n reflow,\n triggerTransitionEnd,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n slide: false,\n pause: 'hover',\n wrap: true,\n touch: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)',\n keyboard: 'boolean',\n slide: '(boolean|string)',\n pause: '(string|boolean)',\n wrap: 'boolean',\n touch: 'boolean'\n}\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY]: DIRECTION_LEFT\n}\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_INDICATOR = '[data-bs-target]'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n next() {\n this._slide(ORDER_NEXT)\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n this._slide(ORDER_PREV)\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) {\n triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config && this._config.interval && !this._isPaused) {\n this._updateInterval()\n\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const order = index > activeIndex ?\n ORDER_NEXT :\n ORDER_PREV\n\n this._slide(order, this._items[index])\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n this.touchDeltaX = 0\n\n if (!direction) {\n return\n }\n\n this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT)\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event))\n EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event))\n }\n\n if (this._config.touch && this._touchSupported) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n const start = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchStartX = event.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.touches[0].clientX\n }\n }\n\n const move = event => {\n // ensure swiping with one touch and not pinching\n this.touchDeltaX = event.touches && event.touches.length > 1 ?\n 0 :\n event.touches[0].clientX - this.touchStartX\n }\n\n const end = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {\n EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault())\n })\n\n if (this._pointerEvent) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n const direction = KEY_TO_DIRECTION[event.key]\n if (direction) {\n event.preventDefault()\n this._slide(direction)\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode ?\n SelectorEngine.find(SELECTOR_ITEM, element.parentNode) :\n []\n\n return this._items.indexOf(element)\n }\n\n _getItemByOrder(order, activeElement) {\n const isNext = order === ORDER_NEXT\n return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap)\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element))\n\n return EventHandler.trigger(this._element, EVENT_SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement)\n\n for (let i = 0; i < indicators.length; i++) {\n if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {\n indicators[i].classList.add(CLASS_NAME_ACTIVE)\n indicators[i].setAttribute('aria-current', 'true')\n break\n }\n }\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n if (elementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = elementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n }\n\n _slide(directionOrOrder, element) {\n const order = this._directionToOrder(directionOrOrder)\n const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || this._getItemByOrder(order, activeElement)\n\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n const isNext = order === ORDER_NEXT\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n const eventDirectionName = this._orderToDirection(order)\n\n if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {\n this._isSliding = false\n return\n }\n\n if (this._isSliding) {\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n this._activeElement = nextElement\n\n const triggerSlidEvent = () => {\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }\n\n if (this._element.classList.contains(CLASS_NAME_SLIDE)) {\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n setTimeout(triggerSlidEvent, 0)\n }\n\n this._queueCallback(completeCallBack, activeElement, true)\n } else {\n activeElement.classList.remove(CLASS_NAME_ACTIVE)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n this._isSliding = false\n triggerSlidEvent()\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _directionToOrder(direction) {\n if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) {\n return direction\n }\n\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (![ORDER_NEXT, ORDER_PREV].includes(order)) {\n return order\n }\n\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n\n static carouselInterface(element, config) {\n const data = Carousel.getOrCreateInstance(element, config)\n\n let { _config } = data\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Carousel.carouselInterface(this, config)\n })\n }\n\n static dataApiClickHandler(event) {\n const target = getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel.carouselInterface(target, config)\n\n if (slideIndex) {\n Carousel.getInstance(target).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler)\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (let i = 0, len = carousels.length; i < len; i++) {\n Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i]))\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Carousel to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElement,\n getSelectorFromElement,\n getElementFromSelector,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n toggle: true,\n parent: ''\n}\n\nconst DefaultType = {\n toggle: 'boolean',\n parent: '(string|element)'\n}\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.show, .collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._isTransitioning = false\n this._config = this._getConfig(config)\n this._triggerArray = SelectorEngine.find(\n `${SELECTOR_DATA_TOGGLE}[href=\"#${this._element.id}\"],` +\n `${SELECTOR_DATA_TOGGLE}[data-bs-target=\"#${this._element.id}\"]`\n )\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElem => foundElem === this._element)\n\n if (selector !== null && filterElement.length) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent)\n .filter(elem => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-bs-parent') === this._config.parent\n }\n\n return elem.classList.contains(CLASS_NAME_COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n const container = SelectorEngine.findOne(this._selector)\n if (actives) {\n const tempActiveData = actives.find(elem => container !== elem)\n activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null\n\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n if (actives) {\n actives.forEach(elemActive => {\n if (container !== elemActive) {\n Collapse.collapseInterface(elemActive, 'hide')\n }\n\n if (!activesData) {\n Data.set(elemActive, DATA_KEY, null)\n }\n })\n }\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n this._triggerArray.forEach(element => {\n element.classList.remove(CLASS_NAME_COLLAPSED)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n\n this._queueCallback(complete, this._element, true)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const elem = getElementFromSelector(trigger)\n\n if (elem && !elem.classList.contains(CLASS_NAME_SHOW)) {\n trigger.classList.add(CLASS_NAME_COLLAPSED)\n trigger.setAttribute('aria-expanded', false)\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n\n this._queueCallback(complete, this._element, true)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT\n }\n\n _getParent() {\n let { parent } = this._config\n\n parent = getElement(parent)\n\n const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent=\"${parent}\"]`\n\n SelectorEngine.find(selector, parent)\n .forEach(element => {\n const selected = getElementFromSelector(element)\n\n this._addAriaAndCollapsedClass(\n selected,\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (!element || !triggerArray.length) {\n return\n }\n\n const isOpen = element.classList.contains(CLASS_NAME_SHOW)\n\n triggerArray.forEach(elem => {\n if (isOpen) {\n elem.classList.remove(CLASS_NAME_COLLAPSED)\n } else {\n elem.classList.add(CLASS_NAME_COLLAPSED)\n }\n\n elem.setAttribute('aria-expanded', isOpen)\n })\n }\n\n // Static\n\n static collapseInterface(element, config) {\n let data = Collapse.getInstance(element)\n const _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Collapse.collapseInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n const triggerData = Manipulator.getDataAttributes(this)\n const selector = getSelectorFromElement(this)\n const selectorElements = SelectorEngine.find(selector)\n\n selectorElements.forEach(element => {\n const data = Collapse.getInstance(element)\n let config\n if (data) {\n // update parent attribute\n if (data._parent === null && typeof triggerData.parent === 'string') {\n data._config.parent = triggerData.parent\n data._parent = data._getParent()\n }\n\n config = 'toggle'\n } else {\n config = triggerData\n }\n\n Collapse.collapseInterface(element, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Collapse to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Collapse)\n\nexport default Collapse\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n getElement,\n getElementFromSelector,\n isDisabled,\n isElement,\n isVisible,\n isRTL,\n noop,\n getNextActiveElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst SPACE_KEY = 'Space'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY}`)\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_NAVBAR = 'navbar'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]'\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'\n\nconst Default = {\n offset: [0, 2],\n boundary: 'clippingParents',\n reference: 'toggle',\n display: 'dynamic',\n popperConfig: null,\n autoClose: true\n}\n\nconst DefaultType = {\n offset: '(array|string|function)',\n boundary: '(string|element)',\n reference: '(string|element|object)',\n display: 'string',\n popperConfig: '(null|object|function)',\n autoClose: '(boolean|string)'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (isDisabled(this._element)) {\n return\n }\n\n const isActive = this._element.classList.contains(CLASS_NAME_SHOW)\n\n if (isActive) {\n this.hide()\n return\n }\n\n this.show()\n }\n\n show() {\n if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this._element)\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n // Totally disable Popper for Dropdowns in Navbar\n if (this._inNavbar) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'none')\n } else {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference)\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false)\n\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n\n if (isDisplayStatic) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static')\n }\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n !parent.closest(SELECTOR_NAVBAR_NAV)) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.on(elem, 'mouseover', noop))\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.toggle(CLASS_NAME_SHOW)\n this._element.classList.toggle(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n this._completeHide(relatedTarget)\n }\n\n dispose() {\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK, event => {\n event.preventDefault()\n this.toggle()\n })\n }\n\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.off(elem, 'mouseover', noop))\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.remove(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._element.setAttribute('aria-expanded', 'false')\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _getMenuElement() {\n return SelectorEngine.next(this._element, SELECTOR_MENU)[0]\n }\n\n _getPlacement() {\n const parentDropdown = this._element.parentNode\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display\n if (this._config.display === 'static') {\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _selectMenuItem({ key, target }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible)\n\n if (!items.length) {\n return\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus()\n }\n\n // Static\n\n static dropdownInterface(element, config) {\n const data = Dropdown.getOrCreateInstance(element, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Dropdown.dropdownInterface(this, config)\n })\n }\n\n static clearMenus(event) {\n if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {\n return\n }\n\n const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const context = Dropdown.getInstance(toggles[i])\n if (!context || context._config.autoClose === false) {\n continue\n }\n\n if (!context._element.classList.contains(CLASS_NAME_SHOW)) {\n continue\n }\n\n const relatedTarget = {\n relatedTarget: context._element\n }\n\n if (event) {\n const composedPath = event.composedPath()\n const isMenuTarget = composedPath.includes(context._menu)\n if (\n composedPath.includes(context._element) ||\n (context._config.autoClose === 'inside' && !isMenuTarget) ||\n (context._config.autoClose === 'outside' && isMenuTarget)\n ) {\n continue\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue\n }\n\n if (event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n }\n\n context._completeHide(relatedTarget)\n }\n }\n\n static getParentFromElement(element) {\n return getElementFromSelector(element) || element.parentNode\n }\n\n static dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName) ?\n event.key === SPACE_KEY || (event.key !== ESCAPE_KEY &&\n ((event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY) ||\n event.target.closest(SELECTOR_MENU))) :\n !REGEXP_KEYDOWN.test(event.key)) {\n return\n }\n\n const isActive = this.classList.contains(CLASS_NAME_SHOW)\n\n if (!isActive && event.key === ESCAPE_KEY) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (isDisabled(this)) {\n return\n }\n\n const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n\n if (event.key === ESCAPE_KEY) {\n getToggleButton().focus()\n Dropdown.clearMenus()\n return\n }\n\n if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) {\n if (!isActive) {\n getToggleButton().click()\n }\n\n Dropdown.getInstance(getToggleButton())._selectMenuItem(event)\n return\n }\n\n if (!isActive || event.key === SPACE_KEY) {\n Dropdown.clearMenus()\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n Dropdown.dropdownInterface(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Dropdown to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport SelectorEngine from '../dom/selector-engine'\nimport Manipulator from '../dom/manipulator'\nimport { isElement } from './index'\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body\n }\n\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth\n return Math.abs(window.innerWidth - documentWidth)\n }\n\n hide() {\n const width = this.getWidth()\n this._disableOverFlow()\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width)\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width)\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width)\n }\n\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow')\n this._element.style.overflow = 'hidden'\n }\n\n _setElementAttributes(selector, styleProp, callback) {\n const scrollbarWidth = this.getWidth()\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return\n }\n\n this._saveInitialAttribute(element, styleProp)\n const calculatedValue = window.getComputedStyle(element)[styleProp]\n element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n reset() {\n this._resetElementAttributes(this._element, 'overflow')\n this._resetElementAttributes(this._element, 'paddingRight')\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight')\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight')\n }\n\n _saveInitialAttribute(element, styleProp) {\n const actualValue = element.style[styleProp]\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProp, actualValue)\n }\n }\n\n _resetElementAttributes(selector, styleProp) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProp)\n if (typeof value === 'undefined') {\n element.style.removeProperty(styleProp)\n } else {\n Manipulator.removeDataAttribute(element, styleProp)\n element.style[styleProp] = value\n }\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector)\n } else {\n SelectorEngine.find(selector, this._element).forEach(callBack)\n }\n }\n\n isOverflowing() {\n return this.getWidth() > 0\n }\n}\n\nexport default ScrollBarHelper\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { execute, executeAfterTransition, getElement, reflow, typeCheckConfig } from './index'\n\nconst Default = {\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n isAnimated: false,\n rootElement: 'body', // give the choice to place backdrop under different elements\n clickCallback: null\n}\n\nconst DefaultType = {\n isVisible: 'boolean',\n isAnimated: 'boolean',\n rootElement: '(element|string)',\n clickCallback: '(function|null)'\n}\nconst NAME = 'backdrop'\nconst CLASS_NAME_BACKDROP = 'modal-backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nclass Backdrop {\n constructor(config) {\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\n }\n\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n if (this._config.isAnimated) {\n reflow(this._getElement())\n }\n\n this._getElement().classList.add(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n execute(callback)\n })\n }\n\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._getElement().classList.remove(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n this.dispose()\n execute(callback)\n })\n }\n\n // Private\n\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div')\n backdrop.className = CLASS_NAME_BACKDROP\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE)\n }\n\n this._element = backdrop\n }\n\n return this._element\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' ? config : {})\n }\n\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement)\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n this._config.rootElement.appendChild(this._getElement())\n\n EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n dispose() {\n if (!this._isAppended) {\n return\n }\n\n EventHandler.off(this._element, EVENT_MOUSEDOWN)\n\n this._element.remove()\n this._isAppended = false\n }\n\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated)\n }\n}\n\nexport default Backdrop\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport ScrollBarHelper from './util/scrollbar'\nimport BaseComponent from './base-component'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean'\n}\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"modal\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element)\n this._backdrop = this._initializeBackDrop()\n this._isShown = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollBar = new ScrollBarHelper()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n\n if (this._isAnimated()) {\n this._isTransitioning = true\n }\n\n this._scrollBar.hide()\n\n document.body.classList.add(CLASS_NAME_OPEN)\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, event => this.hide(event))\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event && ['A', 'AREA'].includes(event.target.tagName)) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n const isAnimated = this._isAnimated()\n\n if (isAnimated) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.off(document, EVENT_FOCUSIN)\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS)\n\n this._queueCallback(() => this._hideModal(), this._element, isAnimated)\n }\n\n dispose() {\n [window, this._dialog]\n .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))\n\n this._backdrop.dispose()\n super.dispose()\n\n /**\n * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `EVENT_CLICK_DATA_API` event that should remain\n */\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value\n isAnimated: this._isAnimated()\n })\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const isAnimated = this._isAnimated()\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n if (isAnimated) {\n reflow(this._element)\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, isAnimated)\n }\n\n _enforceFocus() {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n this._element !== event.target &&\n !this._element.contains(event.target)) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault()\n this.hide()\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition()\n }\n })\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog())\n } else {\n EventHandler.off(window, EVENT_RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n this._scrollBar.reset()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _showBackdrop(callback) {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, event => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n\n if (event.target !== event.currentTarget) {\n return\n }\n\n if (this._config.backdrop === true) {\n this.hide()\n } else if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n }\n })\n\n this._backdrop.show(callback)\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE)\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const { classList, scrollHeight, style } = this._element\n const isModalOverflowing = scrollHeight > document.documentElement.clientHeight\n\n // return if the following background transition hasn't yet completed\n if ((!isModalOverflowing && style.overflowY === 'hidden') || classList.contains(CLASS_NAME_STATIC)) {\n return\n }\n\n if (!isModalOverflowing) {\n style.overflowY = 'hidden'\n }\n\n classList.add(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n classList.remove(CLASS_NAME_STATIC)\n if (!isModalOverflowing) {\n this._queueCallback(() => {\n style.overflowY = ''\n }, this._dialog)\n }\n }, this._dialog)\n\n this._element.focus()\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const scrollbarWidth = this._scrollBar.getWidth()\n const isBodyOverflowing = scrollbarWidth > 0\n\n if ((!isBodyOverflowing && isModalOverflowing && !isRTL()) || (isBodyOverflowing && !isModalOverflowing && isRTL())) {\n this._element.style.paddingLeft = `${scrollbarWidth}px`\n }\n\n if ((isBodyOverflowing && !isModalOverflowing && !isRTL()) || (!isBodyOverflowing && isModalOverflowing && isRTL())) {\n this._element.style.paddingRight = `${scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n const data = Modal.getOrCreateInstance(target)\n\n data.toggle(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible,\n typeCheckConfig\n} from './util/index'\nimport ScrollBarHelper from './util/scrollbar'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Manipulator from './dom/manipulator'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: 'boolean',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\nconst CLASS_NAME_SHOW = 'show'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"offcanvas\"]'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._addEventListeners()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._element.style.visibility = 'visible'\n\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n this._enforceFocusOnElement(this._element)\n }\n\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const completeCallBack = () => {\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n EventHandler.off(document, EVENT_FOCUSIN)\n this._element.blur()\n this._isShown = false\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._element.style.visibility = 'hidden'\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n super.dispose()\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: this._config.backdrop,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _enforceFocusOnElement(element) {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n element !== event.target &&\n !element.contains(event.target)) {\n element.focus()\n }\n })\n element.focus()\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n this.hide()\n }\n })\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (allReadyOpen && allReadyOpen !== target) {\n Offcanvas.getInstance(allReadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () =>\n SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())\n)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attr, allowedAttributeList) => {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attrName)) {\n if (uriAttrs.has(attrName)) {\n return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attrName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const allowlistKeys = Object.keys(allowList)\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (!allowlistKeys.includes(elName)) {\n el.remove()\n\n continue\n }\n\n const attributeList = [].concat(...el.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || [])\n\n attributeList.forEach(attr => {\n if (!allowedAttribute(attr, allowedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport {\n DefaultAllowlist,\n sanitizeHtml\n} from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.appendChild(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n this.tip = element.children[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle())\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.appendChild(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n let title = this._element.getAttribute('data-bs-original-title')\n\n if (!title) {\n title = typeof this._config.title === 'function' ?\n this._config.title.call(this._element) :\n this._config.title\n }\n\n return title\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || Data.get(event.delegateTarget, dataKey)\n\n if (!context) {\n context = new this.constructor(event.delegateTarget, this._getDelegateConfig())\n Data.set(event.delegateTarget, dataKey, context)\n }\n\n return context\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this._config) {\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport SelectorEngine from './dom/selector-engine'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement: 'right',\n offset: [0, 8],\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(string|element|function)'\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n this.tip = super.getTipElement()\n\n if (!this.getTitle()) {\n SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove()\n }\n\n if (!this._getContent()) {\n SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove()\n }\n\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n\n // we use append for html objects to maintain js events\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this._element)\n }\n\n this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n // Private\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getContent() {\n return this._element.getAttribute('data-bs-content') || this._config.content\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Popover to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getSelectorFromElement,\n getUID,\n isElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n offset: 10,\n method: 'auto',\n target: ''\n}\n\nconst DefaultType = {\n offset: 'number',\n method: 'string',\n target: '(string|element)'\n}\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._scrollElement = this._element.tagName === 'BODY' ? window : this._element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process())\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window ?\n METHOD_OFFSET :\n METHOD_POSITION\n\n const offsetMethod = this._config.method === 'auto' ?\n autoMethod :\n this._config.method\n\n const offsetBase = offsetMethod === METHOD_POSITION ?\n this._getScrollTop() :\n 0\n\n this._offsets = []\n this._targets = []\n this._scrollHeight = this._getScrollHeight()\n\n const targets = SelectorEngine.find(this._selector)\n\n targets.map(element => {\n const targetSelector = getSelectorFromElement(element)\n const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n return [\n Manipulator[offsetMethod](target).top + offsetBase,\n targetSelector\n ]\n }\n }\n\n return null\n })\n .filter(item => item)\n .sort((a, b) => a[0] - b[0])\n .forEach(item => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n EventHandler.off(this._scrollElement, EVENT_KEY)\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (typeof config.target !== 'string' && isElement(config.target)) {\n let { id } = config.target\n if (!id) {\n id = getUID(NAME)\n config.target.id = id\n }\n\n config.target = `#${id}`\n }\n\n typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window ?\n this._scrollElement.pageYOffset :\n this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window ?\n window.innerHeight :\n this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n for (let i = this._offsets.length; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = this._selector.split(',')\n .map(selector => `${selector}[data-bs-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const link = SelectorEngine.findOne(queries.join(','))\n\n if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, link.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n\n link.classList.add(CLASS_NAME_ACTIVE)\n } else {\n // Set triggered link as active\n link.classList.add(CLASS_NAME_ACTIVE)\n\n SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP)\n .forEach(listGroup => {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n\n // Handle special case when .nav-link is inside .nav-item\n SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS)\n .forEach(navItem => {\n SelectorEngine.children(navItem, SELECTOR_NAV_LINKS)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n })\n })\n }\n\n EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, {\n relatedTarget: target\n })\n }\n\n _clear() {\n SelectorEngine.find(this._selector)\n .filter(node => node.classList.contains(CLASS_NAME_ACTIVE))\n .forEach(node => node.classList.remove(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n SelectorEngine.find(SELECTOR_DATA_SPY)\n .forEach(spy => new ScrollSpy(spy))\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .ScrollSpy to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n reflow\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_UL = ':scope > li > .active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tab extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n if ((this._element.parentNode &&\n this._element.parentNode.nodeType === Node.ELEMENT_NODE &&\n this._element.classList.contains(CLASS_NAME_ACTIVE))) {\n return\n }\n\n let previous\n const target = getElementFromSelector(this._element)\n const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP)\n\n if (listElement) {\n const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE\n previous = SelectorEngine.find(itemSelector, listElement)\n previous = previous[previous.length - 1]\n }\n\n const hideEvent = previous ?\n EventHandler.trigger(previous, EVENT_HIDE, {\n relatedTarget: this._element\n }) :\n null\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget: previous\n })\n\n if (showEvent.defaultPrevented || (hideEvent !== null && hideEvent.defaultPrevented)) {\n return\n }\n\n this._activate(this._element, listElement)\n\n const complete = () => {\n EventHandler.trigger(previous, EVENT_HIDDEN, {\n relatedTarget: this._element\n })\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget: previous\n })\n }\n\n if (target) {\n this._activate(target, target.parentNode, complete)\n } else {\n complete()\n }\n }\n\n // Private\n\n _activate(element, container, callback) {\n const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ?\n SelectorEngine.find(SELECTOR_ACTIVE_UL, container) :\n SelectorEngine.children(container, SELECTOR_ACTIVE)\n\n const active = activeElements[0]\n const isTransitioning = callback && (active && active.classList.contains(CLASS_NAME_FADE))\n\n const complete = () => this._transitionComplete(element, active, callback)\n\n if (active && isTransitioning) {\n active.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, element, true)\n } else {\n complete()\n }\n }\n\n _transitionComplete(element, active, callback) {\n if (active) {\n active.classList.remove(CLASS_NAME_ACTIVE)\n\n const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode)\n\n if (dropdownChild) {\n dropdownChild.classList.remove(CLASS_NAME_ACTIVE)\n }\n\n if (active.getAttribute('role') === 'tab') {\n active.setAttribute('aria-selected', false)\n }\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n if (element.getAttribute('role') === 'tab') {\n element.setAttribute('aria-selected', true)\n }\n\n reflow(element)\n\n if (element.classList.contains(CLASS_NAME_FADE)) {\n element.classList.add(CLASS_NAME_SHOW)\n }\n\n let parent = element.parentNode\n if (parent && parent.nodeName === 'LI') {\n parent = parent.parentNode\n }\n\n if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) {\n const dropdownElement = element.closest(SELECTOR_DROPDOWN)\n\n if (dropdownElement) {\n SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement)\n .forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE))\n }\n\n element.setAttribute('aria-expanded', true)\n }\n\n if (callback) {\n callback()\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tab.getOrCreateInstance(this)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const data = Tab.getOrCreateInstance(this)\n data.show()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tab to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'bs.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`\nconst EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_FOCUSOUT = `focusout${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"toast\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._timeout = null\n this._hasMouseInteraction = false\n this._hasKeyboardInteraction = false\n this._setListeners()\n }\n\n // Getters\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n this._element.classList.add(CLASS_NAME_SHOW)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n this._maybeScheduleHide()\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE)\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n hide() {\n if (!this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n return config\n }\n\n _maybeScheduleHide() {\n if (!this._config.autohide) {\n return\n }\n\n if (this._hasMouseInteraction || this._hasKeyboardInteraction) {\n return\n }\n\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n\n _onInteraction(event, isInteracting) {\n switch (event.type) {\n case 'mouseover':\n case 'mouseout':\n this._hasMouseInteraction = isInteracting\n break\n case 'focusin':\n case 'focusout':\n this._hasKeyboardInteraction = isInteracting\n break\n default:\n break\n }\n\n if (isInteracting) {\n this._clearTimeout()\n return\n }\n\n const nextElement = event.relatedTarget\n if (this._element === nextElement || this._element.contains(nextElement)) {\n return\n }\n\n this._maybeScheduleHide()\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false))\n EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false))\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Toast.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Toast to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Toast)\n\nexport default Toast\n"],"names":["SelectorEngine","find","selector","element","document","documentElement","concat","Element","prototype","querySelectorAll","call","findOne","querySelector","children","filter","child","matches","parents","ancestor","parentNode","nodeType","Node","ELEMENT_NODE","push","prev","previous","previousElementSibling","next","nextElementSibling","getUID","prefix","Math","floor","random","getElementById","getSelector","getAttribute","hrefAttr","includes","startsWith","split","trim","getSelectorFromElement","getElementFromSelector","triggerTransitionEnd","dispatchEvent","Event","isElement","obj","jquery","getElement","length","typeCheckConfig","componentName","config","configTypes","Object","keys","forEach","property","expectedTypes","value","valueType","toString","match","toLowerCase","RegExp","test","TypeError","toUpperCase","isVisible","getClientRects","getComputedStyle","getPropertyValue","isDisabled","classList","contains","disabled","hasAttribute","findShadowRoot","attachShadow","getRootNode","root","ShadowRoot","noop","reflow","offsetHeight","getjQuery","jQuery","window","body","DOMContentLoadedCallbacks","isRTL","dir","defineJQueryPlugin","plugin","callback","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","readyState","addEventListener","execute","executeAfterTransition","transitionElement","waitForTransition","emulatedDuration","transitionDuration","transitionDelay","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","getTransitionDurationFromElement","called","handler","target","removeEventListener","setTimeout","getNextActiveElement","list","activeElement","shouldGetNext","isCycleAllowed","index","indexOf","listLength","max","min","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","customEventsRegex","nativeEvents","Set","getUidEvent","uid","getEvent","findHandler","events","delegationSelector","uidEventList","i","len","event","originalHandler","normalizeParams","originalTypeEvent","delegationFn","delegation","typeEvent","getTypeEvent","has","addHandler","oneOff","wrapFn","relatedTarget","delegateTarget","this","handlers","previousFn","replace","domElements","EventHandler","off","type","apply","bootstrapDelegationHandler","bootstrapHandler","removeHandler","Boolean","on","one","inNamespace","isNamespace","elementEvent","namespace","storeElementEvent","handlerKey","removeNamespacedHandlers","slice","keyHandlers","trigger","args","isNative","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","evt","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","createEvent","initEvent","CustomEvent","cancelable","key","defineProperty","get","preventDefault","elementMap","Map","set","instance","instanceMap","size","console","error","Array","from","remove","delete","BaseComponent","constructor","_element","Data","DATA_KEY","dispose","EVENT_KEY","getOwnPropertyNames","propertyName","_queueCallback","isAnimated","getInstance","Error","Alert","close","rootElement","_getRootElement","customEvent","_triggerCloseEvent","_removeElement","closest","_destroyElement","each","data","getOrCreateInstance","alertInstance","handleDismiss","Button","toggle","setAttribute","normalizeData","val","normalizeDataKey","chr","button","Manipulator","setDataAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","dataset","pureKey","charAt","getDataAttribute","offset","rect","getBoundingClientRect","top","scrollTop","left","scrollLeft","position","offsetTop","offsetLeft","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","KEY_TO_DIRECTION","Carousel","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","PointerEvent","_addEventListeners","_slide","nextWhenVisible","hidden","cycle","clearInterval","_updateInterval","setInterval","visibilityState","bind","to","activeIndex","_getItemIndex","order","_handleSwipe","absDeltax","abs","direction","_keydown","_addTouchEventListeners","start","pointerType","touches","clientX","move","end","clearTimeout","itemImg","e","add","tagName","_getItemByOrder","isNext","_triggerSlideEvent","eventDirectionName","targetIndex","fromIndex","_setActiveIndicatorElement","activeIndicator","indicators","parseInt","elementInterval","defaultInterval","directionOrOrder","_directionToOrder","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","_orderToDirection","triggerSlidEvent","completeCallBack","action","ride","carouselInterface","slideIndex","dataApiClickHandler","carousels","parent","Collapse","_isTransitioning","_triggerArray","id","toggleList","elem","filterElement","foundElem","_selector","_parent","_getParent","_addAriaAndCollapsedClass","hide","show","actives","activesData","container","tempActiveData","elemActive","collapseInterface","dimension","_getDimension","style","setTransitioning","scrollSize","triggerArrayLength","isTransitioning","selected","triggerArray","isOpen","triggerData","REGEXP_KEYDOWN","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","boundary","reference","display","popperConfig","autoClose","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","getParentFromElement","Popper","referenceElement","_getPopperConfig","isDisplayStatic","modifiers","modifier","enabled","createPopper","focus","_completeHide","destroy","update","_getPlacement","parentDropdown","isEnd","_getOffset","map","popperData","defaultBsPopperConfig","placement","options","_selectMenuItem","items","dropdownInterface","toggles","context","composedPath","isMenuTarget","clickEvent","isActive","stopPropagation","getToggleButton","clearMenus","click","dataApiKeydownHandler","ScrollBarHelper","getWidth","documentWidth","clientWidth","innerWidth","width","_disableOverFlow","_setElementAttributes","calculatedValue","_saveInitialAttribute","overflow","styleProp","scrollbarWidth","_applyManipulationCallback","reset","_resetElementAttributes","actualValue","removeProperty","callBack","isOverflowing","clickCallback","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","createElement","className","appendChild","Modal","_dialog","_backdrop","_initializeBackDrop","_isShown","_ignoreBackdropClick","_scrollBar","_isAnimated","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","_hideModal","htmlElement","handleUpdate","modalBody","_enforceFocus","_triggerBackdropTransition","_resetAdjustments","currentTarget","scrollHeight","isModalOverflowing","clientHeight","overflowY","isBodyOverflowing","paddingLeft","paddingRight","showEvent","scroll","Offcanvas","visibility","_enforceFocusOnElement","blur","undefined","allReadyOpen","el","uriAttrs","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeName","nodeValue","regExp","attrRegex","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","createdDocument","DOMParser","parseFromString","allowlistKeys","elements","elName","attributeList","allowedAttributes","innerHTML","BSCLS_PREFIX_REGEX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","html","fallbackPlacements","customClass","sanitize","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","a","area","b","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","_initializeOnDelegatedTarget","_isWithActiveTrigger","_enter","_leave","getTipElement","_hideModalHandler","isWithContent","shadowRoot","isInTheDom","ownerDocument","tipId","setContent","attachment","_getAttachment","_addAttachmentClass","prevHoverState","_cleanTipClass","getTitle","setElementContent","content","textContent","updateAttachment","dataKey","_getDelegateConfig","phase","_handlePopperPlacementChange","onFirstUpdate","eventIn","eventOut","_fixTitle","originalTitleType","dataAttributes","dataAttr","tabClass","token","tClass","state","popper","Popover","_getContent","super","method","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targetSelector","targetBCR","height","item","sort","pageYOffset","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","queries","link","join","listGroup","navItem","node","spy","Tab","listElement","itemSelector","hideEvent","complete","active","_transitionComplete","dropdownChild","dropdownElement","dropdown","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","_onInteraction","isInteracting"],"mappings":"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"} \ No newline at end of file diff --git a/assets/js/oe-bcl-default.umd.js b/assets/js/oe-bcl-default.umd.js deleted file mode 100644 index 557a61da..00000000 --- a/assets/js/oe-bcl-default.umd.js +++ /dev/null @@ -1,6914 +0,0 @@ -(function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : - typeof define === 'function' && define.amd ? define(factory) : - (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.bootstrap = factory()); -}(this, (function () { 'use strict'; - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): dom/selector-engine.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - const NODE_TEXT = 3; - const SelectorEngine = { - find(selector, element = document.documentElement) { - return [].concat(...Element.prototype.querySelectorAll.call(element, selector)); - }, - - findOne(selector, element = document.documentElement) { - return Element.prototype.querySelector.call(element, selector); - }, - - children(element, selector) { - return [].concat(...element.children).filter(child => child.matches(selector)); - }, - - parents(element, selector) { - const parents = []; - let ancestor = element.parentNode; - - while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) { - if (ancestor.matches(selector)) { - parents.push(ancestor); - } - - ancestor = ancestor.parentNode; - } - - return parents; - }, - - prev(element, selector) { - let previous = element.previousElementSibling; - - while (previous) { - if (previous.matches(selector)) { - return [previous]; - } - - previous = previous.previousElementSibling; - } - - return []; - }, - - next(element, selector) { - let next = element.nextElementSibling; - - while (next) { - if (next.matches(selector)) { - return [next]; - } - - next = next.nextElementSibling; - } - - return []; - } - - }; - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): util/index.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - - const MAX_UID = 1000000; - const MILLISECONDS_MULTIPLIER = 1000; - const TRANSITION_END = 'transitionend'; // Shoutout AngusCroll (https://goo.gl/pxwQGp) - - const toType = obj => { - if (obj === null || obj === undefined) { - return `${obj}`; - } - - return {}.toString.call(obj).match(/\s([a-z]+)/i)[1].toLowerCase(); - }; - /** - * -------------------------------------------------------------------------- - * Public Util Api - * -------------------------------------------------------------------------- - */ - - - const getUID = prefix => { - do { - prefix += Math.floor(Math.random() * MAX_UID); - } while (document.getElementById(prefix)); - - return prefix; - }; - - const getSelector = element => { - let selector = element.getAttribute('data-bs-target'); - - if (!selector || selector === '#') { - let hrefAttr = element.getAttribute('href'); // The only valid content that could double as a selector are IDs or classes, - // so everything starting with `#` or `.`. If a "real" URL is used as the selector, - // `document.querySelector` will rightfully complain it is invalid. - // See https://github.com/twbs/bootstrap/issues/32273 - - if (!hrefAttr || !hrefAttr.includes('#') && !hrefAttr.startsWith('.')) { - return null; - } // Just in case some CMS puts out a full URL with the anchor appended - - - if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) { - hrefAttr = `#${hrefAttr.split('#')[1]}`; - } - - selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null; - } - - return selector; - }; - - const getSelectorFromElement = element => { - const selector = getSelector(element); - - if (selector) { - return document.querySelector(selector) ? selector : null; - } - - return null; - }; - - const getElementFromSelector = element => { - const selector = getSelector(element); - return selector ? document.querySelector(selector) : null; - }; - - const getTransitionDurationFromElement = element => { - if (!element) { - return 0; - } // Get transition-duration of the element - - - let { - transitionDuration, - transitionDelay - } = window.getComputedStyle(element); - const floatTransitionDuration = Number.parseFloat(transitionDuration); - const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found - - if (!floatTransitionDuration && !floatTransitionDelay) { - return 0; - } // If multiple durations are defined, take the first - - - transitionDuration = transitionDuration.split(',')[0]; - transitionDelay = transitionDelay.split(',')[0]; - return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER; - }; - - const triggerTransitionEnd = element => { - element.dispatchEvent(new Event(TRANSITION_END)); - }; - - const isElement$1 = obj => { - if (!obj || typeof obj !== 'object') { - return false; - } - - if (typeof obj.jquery !== 'undefined') { - obj = obj[0]; - } - - return typeof obj.nodeType !== 'undefined'; - }; - - const getElement = obj => { - if (isElement$1(obj)) { - // it's a jQuery object or a node element - return obj.jquery ? obj[0] : obj; - } - - if (typeof obj === 'string' && obj.length > 0) { - return SelectorEngine.findOne(obj); - } - - return null; - }; - - const typeCheckConfig = (componentName, config, configTypes) => { - Object.keys(configTypes).forEach(property => { - const expectedTypes = configTypes[property]; - const value = config[property]; - const valueType = value && isElement$1(value) ? 'element' : toType(value); - - if (!new RegExp(expectedTypes).test(valueType)) { - throw new TypeError(`${componentName.toUpperCase()}: Option "${property}" provided type "${valueType}" but expected type "${expectedTypes}".`); - } - }); - }; - - const isVisible = element => { - if (!isElement$1(element) || element.getClientRects().length === 0) { - return false; - } - - return getComputedStyle(element).getPropertyValue('visibility') === 'visible'; - }; - - const isDisabled = element => { - if (!element || element.nodeType !== Node.ELEMENT_NODE) { - return true; - } - - if (element.classList.contains('disabled')) { - return true; - } - - if (typeof element.disabled !== 'undefined') { - return element.disabled; - } - - return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'; - }; - - const findShadowRoot = element => { - if (!document.documentElement.attachShadow) { - return null; - } // Can find the shadow root otherwise it'll return the document - - - if (typeof element.getRootNode === 'function') { - const root = element.getRootNode(); - return root instanceof ShadowRoot ? root : null; - } - - if (element instanceof ShadowRoot) { - return element; - } // when we don't find a shadow root - - - if (!element.parentNode) { - return null; - } - - return findShadowRoot(element.parentNode); - }; - - const noop = () => {}; - - const reflow = element => element.offsetHeight; - - const getjQuery = () => { - const { - jQuery - } = window; - - if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) { - return jQuery; - } - - return null; - }; - - const DOMContentLoadedCallbacks = []; - - const onDOMContentLoaded = callback => { - if (document.readyState === 'loading') { - // add listener on the first call when the document is in loading state - if (!DOMContentLoadedCallbacks.length) { - document.addEventListener('DOMContentLoaded', () => { - DOMContentLoadedCallbacks.forEach(callback => callback()); - }); - } - - DOMContentLoadedCallbacks.push(callback); - } else { - callback(); - } - }; - - const isRTL = () => document.documentElement.dir === 'rtl'; - - const defineJQueryPlugin = plugin => { - onDOMContentLoaded(() => { - const $ = getjQuery(); - /* istanbul ignore if */ - - if ($) { - const name = plugin.NAME; - const JQUERY_NO_CONFLICT = $.fn[name]; - $.fn[name] = plugin.jQueryInterface; - $.fn[name].Constructor = plugin; - - $.fn[name].noConflict = () => { - $.fn[name] = JQUERY_NO_CONFLICT; - return plugin.jQueryInterface; - }; - } - }); - }; - - const execute = callback => { - if (typeof callback === 'function') { - callback(); - } - }; - - const executeAfterTransition = (callback, transitionElement, waitForTransition = true) => { - if (!waitForTransition) { - execute(callback); - return; - } - - const durationPadding = 5; - const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding; - let called = false; - - const handler = ({ - target - }) => { - if (target !== transitionElement) { - return; - } - - called = true; - transitionElement.removeEventListener(TRANSITION_END, handler); - execute(callback); - }; - - transitionElement.addEventListener(TRANSITION_END, handler); - setTimeout(() => { - if (!called) { - triggerTransitionEnd(transitionElement); - } - }, emulatedDuration); - }; - /** - * Return the previous/next element of a list. - * - * @param {array} list The list of elements - * @param activeElement The active element - * @param shouldGetNext Choose to get next or previous element - * @param isCycleAllowed - * @return {Element|elem} The proper element - */ - - - const getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => { - let index = list.indexOf(activeElement); // if the element does not exist in the list return an element depending on the direction and if cycle is allowed - - if (index === -1) { - return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]; - } - - const listLength = list.length; - index += shouldGetNext ? 1 : -1; - - if (isCycleAllowed) { - index = (index + listLength) % listLength; - } - - return list[Math.max(0, Math.min(index, listLength - 1))]; - }; - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): dom/event-handler.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const namespaceRegex = /[^.]*(?=\..*)\.|.*/; - const stripNameRegex = /\..*/; - const stripUidRegex = /::\d+$/; - const eventRegistry = {}; // Events storage - - let uidEvent = 1; - const customEvents = { - mouseenter: 'mouseover', - mouseleave: 'mouseout' - }; - const customEventsRegex = /^(mouseenter|mouseleave)/i; - const nativeEvents = 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']); - /** - * ------------------------------------------------------------------------ - * Private methods - * ------------------------------------------------------------------------ - */ - - function getUidEvent(element, uid) { - return uid && `${uid}::${uidEvent++}` || element.uidEvent || uidEvent++; - } - - function getEvent(element) { - const uid = getUidEvent(element); - element.uidEvent = uid; - eventRegistry[uid] = eventRegistry[uid] || {}; - return eventRegistry[uid]; - } - - function bootstrapHandler(element, fn) { - return function handler(event) { - event.delegateTarget = element; - - if (handler.oneOff) { - EventHandler.off(element, event.type, fn); - } - - return fn.apply(element, [event]); - }; - } - - function bootstrapDelegationHandler(element, selector, fn) { - return function handler(event) { - const domElements = element.querySelectorAll(selector); - - for (let { - target - } = event; target && target !== this; target = target.parentNode) { - for (let i = domElements.length; i--;) { - if (domElements[i] === target) { - event.delegateTarget = target; - - if (handler.oneOff) { - // eslint-disable-next-line unicorn/consistent-destructuring - EventHandler.off(element, event.type, selector, fn); - } - - return fn.apply(target, [event]); - } - } - } // To please ESLint - - - return null; - }; - } - - function findHandler(events, handler, delegationSelector = null) { - const uidEventList = Object.keys(events); - - for (let i = 0, len = uidEventList.length; i < len; i++) { - const event = events[uidEventList[i]]; - - if (event.originalHandler === handler && event.delegationSelector === delegationSelector) { - return event; - } - } - - return null; - } - - function normalizeParams(originalTypeEvent, handler, delegationFn) { - const delegation = typeof handler === 'string'; - const originalHandler = delegation ? delegationFn : handler; - let typeEvent = getTypeEvent(originalTypeEvent); - const isNative = nativeEvents.has(typeEvent); - - if (!isNative) { - typeEvent = originalTypeEvent; - } - - return [delegation, originalHandler, typeEvent]; - } - - function addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) { - if (typeof originalTypeEvent !== 'string' || !element) { - return; - } - - if (!handler) { - handler = delegationFn; - delegationFn = null; - } // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position - // this prevents the handler from being dispatched the same way as mouseover or mouseout does - - - if (customEventsRegex.test(originalTypeEvent)) { - const wrapFn = fn => { - return function (event) { - if (!event.relatedTarget || event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget)) { - return fn.call(this, event); - } - }; - }; - - if (delegationFn) { - delegationFn = wrapFn(delegationFn); - } else { - handler = wrapFn(handler); - } - } - - const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn); - const events = getEvent(element); - const handlers = events[typeEvent] || (events[typeEvent] = {}); - const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null); - - if (previousFn) { - previousFn.oneOff = previousFn.oneOff && oneOff; - return; - } - - const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, '')); - const fn = delegation ? bootstrapDelegationHandler(element, handler, delegationFn) : bootstrapHandler(element, handler); - fn.delegationSelector = delegation ? handler : null; - fn.originalHandler = originalHandler; - fn.oneOff = oneOff; - fn.uidEvent = uid; - handlers[uid] = fn; - element.addEventListener(typeEvent, fn, delegation); - } - - function removeHandler(element, events, typeEvent, handler, delegationSelector) { - const fn = findHandler(events[typeEvent], handler, delegationSelector); - - if (!fn) { - return; - } - - element.removeEventListener(typeEvent, fn, Boolean(delegationSelector)); - delete events[typeEvent][fn.uidEvent]; - } - - function removeNamespacedHandlers(element, events, typeEvent, namespace) { - const storeElementEvent = events[typeEvent] || {}; - Object.keys(storeElementEvent).forEach(handlerKey => { - if (handlerKey.includes(namespace)) { - const event = storeElementEvent[handlerKey]; - removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector); - } - }); - } - - function getTypeEvent(event) { - // allow to get the native events from namespaced events ('click.bs.button' --> 'click') - event = event.replace(stripNameRegex, ''); - return customEvents[event] || event; - } - - const EventHandler = { - on(element, event, handler, delegationFn) { - addHandler(element, event, handler, delegationFn, false); - }, - - one(element, event, handler, delegationFn) { - addHandler(element, event, handler, delegationFn, true); - }, - - off(element, originalTypeEvent, handler, delegationFn) { - if (typeof originalTypeEvent !== 'string' || !element) { - return; - } - - const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn); - const inNamespace = typeEvent !== originalTypeEvent; - const events = getEvent(element); - const isNamespace = originalTypeEvent.startsWith('.'); - - if (typeof originalHandler !== 'undefined') { - // Simplest case: handler is passed, remove that listener ONLY. - if (!events || !events[typeEvent]) { - return; - } - - removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null); - return; - } - - if (isNamespace) { - Object.keys(events).forEach(elementEvent => { - removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1)); - }); - } - - const storeElementEvent = events[typeEvent] || {}; - Object.keys(storeElementEvent).forEach(keyHandlers => { - const handlerKey = keyHandlers.replace(stripUidRegex, ''); - - if (!inNamespace || originalTypeEvent.includes(handlerKey)) { - const event = storeElementEvent[keyHandlers]; - removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector); - } - }); - }, - - trigger(element, event, args) { - if (typeof event !== 'string' || !element) { - return null; - } - - const $ = getjQuery(); - const typeEvent = getTypeEvent(event); - const inNamespace = event !== typeEvent; - const isNative = nativeEvents.has(typeEvent); - let jQueryEvent; - let bubbles = true; - let nativeDispatch = true; - let defaultPrevented = false; - let evt = null; - - if (inNamespace && $) { - jQueryEvent = $.Event(event, args); - $(element).trigger(jQueryEvent); - bubbles = !jQueryEvent.isPropagationStopped(); - nativeDispatch = !jQueryEvent.isImmediatePropagationStopped(); - defaultPrevented = jQueryEvent.isDefaultPrevented(); - } - - if (isNative) { - evt = document.createEvent('HTMLEvents'); - evt.initEvent(typeEvent, bubbles, true); - } else { - evt = new CustomEvent(event, { - bubbles, - cancelable: true - }); - } // merge custom information in our event - - - if (typeof args !== 'undefined') { - Object.keys(args).forEach(key => { - Object.defineProperty(evt, key, { - get() { - return args[key]; - } - - }); - }); - } - - if (defaultPrevented) { - evt.preventDefault(); - } - - if (nativeDispatch) { - element.dispatchEvent(evt); - } - - if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') { - jQueryEvent.preventDefault(); - } - - return evt; - } - - }; - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): dom/data.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - const elementMap = new Map(); - var Data = { - set(element, key, instance) { - if (!elementMap.has(element)) { - elementMap.set(element, new Map()); - } - - const instanceMap = elementMap.get(element); // make it clear we only want one instance per element - // can be removed later when multiple key/instances are fine to be used - - if (!instanceMap.has(key) && instanceMap.size !== 0) { - // eslint-disable-next-line no-console - console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`); - return; - } - - instanceMap.set(key, instance); - }, - - get(element, key) { - if (elementMap.has(element)) { - return elementMap.get(element).get(key) || null; - } - - return null; - }, - - remove(element, key) { - if (!elementMap.has(element)) { - return; - } - - const instanceMap = elementMap.get(element); - instanceMap.delete(key); // free up element references if there are no instances left for an element - - if (instanceMap.size === 0) { - elementMap.delete(element); - } - } - - }; - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): base-component.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const VERSION = '5.0.2'; - - class BaseComponent { - constructor(element) { - element = getElement(element); - - if (!element) { - return; - } - - this._element = element; - Data.set(this._element, this.constructor.DATA_KEY, this); - } - - dispose() { - Data.remove(this._element, this.constructor.DATA_KEY); - EventHandler.off(this._element, this.constructor.EVENT_KEY); - Object.getOwnPropertyNames(this).forEach(propertyName => { - this[propertyName] = null; - }); - } - - _queueCallback(callback, element, isAnimated = true) { - executeAfterTransition(callback, element, isAnimated); - } - /** Static */ - - - static getInstance(element) { - return Data.get(element, this.DATA_KEY); - } - - static getOrCreateInstance(element, config = {}) { - return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null); - } - - static get VERSION() { - return VERSION; - } - - 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}`; - } - - } - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): alert.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$c = 'alert'; - const DATA_KEY$b = 'bs.alert'; - const EVENT_KEY$b = `.${DATA_KEY$b}`; - const DATA_API_KEY$8 = '.data-api'; - const SELECTOR_DISMISS = '[data-bs-dismiss="alert"]'; - const EVENT_CLOSE = `close${EVENT_KEY$b}`; - const EVENT_CLOSED = `closed${EVENT_KEY$b}`; - const EVENT_CLICK_DATA_API$7 = `click${EVENT_KEY$b}${DATA_API_KEY$8}`; - const CLASS_NAME_ALERT = 'alert'; - const CLASS_NAME_FADE$6 = 'fade'; - const CLASS_NAME_SHOW$9 = 'show'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Alert extends BaseComponent { - // Getters - static get NAME() { - return NAME$c; - } // Public - - - close(element) { - const rootElement = element ? this._getRootElement(element) : this._element; - - const customEvent = this._triggerCloseEvent(rootElement); - - if (customEvent === null || customEvent.defaultPrevented) { - return; - } - - this._removeElement(rootElement); - } // Private - - - _getRootElement(element) { - return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`); - } - - _triggerCloseEvent(element) { - return EventHandler.trigger(element, EVENT_CLOSE); - } - - _removeElement(element) { - element.classList.remove(CLASS_NAME_SHOW$9); - const isAnimated = element.classList.contains(CLASS_NAME_FADE$6); - - this._queueCallback(() => this._destroyElement(element), element, isAnimated); - } - - _destroyElement(element) { - element.remove(); - EventHandler.trigger(element, EVENT_CLOSED); - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Alert.getOrCreateInstance(this); - - if (config === 'close') { - data[config](this); - } - }); - } - - static handleDismiss(alertInstance) { - return function (event) { - if (event) { - event.preventDefault(); - } - - alertInstance.close(this); - }; - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_CLICK_DATA_API$7, SELECTOR_DISMISS, Alert.handleDismiss(new Alert())); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Alert to jQuery only if jQuery is present - */ - - defineJQueryPlugin(Alert); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): button.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$b = 'button'; - const DATA_KEY$a = 'bs.button'; - const EVENT_KEY$a = `.${DATA_KEY$a}`; - const DATA_API_KEY$7 = '.data-api'; - const CLASS_NAME_ACTIVE$3 = 'active'; - const SELECTOR_DATA_TOGGLE$5 = '[data-bs-toggle="button"]'; - const EVENT_CLICK_DATA_API$6 = `click${EVENT_KEY$a}${DATA_API_KEY$7}`; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Button extends BaseComponent { - // Getters - static get NAME() { - return NAME$b; - } // Public - - - toggle() { - // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method - this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE$3)); - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Button.getOrCreateInstance(this); - - if (config === 'toggle') { - data[config](); - } - }); - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_CLICK_DATA_API$6, SELECTOR_DATA_TOGGLE$5, event => { - event.preventDefault(); - const button = event.target.closest(SELECTOR_DATA_TOGGLE$5); - const data = Button.getOrCreateInstance(button); - data.toggle(); - }); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Button to jQuery only if jQuery is present - */ - - defineJQueryPlugin(Button); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): dom/manipulator.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - function normalizeData(val) { - if (val === 'true') { - return true; - } - - if (val === 'false') { - return false; - } - - if (val === Number(val).toString()) { - return Number(val); - } - - if (val === '' || val === 'null') { - return null; - } - - return val; - } - - function normalizeDataKey(key) { - return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`); - } - - const Manipulator = { - setDataAttribute(element, key, value) { - element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value); - }, - - removeDataAttribute(element, key) { - element.removeAttribute(`data-bs-${normalizeDataKey(key)}`); - }, - - getDataAttributes(element) { - if (!element) { - return {}; - } - - const attributes = {}; - Object.keys(element.dataset).filter(key => key.startsWith('bs')).forEach(key => { - let pureKey = key.replace(/^bs/, ''); - pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length); - attributes[pureKey] = normalizeData(element.dataset[key]); - }); - return attributes; - }, - - getDataAttribute(element, key) { - return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`)); - }, - - offset(element) { - const rect = element.getBoundingClientRect(); - return { - top: rect.top + document.body.scrollTop, - left: rect.left + document.body.scrollLeft - }; - }, - - position(element) { - return { - top: element.offsetTop, - left: element.offsetLeft - }; - } - - }; - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): carousel.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$a = 'carousel'; - const DATA_KEY$9 = 'bs.carousel'; - const EVENT_KEY$9 = `.${DATA_KEY$9}`; - const DATA_API_KEY$6 = '.data-api'; - const ARROW_LEFT_KEY = 'ArrowLeft'; - const ARROW_RIGHT_KEY = 'ArrowRight'; - const TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch - - const SWIPE_THRESHOLD = 40; - const Default$9 = { - interval: 5000, - keyboard: true, - slide: false, - pause: 'hover', - wrap: true, - touch: true - }; - const DefaultType$9 = { - interval: '(number|boolean)', - keyboard: 'boolean', - slide: '(boolean|string)', - pause: '(string|boolean)', - wrap: 'boolean', - touch: 'boolean' - }; - const ORDER_NEXT = 'next'; - const ORDER_PREV = 'prev'; - const DIRECTION_LEFT = 'left'; - const DIRECTION_RIGHT = 'right'; - const KEY_TO_DIRECTION = { - [ARROW_LEFT_KEY]: DIRECTION_RIGHT, - [ARROW_RIGHT_KEY]: DIRECTION_LEFT - }; - const EVENT_SLIDE = `slide${EVENT_KEY$9}`; - const EVENT_SLID = `slid${EVENT_KEY$9}`; - const EVENT_KEYDOWN = `keydown${EVENT_KEY$9}`; - const EVENT_MOUSEENTER = `mouseenter${EVENT_KEY$9}`; - const EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY$9}`; - const EVENT_TOUCHSTART = `touchstart${EVENT_KEY$9}`; - const EVENT_TOUCHMOVE = `touchmove${EVENT_KEY$9}`; - const EVENT_TOUCHEND = `touchend${EVENT_KEY$9}`; - const EVENT_POINTERDOWN = `pointerdown${EVENT_KEY$9}`; - const EVENT_POINTERUP = `pointerup${EVENT_KEY$9}`; - const EVENT_DRAG_START = `dragstart${EVENT_KEY$9}`; - const EVENT_LOAD_DATA_API$2 = `load${EVENT_KEY$9}${DATA_API_KEY$6}`; - const EVENT_CLICK_DATA_API$5 = `click${EVENT_KEY$9}${DATA_API_KEY$6}`; - const CLASS_NAME_CAROUSEL = 'carousel'; - const CLASS_NAME_ACTIVE$2 = 'active'; - const CLASS_NAME_SLIDE = 'slide'; - const CLASS_NAME_END = 'carousel-item-end'; - const CLASS_NAME_START = 'carousel-item-start'; - const CLASS_NAME_NEXT = 'carousel-item-next'; - const CLASS_NAME_PREV = 'carousel-item-prev'; - const CLASS_NAME_POINTER_EVENT = 'pointer-event'; - const SELECTOR_ACTIVE$1 = '.active'; - const SELECTOR_ACTIVE_ITEM = '.active.carousel-item'; - const SELECTOR_ITEM = '.carousel-item'; - const SELECTOR_ITEM_IMG = '.carousel-item img'; - const SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'; - const SELECTOR_INDICATORS = '.carousel-indicators'; - const SELECTOR_INDICATOR = '[data-bs-target]'; - const SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'; - const SELECTOR_DATA_RIDE = '[data-bs-ride="carousel"]'; - const POINTER_TYPE_TOUCH = 'touch'; - const POINTER_TYPE_PEN = 'pen'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Carousel extends BaseComponent { - constructor(element, config) { - super(element); - this._items = null; - this._interval = null; - this._activeElement = null; - this._isPaused = false; - this._isSliding = false; - this.touchTimeout = null; - this.touchStartX = 0; - this.touchDeltaX = 0; - this._config = this._getConfig(config); - this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element); - this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0; - this._pointerEvent = Boolean(window.PointerEvent); - - this._addEventListeners(); - } // Getters - - - static get Default() { - return Default$9; - } - - static get NAME() { - return NAME$a; - } // Public - - - next() { - this._slide(ORDER_NEXT); - } - - nextWhenVisible() { - // Don't call next when the page isn't visible - // or the carousel or its parent isn't visible - if (!document.hidden && isVisible(this._element)) { - this.next(); - } - } - - prev() { - this._slide(ORDER_PREV); - } - - pause(event) { - if (!event) { - this._isPaused = true; - } - - if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) { - triggerTransitionEnd(this._element); - this.cycle(true); - } - - clearInterval(this._interval); - this._interval = null; - } - - cycle(event) { - if (!event) { - this._isPaused = false; - } - - if (this._interval) { - clearInterval(this._interval); - this._interval = null; - } - - if (this._config && this._config.interval && !this._isPaused) { - this._updateInterval(); - - this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval); - } - } - - to(index) { - this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); - - const activeIndex = this._getItemIndex(this._activeElement); - - if (index > this._items.length - 1 || index < 0) { - return; - } - - if (this._isSliding) { - EventHandler.one(this._element, EVENT_SLID, () => this.to(index)); - return; - } - - if (activeIndex === index) { - this.pause(); - this.cycle(); - return; - } - - const order = index > activeIndex ? ORDER_NEXT : ORDER_PREV; - - this._slide(order, this._items[index]); - } // Private - - - _getConfig(config) { - config = { ...Default$9, - ...Manipulator.getDataAttributes(this._element), - ...(typeof config === 'object' ? config : {}) - }; - typeCheckConfig(NAME$a, config, DefaultType$9); - return config; - } - - _handleSwipe() { - const absDeltax = Math.abs(this.touchDeltaX); - - if (absDeltax <= SWIPE_THRESHOLD) { - return; - } - - const direction = absDeltax / this.touchDeltaX; - this.touchDeltaX = 0; - - if (!direction) { - return; - } - - this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT); - } - - _addEventListeners() { - if (this._config.keyboard) { - EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event)); - } - - if (this._config.pause === 'hover') { - EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event)); - EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event)); - } - - if (this._config.touch && this._touchSupported) { - this._addTouchEventListeners(); - } - } - - _addTouchEventListeners() { - const start = event => { - if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) { - this.touchStartX = event.clientX; - } else if (!this._pointerEvent) { - this.touchStartX = event.touches[0].clientX; - } - }; - - const move = event => { - // ensure swiping with one touch and not pinching - this.touchDeltaX = event.touches && event.touches.length > 1 ? 0 : event.touches[0].clientX - this.touchStartX; - }; - - const end = event => { - if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) { - this.touchDeltaX = event.clientX - this.touchStartX; - } - - this._handleSwipe(); - - if (this._config.pause === 'hover') { - // If it's a touch-enabled device, mouseenter/leave are fired as - // part of the mouse compatibility events on first tap - the carousel - // would stop cycling until user tapped out of it; - // here, we listen for touchend, explicitly pause the carousel - // (as if it's the second time we tap on it, mouseenter compat event - // is NOT fired) and after a timeout (to allow for mouse compatibility - // events to fire) we explicitly restart cycling - this.pause(); - - if (this.touchTimeout) { - clearTimeout(this.touchTimeout); - } - - this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval); - } - }; - - SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => { - EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault()); - }); - - if (this._pointerEvent) { - EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event)); - EventHandler.on(this._element, EVENT_POINTERUP, event => end(event)); - - this._element.classList.add(CLASS_NAME_POINTER_EVENT); - } else { - EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event)); - EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event)); - EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event)); - } - } - - _keydown(event) { - if (/input|textarea/i.test(event.target.tagName)) { - return; - } - - const direction = KEY_TO_DIRECTION[event.key]; - - if (direction) { - event.preventDefault(); - - this._slide(direction); - } - } - - _getItemIndex(element) { - this._items = element && element.parentNode ? SelectorEngine.find(SELECTOR_ITEM, element.parentNode) : []; - return this._items.indexOf(element); - } - - _getItemByOrder(order, activeElement) { - const isNext = order === ORDER_NEXT; - return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap); - } - - _triggerSlideEvent(relatedTarget, eventDirectionName) { - const targetIndex = this._getItemIndex(relatedTarget); - - const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)); - - return EventHandler.trigger(this._element, EVENT_SLIDE, { - relatedTarget, - direction: eventDirectionName, - from: fromIndex, - to: targetIndex - }); - } - - _setActiveIndicatorElement(element) { - if (this._indicatorsElement) { - const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE$1, this._indicatorsElement); - activeIndicator.classList.remove(CLASS_NAME_ACTIVE$2); - activeIndicator.removeAttribute('aria-current'); - const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement); - - for (let i = 0; i < indicators.length; i++) { - if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) { - indicators[i].classList.add(CLASS_NAME_ACTIVE$2); - indicators[i].setAttribute('aria-current', 'true'); - break; - } - } - } - } - - _updateInterval() { - const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); - - if (!element) { - return; - } - - const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10); - - if (elementInterval) { - this._config.defaultInterval = this._config.defaultInterval || this._config.interval; - this._config.interval = elementInterval; - } else { - this._config.interval = this._config.defaultInterval || this._config.interval; - } - } - - _slide(directionOrOrder, element) { - const order = this._directionToOrder(directionOrOrder); - - const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element); - - const activeElementIndex = this._getItemIndex(activeElement); - - const nextElement = element || this._getItemByOrder(order, activeElement); - - const nextElementIndex = this._getItemIndex(nextElement); - - const isCycling = Boolean(this._interval); - const isNext = order === ORDER_NEXT; - const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END; - const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV; - - const eventDirectionName = this._orderToDirection(order); - - if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE$2)) { - this._isSliding = false; - return; - } - - if (this._isSliding) { - return; - } - - const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName); - - if (slideEvent.defaultPrevented) { - return; - } - - if (!activeElement || !nextElement) { - // Some weirdness is happening, so we bail - return; - } - - this._isSliding = true; - - if (isCycling) { - this.pause(); - } - - this._setActiveIndicatorElement(nextElement); - - this._activeElement = nextElement; - - const triggerSlidEvent = () => { - EventHandler.trigger(this._element, EVENT_SLID, { - relatedTarget: nextElement, - direction: eventDirectionName, - from: activeElementIndex, - to: nextElementIndex - }); - }; - - if (this._element.classList.contains(CLASS_NAME_SLIDE)) { - nextElement.classList.add(orderClassName); - reflow(nextElement); - activeElement.classList.add(directionalClassName); - nextElement.classList.add(directionalClassName); - - const completeCallBack = () => { - nextElement.classList.remove(directionalClassName, orderClassName); - nextElement.classList.add(CLASS_NAME_ACTIVE$2); - activeElement.classList.remove(CLASS_NAME_ACTIVE$2, orderClassName, directionalClassName); - this._isSliding = false; - setTimeout(triggerSlidEvent, 0); - }; - - this._queueCallback(completeCallBack, activeElement, true); - } else { - activeElement.classList.remove(CLASS_NAME_ACTIVE$2); - nextElement.classList.add(CLASS_NAME_ACTIVE$2); - this._isSliding = false; - triggerSlidEvent(); - } - - if (isCycling) { - this.cycle(); - } - } - - _directionToOrder(direction) { - if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) { - return direction; - } - - if (isRTL()) { - return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT; - } - - return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV; - } - - _orderToDirection(order) { - if (![ORDER_NEXT, ORDER_PREV].includes(order)) { - return order; - } - - if (isRTL()) { - return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT; - } - - return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT; - } // Static - - - static carouselInterface(element, config) { - const data = Carousel.getOrCreateInstance(element, config); - let { - _config - } = data; - - if (typeof config === 'object') { - _config = { ..._config, - ...config - }; - } - - const action = typeof config === 'string' ? config : _config.slide; - - if (typeof config === 'number') { - data.to(config); - } else if (typeof action === 'string') { - if (typeof data[action] === 'undefined') { - throw new TypeError(`No method named "${action}"`); - } - - data[action](); - } else if (_config.interval && _config.ride) { - data.pause(); - data.cycle(); - } - } - - static jQueryInterface(config) { - return this.each(function () { - Carousel.carouselInterface(this, config); - }); - } - - static dataApiClickHandler(event) { - const target = getElementFromSelector(this); - - if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) { - return; - } - - const config = { ...Manipulator.getDataAttributes(target), - ...Manipulator.getDataAttributes(this) - }; - const slideIndex = this.getAttribute('data-bs-slide-to'); - - if (slideIndex) { - config.interval = false; - } - - Carousel.carouselInterface(target, config); - - if (slideIndex) { - Carousel.getInstance(target).to(slideIndex); - } - - event.preventDefault(); - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_CLICK_DATA_API$5, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler); - EventHandler.on(window, EVENT_LOAD_DATA_API$2, () => { - const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE); - - for (let i = 0, len = carousels.length; i < len; i++) { - Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i])); - } - }); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Carousel to jQuery only if jQuery is present - */ - - defineJQueryPlugin(Carousel); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): collapse.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$9 = 'collapse'; - const DATA_KEY$8 = 'bs.collapse'; - const EVENT_KEY$8 = `.${DATA_KEY$8}`; - const DATA_API_KEY$5 = '.data-api'; - const Default$8 = { - toggle: true, - parent: '' - }; - const DefaultType$8 = { - toggle: 'boolean', - parent: '(string|element)' - }; - const EVENT_SHOW$5 = `show${EVENT_KEY$8}`; - const EVENT_SHOWN$5 = `shown${EVENT_KEY$8}`; - const EVENT_HIDE$5 = `hide${EVENT_KEY$8}`; - const EVENT_HIDDEN$5 = `hidden${EVENT_KEY$8}`; - const EVENT_CLICK_DATA_API$4 = `click${EVENT_KEY$8}${DATA_API_KEY$5}`; - const CLASS_NAME_SHOW$8 = 'show'; - const CLASS_NAME_COLLAPSE = 'collapse'; - const CLASS_NAME_COLLAPSING = 'collapsing'; - const CLASS_NAME_COLLAPSED = 'collapsed'; - const WIDTH = 'width'; - const HEIGHT = 'height'; - const SELECTOR_ACTIVES = '.show, .collapsing'; - const SELECTOR_DATA_TOGGLE$4 = '[data-bs-toggle="collapse"]'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Collapse extends BaseComponent { - constructor(element, config) { - super(element); - this._isTransitioning = false; - this._config = this._getConfig(config); - this._triggerArray = SelectorEngine.find(`${SELECTOR_DATA_TOGGLE$4}[href="#${this._element.id}"],` + `${SELECTOR_DATA_TOGGLE$4}[data-bs-target="#${this._element.id}"]`); - const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE$4); - - for (let i = 0, len = toggleList.length; i < len; i++) { - const elem = toggleList[i]; - const selector = getSelectorFromElement(elem); - const filterElement = SelectorEngine.find(selector).filter(foundElem => foundElem === this._element); - - if (selector !== null && filterElement.length) { - this._selector = selector; - - this._triggerArray.push(elem); - } - } - - this._parent = this._config.parent ? this._getParent() : null; - - if (!this._config.parent) { - this._addAriaAndCollapsedClass(this._element, this._triggerArray); - } - - if (this._config.toggle) { - this.toggle(); - } - } // Getters - - - static get Default() { - return Default$8; - } - - static get NAME() { - return NAME$9; - } // Public - - - toggle() { - if (this._element.classList.contains(CLASS_NAME_SHOW$8)) { - this.hide(); - } else { - this.show(); - } - } - - show() { - if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW$8)) { - return; - } - - let actives; - let activesData; - - if (this._parent) { - actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent).filter(elem => { - if (typeof this._config.parent === 'string') { - return elem.getAttribute('data-bs-parent') === this._config.parent; - } - - return elem.classList.contains(CLASS_NAME_COLLAPSE); - }); - - if (actives.length === 0) { - actives = null; - } - } - - const container = SelectorEngine.findOne(this._selector); - - if (actives) { - const tempActiveData = actives.find(elem => container !== elem); - activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null; - - if (activesData && activesData._isTransitioning) { - return; - } - } - - const startEvent = EventHandler.trigger(this._element, EVENT_SHOW$5); - - if (startEvent.defaultPrevented) { - return; - } - - if (actives) { - actives.forEach(elemActive => { - if (container !== elemActive) { - Collapse.collapseInterface(elemActive, 'hide'); - } - - if (!activesData) { - Data.set(elemActive, DATA_KEY$8, null); - } - }); - } - - const dimension = this._getDimension(); - - this._element.classList.remove(CLASS_NAME_COLLAPSE); - - this._element.classList.add(CLASS_NAME_COLLAPSING); - - this._element.style[dimension] = 0; - - if (this._triggerArray.length) { - this._triggerArray.forEach(element => { - element.classList.remove(CLASS_NAME_COLLAPSED); - element.setAttribute('aria-expanded', true); - }); - } - - this.setTransitioning(true); - - const complete = () => { - this._element.classList.remove(CLASS_NAME_COLLAPSING); - - this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$8); - - this._element.style[dimension] = ''; - this.setTransitioning(false); - EventHandler.trigger(this._element, EVENT_SHOWN$5); - }; - - const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1); - const scrollSize = `scroll${capitalizedDimension}`; - - this._queueCallback(complete, this._element, true); - - this._element.style[dimension] = `${this._element[scrollSize]}px`; - } - - hide() { - if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW$8)) { - return; - } - - const startEvent = EventHandler.trigger(this._element, EVENT_HIDE$5); - - if (startEvent.defaultPrevented) { - return; - } - - const dimension = this._getDimension(); - - this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`; - reflow(this._element); - - this._element.classList.add(CLASS_NAME_COLLAPSING); - - this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$8); - - const triggerArrayLength = this._triggerArray.length; - - if (triggerArrayLength > 0) { - for (let i = 0; i < triggerArrayLength; i++) { - const trigger = this._triggerArray[i]; - const elem = getElementFromSelector(trigger); - - if (elem && !elem.classList.contains(CLASS_NAME_SHOW$8)) { - trigger.classList.add(CLASS_NAME_COLLAPSED); - trigger.setAttribute('aria-expanded', false); - } - } - } - - this.setTransitioning(true); - - const complete = () => { - this.setTransitioning(false); - - this._element.classList.remove(CLASS_NAME_COLLAPSING); - - this._element.classList.add(CLASS_NAME_COLLAPSE); - - EventHandler.trigger(this._element, EVENT_HIDDEN$5); - }; - - this._element.style[dimension] = ''; - - this._queueCallback(complete, this._element, true); - } - - setTransitioning(isTransitioning) { - this._isTransitioning = isTransitioning; - } // Private - - - _getConfig(config) { - config = { ...Default$8, - ...config - }; - config.toggle = Boolean(config.toggle); // Coerce string values - - typeCheckConfig(NAME$9, config, DefaultType$8); - return config; - } - - _getDimension() { - return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT; - } - - _getParent() { - let { - parent - } = this._config; - parent = getElement(parent); - const selector = `${SELECTOR_DATA_TOGGLE$4}[data-bs-parent="${parent}"]`; - SelectorEngine.find(selector, parent).forEach(element => { - const selected = getElementFromSelector(element); - - this._addAriaAndCollapsedClass(selected, [element]); - }); - return parent; - } - - _addAriaAndCollapsedClass(element, triggerArray) { - if (!element || !triggerArray.length) { - return; - } - - const isOpen = element.classList.contains(CLASS_NAME_SHOW$8); - triggerArray.forEach(elem => { - if (isOpen) { - elem.classList.remove(CLASS_NAME_COLLAPSED); - } else { - elem.classList.add(CLASS_NAME_COLLAPSED); - } - - elem.setAttribute('aria-expanded', isOpen); - }); - } // Static - - - static collapseInterface(element, config) { - let data = Collapse.getInstance(element); - const _config = { ...Default$8, - ...Manipulator.getDataAttributes(element), - ...(typeof config === 'object' && config ? config : {}) - }; - - if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) { - _config.toggle = false; - } - - if (!data) { - data = new Collapse(element, _config); - } - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - } - } - - static jQueryInterface(config) { - return this.each(function () { - Collapse.collapseInterface(this, config); - }); - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_CLICK_DATA_API$4, SELECTOR_DATA_TOGGLE$4, function (event) { - // preventDefault only for <a> elements (which change the URL) not inside the collapsible element - if (event.target.tagName === 'A' || event.delegateTarget && event.delegateTarget.tagName === 'A') { - event.preventDefault(); - } - - const triggerData = Manipulator.getDataAttributes(this); - const selector = getSelectorFromElement(this); - const selectorElements = SelectorEngine.find(selector); - selectorElements.forEach(element => { - const data = Collapse.getInstance(element); - let config; - - if (data) { - // update parent attribute - if (data._parent === null && typeof triggerData.parent === 'string') { - data._config.parent = triggerData.parent; - data._parent = data._getParent(); - } - - config = 'toggle'; - } else { - config = triggerData; - } - - Collapse.collapseInterface(element, config); - }); - }); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Collapse to jQuery only if jQuery is present - */ - - defineJQueryPlugin(Collapse); - - var top = 'top'; - var bottom = 'bottom'; - var right = 'right'; - var left = 'left'; - var auto = 'auto'; - var basePlacements = [top, bottom, right, left]; - var start = 'start'; - var end = 'end'; - var clippingParents = 'clippingParents'; - var viewport = 'viewport'; - var popper = 'popper'; - var reference = 'reference'; - var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) { - return acc.concat([placement + "-" + start, placement + "-" + end]); - }, []); - var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) { - return acc.concat([placement, placement + "-" + start, placement + "-" + end]); - }, []); // modifiers that need to read the DOM - - var beforeRead = 'beforeRead'; - var read = 'read'; - var afterRead = 'afterRead'; // pure-logic modifiers - - var beforeMain = 'beforeMain'; - var main = 'main'; - var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state) - - var beforeWrite = 'beforeWrite'; - var write = 'write'; - var afterWrite = 'afterWrite'; - var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite]; - - function getNodeName(element) { - return element ? (element.nodeName || '').toLowerCase() : null; - } - - function getWindow(node) { - if (node == null) { - return window; - } - - if (node.toString() !== '[object Window]') { - var ownerDocument = node.ownerDocument; - return ownerDocument ? ownerDocument.defaultView || window : window; - } - - return node; - } - - function isElement(node) { - var OwnElement = getWindow(node).Element; - return node instanceof OwnElement || node instanceof Element; - } - - function isHTMLElement(node) { - var OwnElement = getWindow(node).HTMLElement; - return node instanceof OwnElement || node instanceof HTMLElement; - } - - function isShadowRoot(node) { - // IE 11 has no ShadowRoot - if (typeof ShadowRoot === 'undefined') { - return false; - } - - var OwnElement = getWindow(node).ShadowRoot; - return node instanceof OwnElement || node instanceof ShadowRoot; - } - - // and applies them to the HTMLElements such as popper and arrow - - function applyStyles(_ref) { - var state = _ref.state; - Object.keys(state.elements).forEach(function (name) { - var style = state.styles[name] || {}; - var attributes = state.attributes[name] || {}; - var element = state.elements[name]; // arrow is optional + virtual elements - - if (!isHTMLElement(element) || !getNodeName(element)) { - return; - } // Flow doesn't support to extend this property, but it's the most - // effective way to apply styles to an HTMLElement - // $FlowFixMe[cannot-write] - - - Object.assign(element.style, style); - Object.keys(attributes).forEach(function (name) { - var value = attributes[name]; - - if (value === false) { - element.removeAttribute(name); - } else { - element.setAttribute(name, value === true ? '' : value); - } - }); - }); - } - - function effect$2(_ref2) { - var state = _ref2.state; - var initialStyles = { - popper: { - position: state.options.strategy, - left: '0', - top: '0', - margin: '0' - }, - arrow: { - position: 'absolute' - }, - reference: {} - }; - Object.assign(state.elements.popper.style, initialStyles.popper); - state.styles = initialStyles; - - if (state.elements.arrow) { - Object.assign(state.elements.arrow.style, initialStyles.arrow); - } - - return function () { - Object.keys(state.elements).forEach(function (name) { - var element = state.elements[name]; - var attributes = state.attributes[name] || {}; - var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them - - var style = styleProperties.reduce(function (style, property) { - style[property] = ''; - return style; - }, {}); // arrow is optional + virtual elements - - if (!isHTMLElement(element) || !getNodeName(element)) { - return; - } - - Object.assign(element.style, style); - Object.keys(attributes).forEach(function (attribute) { - element.removeAttribute(attribute); - }); - }); - }; - } // eslint-disable-next-line import/no-unused-modules - - - var applyStyles$1 = { - name: 'applyStyles', - enabled: true, - phase: 'write', - fn: applyStyles, - effect: effect$2, - requires: ['computeStyles'] - }; - - function getBasePlacement(placement) { - return placement.split('-')[0]; - } - - function getBoundingClientRect(element) { - var rect = element.getBoundingClientRect(); - return { - width: rect.width, - height: rect.height, - top: rect.top, - right: rect.right, - bottom: rect.bottom, - left: rect.left, - x: rect.left, - y: rect.top - }; - } - - // means it doesn't take into account transforms. - - function getLayoutRect(element) { - var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed. - // Fixes https://github.com/popperjs/popper-core/issues/1223 - - var width = element.offsetWidth; - var height = element.offsetHeight; - - if (Math.abs(clientRect.width - width) <= 1) { - width = clientRect.width; - } - - if (Math.abs(clientRect.height - height) <= 1) { - height = clientRect.height; - } - - return { - x: element.offsetLeft, - y: element.offsetTop, - width: width, - height: height - }; - } - - function contains(parent, child) { - var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method - - if (parent.contains(child)) { - return true; - } // then fallback to custom implementation with Shadow DOM support - else if (rootNode && isShadowRoot(rootNode)) { - var next = child; - - do { - if (next && parent.isSameNode(next)) { - return true; - } // $FlowFixMe[prop-missing]: need a better way to handle this... - - - next = next.parentNode || next.host; - } while (next); - } // Give up, the result is false - - - return false; - } - - function getComputedStyle$1(element) { - return getWindow(element).getComputedStyle(element); - } - - function isTableElement(element) { - return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0; - } - - function getDocumentElement(element) { - // $FlowFixMe[incompatible-return]: assume body is always available - return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing] - element.document) || window.document).documentElement; - } - - function getParentNode(element) { - if (getNodeName(element) === 'html') { - return element; - } - - return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle - // $FlowFixMe[incompatible-return] - // $FlowFixMe[prop-missing] - element.assignedSlot || // step into the shadow DOM of the parent of a slotted node - element.parentNode || ( // DOM Element detected - isShadowRoot(element) ? element.host : null) || // ShadowRoot detected - // $FlowFixMe[incompatible-call]: HTMLElement is a Node - getDocumentElement(element) // fallback - - ); - } - - function getTrueOffsetParent(element) { - if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837 - getComputedStyle$1(element).position === 'fixed') { - return null; - } - - return element.offsetParent; - } // `.offsetParent` reports `null` for fixed elements, while absolute elements - // return the containing block - - - function getContainingBlock(element) { - var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1; - var isIE = navigator.userAgent.indexOf('Trident') !== -1; - - if (isIE && isHTMLElement(element)) { - // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport - var elementCss = getComputedStyle$1(element); - - if (elementCss.position === 'fixed') { - return null; - } - } - - var currentNode = getParentNode(element); - - while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) { - var css = getComputedStyle$1(currentNode); // This is non-exhaustive but covers the most common CSS properties that - // create a containing block. - // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block - - if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') { - return currentNode; - } else { - currentNode = currentNode.parentNode; - } - } - - return null; - } // Gets the closest ancestor positioned element. Handles some edge cases, - // such as table ancestors and cross browser bugs. - - - function getOffsetParent(element) { - var window = getWindow(element); - var offsetParent = getTrueOffsetParent(element); - - while (offsetParent && isTableElement(offsetParent) && getComputedStyle$1(offsetParent).position === 'static') { - offsetParent = getTrueOffsetParent(offsetParent); - } - - if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle$1(offsetParent).position === 'static')) { - return window; - } - - return offsetParent || getContainingBlock(element) || window; - } - - function getMainAxisFromPlacement(placement) { - return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y'; - } - - var max = Math.max; - var min = Math.min; - var round = Math.round; - - function within(min$1, value, max$1) { - return max(min$1, min(value, max$1)); - } - - function getFreshSideObject() { - return { - top: 0, - right: 0, - bottom: 0, - left: 0 - }; - } - - function mergePaddingObject(paddingObject) { - return Object.assign({}, getFreshSideObject(), paddingObject); - } - - function expandToHashMap(value, keys) { - return keys.reduce(function (hashMap, key) { - hashMap[key] = value; - return hashMap; - }, {}); - } - - var toPaddingObject = function toPaddingObject(padding, state) { - padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, { - placement: state.placement - })) : padding; - return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements)); - }; - - function arrow(_ref) { - var _state$modifiersData$; - - var state = _ref.state, - name = _ref.name, - options = _ref.options; - var arrowElement = state.elements.arrow; - var popperOffsets = state.modifiersData.popperOffsets; - var basePlacement = getBasePlacement(state.placement); - var axis = getMainAxisFromPlacement(basePlacement); - var isVertical = [left, right].indexOf(basePlacement) >= 0; - var len = isVertical ? 'height' : 'width'; - - if (!arrowElement || !popperOffsets) { - return; - } - - var paddingObject = toPaddingObject(options.padding, state); - var arrowRect = getLayoutRect(arrowElement); - var minProp = axis === 'y' ? top : left; - var maxProp = axis === 'y' ? bottom : right; - var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len]; - var startDiff = popperOffsets[axis] - state.rects.reference[axis]; - var arrowOffsetParent = getOffsetParent(arrowElement); - var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0; - var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is - // outside of the popper bounds - - var min = paddingObject[minProp]; - var max = clientSize - arrowRect[len] - paddingObject[maxProp]; - var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference; - var offset = within(min, center, max); // Prevents breaking syntax highlighting... - - var axisProp = axis; - state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$); - } - - function effect$1(_ref2) { - var state = _ref2.state, - options = _ref2.options; - var _options$element = options.element, - arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element; - - if (arrowElement == null) { - return; - } // CSS selector - - - if (typeof arrowElement === 'string') { - arrowElement = state.elements.popper.querySelector(arrowElement); - - if (!arrowElement) { - return; - } - } - - if (process.env.NODE_ENV !== "production") { - if (!isHTMLElement(arrowElement)) { - console.error(['Popper: "arrow" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' ')); - } - } - - if (!contains(state.elements.popper, arrowElement)) { - if (process.env.NODE_ENV !== "production") { - console.error(['Popper: "arrow" modifier\'s `element` must be a child of the popper', 'element.'].join(' ')); - } - - return; - } - - state.elements.arrow = arrowElement; - } // eslint-disable-next-line import/no-unused-modules - - - var arrow$1 = { - name: 'arrow', - enabled: true, - phase: 'main', - fn: arrow, - effect: effect$1, - requires: ['popperOffsets'], - requiresIfExists: ['preventOverflow'] - }; - - var unsetSides = { - top: 'auto', - right: 'auto', - bottom: 'auto', - left: 'auto' - }; // Round the offsets to the nearest suitable subpixel based on the DPR. - // Zooming can change the DPR, but it seems to report a value that will - // cleanly divide the values into the appropriate subpixels. - - function roundOffsetsByDPR(_ref) { - var x = _ref.x, - y = _ref.y; - var win = window; - var dpr = win.devicePixelRatio || 1; - return { - x: round(round(x * dpr) / dpr) || 0, - y: round(round(y * dpr) / dpr) || 0 - }; - } - - function mapToStyles(_ref2) { - var _Object$assign2; - - var popper = _ref2.popper, - popperRect = _ref2.popperRect, - placement = _ref2.placement, - offsets = _ref2.offsets, - position = _ref2.position, - gpuAcceleration = _ref2.gpuAcceleration, - adaptive = _ref2.adaptive, - roundOffsets = _ref2.roundOffsets; - - var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets, - _ref3$x = _ref3.x, - x = _ref3$x === void 0 ? 0 : _ref3$x, - _ref3$y = _ref3.y, - y = _ref3$y === void 0 ? 0 : _ref3$y; - - var hasX = offsets.hasOwnProperty('x'); - var hasY = offsets.hasOwnProperty('y'); - var sideX = left; - var sideY = top; - var win = window; - - if (adaptive) { - var offsetParent = getOffsetParent(popper); - var heightProp = 'clientHeight'; - var widthProp = 'clientWidth'; - - if (offsetParent === getWindow(popper)) { - offsetParent = getDocumentElement(popper); - - if (getComputedStyle$1(offsetParent).position !== 'static') { - heightProp = 'scrollHeight'; - widthProp = 'scrollWidth'; - } - } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it - - - offsetParent = offsetParent; - - if (placement === top) { - sideY = bottom; // $FlowFixMe[prop-missing] - - y -= offsetParent[heightProp] - popperRect.height; - y *= gpuAcceleration ? 1 : -1; - } - - if (placement === left) { - sideX = right; // $FlowFixMe[prop-missing] - - x -= offsetParent[widthProp] - popperRect.width; - x *= gpuAcceleration ? 1 : -1; - } - } - - var commonStyles = Object.assign({ - position: position - }, adaptive && unsetSides); - - if (gpuAcceleration) { - var _Object$assign; - - return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? "translate(" + x + "px, " + y + "px)" : "translate3d(" + x + "px, " + y + "px, 0)", _Object$assign)); - } - - return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + "px" : '', _Object$assign2[sideX] = hasX ? x + "px" : '', _Object$assign2.transform = '', _Object$assign2)); - } - - function computeStyles(_ref4) { - var state = _ref4.state, - options = _ref4.options; - var _options$gpuAccelerat = options.gpuAcceleration, - gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat, - _options$adaptive = options.adaptive, - adaptive = _options$adaptive === void 0 ? true : _options$adaptive, - _options$roundOffsets = options.roundOffsets, - roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets; - - if (process.env.NODE_ENV !== "production") { - var transitionProperty = getComputedStyle$1(state.elements.popper).transitionProperty || ''; - - if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) { - return transitionProperty.indexOf(property) >= 0; - })) { - console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: "transform", "top", "right", "bottom", "left".', '\n\n', 'Disable the "computeStyles" modifier\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\n\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' ')); - } - } - - var commonStyles = { - placement: getBasePlacement(state.placement), - popper: state.elements.popper, - popperRect: state.rects.popper, - gpuAcceleration: gpuAcceleration - }; - - if (state.modifiersData.popperOffsets != null) { - state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, { - offsets: state.modifiersData.popperOffsets, - position: state.options.strategy, - adaptive: adaptive, - roundOffsets: roundOffsets - }))); - } - - if (state.modifiersData.arrow != null) { - state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, { - offsets: state.modifiersData.arrow, - position: 'absolute', - adaptive: false, - roundOffsets: roundOffsets - }))); - } - - state.attributes.popper = Object.assign({}, state.attributes.popper, { - 'data-popper-placement': state.placement - }); - } // eslint-disable-next-line import/no-unused-modules - - - var computeStyles$1 = { - name: 'computeStyles', - enabled: true, - phase: 'beforeWrite', - fn: computeStyles, - data: {} - }; - - var passive = { - passive: true - }; - - function effect(_ref) { - var state = _ref.state, - instance = _ref.instance, - options = _ref.options; - var _options$scroll = options.scroll, - scroll = _options$scroll === void 0 ? true : _options$scroll, - _options$resize = options.resize, - resize = _options$resize === void 0 ? true : _options$resize; - var window = getWindow(state.elements.popper); - var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper); - - if (scroll) { - scrollParents.forEach(function (scrollParent) { - scrollParent.addEventListener('scroll', instance.update, passive); - }); - } - - if (resize) { - window.addEventListener('resize', instance.update, passive); - } - - return function () { - if (scroll) { - scrollParents.forEach(function (scrollParent) { - scrollParent.removeEventListener('scroll', instance.update, passive); - }); - } - - if (resize) { - window.removeEventListener('resize', instance.update, passive); - } - }; - } // eslint-disable-next-line import/no-unused-modules - - - var eventListeners = { - name: 'eventListeners', - enabled: true, - phase: 'write', - fn: function fn() {}, - effect: effect, - data: {} - }; - - var hash$1 = { - left: 'right', - right: 'left', - bottom: 'top', - top: 'bottom' - }; - function getOppositePlacement(placement) { - return placement.replace(/left|right|bottom|top/g, function (matched) { - return hash$1[matched]; - }); - } - - var hash = { - start: 'end', - end: 'start' - }; - function getOppositeVariationPlacement(placement) { - return placement.replace(/start|end/g, function (matched) { - return hash[matched]; - }); - } - - function getWindowScroll(node) { - var win = getWindow(node); - var scrollLeft = win.pageXOffset; - var scrollTop = win.pageYOffset; - return { - scrollLeft: scrollLeft, - scrollTop: scrollTop - }; - } - - function getWindowScrollBarX(element) { - // If <html> has a CSS width greater than the viewport, then this will be - // incorrect for RTL. - // Popper 1 is broken in this case and never had a bug report so let's assume - // it's not an issue. I don't think anyone ever specifies width on <html> - // anyway. - // Browsers where the left scrollbar doesn't cause an issue report `0` for - // this (e.g. Edge 2019, IE11, Safari) - return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft; - } - - function getViewportRect(element) { - var win = getWindow(element); - var html = getDocumentElement(element); - var visualViewport = win.visualViewport; - var width = html.clientWidth; - var height = html.clientHeight; - var x = 0; - var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper - // can be obscured underneath it. - // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even - // if it isn't open, so if this isn't available, the popper will be detected - // to overflow the bottom of the screen too early. - - if (visualViewport) { - width = visualViewport.width; - height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently) - // In Chrome, it returns a value very close to 0 (+/-) but contains rounding - // errors due to floating point numbers, so we need to check precision. - // Safari returns a number <= 0, usually < -1 when pinch-zoomed - // Feature detection fails in mobile emulation mode in Chrome. - // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) < - // 0.001 - // Fallback here: "Not Safari" userAgent - - if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) { - x = visualViewport.offsetLeft; - y = visualViewport.offsetTop; - } - } - - return { - width: width, - height: height, - x: x + getWindowScrollBarX(element), - y: y - }; - } - - // of the `<html>` and `<body>` rect bounds if horizontally scrollable - - function getDocumentRect(element) { - var _element$ownerDocumen; - - var html = getDocumentElement(element); - var winScroll = getWindowScroll(element); - var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body; - var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0); - var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0); - var x = -winScroll.scrollLeft + getWindowScrollBarX(element); - var y = -winScroll.scrollTop; - - if (getComputedStyle$1(body || html).direction === 'rtl') { - x += max(html.clientWidth, body ? body.clientWidth : 0) - width; - } - - return { - width: width, - height: height, - x: x, - y: y - }; - } - - function isScrollParent(element) { - // Firefox wants us to check `-x` and `-y` variations as well - var _getComputedStyle = getComputedStyle$1(element), - overflow = _getComputedStyle.overflow, - overflowX = _getComputedStyle.overflowX, - overflowY = _getComputedStyle.overflowY; - - return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX); - } - - function getScrollParent(node) { - if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) { - // $FlowFixMe[incompatible-return]: assume body is always available - return node.ownerDocument.body; - } - - if (isHTMLElement(node) && isScrollParent(node)) { - return node; - } - - return getScrollParent(getParentNode(node)); - } - - /* - given a DOM element, return the list of all scroll parents, up the list of ancesors - until we get to the top window object. This list is what we attach scroll listeners - to, because if any of these parent elements scroll, we'll need to re-calculate the - reference element's position. - */ - - function listScrollParents(element, list) { - var _element$ownerDocumen; - - if (list === void 0) { - list = []; - } - - var scrollParent = getScrollParent(element); - var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body); - var win = getWindow(scrollParent); - var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent; - var updatedList = list.concat(target); - return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here - updatedList.concat(listScrollParents(getParentNode(target))); - } - - function rectToClientRect(rect) { - return Object.assign({}, rect, { - left: rect.x, - top: rect.y, - right: rect.x + rect.width, - bottom: rect.y + rect.height - }); - } - - function getInnerBoundingClientRect(element) { - var rect = getBoundingClientRect(element); - rect.top = rect.top + element.clientTop; - rect.left = rect.left + element.clientLeft; - rect.bottom = rect.top + element.clientHeight; - rect.right = rect.left + element.clientWidth; - rect.width = element.clientWidth; - rect.height = element.clientHeight; - rect.x = rect.left; - rect.y = rect.top; - return rect; - } - - function getClientRectFromMixedType(element, clippingParent) { - return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element))); - } // A "clipping parent" is an overflowable container with the characteristic of - // clipping (or hiding) overflowing elements with a position different from - // `initial` - - - function getClippingParents(element) { - var clippingParents = listScrollParents(getParentNode(element)); - var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle$1(element).position) >= 0; - var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element; - - if (!isElement(clipperElement)) { - return []; - } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414 - - - return clippingParents.filter(function (clippingParent) { - return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body'; - }); - } // Gets the maximum area that the element is visible in due to any number of - // clipping parents - - - function getClippingRect(element, boundary, rootBoundary) { - var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary); - var clippingParents = [].concat(mainClippingParents, [rootBoundary]); - var firstClippingParent = clippingParents[0]; - var clippingRect = clippingParents.reduce(function (accRect, clippingParent) { - var rect = getClientRectFromMixedType(element, clippingParent); - accRect.top = max(rect.top, accRect.top); - accRect.right = min(rect.right, accRect.right); - accRect.bottom = min(rect.bottom, accRect.bottom); - accRect.left = max(rect.left, accRect.left); - return accRect; - }, getClientRectFromMixedType(element, firstClippingParent)); - clippingRect.width = clippingRect.right - clippingRect.left; - clippingRect.height = clippingRect.bottom - clippingRect.top; - clippingRect.x = clippingRect.left; - clippingRect.y = clippingRect.top; - return clippingRect; - } - - function getVariation(placement) { - return placement.split('-')[1]; - } - - function computeOffsets(_ref) { - var reference = _ref.reference, - element = _ref.element, - placement = _ref.placement; - var basePlacement = placement ? getBasePlacement(placement) : null; - var variation = placement ? getVariation(placement) : null; - var commonX = reference.x + reference.width / 2 - element.width / 2; - var commonY = reference.y + reference.height / 2 - element.height / 2; - var offsets; - - switch (basePlacement) { - case top: - offsets = { - x: commonX, - y: reference.y - element.height - }; - break; - - case bottom: - offsets = { - x: commonX, - y: reference.y + reference.height - }; - break; - - case right: - offsets = { - x: reference.x + reference.width, - y: commonY - }; - break; - - case left: - offsets = { - x: reference.x - element.width, - y: commonY - }; - break; - - default: - offsets = { - x: reference.x, - y: reference.y - }; - } - - var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null; - - if (mainAxis != null) { - var len = mainAxis === 'y' ? 'height' : 'width'; - - switch (variation) { - case start: - offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2); - break; - - case end: - offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2); - break; - } - } - - return offsets; - } - - function detectOverflow(state, options) { - if (options === void 0) { - options = {}; - } - - var _options = options, - _options$placement = _options.placement, - placement = _options$placement === void 0 ? state.placement : _options$placement, - _options$boundary = _options.boundary, - boundary = _options$boundary === void 0 ? clippingParents : _options$boundary, - _options$rootBoundary = _options.rootBoundary, - rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary, - _options$elementConte = _options.elementContext, - elementContext = _options$elementConte === void 0 ? popper : _options$elementConte, - _options$altBoundary = _options.altBoundary, - altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary, - _options$padding = _options.padding, - padding = _options$padding === void 0 ? 0 : _options$padding; - var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements)); - var altContext = elementContext === popper ? reference : popper; - var referenceElement = state.elements.reference; - var popperRect = state.rects.popper; - var element = state.elements[altBoundary ? altContext : elementContext]; - var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary); - var referenceClientRect = getBoundingClientRect(referenceElement); - var popperOffsets = computeOffsets({ - reference: referenceClientRect, - element: popperRect, - strategy: 'absolute', - placement: placement - }); - var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets)); - var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect - // 0 or negative = within the clipping rect - - var overflowOffsets = { - top: clippingClientRect.top - elementClientRect.top + paddingObject.top, - bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom, - left: clippingClientRect.left - elementClientRect.left + paddingObject.left, - right: elementClientRect.right - clippingClientRect.right + paddingObject.right - }; - var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element - - if (elementContext === popper && offsetData) { - var offset = offsetData[placement]; - Object.keys(overflowOffsets).forEach(function (key) { - var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1; - var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x'; - overflowOffsets[key] += offset[axis] * multiply; - }); - } - - return overflowOffsets; - } - - function computeAutoPlacement(state, options) { - if (options === void 0) { - options = {}; - } - - var _options = options, - placement = _options.placement, - boundary = _options.boundary, - rootBoundary = _options.rootBoundary, - padding = _options.padding, - flipVariations = _options.flipVariations, - _options$allowedAutoP = _options.allowedAutoPlacements, - allowedAutoPlacements = _options$allowedAutoP === void 0 ? placements : _options$allowedAutoP; - var variation = getVariation(placement); - var placements$1 = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) { - return getVariation(placement) === variation; - }) : basePlacements; - var allowedPlacements = placements$1.filter(function (placement) { - return allowedAutoPlacements.indexOf(placement) >= 0; - }); - - if (allowedPlacements.length === 0) { - allowedPlacements = placements$1; - - if (process.env.NODE_ENV !== "production") { - console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, "auto" cannot be used to allow "bottom-start".', 'Use "auto-start" instead.'].join(' ')); - } - } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions... - - - var overflows = allowedPlacements.reduce(function (acc, placement) { - acc[placement] = detectOverflow(state, { - placement: placement, - boundary: boundary, - rootBoundary: rootBoundary, - padding: padding - })[getBasePlacement(placement)]; - return acc; - }, {}); - return Object.keys(overflows).sort(function (a, b) { - return overflows[a] - overflows[b]; - }); - } - - function getExpandedFallbackPlacements(placement) { - if (getBasePlacement(placement) === auto) { - return []; - } - - var oppositePlacement = getOppositePlacement(placement); - return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)]; - } - - function flip(_ref) { - var state = _ref.state, - options = _ref.options, - name = _ref.name; - - if (state.modifiersData[name]._skip) { - return; - } - - var _options$mainAxis = options.mainAxis, - checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis, - _options$altAxis = options.altAxis, - checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis, - specifiedFallbackPlacements = options.fallbackPlacements, - padding = options.padding, - boundary = options.boundary, - rootBoundary = options.rootBoundary, - altBoundary = options.altBoundary, - _options$flipVariatio = options.flipVariations, - flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio, - allowedAutoPlacements = options.allowedAutoPlacements; - var preferredPlacement = state.options.placement; - var basePlacement = getBasePlacement(preferredPlacement); - var isBasePlacement = basePlacement === preferredPlacement; - var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement)); - var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) { - return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, { - placement: placement, - boundary: boundary, - rootBoundary: rootBoundary, - padding: padding, - flipVariations: flipVariations, - allowedAutoPlacements: allowedAutoPlacements - }) : placement); - }, []); - var referenceRect = state.rects.reference; - var popperRect = state.rects.popper; - var checksMap = new Map(); - var makeFallbackChecks = true; - var firstFittingPlacement = placements[0]; - - for (var i = 0; i < placements.length; i++) { - var placement = placements[i]; - - var _basePlacement = getBasePlacement(placement); - - var isStartVariation = getVariation(placement) === start; - var isVertical = [top, bottom].indexOf(_basePlacement) >= 0; - var len = isVertical ? 'width' : 'height'; - var overflow = detectOverflow(state, { - placement: placement, - boundary: boundary, - rootBoundary: rootBoundary, - altBoundary: altBoundary, - padding: padding - }); - var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top; - - if (referenceRect[len] > popperRect[len]) { - mainVariationSide = getOppositePlacement(mainVariationSide); - } - - var altVariationSide = getOppositePlacement(mainVariationSide); - var checks = []; - - if (checkMainAxis) { - checks.push(overflow[_basePlacement] <= 0); - } - - if (checkAltAxis) { - checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0); - } - - if (checks.every(function (check) { - return check; - })) { - firstFittingPlacement = placement; - makeFallbackChecks = false; - break; - } - - checksMap.set(placement, checks); - } - - if (makeFallbackChecks) { - // `2` may be desired in some cases – research later - var numberOfChecks = flipVariations ? 3 : 1; - - var _loop = function _loop(_i) { - var fittingPlacement = placements.find(function (placement) { - var checks = checksMap.get(placement); - - if (checks) { - return checks.slice(0, _i).every(function (check) { - return check; - }); - } - }); - - if (fittingPlacement) { - firstFittingPlacement = fittingPlacement; - return "break"; - } - }; - - for (var _i = numberOfChecks; _i > 0; _i--) { - var _ret = _loop(_i); - - if (_ret === "break") break; - } - } - - if (state.placement !== firstFittingPlacement) { - state.modifiersData[name]._skip = true; - state.placement = firstFittingPlacement; - state.reset = true; - } - } // eslint-disable-next-line import/no-unused-modules - - - var flip$1 = { - name: 'flip', - enabled: true, - phase: 'main', - fn: flip, - requiresIfExists: ['offset'], - data: { - _skip: false - } - }; - - function getSideOffsets(overflow, rect, preventedOffsets) { - if (preventedOffsets === void 0) { - preventedOffsets = { - x: 0, - y: 0 - }; - } - - return { - top: overflow.top - rect.height - preventedOffsets.y, - right: overflow.right - rect.width + preventedOffsets.x, - bottom: overflow.bottom - rect.height + preventedOffsets.y, - left: overflow.left - rect.width - preventedOffsets.x - }; - } - - function isAnySideFullyClipped(overflow) { - return [top, right, bottom, left].some(function (side) { - return overflow[side] >= 0; - }); - } - - function hide(_ref) { - var state = _ref.state, - name = _ref.name; - var referenceRect = state.rects.reference; - var popperRect = state.rects.popper; - var preventedOffsets = state.modifiersData.preventOverflow; - var referenceOverflow = detectOverflow(state, { - elementContext: 'reference' - }); - var popperAltOverflow = detectOverflow(state, { - altBoundary: true - }); - var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect); - var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets); - var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets); - var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets); - state.modifiersData[name] = { - referenceClippingOffsets: referenceClippingOffsets, - popperEscapeOffsets: popperEscapeOffsets, - isReferenceHidden: isReferenceHidden, - hasPopperEscaped: hasPopperEscaped - }; - state.attributes.popper = Object.assign({}, state.attributes.popper, { - 'data-popper-reference-hidden': isReferenceHidden, - 'data-popper-escaped': hasPopperEscaped - }); - } // eslint-disable-next-line import/no-unused-modules - - - var hide$1 = { - name: 'hide', - enabled: true, - phase: 'main', - requiresIfExists: ['preventOverflow'], - fn: hide - }; - - function distanceAndSkiddingToXY(placement, rects, offset) { - var basePlacement = getBasePlacement(placement); - var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1; - - var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, { - placement: placement - })) : offset, - skidding = _ref[0], - distance = _ref[1]; - - skidding = skidding || 0; - distance = (distance || 0) * invertDistance; - return [left, right].indexOf(basePlacement) >= 0 ? { - x: distance, - y: skidding - } : { - x: skidding, - y: distance - }; - } - - function offset(_ref2) { - var state = _ref2.state, - options = _ref2.options, - name = _ref2.name; - var _options$offset = options.offset, - offset = _options$offset === void 0 ? [0, 0] : _options$offset; - var data = placements.reduce(function (acc, placement) { - acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset); - return acc; - }, {}); - var _data$state$placement = data[state.placement], - x = _data$state$placement.x, - y = _data$state$placement.y; - - if (state.modifiersData.popperOffsets != null) { - state.modifiersData.popperOffsets.x += x; - state.modifiersData.popperOffsets.y += y; - } - - state.modifiersData[name] = data; - } // eslint-disable-next-line import/no-unused-modules - - - var offset$1 = { - name: 'offset', - enabled: true, - phase: 'main', - requires: ['popperOffsets'], - fn: offset - }; - - function popperOffsets(_ref) { - var state = _ref.state, - name = _ref.name; // Offsets are the actual position the popper needs to have to be - // properly positioned near its reference element - // This is the most basic placement, and will be adjusted by - // the modifiers in the next step - - state.modifiersData[name] = computeOffsets({ - reference: state.rects.reference, - element: state.rects.popper, - strategy: 'absolute', - placement: state.placement - }); - } // eslint-disable-next-line import/no-unused-modules - - - var popperOffsets$1 = { - name: 'popperOffsets', - enabled: true, - phase: 'read', - fn: popperOffsets, - data: {} - }; - - function getAltAxis(axis) { - return axis === 'x' ? 'y' : 'x'; - } - - function preventOverflow(_ref) { - var state = _ref.state, - options = _ref.options, - name = _ref.name; - var _options$mainAxis = options.mainAxis, - checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis, - _options$altAxis = options.altAxis, - checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis, - boundary = options.boundary, - rootBoundary = options.rootBoundary, - altBoundary = options.altBoundary, - padding = options.padding, - _options$tether = options.tether, - tether = _options$tether === void 0 ? true : _options$tether, - _options$tetherOffset = options.tetherOffset, - tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset; - var overflow = detectOverflow(state, { - boundary: boundary, - rootBoundary: rootBoundary, - padding: padding, - altBoundary: altBoundary - }); - var basePlacement = getBasePlacement(state.placement); - var variation = getVariation(state.placement); - var isBasePlacement = !variation; - var mainAxis = getMainAxisFromPlacement(basePlacement); - var altAxis = getAltAxis(mainAxis); - var popperOffsets = state.modifiersData.popperOffsets; - var referenceRect = state.rects.reference; - var popperRect = state.rects.popper; - var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, { - placement: state.placement - })) : tetherOffset; - var data = { - x: 0, - y: 0 - }; - - if (!popperOffsets) { - return; - } - - if (checkMainAxis || checkAltAxis) { - var mainSide = mainAxis === 'y' ? top : left; - var altSide = mainAxis === 'y' ? bottom : right; - var len = mainAxis === 'y' ? 'height' : 'width'; - var offset = popperOffsets[mainAxis]; - var min$1 = popperOffsets[mainAxis] + overflow[mainSide]; - var max$1 = popperOffsets[mainAxis] - overflow[altSide]; - var additive = tether ? -popperRect[len] / 2 : 0; - var minLen = variation === start ? referenceRect[len] : popperRect[len]; - var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go - // outside the reference bounds - - var arrowElement = state.elements.arrow; - var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : { - width: 0, - height: 0 - }; - var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject(); - var arrowPaddingMin = arrowPaddingObject[mainSide]; - var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want - // to include its full size in the calculation. If the reference is small - // and near the edge of a boundary, the popper can overflow even if the - // reference is not overflowing as well (e.g. virtual elements with no - // width or height) - - var arrowLen = within(0, referenceRect[len], arrowRect[len]); - var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue; - var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue; - var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow); - var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0; - var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0; - var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset; - var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue; - - if (checkMainAxis) { - var preventedOffset = within(tether ? min(min$1, tetherMin) : min$1, offset, tether ? max(max$1, tetherMax) : max$1); - popperOffsets[mainAxis] = preventedOffset; - data[mainAxis] = preventedOffset - offset; - } - - if (checkAltAxis) { - var _mainSide = mainAxis === 'x' ? top : left; - - var _altSide = mainAxis === 'x' ? bottom : right; - - var _offset = popperOffsets[altAxis]; - - var _min = _offset + overflow[_mainSide]; - - var _max = _offset - overflow[_altSide]; - - var _preventedOffset = within(tether ? min(_min, tetherMin) : _min, _offset, tether ? max(_max, tetherMax) : _max); - - popperOffsets[altAxis] = _preventedOffset; - data[altAxis] = _preventedOffset - _offset; - } - } - - state.modifiersData[name] = data; - } // eslint-disable-next-line import/no-unused-modules - - - var preventOverflow$1 = { - name: 'preventOverflow', - enabled: true, - phase: 'main', - fn: preventOverflow, - requiresIfExists: ['offset'] - }; - - function getHTMLElementScroll(element) { - return { - scrollLeft: element.scrollLeft, - scrollTop: element.scrollTop - }; - } - - function getNodeScroll(node) { - if (node === getWindow(node) || !isHTMLElement(node)) { - return getWindowScroll(node); - } else { - return getHTMLElementScroll(node); - } - } - - // Composite means it takes into account transforms as well as layout. - - function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) { - if (isFixed === void 0) { - isFixed = false; - } - - var documentElement = getDocumentElement(offsetParent); - var rect = getBoundingClientRect(elementOrVirtualElement); - var isOffsetParentAnElement = isHTMLElement(offsetParent); - var scroll = { - scrollLeft: 0, - scrollTop: 0 - }; - var offsets = { - x: 0, - y: 0 - }; - - if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) { - if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078 - isScrollParent(documentElement)) { - scroll = getNodeScroll(offsetParent); - } - - if (isHTMLElement(offsetParent)) { - offsets = getBoundingClientRect(offsetParent); - offsets.x += offsetParent.clientLeft; - offsets.y += offsetParent.clientTop; - } else if (documentElement) { - offsets.x = getWindowScrollBarX(documentElement); - } - } - - return { - x: rect.left + scroll.scrollLeft - offsets.x, - y: rect.top + scroll.scrollTop - offsets.y, - width: rect.width, - height: rect.height - }; - } - - function order(modifiers) { - var map = new Map(); - var visited = new Set(); - var result = []; - modifiers.forEach(function (modifier) { - map.set(modifier.name, modifier); - }); // On visiting object, check for its dependencies and visit them recursively - - function sort(modifier) { - visited.add(modifier.name); - var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []); - requires.forEach(function (dep) { - if (!visited.has(dep)) { - var depModifier = map.get(dep); - - if (depModifier) { - sort(depModifier); - } - } - }); - result.push(modifier); - } - - modifiers.forEach(function (modifier) { - if (!visited.has(modifier.name)) { - // check for visited object - sort(modifier); - } - }); - return result; - } - - function orderModifiers(modifiers) { - // order based on dependencies - var orderedModifiers = order(modifiers); // order based on phase - - return modifierPhases.reduce(function (acc, phase) { - return acc.concat(orderedModifiers.filter(function (modifier) { - return modifier.phase === phase; - })); - }, []); - } - - function debounce(fn) { - var pending; - return function () { - if (!pending) { - pending = new Promise(function (resolve) { - Promise.resolve().then(function () { - pending = undefined; - resolve(fn()); - }); - }); - } - - return pending; - }; - } - - function format(str) { - for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { - args[_key - 1] = arguments[_key]; - } - - return [].concat(args).reduce(function (p, c) { - return p.replace(/%s/, c); - }, str); - } - - var INVALID_MODIFIER_ERROR = 'Popper: modifier "%s" provided an invalid %s property, expected %s but got %s'; - var MISSING_DEPENDENCY_ERROR = 'Popper: modifier "%s" requires "%s", but "%s" modifier is not available'; - var VALID_PROPERTIES = ['name', 'enabled', 'phase', 'fn', 'effect', 'requires', 'options']; - function validateModifiers(modifiers) { - modifiers.forEach(function (modifier) { - Object.keys(modifier).forEach(function (key) { - switch (key) { - case 'name': - if (typeof modifier.name !== 'string') { - console.error(format(INVALID_MODIFIER_ERROR, String(modifier.name), '"name"', '"string"', "\"" + String(modifier.name) + "\"")); - } - - break; - - case 'enabled': - if (typeof modifier.enabled !== 'boolean') { - console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"enabled"', '"boolean"', "\"" + String(modifier.enabled) + "\"")); - } - - case 'phase': - if (modifierPhases.indexOf(modifier.phase) < 0) { - console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"phase"', "either " + modifierPhases.join(', '), "\"" + String(modifier.phase) + "\"")); - } - - break; - - case 'fn': - if (typeof modifier.fn !== 'function') { - console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"fn"', '"function"', "\"" + String(modifier.fn) + "\"")); - } - - break; - - case 'effect': - if (typeof modifier.effect !== 'function') { - console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"effect"', '"function"', "\"" + String(modifier.fn) + "\"")); - } - - break; - - case 'requires': - if (!Array.isArray(modifier.requires)) { - console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"requires"', '"array"', "\"" + String(modifier.requires) + "\"")); - } - - break; - - case 'requiresIfExists': - if (!Array.isArray(modifier.requiresIfExists)) { - console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '"requiresIfExists"', '"array"', "\"" + String(modifier.requiresIfExists) + "\"")); - } - - break; - - case 'options': - case 'data': - break; - - default: - console.error("PopperJS: an invalid property has been provided to the \"" + modifier.name + "\" modifier, valid properties are " + VALID_PROPERTIES.map(function (s) { - return "\"" + s + "\""; - }).join(', ') + "; but \"" + key + "\" was provided."); - } - - modifier.requires && modifier.requires.forEach(function (requirement) { - if (modifiers.find(function (mod) { - return mod.name === requirement; - }) == null) { - console.error(format(MISSING_DEPENDENCY_ERROR, String(modifier.name), requirement, requirement)); - } - }); - }); - }); - } - - function uniqueBy(arr, fn) { - var identifiers = new Set(); - return arr.filter(function (item) { - var identifier = fn(item); - - if (!identifiers.has(identifier)) { - identifiers.add(identifier); - return true; - } - }); - } - - function mergeByName(modifiers) { - var merged = modifiers.reduce(function (merged, current) { - var existing = merged[current.name]; - merged[current.name] = existing ? Object.assign({}, existing, current, { - options: Object.assign({}, existing.options, current.options), - data: Object.assign({}, existing.data, current.data) - }) : current; - return merged; - }, {}); // IE11 does not support Object.values - - return Object.keys(merged).map(function (key) { - return merged[key]; - }); - } - - var INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.'; - var INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.'; - var DEFAULT_OPTIONS = { - placement: 'bottom', - modifiers: [], - strategy: 'absolute' - }; - - function areValidElements() { - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - - return !args.some(function (element) { - return !(element && typeof element.getBoundingClientRect === 'function'); - }); - } - - function popperGenerator(generatorOptions) { - if (generatorOptions === void 0) { - generatorOptions = {}; - } - - var _generatorOptions = generatorOptions, - _generatorOptions$def = _generatorOptions.defaultModifiers, - defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def, - _generatorOptions$def2 = _generatorOptions.defaultOptions, - defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2; - return function createPopper(reference, popper, options) { - if (options === void 0) { - options = defaultOptions; - } - - var state = { - placement: 'bottom', - orderedModifiers: [], - options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions), - modifiersData: {}, - elements: { - reference: reference, - popper: popper - }, - attributes: {}, - styles: {} - }; - var effectCleanupFns = []; - var isDestroyed = false; - var instance = { - state: state, - setOptions: function setOptions(options) { - cleanupModifierEffects(); - state.options = Object.assign({}, defaultOptions, state.options, options); - state.scrollParents = { - reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [], - popper: listScrollParents(popper) - }; // Orders the modifiers based on their dependencies and `phase` - // properties - - var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers - - state.orderedModifiers = orderedModifiers.filter(function (m) { - return m.enabled; - }); // Validate the provided modifiers so that the consumer will get warned - // if one of the modifiers is invalid for any reason - - if (process.env.NODE_ENV !== "production") { - var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) { - var name = _ref.name; - return name; - }); - validateModifiers(modifiers); - - if (getBasePlacement(state.options.placement) === auto) { - var flipModifier = state.orderedModifiers.find(function (_ref2) { - var name = _ref2.name; - return name === 'flip'; - }); - - if (!flipModifier) { - console.error(['Popper: "auto" placements require the "flip" modifier be', 'present and enabled to work.'].join(' ')); - } - } - - var _getComputedStyle = getComputedStyle$1(popper), - marginTop = _getComputedStyle.marginTop, - marginRight = _getComputedStyle.marginRight, - marginBottom = _getComputedStyle.marginBottom, - marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can - // cause bugs with positioning, so we'll warn the consumer - - - if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) { - return parseFloat(margin); - })) { - console.warn(['Popper: CSS "margin" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' ')); - } - } - - runModifierEffects(); - return instance.update(); - }, - // Sync update – it will always be executed, even if not necessary. This - // is useful for low frequency updates where sync behavior simplifies the - // logic. - // For high frequency updates (e.g. `resize` and `scroll` events), always - // prefer the async Popper#update method - forceUpdate: function forceUpdate() { - if (isDestroyed) { - return; - } - - var _state$elements = state.elements, - reference = _state$elements.reference, - popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements - // anymore - - if (!areValidElements(reference, popper)) { - if (process.env.NODE_ENV !== "production") { - console.error(INVALID_ELEMENT_ERROR); - } - - return; - } // Store the reference and popper rects to be read by modifiers - - - state.rects = { - reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'), - popper: getLayoutRect(popper) - }; // Modifiers have the ability to reset the current update cycle. The - // most common use case for this is the `flip` modifier changing the - // placement, which then needs to re-run all the modifiers, because the - // logic was previously ran for the previous placement and is therefore - // stale/incorrect - - state.reset = false; - state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier - // is filled with the initial data specified by the modifier. This means - // it doesn't persist and is fresh on each update. - // To ensure persistent data, use `${name}#persistent` - - state.orderedModifiers.forEach(function (modifier) { - return state.modifiersData[modifier.name] = Object.assign({}, modifier.data); - }); - var __debug_loops__ = 0; - - for (var index = 0; index < state.orderedModifiers.length; index++) { - if (process.env.NODE_ENV !== "production") { - __debug_loops__ += 1; - - if (__debug_loops__ > 100) { - console.error(INFINITE_LOOP_ERROR); - break; - } - } - - if (state.reset === true) { - state.reset = false; - index = -1; - continue; - } - - var _state$orderedModifie = state.orderedModifiers[index], - fn = _state$orderedModifie.fn, - _state$orderedModifie2 = _state$orderedModifie.options, - _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2, - name = _state$orderedModifie.name; - - if (typeof fn === 'function') { - state = fn({ - state: state, - options: _options, - name: name, - instance: instance - }) || state; - } - } - }, - // Async and optimistically optimized update – it will not be executed if - // not necessary (debounced to run at most once-per-tick) - update: debounce(function () { - return new Promise(function (resolve) { - instance.forceUpdate(); - resolve(state); - }); - }), - destroy: function destroy() { - cleanupModifierEffects(); - isDestroyed = true; - } - }; - - if (!areValidElements(reference, popper)) { - if (process.env.NODE_ENV !== "production") { - console.error(INVALID_ELEMENT_ERROR); - } - - return instance; - } - - instance.setOptions(options).then(function (state) { - if (!isDestroyed && options.onFirstUpdate) { - options.onFirstUpdate(state); - } - }); // Modifiers have the ability to execute arbitrary code before the first - // update cycle runs. They will be executed in the same order as the update - // cycle. This is useful when a modifier adds some persistent data that - // other modifiers need to use, but the modifier is run after the dependent - // one. - - function runModifierEffects() { - state.orderedModifiers.forEach(function (_ref3) { - var name = _ref3.name, - _ref3$options = _ref3.options, - options = _ref3$options === void 0 ? {} : _ref3$options, - effect = _ref3.effect; - - if (typeof effect === 'function') { - var cleanupFn = effect({ - state: state, - name: name, - instance: instance, - options: options - }); - - var noopFn = function noopFn() {}; - - effectCleanupFns.push(cleanupFn || noopFn); - } - }); - } - - function cleanupModifierEffects() { - effectCleanupFns.forEach(function (fn) { - return fn(); - }); - effectCleanupFns = []; - } - - return instance; - }; - } - var createPopper$2 = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules - - var defaultModifiers$1 = [eventListeners, popperOffsets$1, computeStyles$1, applyStyles$1]; - var createPopper$1 = /*#__PURE__*/popperGenerator({ - defaultModifiers: defaultModifiers$1 - }); // eslint-disable-next-line import/no-unused-modules - - var defaultModifiers = [eventListeners, popperOffsets$1, computeStyles$1, applyStyles$1, offset$1, flip$1, preventOverflow$1, arrow$1, hide$1]; - var createPopper = /*#__PURE__*/popperGenerator({ - defaultModifiers: defaultModifiers - }); // eslint-disable-next-line import/no-unused-modules - - var Popper = /*#__PURE__*/Object.freeze({ - __proto__: null, - popperGenerator: popperGenerator, - detectOverflow: detectOverflow, - createPopperBase: createPopper$2, - createPopper: createPopper, - createPopperLite: createPopper$1, - top: top, - bottom: bottom, - right: right, - left: left, - auto: auto, - basePlacements: basePlacements, - start: start, - end: end, - clippingParents: clippingParents, - viewport: viewport, - popper: popper, - reference: reference, - variationPlacements: variationPlacements, - placements: placements, - beforeRead: beforeRead, - read: read, - afterRead: afterRead, - beforeMain: beforeMain, - main: main, - afterMain: afterMain, - beforeWrite: beforeWrite, - write: write, - afterWrite: afterWrite, - modifierPhases: modifierPhases, - applyStyles: applyStyles$1, - arrow: arrow$1, - computeStyles: computeStyles$1, - eventListeners: eventListeners, - flip: flip$1, - hide: hide$1, - offset: offset$1, - popperOffsets: popperOffsets$1, - preventOverflow: preventOverflow$1 - }); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): dropdown.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$8 = 'dropdown'; - const DATA_KEY$7 = 'bs.dropdown'; - const EVENT_KEY$7 = `.${DATA_KEY$7}`; - const DATA_API_KEY$4 = '.data-api'; - const ESCAPE_KEY$2 = 'Escape'; - const SPACE_KEY = 'Space'; - const TAB_KEY = 'Tab'; - const ARROW_UP_KEY = 'ArrowUp'; - const ARROW_DOWN_KEY = 'ArrowDown'; - const RIGHT_MOUSE_BUTTON = 2; // MouseEvent.button value for the secondary button, usually the right button - - const REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY$2}`); - const EVENT_HIDE$4 = `hide${EVENT_KEY$7}`; - const EVENT_HIDDEN$4 = `hidden${EVENT_KEY$7}`; - const EVENT_SHOW$4 = `show${EVENT_KEY$7}`; - const EVENT_SHOWN$4 = `shown${EVENT_KEY$7}`; - const EVENT_CLICK = `click${EVENT_KEY$7}`; - const EVENT_CLICK_DATA_API$3 = `click${EVENT_KEY$7}${DATA_API_KEY$4}`; - const EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY$7}${DATA_API_KEY$4}`; - const EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY$7}${DATA_API_KEY$4}`; - const CLASS_NAME_SHOW$7 = 'show'; - const CLASS_NAME_DROPUP = 'dropup'; - const CLASS_NAME_DROPEND = 'dropend'; - const CLASS_NAME_DROPSTART = 'dropstart'; - const CLASS_NAME_NAVBAR = 'navbar'; - const SELECTOR_DATA_TOGGLE$3 = '[data-bs-toggle="dropdown"]'; - const SELECTOR_MENU = '.dropdown-menu'; - const SELECTOR_NAVBAR_NAV = '.navbar-nav'; - const SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'; - const PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'; - const PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'; - const PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'; - const PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'; - const PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'; - const PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'; - const Default$7 = { - offset: [0, 2], - boundary: 'clippingParents', - reference: 'toggle', - display: 'dynamic', - popperConfig: null, - autoClose: true - }; - const DefaultType$7 = { - offset: '(array|string|function)', - boundary: '(string|element)', - reference: '(string|element|object)', - display: 'string', - popperConfig: '(null|object|function)', - autoClose: '(boolean|string)' - }; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Dropdown extends BaseComponent { - constructor(element, config) { - super(element); - this._popper = null; - this._config = this._getConfig(config); - this._menu = this._getMenuElement(); - this._inNavbar = this._detectNavbar(); - - this._addEventListeners(); - } // Getters - - - static get Default() { - return Default$7; - } - - static get DefaultType() { - return DefaultType$7; - } - - static get NAME() { - return NAME$8; - } // Public - - - toggle() { - if (isDisabled(this._element)) { - return; - } - - const isActive = this._element.classList.contains(CLASS_NAME_SHOW$7); - - if (isActive) { - this.hide(); - return; - } - - this.show(); - } - - show() { - if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW$7)) { - return; - } - - const parent = Dropdown.getParentFromElement(this._element); - const relatedTarget = { - relatedTarget: this._element - }; - const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$4, relatedTarget); - - if (showEvent.defaultPrevented) { - return; - } // Totally disable Popper for Dropdowns in Navbar - - - if (this._inNavbar) { - Manipulator.setDataAttribute(this._menu, 'popper', 'none'); - } else { - if (typeof Popper === 'undefined') { - throw new TypeError('Bootstrap\'s dropdowns require Popper (https://popper.js.org)'); - } - - let referenceElement = this._element; - - if (this._config.reference === 'parent') { - referenceElement = parent; - } else if (isElement$1(this._config.reference)) { - referenceElement = getElement(this._config.reference); - } else if (typeof this._config.reference === 'object') { - referenceElement = this._config.reference; - } - - const popperConfig = this._getPopperConfig(); - - const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false); - this._popper = createPopper(referenceElement, this._menu, popperConfig); - - if (isDisplayStatic) { - Manipulator.setDataAttribute(this._menu, 'popper', 'static'); - } - } // If this is a touch-enabled device we add extra - // empty mouseover listeners to the body's immediate children; - // only needed because of broken event delegation on iOS - // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html - - - if ('ontouchstart' in document.documentElement && !parent.closest(SELECTOR_NAVBAR_NAV)) { - [].concat(...document.body.children).forEach(elem => EventHandler.on(elem, 'mouseover', noop)); - } - - this._element.focus(); - - this._element.setAttribute('aria-expanded', true); - - this._menu.classList.toggle(CLASS_NAME_SHOW$7); - - this._element.classList.toggle(CLASS_NAME_SHOW$7); - - EventHandler.trigger(this._element, EVENT_SHOWN$4, relatedTarget); - } - - hide() { - if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW$7)) { - return; - } - - const relatedTarget = { - relatedTarget: this._element - }; - - this._completeHide(relatedTarget); - } - - dispose() { - if (this._popper) { - this._popper.destroy(); - } - - super.dispose(); - } - - update() { - this._inNavbar = this._detectNavbar(); - - if (this._popper) { - this._popper.update(); - } - } // Private - - - _addEventListeners() { - EventHandler.on(this._element, EVENT_CLICK, event => { - event.preventDefault(); - this.toggle(); - }); - } - - _completeHide(relatedTarget) { - const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$4, relatedTarget); - - if (hideEvent.defaultPrevented) { - return; - } // If this is a touch-enabled device we remove the extra - // empty mouseover listeners we added for iOS support - - - if ('ontouchstart' in document.documentElement) { - [].concat(...document.body.children).forEach(elem => EventHandler.off(elem, 'mouseover', noop)); - } - - if (this._popper) { - this._popper.destroy(); - } - - this._menu.classList.remove(CLASS_NAME_SHOW$7); - - this._element.classList.remove(CLASS_NAME_SHOW$7); - - this._element.setAttribute('aria-expanded', 'false'); - - Manipulator.removeDataAttribute(this._menu, 'popper'); - EventHandler.trigger(this._element, EVENT_HIDDEN$4, relatedTarget); - } - - _getConfig(config) { - config = { ...this.constructor.Default, - ...Manipulator.getDataAttributes(this._element), - ...config - }; - typeCheckConfig(NAME$8, config, this.constructor.DefaultType); - - if (typeof config.reference === 'object' && !isElement$1(config.reference) && typeof config.reference.getBoundingClientRect !== 'function') { - // Popper virtual elements require a getBoundingClientRect method - throw new TypeError(`${NAME$8.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`); - } - - return config; - } - - _getMenuElement() { - return SelectorEngine.next(this._element, SELECTOR_MENU)[0]; - } - - _getPlacement() { - const parentDropdown = this._element.parentNode; - - if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) { - return PLACEMENT_RIGHT; - } - - if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) { - return PLACEMENT_LEFT; - } // We need to trim the value because custom properties can also include spaces - - - const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'; - - if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) { - return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP; - } - - return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM; - } - - _detectNavbar() { - return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null; - } - - _getOffset() { - const { - offset - } = this._config; - - if (typeof offset === 'string') { - return offset.split(',').map(val => Number.parseInt(val, 10)); - } - - if (typeof offset === 'function') { - return popperData => offset(popperData, this._element); - } - - return offset; - } - - _getPopperConfig() { - const defaultBsPopperConfig = { - placement: this._getPlacement(), - modifiers: [{ - name: 'preventOverflow', - options: { - boundary: this._config.boundary - } - }, { - name: 'offset', - options: { - offset: this._getOffset() - } - }] - }; // Disable Popper if we have a static display - - if (this._config.display === 'static') { - defaultBsPopperConfig.modifiers = [{ - name: 'applyStyles', - enabled: false - }]; - } - - return { ...defaultBsPopperConfig, - ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig) - }; - } - - _selectMenuItem({ - key, - target - }) { - const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible); - - if (!items.length) { - return; - } // if target isn't included in items (e.g. when expanding the dropdown) - // allow cycling to get the last item in case key equals ARROW_UP_KEY - - - getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus(); - } // Static - - - static dropdownInterface(element, config) { - const data = Dropdown.getOrCreateInstance(element, config); - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - } - } - - static jQueryInterface(config) { - return this.each(function () { - Dropdown.dropdownInterface(this, config); - }); - } - - static clearMenus(event) { - if (event && (event.button === RIGHT_MOUSE_BUTTON || event.type === 'keyup' && event.key !== TAB_KEY)) { - return; - } - - const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE$3); - - for (let i = 0, len = toggles.length; i < len; i++) { - const context = Dropdown.getInstance(toggles[i]); - - if (!context || context._config.autoClose === false) { - continue; - } - - if (!context._element.classList.contains(CLASS_NAME_SHOW$7)) { - continue; - } - - const relatedTarget = { - relatedTarget: context._element - }; - - if (event) { - const composedPath = event.composedPath(); - const isMenuTarget = composedPath.includes(context._menu); - - if (composedPath.includes(context._element) || context._config.autoClose === 'inside' && !isMenuTarget || context._config.autoClose === 'outside' && isMenuTarget) { - continue; - } // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu - - - if (context._menu.contains(event.target) && (event.type === 'keyup' && event.key === TAB_KEY || /input|select|option|textarea|form/i.test(event.target.tagName))) { - continue; - } - - if (event.type === 'click') { - relatedTarget.clickEvent = event; - } - } - - context._completeHide(relatedTarget); - } - } - - static getParentFromElement(element) { - return getElementFromSelector(element) || element.parentNode; - } - - static dataApiKeydownHandler(event) { - // If not input/textarea: - // - And not a key in REGEXP_KEYDOWN => not a dropdown command - // If input/textarea: - // - If space key => not a dropdown command - // - If key is other than escape - // - If key is not up or down => not a dropdown command - // - If trigger inside the menu => not a dropdown command - if (/input|textarea/i.test(event.target.tagName) ? event.key === SPACE_KEY || event.key !== ESCAPE_KEY$2 && (event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY || event.target.closest(SELECTOR_MENU)) : !REGEXP_KEYDOWN.test(event.key)) { - return; - } - - const isActive = this.classList.contains(CLASS_NAME_SHOW$7); - - if (!isActive && event.key === ESCAPE_KEY$2) { - return; - } - - event.preventDefault(); - event.stopPropagation(); - - if (isDisabled(this)) { - return; - } - - const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0]; - - if (event.key === ESCAPE_KEY$2) { - getToggleButton().focus(); - Dropdown.clearMenus(); - return; - } - - if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) { - if (!isActive) { - getToggleButton().click(); - } - - Dropdown.getInstance(getToggleButton())._selectMenuItem(event); - - return; - } - - if (!isActive || event.key === SPACE_KEY) { - Dropdown.clearMenus(); - } - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE$3, Dropdown.dataApiKeydownHandler); - EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler); - EventHandler.on(document, EVENT_CLICK_DATA_API$3, Dropdown.clearMenus); - EventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus); - EventHandler.on(document, EVENT_CLICK_DATA_API$3, SELECTOR_DATA_TOGGLE$3, function (event) { - event.preventDefault(); - Dropdown.dropdownInterface(this); - }); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Dropdown to jQuery only if jQuery is present - */ - - defineJQueryPlugin(Dropdown); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): util/scrollBar.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - const SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'; - const SELECTOR_STICKY_CONTENT = '.sticky-top'; - - class ScrollBarHelper { - constructor() { - this._element = document.body; - } - - getWidth() { - // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes - const documentWidth = document.documentElement.clientWidth; - return Math.abs(window.innerWidth - documentWidth); - } - - hide() { - const width = this.getWidth(); - - this._disableOverFlow(); // give padding to element to balance the hidden scrollbar width - - - this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width); // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth - - - this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width); - - this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width); - } - - _disableOverFlow() { - this._saveInitialAttribute(this._element, 'overflow'); - - this._element.style.overflow = 'hidden'; - } - - _setElementAttributes(selector, styleProp, callback) { - const scrollbarWidth = this.getWidth(); - - const manipulationCallBack = element => { - if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) { - return; - } - - this._saveInitialAttribute(element, styleProp); - - const calculatedValue = window.getComputedStyle(element)[styleProp]; - element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`; - }; - - this._applyManipulationCallback(selector, manipulationCallBack); - } - - reset() { - this._resetElementAttributes(this._element, 'overflow'); - - this._resetElementAttributes(this._element, 'paddingRight'); - - this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight'); - - this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight'); - } - - _saveInitialAttribute(element, styleProp) { - const actualValue = element.style[styleProp]; - - if (actualValue) { - Manipulator.setDataAttribute(element, styleProp, actualValue); - } - } - - _resetElementAttributes(selector, styleProp) { - const manipulationCallBack = element => { - const value = Manipulator.getDataAttribute(element, styleProp); - - if (typeof value === 'undefined') { - element.style.removeProperty(styleProp); - } else { - Manipulator.removeDataAttribute(element, styleProp); - element.style[styleProp] = value; - } - }; - - this._applyManipulationCallback(selector, manipulationCallBack); - } - - _applyManipulationCallback(selector, callBack) { - if (isElement$1(selector)) { - callBack(selector); - } else { - SelectorEngine.find(selector, this._element).forEach(callBack); - } - } - - isOverflowing() { - return this.getWidth() > 0; - } - - } - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): util/backdrop.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * -------------------------------------------------------------------------- - */ - const Default$6 = { - isVisible: true, - // if false, we use the backdrop helper without adding any element to the dom - isAnimated: false, - rootElement: 'body', - // give the choice to place backdrop under different elements - clickCallback: null - }; - const DefaultType$6 = { - isVisible: 'boolean', - isAnimated: 'boolean', - rootElement: '(element|string)', - clickCallback: '(function|null)' - }; - const NAME$7 = 'backdrop'; - const CLASS_NAME_BACKDROP = 'modal-backdrop'; - const CLASS_NAME_FADE$5 = 'fade'; - const CLASS_NAME_SHOW$6 = 'show'; - const EVENT_MOUSEDOWN = `mousedown.bs.${NAME$7}`; - - class Backdrop { - constructor(config) { - this._config = this._getConfig(config); - this._isAppended = false; - this._element = null; - } - - show(callback) { - if (!this._config.isVisible) { - execute(callback); - return; - } - - this._append(); - - if (this._config.isAnimated) { - reflow(this._getElement()); - } - - this._getElement().classList.add(CLASS_NAME_SHOW$6); - - this._emulateAnimation(() => { - execute(callback); - }); - } - - hide(callback) { - if (!this._config.isVisible) { - execute(callback); - return; - } - - this._getElement().classList.remove(CLASS_NAME_SHOW$6); - - this._emulateAnimation(() => { - this.dispose(); - execute(callback); - }); - } // Private - - - _getElement() { - if (!this._element) { - const backdrop = document.createElement('div'); - backdrop.className = CLASS_NAME_BACKDROP; - - if (this._config.isAnimated) { - backdrop.classList.add(CLASS_NAME_FADE$5); - } - - this._element = backdrop; - } - - return this._element; - } - - _getConfig(config) { - config = { ...Default$6, - ...(typeof config === 'object' ? config : {}) - }; // use getElement() with the default "body" to get a fresh Element on each instantiation - - config.rootElement = getElement(config.rootElement); - typeCheckConfig(NAME$7, config, DefaultType$6); - return config; - } - - _append() { - if (this._isAppended) { - return; - } - - this._config.rootElement.appendChild(this._getElement()); - - EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => { - execute(this._config.clickCallback); - }); - this._isAppended = true; - } - - dispose() { - if (!this._isAppended) { - return; - } - - EventHandler.off(this._element, EVENT_MOUSEDOWN); - - this._element.remove(); - - this._isAppended = false; - } - - _emulateAnimation(callback) { - executeAfterTransition(callback, this._getElement(), this._config.isAnimated); - } - - } - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): modal.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$6 = 'modal'; - const DATA_KEY$6 = 'bs.modal'; - const EVENT_KEY$6 = `.${DATA_KEY$6}`; - const DATA_API_KEY$3 = '.data-api'; - const ESCAPE_KEY$1 = 'Escape'; - const Default$5 = { - backdrop: true, - keyboard: true, - focus: true - }; - const DefaultType$5 = { - backdrop: '(boolean|string)', - keyboard: 'boolean', - focus: 'boolean' - }; - const EVENT_HIDE$3 = `hide${EVENT_KEY$6}`; - const EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY$6}`; - const EVENT_HIDDEN$3 = `hidden${EVENT_KEY$6}`; - const EVENT_SHOW$3 = `show${EVENT_KEY$6}`; - const EVENT_SHOWN$3 = `shown${EVENT_KEY$6}`; - const EVENT_FOCUSIN$2 = `focusin${EVENT_KEY$6}`; - const EVENT_RESIZE = `resize${EVENT_KEY$6}`; - const EVENT_CLICK_DISMISS$2 = `click.dismiss${EVENT_KEY$6}`; - const EVENT_KEYDOWN_DISMISS$1 = `keydown.dismiss${EVENT_KEY$6}`; - const EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY$6}`; - const EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY$6}`; - const EVENT_CLICK_DATA_API$2 = `click${EVENT_KEY$6}${DATA_API_KEY$3}`; - const CLASS_NAME_OPEN = 'modal-open'; - const CLASS_NAME_FADE$4 = 'fade'; - const CLASS_NAME_SHOW$5 = 'show'; - const CLASS_NAME_STATIC = 'modal-static'; - const SELECTOR_DIALOG = '.modal-dialog'; - const SELECTOR_MODAL_BODY = '.modal-body'; - const SELECTOR_DATA_TOGGLE$2 = '[data-bs-toggle="modal"]'; - const SELECTOR_DATA_DISMISS$2 = '[data-bs-dismiss="modal"]'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Modal extends BaseComponent { - constructor(element, config) { - super(element); - this._config = this._getConfig(config); - this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element); - this._backdrop = this._initializeBackDrop(); - this._isShown = false; - this._ignoreBackdropClick = false; - this._isTransitioning = false; - this._scrollBar = new ScrollBarHelper(); - } // Getters - - - static get Default() { - return Default$5; - } - - static get NAME() { - return NAME$6; - } // Public - - - toggle(relatedTarget) { - return this._isShown ? this.hide() : this.show(relatedTarget); - } - - show(relatedTarget) { - if (this._isShown || this._isTransitioning) { - return; - } - - const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$3, { - relatedTarget - }); - - if (showEvent.defaultPrevented) { - return; - } - - this._isShown = true; - - if (this._isAnimated()) { - this._isTransitioning = true; - } - - this._scrollBar.hide(); - - document.body.classList.add(CLASS_NAME_OPEN); - - this._adjustDialog(); - - this._setEscapeEvent(); - - this._setResizeEvent(); - - EventHandler.on(this._element, EVENT_CLICK_DISMISS$2, SELECTOR_DATA_DISMISS$2, event => this.hide(event)); - EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => { - EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => { - if (event.target === this._element) { - this._ignoreBackdropClick = true; - } - }); - }); - - this._showBackdrop(() => this._showElement(relatedTarget)); - } - - hide(event) { - if (event && ['A', 'AREA'].includes(event.target.tagName)) { - event.preventDefault(); - } - - if (!this._isShown || this._isTransitioning) { - return; - } - - const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$3); - - if (hideEvent.defaultPrevented) { - return; - } - - this._isShown = false; - - const isAnimated = this._isAnimated(); - - if (isAnimated) { - this._isTransitioning = true; - } - - this._setEscapeEvent(); - - this._setResizeEvent(); - - EventHandler.off(document, EVENT_FOCUSIN$2); - - this._element.classList.remove(CLASS_NAME_SHOW$5); - - EventHandler.off(this._element, EVENT_CLICK_DISMISS$2); - EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS); - - this._queueCallback(() => this._hideModal(), this._element, isAnimated); - } - - dispose() { - [window, this._dialog].forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY$6)); - - this._backdrop.dispose(); - - super.dispose(); - /** - * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API` - * Do not move `document` in `htmlElements` array - * It will remove `EVENT_CLICK_DATA_API` event that should remain - */ - - EventHandler.off(document, EVENT_FOCUSIN$2); - } - - handleUpdate() { - this._adjustDialog(); - } // Private - - - _initializeBackDrop() { - return new Backdrop({ - isVisible: Boolean(this._config.backdrop), - // 'static' option will be translated to true, and booleans will keep their value - isAnimated: this._isAnimated() - }); - } - - _getConfig(config) { - config = { ...Default$5, - ...Manipulator.getDataAttributes(this._element), - ...(typeof config === 'object' ? config : {}) - }; - typeCheckConfig(NAME$6, config, DefaultType$5); - return config; - } - - _showElement(relatedTarget) { - const isAnimated = this._isAnimated(); - - const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog); - - if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) { - // Don't move modal's DOM position - document.body.appendChild(this._element); - } - - this._element.style.display = 'block'; - - this._element.removeAttribute('aria-hidden'); - - this._element.setAttribute('aria-modal', true); - - this._element.setAttribute('role', 'dialog'); - - this._element.scrollTop = 0; - - if (modalBody) { - modalBody.scrollTop = 0; - } - - if (isAnimated) { - reflow(this._element); - } - - this._element.classList.add(CLASS_NAME_SHOW$5); - - if (this._config.focus) { - this._enforceFocus(); - } - - const transitionComplete = () => { - if (this._config.focus) { - this._element.focus(); - } - - this._isTransitioning = false; - EventHandler.trigger(this._element, EVENT_SHOWN$3, { - relatedTarget - }); - }; - - this._queueCallback(transitionComplete, this._dialog, isAnimated); - } - - _enforceFocus() { - EventHandler.off(document, EVENT_FOCUSIN$2); // guard against infinite focus loop - - EventHandler.on(document, EVENT_FOCUSIN$2, event => { - if (document !== event.target && this._element !== event.target && !this._element.contains(event.target)) { - this._element.focus(); - } - }); - } - - _setEscapeEvent() { - if (this._isShown) { - EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS$1, event => { - if (this._config.keyboard && event.key === ESCAPE_KEY$1) { - event.preventDefault(); - this.hide(); - } else if (!this._config.keyboard && event.key === ESCAPE_KEY$1) { - this._triggerBackdropTransition(); - } - }); - } else { - EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS$1); - } - } - - _setResizeEvent() { - if (this._isShown) { - EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog()); - } else { - EventHandler.off(window, EVENT_RESIZE); - } - } - - _hideModal() { - this._element.style.display = 'none'; - - this._element.setAttribute('aria-hidden', true); - - this._element.removeAttribute('aria-modal'); - - this._element.removeAttribute('role'); - - this._isTransitioning = false; - - this._backdrop.hide(() => { - document.body.classList.remove(CLASS_NAME_OPEN); - - this._resetAdjustments(); - - this._scrollBar.reset(); - - EventHandler.trigger(this._element, EVENT_HIDDEN$3); - }); - } - - _showBackdrop(callback) { - EventHandler.on(this._element, EVENT_CLICK_DISMISS$2, event => { - if (this._ignoreBackdropClick) { - this._ignoreBackdropClick = false; - return; - } - - if (event.target !== event.currentTarget) { - return; - } - - if (this._config.backdrop === true) { - this.hide(); - } else if (this._config.backdrop === 'static') { - this._triggerBackdropTransition(); - } - }); - - this._backdrop.show(callback); - } - - _isAnimated() { - return this._element.classList.contains(CLASS_NAME_FADE$4); - } - - _triggerBackdropTransition() { - const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED); - - if (hideEvent.defaultPrevented) { - return; - } - - const { - classList, - scrollHeight, - style - } = this._element; - const isModalOverflowing = scrollHeight > document.documentElement.clientHeight; // return if the following background transition hasn't yet completed - - if (!isModalOverflowing && style.overflowY === 'hidden' || classList.contains(CLASS_NAME_STATIC)) { - return; - } - - if (!isModalOverflowing) { - style.overflowY = 'hidden'; - } - - classList.add(CLASS_NAME_STATIC); - - this._queueCallback(() => { - classList.remove(CLASS_NAME_STATIC); - - if (!isModalOverflowing) { - this._queueCallback(() => { - style.overflowY = ''; - }, this._dialog); - } - }, this._dialog); - - this._element.focus(); - } // ---------------------------------------------------------------------- - // the following methods are used to handle overflowing modals - // ---------------------------------------------------------------------- - - - _adjustDialog() { - const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight; - - const scrollbarWidth = this._scrollBar.getWidth(); - - const isBodyOverflowing = scrollbarWidth > 0; - - if (!isBodyOverflowing && isModalOverflowing && !isRTL() || isBodyOverflowing && !isModalOverflowing && isRTL()) { - this._element.style.paddingLeft = `${scrollbarWidth}px`; - } - - if (isBodyOverflowing && !isModalOverflowing && !isRTL() || !isBodyOverflowing && isModalOverflowing && isRTL()) { - this._element.style.paddingRight = `${scrollbarWidth}px`; - } - } - - _resetAdjustments() { - this._element.style.paddingLeft = ''; - this._element.style.paddingRight = ''; - } // Static - - - static jQueryInterface(config, relatedTarget) { - return this.each(function () { - const data = Modal.getOrCreateInstance(this, config); - - if (typeof config !== 'string') { - return; - } - - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](relatedTarget); - }); - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_CLICK_DATA_API$2, SELECTOR_DATA_TOGGLE$2, function (event) { - const target = getElementFromSelector(this); - - if (['A', 'AREA'].includes(this.tagName)) { - event.preventDefault(); - } - - EventHandler.one(target, EVENT_SHOW$3, showEvent => { - if (showEvent.defaultPrevented) { - // only register focus restorer if modal will actually get shown - return; - } - - EventHandler.one(target, EVENT_HIDDEN$3, () => { - if (isVisible(this)) { - this.focus(); - } - }); - }); - const data = Modal.getOrCreateInstance(target); - data.toggle(this); - }); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Modal to jQuery only if jQuery is present - */ - - defineJQueryPlugin(Modal); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): offcanvas.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$5 = 'offcanvas'; - const DATA_KEY$5 = 'bs.offcanvas'; - const EVENT_KEY$5 = `.${DATA_KEY$5}`; - const DATA_API_KEY$2 = '.data-api'; - const EVENT_LOAD_DATA_API$1 = `load${EVENT_KEY$5}${DATA_API_KEY$2}`; - const ESCAPE_KEY = 'Escape'; - const Default$4 = { - backdrop: true, - keyboard: true, - scroll: false - }; - const DefaultType$4 = { - backdrop: 'boolean', - keyboard: 'boolean', - scroll: 'boolean' - }; - const CLASS_NAME_SHOW$4 = 'show'; - const OPEN_SELECTOR = '.offcanvas.show'; - const EVENT_SHOW$2 = `show${EVENT_KEY$5}`; - const EVENT_SHOWN$2 = `shown${EVENT_KEY$5}`; - const EVENT_HIDE$2 = `hide${EVENT_KEY$5}`; - const EVENT_HIDDEN$2 = `hidden${EVENT_KEY$5}`; - const EVENT_FOCUSIN$1 = `focusin${EVENT_KEY$5}`; - const EVENT_CLICK_DATA_API$1 = `click${EVENT_KEY$5}${DATA_API_KEY$2}`; - const EVENT_CLICK_DISMISS$1 = `click.dismiss${EVENT_KEY$5}`; - const EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY$5}`; - const SELECTOR_DATA_DISMISS$1 = '[data-bs-dismiss="offcanvas"]'; - const SELECTOR_DATA_TOGGLE$1 = '[data-bs-toggle="offcanvas"]'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Offcanvas extends BaseComponent { - constructor(element, config) { - super(element); - this._config = this._getConfig(config); - this._isShown = false; - this._backdrop = this._initializeBackDrop(); - - this._addEventListeners(); - } // Getters - - - static get NAME() { - return NAME$5; - } - - static get Default() { - return Default$4; - } // Public - - - toggle(relatedTarget) { - return this._isShown ? this.hide() : this.show(relatedTarget); - } - - show(relatedTarget) { - if (this._isShown) { - return; - } - - const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$2, { - relatedTarget - }); - - if (showEvent.defaultPrevented) { - return; - } - - this._isShown = true; - this._element.style.visibility = 'visible'; - - this._backdrop.show(); - - if (!this._config.scroll) { - new ScrollBarHelper().hide(); - - this._enforceFocusOnElement(this._element); - } - - this._element.removeAttribute('aria-hidden'); - - this._element.setAttribute('aria-modal', true); - - this._element.setAttribute('role', 'dialog'); - - this._element.classList.add(CLASS_NAME_SHOW$4); - - const completeCallBack = () => { - EventHandler.trigger(this._element, EVENT_SHOWN$2, { - relatedTarget - }); - }; - - this._queueCallback(completeCallBack, this._element, true); - } - - hide() { - if (!this._isShown) { - return; - } - - const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$2); - - if (hideEvent.defaultPrevented) { - return; - } - - EventHandler.off(document, EVENT_FOCUSIN$1); - - this._element.blur(); - - this._isShown = false; - - this._element.classList.remove(CLASS_NAME_SHOW$4); - - this._backdrop.hide(); - - const completeCallback = () => { - this._element.setAttribute('aria-hidden', true); - - this._element.removeAttribute('aria-modal'); - - this._element.removeAttribute('role'); - - this._element.style.visibility = 'hidden'; - - if (!this._config.scroll) { - new ScrollBarHelper().reset(); - } - - EventHandler.trigger(this._element, EVENT_HIDDEN$2); - }; - - this._queueCallback(completeCallback, this._element, true); - } - - dispose() { - this._backdrop.dispose(); - - super.dispose(); - EventHandler.off(document, EVENT_FOCUSIN$1); - } // Private - - - _getConfig(config) { - config = { ...Default$4, - ...Manipulator.getDataAttributes(this._element), - ...(typeof config === 'object' ? config : {}) - }; - typeCheckConfig(NAME$5, config, DefaultType$4); - return config; - } - - _initializeBackDrop() { - return new Backdrop({ - isVisible: this._config.backdrop, - isAnimated: true, - rootElement: this._element.parentNode, - clickCallback: () => this.hide() - }); - } - - _enforceFocusOnElement(element) { - EventHandler.off(document, EVENT_FOCUSIN$1); // guard against infinite focus loop - - EventHandler.on(document, EVENT_FOCUSIN$1, event => { - if (document !== event.target && element !== event.target && !element.contains(event.target)) { - element.focus(); - } - }); - element.focus(); - } - - _addEventListeners() { - EventHandler.on(this._element, EVENT_CLICK_DISMISS$1, SELECTOR_DATA_DISMISS$1, () => this.hide()); - EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => { - if (this._config.keyboard && event.key === ESCAPE_KEY) { - this.hide(); - } - }); - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Offcanvas.getOrCreateInstance(this, config); - - if (typeof config !== 'string') { - return; - } - - if (data[config] === undefined || config.startsWith('_') || config === 'constructor') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](this); - }); - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_CLICK_DATA_API$1, SELECTOR_DATA_TOGGLE$1, function (event) { - const target = getElementFromSelector(this); - - if (['A', 'AREA'].includes(this.tagName)) { - event.preventDefault(); - } - - if (isDisabled(this)) { - return; - } - - EventHandler.one(target, EVENT_HIDDEN$2, () => { - // focus on trigger when it is closed - if (isVisible(this)) { - this.focus(); - } - }); // avoid conflict when clicking a toggler of an offcanvas, while another is open - - const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR); - - if (allReadyOpen && allReadyOpen !== target) { - Offcanvas.getInstance(allReadyOpen).hide(); - } - - const data = Offcanvas.getOrCreateInstance(target); - data.toggle(this); - }); - EventHandler.on(window, EVENT_LOAD_DATA_API$1, () => SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - */ - - defineJQueryPlugin(Offcanvas); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): util/sanitizer.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - const uriAttrs = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']); - const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i; - /** - * A pattern that recognizes a commonly useful subset of URLs that are safe. - * - * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts - */ - - const SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i; - /** - * A pattern that matches safe data URLs. Only matches image, video and audio types. - * - * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts - */ - - const DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i; - - const allowedAttribute = (attr, allowedAttributeList) => { - const attrName = attr.nodeName.toLowerCase(); - - if (allowedAttributeList.includes(attrName)) { - if (uriAttrs.has(attrName)) { - return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue)); - } - - return true; - } - - const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp); // Check if a regular expression validates the attribute. - - for (let i = 0, len = regExp.length; i < len; i++) { - if (regExp[i].test(attrName)) { - return true; - } - } - - return false; - }; - - const DefaultAllowlist = { - // Global attributes allowed on any supplied element below. - '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN], - 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: [] - }; - function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) { - if (!unsafeHtml.length) { - return unsafeHtml; - } - - if (sanitizeFn && typeof sanitizeFn === 'function') { - return sanitizeFn(unsafeHtml); - } - - const domParser = new window.DOMParser(); - const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html'); - const allowlistKeys = Object.keys(allowList); - const elements = [].concat(...createdDocument.body.querySelectorAll('*')); - - for (let i = 0, len = elements.length; i < len; i++) { - const el = elements[i]; - const elName = el.nodeName.toLowerCase(); - - if (!allowlistKeys.includes(elName)) { - el.remove(); - continue; - } - - const attributeList = [].concat(...el.attributes); - const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || []); - attributeList.forEach(attr => { - if (!allowedAttribute(attr, allowedAttributes)) { - el.removeAttribute(attr.nodeName); - } - }); - } - - return createdDocument.body.innerHTML; - } - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): tooltip.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$4 = 'tooltip'; - const DATA_KEY$4 = 'bs.tooltip'; - const EVENT_KEY$4 = `.${DATA_KEY$4}`; - const CLASS_PREFIX$1 = 'bs-tooltip'; - const BSCLS_PREFIX_REGEX$1 = new RegExp(`(^|\\s)${CLASS_PREFIX$1}\\S+`, 'g'); - const DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn']); - const DefaultType$3 = { - 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)' - }; - const AttachmentMap = { - AUTO: 'auto', - TOP: 'top', - RIGHT: isRTL() ? 'left' : 'right', - BOTTOM: 'bottom', - LEFT: isRTL() ? 'right' : 'left' - }; - const Default$3 = { - animation: true, - template: '<div class="tooltip" role="tooltip">' + '<div class="tooltip-arrow"></div>' + '<div class="tooltip-inner"></div>' + '</div>', - trigger: 'hover focus', - title: '', - delay: 0, - html: false, - selector: false, - placement: 'top', - offset: [0, 0], - container: false, - fallbackPlacements: ['top', 'right', 'bottom', 'left'], - boundary: 'clippingParents', - customClass: '', - sanitize: true, - sanitizeFn: null, - allowList: DefaultAllowlist, - popperConfig: null - }; - const Event$2 = { - HIDE: `hide${EVENT_KEY$4}`, - HIDDEN: `hidden${EVENT_KEY$4}`, - SHOW: `show${EVENT_KEY$4}`, - SHOWN: `shown${EVENT_KEY$4}`, - INSERTED: `inserted${EVENT_KEY$4}`, - CLICK: `click${EVENT_KEY$4}`, - FOCUSIN: `focusin${EVENT_KEY$4}`, - FOCUSOUT: `focusout${EVENT_KEY$4}`, - MOUSEENTER: `mouseenter${EVENT_KEY$4}`, - MOUSELEAVE: `mouseleave${EVENT_KEY$4}` - }; - const CLASS_NAME_FADE$3 = 'fade'; - const CLASS_NAME_MODAL = 'modal'; - const CLASS_NAME_SHOW$3 = 'show'; - const HOVER_STATE_SHOW = 'show'; - const HOVER_STATE_OUT = 'out'; - const SELECTOR_TOOLTIP_INNER = '.tooltip-inner'; - const TRIGGER_HOVER = 'hover'; - const TRIGGER_FOCUS = 'focus'; - const TRIGGER_CLICK = 'click'; - const TRIGGER_MANUAL = 'manual'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Tooltip extends BaseComponent { - constructor(element, config) { - if (typeof Popper === 'undefined') { - throw new TypeError('Bootstrap\'s tooltips require Popper (https://popper.js.org)'); - } - - super(element); // private - - this._isEnabled = true; - this._timeout = 0; - this._hoverState = ''; - this._activeTrigger = {}; - this._popper = null; // Protected - - this._config = this._getConfig(config); - this.tip = null; - - this._setListeners(); - } // Getters - - - static get Default() { - return Default$3; - } - - static get NAME() { - return NAME$4; - } - - static get Event() { - return Event$2; - } - - static get DefaultType() { - return DefaultType$3; - } // Public - - - enable() { - this._isEnabled = true; - } - - disable() { - this._isEnabled = false; - } - - toggleEnabled() { - this._isEnabled = !this._isEnabled; - } - - toggle(event) { - if (!this._isEnabled) { - return; - } - - if (event) { - const context = this._initializeOnDelegatedTarget(event); - - context._activeTrigger.click = !context._activeTrigger.click; - - if (context._isWithActiveTrigger()) { - context._enter(null, context); - } else { - context._leave(null, context); - } - } else { - if (this.getTipElement().classList.contains(CLASS_NAME_SHOW$3)) { - this._leave(null, this); - - return; - } - - this._enter(null, this); - } - } - - dispose() { - clearTimeout(this._timeout); - EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler); - - if (this.tip) { - this.tip.remove(); - } - - if (this._popper) { - this._popper.destroy(); - } - - super.dispose(); - } - - show() { - if (this._element.style.display === 'none') { - throw new Error('Please use show on visible elements'); - } - - if (!(this.isWithContent() && this._isEnabled)) { - return; - } - - const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW); - const shadowRoot = findShadowRoot(this._element); - const isInTheDom = shadowRoot === null ? this._element.ownerDocument.documentElement.contains(this._element) : shadowRoot.contains(this._element); - - if (showEvent.defaultPrevented || !isInTheDom) { - return; - } - - const tip = this.getTipElement(); - const tipId = getUID(this.constructor.NAME); - tip.setAttribute('id', tipId); - - this._element.setAttribute('aria-describedby', tipId); - - this.setContent(); - - if (this._config.animation) { - tip.classList.add(CLASS_NAME_FADE$3); - } - - const placement = typeof this._config.placement === 'function' ? this._config.placement.call(this, tip, this._element) : this._config.placement; - - const attachment = this._getAttachment(placement); - - this._addAttachmentClass(attachment); - - const { - container - } = this._config; - Data.set(tip, this.constructor.DATA_KEY, this); - - if (!this._element.ownerDocument.documentElement.contains(this.tip)) { - container.appendChild(tip); - EventHandler.trigger(this._element, this.constructor.Event.INSERTED); - } - - if (this._popper) { - this._popper.update(); - } else { - this._popper = createPopper(this._element, tip, this._getPopperConfig(attachment)); - } - - tip.classList.add(CLASS_NAME_SHOW$3); - const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass; - - if (customClass) { - tip.classList.add(...customClass.split(' ')); - } // If this is a touch-enabled device we add extra - // empty mouseover listeners to the body's immediate children; - // only needed because of broken event delegation on iOS - // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html - - - if ('ontouchstart' in document.documentElement) { - [].concat(...document.body.children).forEach(element => { - EventHandler.on(element, 'mouseover', noop); - }); - } - - const complete = () => { - const prevHoverState = this._hoverState; - this._hoverState = null; - EventHandler.trigger(this._element, this.constructor.Event.SHOWN); - - if (prevHoverState === HOVER_STATE_OUT) { - this._leave(null, this); - } - }; - - const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE$3); - - this._queueCallback(complete, this.tip, isAnimated); - } - - hide() { - if (!this._popper) { - return; - } - - const tip = this.getTipElement(); - - const complete = () => { - if (this._isWithActiveTrigger()) { - return; - } - - if (this._hoverState !== HOVER_STATE_SHOW) { - tip.remove(); - } - - this._cleanTipClass(); - - this._element.removeAttribute('aria-describedby'); - - EventHandler.trigger(this._element, this.constructor.Event.HIDDEN); - - if (this._popper) { - this._popper.destroy(); - - this._popper = null; - } - }; - - const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE); - - if (hideEvent.defaultPrevented) { - return; - } - - tip.classList.remove(CLASS_NAME_SHOW$3); // If this is a touch-enabled device we remove the extra - // empty mouseover listeners we added for iOS support - - if ('ontouchstart' in document.documentElement) { - [].concat(...document.body.children).forEach(element => EventHandler.off(element, 'mouseover', noop)); - } - - this._activeTrigger[TRIGGER_CLICK] = false; - this._activeTrigger[TRIGGER_FOCUS] = false; - this._activeTrigger[TRIGGER_HOVER] = false; - const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE$3); - - this._queueCallback(complete, this.tip, isAnimated); - - this._hoverState = ''; - } - - update() { - if (this._popper !== null) { - this._popper.update(); - } - } // Protected - - - isWithContent() { - return Boolean(this.getTitle()); - } - - getTipElement() { - if (this.tip) { - return this.tip; - } - - const element = document.createElement('div'); - element.innerHTML = this._config.template; - this.tip = element.children[0]; - return this.tip; - } - - setContent() { - const tip = this.getTipElement(); - this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle()); - tip.classList.remove(CLASS_NAME_FADE$3, CLASS_NAME_SHOW$3); - } - - setElementContent(element, content) { - if (element === null) { - return; - } - - if (isElement$1(content)) { - content = getElement(content); // content is a DOM node or a jQuery - - if (this._config.html) { - if (content.parentNode !== element) { - element.innerHTML = ''; - element.appendChild(content); - } - } else { - element.textContent = content.textContent; - } - - return; - } - - if (this._config.html) { - if (this._config.sanitize) { - content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn); - } - - element.innerHTML = content; - } else { - element.textContent = content; - } - } - - getTitle() { - let title = this._element.getAttribute('data-bs-original-title'); - - if (!title) { - title = typeof this._config.title === 'function' ? this._config.title.call(this._element) : this._config.title; - } - - return title; - } - - updateAttachment(attachment) { - if (attachment === 'right') { - return 'end'; - } - - if (attachment === 'left') { - return 'start'; - } - - return attachment; - } // Private - - - _initializeOnDelegatedTarget(event, context) { - const dataKey = this.constructor.DATA_KEY; - context = context || Data.get(event.delegateTarget, dataKey); - - if (!context) { - context = new this.constructor(event.delegateTarget, this._getDelegateConfig()); - Data.set(event.delegateTarget, dataKey, context); - } - - return context; - } - - _getOffset() { - const { - offset - } = this._config; - - if (typeof offset === 'string') { - return offset.split(',').map(val => Number.parseInt(val, 10)); - } - - if (typeof offset === 'function') { - return popperData => offset(popperData, this._element); - } - - return offset; - } - - _getPopperConfig(attachment) { - const defaultBsPopperConfig = { - placement: attachment, - 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: true, - phase: 'afterWrite', - fn: data => this._handlePopperPlacementChange(data) - }], - onFirstUpdate: data => { - if (data.options.placement !== data.placement) { - this._handlePopperPlacementChange(data); - } - } - }; - return { ...defaultBsPopperConfig, - ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig) - }; - } - - _addAttachmentClass(attachment) { - this.getTipElement().classList.add(`${CLASS_PREFIX$1}-${this.updateAttachment(attachment)}`); - } - - _getAttachment(placement) { - return AttachmentMap[placement.toUpperCase()]; - } - - _setListeners() { - const triggers = this._config.trigger.split(' '); - - triggers.forEach(trigger => { - if (trigger === 'click') { - EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event)); - } else if (trigger !== TRIGGER_MANUAL) { - const eventIn = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSEENTER : this.constructor.Event.FOCUSIN; - const eventOut = trigger === TRIGGER_HOVER ? this.constructor.Event.MOUSELEAVE : this.constructor.Event.FOCUSOUT; - EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event)); - EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event)); - } - }); - - this._hideModalHandler = () => { - if (this._element) { - this.hide(); - } - }; - - EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler); - - if (this._config.selector) { - this._config = { ...this._config, - trigger: 'manual', - selector: '' - }; - } else { - this._fixTitle(); - } - } - - _fixTitle() { - const title = this._element.getAttribute('title'); - - const originalTitleType = typeof this._element.getAttribute('data-bs-original-title'); - - if (title || originalTitleType !== 'string') { - this._element.setAttribute('data-bs-original-title', title || ''); - - if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) { - this._element.setAttribute('aria-label', title); - } - - this._element.setAttribute('title', ''); - } - } - - _enter(event, context) { - context = this._initializeOnDelegatedTarget(event, context); - - if (event) { - context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true; - } - - if (context.getTipElement().classList.contains(CLASS_NAME_SHOW$3) || context._hoverState === HOVER_STATE_SHOW) { - context._hoverState = HOVER_STATE_SHOW; - return; - } - - clearTimeout(context._timeout); - context._hoverState = HOVER_STATE_SHOW; - - if (!context._config.delay || !context._config.delay.show) { - context.show(); - return; - } - - context._timeout = setTimeout(() => { - if (context._hoverState === HOVER_STATE_SHOW) { - context.show(); - } - }, context._config.delay.show); - } - - _leave(event, context) { - context = this._initializeOnDelegatedTarget(event, context); - - if (event) { - context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] = context._element.contains(event.relatedTarget); - } - - if (context._isWithActiveTrigger()) { - return; - } - - clearTimeout(context._timeout); - context._hoverState = HOVER_STATE_OUT; - - if (!context._config.delay || !context._config.delay.hide) { - context.hide(); - return; - } - - context._timeout = setTimeout(() => { - if (context._hoverState === HOVER_STATE_OUT) { - context.hide(); - } - }, context._config.delay.hide); - } - - _isWithActiveTrigger() { - for (const trigger in this._activeTrigger) { - if (this._activeTrigger[trigger]) { - return true; - } - } - - return false; - } - - _getConfig(config) { - const dataAttributes = Manipulator.getDataAttributes(this._element); - Object.keys(dataAttributes).forEach(dataAttr => { - if (DISALLOWED_ATTRIBUTES.has(dataAttr)) { - delete dataAttributes[dataAttr]; - } - }); - config = { ...this.constructor.Default, - ...dataAttributes, - ...(typeof config === 'object' && config ? config : {}) - }; - config.container = config.container === false ? document.body : getElement(config.container); - - if (typeof config.delay === 'number') { - config.delay = { - show: config.delay, - hide: config.delay - }; - } - - if (typeof config.title === 'number') { - config.title = config.title.toString(); - } - - if (typeof config.content === 'number') { - config.content = config.content.toString(); - } - - typeCheckConfig(NAME$4, config, this.constructor.DefaultType); - - if (config.sanitize) { - config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn); - } - - return config; - } - - _getDelegateConfig() { - const config = {}; - - if (this._config) { - for (const key in this._config) { - if (this.constructor.Default[key] !== this._config[key]) { - config[key] = this._config[key]; - } - } - } - - return config; - } - - _cleanTipClass() { - const tip = this.getTipElement(); - const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX$1); - - if (tabClass !== null && tabClass.length > 0) { - tabClass.map(token => token.trim()).forEach(tClass => tip.classList.remove(tClass)); - } - } - - _handlePopperPlacementChange(popperData) { - const { - state - } = popperData; - - if (!state) { - return; - } - - this.tip = state.elements.popper; - - this._cleanTipClass(); - - this._addAttachmentClass(this._getAttachment(state.placement)); - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Tooltip.getOrCreateInstance(this, config); - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - } - }); - } - - } - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Tooltip to jQuery only if jQuery is present - */ - - - defineJQueryPlugin(Tooltip); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): popover.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$3 = 'popover'; - const DATA_KEY$3 = 'bs.popover'; - const EVENT_KEY$3 = `.${DATA_KEY$3}`; - const CLASS_PREFIX = 'bs-popover'; - const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`, 'g'); - const Default$2 = { ...Tooltip.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>' - }; - const DefaultType$2 = { ...Tooltip.DefaultType, - content: '(string|element|function)' - }; - const Event$1 = { - HIDE: `hide${EVENT_KEY$3}`, - HIDDEN: `hidden${EVENT_KEY$3}`, - SHOW: `show${EVENT_KEY$3}`, - SHOWN: `shown${EVENT_KEY$3}`, - INSERTED: `inserted${EVENT_KEY$3}`, - CLICK: `click${EVENT_KEY$3}`, - FOCUSIN: `focusin${EVENT_KEY$3}`, - FOCUSOUT: `focusout${EVENT_KEY$3}`, - MOUSEENTER: `mouseenter${EVENT_KEY$3}`, - MOUSELEAVE: `mouseleave${EVENT_KEY$3}` - }; - const CLASS_NAME_FADE$2 = 'fade'; - const CLASS_NAME_SHOW$2 = 'show'; - const SELECTOR_TITLE = '.popover-header'; - const SELECTOR_CONTENT = '.popover-body'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Popover extends Tooltip { - // Getters - static get Default() { - return Default$2; - } - - static get NAME() { - return NAME$3; - } - - static get Event() { - return Event$1; - } - - static get DefaultType() { - return DefaultType$2; - } // Overrides - - - isWithContent() { - return this.getTitle() || this._getContent(); - } - - getTipElement() { - if (this.tip) { - return this.tip; - } - - this.tip = super.getTipElement(); - - if (!this.getTitle()) { - SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove(); - } - - if (!this._getContent()) { - SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove(); - } - - return this.tip; - } - - setContent() { - const tip = this.getTipElement(); // we use append for html objects to maintain js events - - this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle()); - - let content = this._getContent(); - - if (typeof content === 'function') { - content = content.call(this._element); - } - - this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content); - tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2); - } // Private - - - _addAttachmentClass(attachment) { - this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`); - } - - _getContent() { - return this._element.getAttribute('data-bs-content') || this._config.content; - } - - _cleanTipClass() { - const tip = this.getTipElement(); - const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX); - - if (tabClass !== null && tabClass.length > 0) { - tabClass.map(token => token.trim()).forEach(tClass => tip.classList.remove(tClass)); - } - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Popover.getOrCreateInstance(this, config); - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - } - }); - } - - } - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Popover to jQuery only if jQuery is present - */ - - - defineJQueryPlugin(Popover); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): scrollspy.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$2 = 'scrollspy'; - const DATA_KEY$2 = 'bs.scrollspy'; - const EVENT_KEY$2 = `.${DATA_KEY$2}`; - const DATA_API_KEY$1 = '.data-api'; - const Default$1 = { - offset: 10, - method: 'auto', - target: '' - }; - const DefaultType$1 = { - offset: 'number', - method: 'string', - target: '(string|element)' - }; - const EVENT_ACTIVATE = `activate${EVENT_KEY$2}`; - const EVENT_SCROLL = `scroll${EVENT_KEY$2}`; - const EVENT_LOAD_DATA_API = `load${EVENT_KEY$2}${DATA_API_KEY$1}`; - const CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'; - const CLASS_NAME_ACTIVE$1 = 'active'; - const SELECTOR_DATA_SPY = '[data-bs-spy="scroll"]'; - const SELECTOR_NAV_LIST_GROUP$1 = '.nav, .list-group'; - const SELECTOR_NAV_LINKS = '.nav-link'; - const SELECTOR_NAV_ITEMS = '.nav-item'; - const SELECTOR_LIST_ITEMS = '.list-group-item'; - const SELECTOR_DROPDOWN$1 = '.dropdown'; - const SELECTOR_DROPDOWN_TOGGLE$1 = '.dropdown-toggle'; - const METHOD_OFFSET = 'offset'; - const METHOD_POSITION = 'position'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class ScrollSpy extends BaseComponent { - constructor(element, config) { - super(element); - this._scrollElement = this._element.tagName === 'BODY' ? window : this._element; - this._config = this._getConfig(config); - this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`; - this._offsets = []; - this._targets = []; - this._activeTarget = null; - this._scrollHeight = 0; - EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process()); - this.refresh(); - - this._process(); - } // Getters - - - static get Default() { - return Default$1; - } - - static get NAME() { - return NAME$2; - } // Public - - - refresh() { - const autoMethod = this._scrollElement === this._scrollElement.window ? METHOD_OFFSET : METHOD_POSITION; - const offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method; - const offsetBase = offsetMethod === METHOD_POSITION ? this._getScrollTop() : 0; - this._offsets = []; - this._targets = []; - this._scrollHeight = this._getScrollHeight(); - const targets = SelectorEngine.find(this._selector); - targets.map(element => { - const targetSelector = getSelectorFromElement(element); - const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null; - - if (target) { - const targetBCR = target.getBoundingClientRect(); - - if (targetBCR.width || targetBCR.height) { - return [Manipulator[offsetMethod](target).top + offsetBase, targetSelector]; - } - } - - return null; - }).filter(item => item).sort((a, b) => a[0] - b[0]).forEach(item => { - this._offsets.push(item[0]); - - this._targets.push(item[1]); - }); - } - - dispose() { - EventHandler.off(this._scrollElement, EVENT_KEY$2); - super.dispose(); - } // Private - - - _getConfig(config) { - config = { ...Default$1, - ...Manipulator.getDataAttributes(this._element), - ...(typeof config === 'object' && config ? config : {}) - }; - - if (typeof config.target !== 'string' && isElement$1(config.target)) { - let { - id - } = config.target; - - if (!id) { - id = getUID(NAME$2); - config.target.id = id; - } - - config.target = `#${id}`; - } - - typeCheckConfig(NAME$2, config, DefaultType$1); - return config; - } - - _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 scrollTop = this._getScrollTop() + this._config.offset; - - const scrollHeight = this._getScrollHeight(); - - const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight(); - - if (this._scrollHeight !== scrollHeight) { - this.refresh(); - } - - if (scrollTop >= maxScroll) { - const target = this._targets[this._targets.length - 1]; - - if (this._activeTarget !== target) { - this._activate(target); - } - - return; - } - - if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) { - this._activeTarget = null; - - this._clear(); - - return; - } - - for (let i = this._offsets.length; i--;) { - const isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]); - - if (isActiveTarget) { - this._activate(this._targets[i]); - } - } - } - - _activate(target) { - this._activeTarget = target; - - this._clear(); - - const queries = this._selector.split(',').map(selector => `${selector}[data-bs-target="${target}"],${selector}[href="${target}"]`); - - const link = SelectorEngine.findOne(queries.join(',')); - - if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) { - SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE$1, link.closest(SELECTOR_DROPDOWN$1)).classList.add(CLASS_NAME_ACTIVE$1); - link.classList.add(CLASS_NAME_ACTIVE$1); - } else { - // Set triggered link as active - link.classList.add(CLASS_NAME_ACTIVE$1); - SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP$1).forEach(listGroup => { - // Set triggered links parents as active - // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor - SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`).forEach(item => item.classList.add(CLASS_NAME_ACTIVE$1)); // Handle special case when .nav-link is inside .nav-item - - SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS).forEach(navItem => { - SelectorEngine.children(navItem, SELECTOR_NAV_LINKS).forEach(item => item.classList.add(CLASS_NAME_ACTIVE$1)); - }); - }); - } - - EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, { - relatedTarget: target - }); - } - - _clear() { - SelectorEngine.find(this._selector).filter(node => node.classList.contains(CLASS_NAME_ACTIVE$1)).forEach(node => node.classList.remove(CLASS_NAME_ACTIVE$1)); - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = ScrollSpy.getOrCreateInstance(this, config); - - if (typeof config !== 'string') { - return; - } - - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - }); - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(window, EVENT_LOAD_DATA_API, () => { - SelectorEngine.find(SELECTOR_DATA_SPY).forEach(spy => new ScrollSpy(spy)); - }); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .ScrollSpy to jQuery only if jQuery is present - */ - - defineJQueryPlugin(ScrollSpy); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): tab.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME$1 = 'tab'; - const DATA_KEY$1 = 'bs.tab'; - const EVENT_KEY$1 = `.${DATA_KEY$1}`; - const DATA_API_KEY = '.data-api'; - const EVENT_HIDE$1 = `hide${EVENT_KEY$1}`; - const EVENT_HIDDEN$1 = `hidden${EVENT_KEY$1}`; - const EVENT_SHOW$1 = `show${EVENT_KEY$1}`; - const EVENT_SHOWN$1 = `shown${EVENT_KEY$1}`; - const EVENT_CLICK_DATA_API = `click${EVENT_KEY$1}${DATA_API_KEY}`; - const CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'; - const CLASS_NAME_ACTIVE = 'active'; - const CLASS_NAME_FADE$1 = 'fade'; - const CLASS_NAME_SHOW$1 = 'show'; - const SELECTOR_DROPDOWN = '.dropdown'; - const SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'; - const SELECTOR_ACTIVE = '.active'; - const SELECTOR_ACTIVE_UL = ':scope > li > .active'; - const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]'; - const SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'; - const SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Tab extends BaseComponent { - // Getters - static get NAME() { - return NAME$1; - } // Public - - - show() { - if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && this._element.classList.contains(CLASS_NAME_ACTIVE)) { - return; - } - - let previous; - const target = getElementFromSelector(this._element); - - const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP); - - if (listElement) { - const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE; - previous = SelectorEngine.find(itemSelector, listElement); - previous = previous[previous.length - 1]; - } - - const hideEvent = previous ? EventHandler.trigger(previous, EVENT_HIDE$1, { - relatedTarget: this._element - }) : null; - const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$1, { - relatedTarget: previous - }); - - if (showEvent.defaultPrevented || hideEvent !== null && hideEvent.defaultPrevented) { - return; - } - - this._activate(this._element, listElement); - - const complete = () => { - EventHandler.trigger(previous, EVENT_HIDDEN$1, { - relatedTarget: this._element - }); - EventHandler.trigger(this._element, EVENT_SHOWN$1, { - relatedTarget: previous - }); - }; - - if (target) { - this._activate(target, target.parentNode, complete); - } else { - complete(); - } - } // Private - - - _activate(element, container, callback) { - const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ? SelectorEngine.find(SELECTOR_ACTIVE_UL, container) : SelectorEngine.children(container, SELECTOR_ACTIVE); - const active = activeElements[0]; - const isTransitioning = callback && active && active.classList.contains(CLASS_NAME_FADE$1); - - const complete = () => this._transitionComplete(element, active, callback); - - if (active && isTransitioning) { - active.classList.remove(CLASS_NAME_SHOW$1); - - this._queueCallback(complete, element, true); - } else { - complete(); - } - } - - _transitionComplete(element, active, callback) { - if (active) { - active.classList.remove(CLASS_NAME_ACTIVE); - const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode); - - if (dropdownChild) { - dropdownChild.classList.remove(CLASS_NAME_ACTIVE); - } - - if (active.getAttribute('role') === 'tab') { - active.setAttribute('aria-selected', false); - } - } - - element.classList.add(CLASS_NAME_ACTIVE); - - if (element.getAttribute('role') === 'tab') { - element.setAttribute('aria-selected', true); - } - - reflow(element); - - if (element.classList.contains(CLASS_NAME_FADE$1)) { - element.classList.add(CLASS_NAME_SHOW$1); - } - - let parent = element.parentNode; - - if (parent && parent.nodeName === 'LI') { - parent = parent.parentNode; - } - - if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) { - const dropdownElement = element.closest(SELECTOR_DROPDOWN); - - if (dropdownElement) { - SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement).forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE)); - } - - element.setAttribute('aria-expanded', true); - } - - if (callback) { - callback(); - } - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Tab.getOrCreateInstance(this); - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](); - } - }); - } - - } - /** - * ------------------------------------------------------------------------ - * Data Api implementation - * ------------------------------------------------------------------------ - */ - - - EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) { - if (['A', 'AREA'].includes(this.tagName)) { - event.preventDefault(); - } - - if (isDisabled(this)) { - return; - } - - const data = Tab.getOrCreateInstance(this); - data.show(); - }); - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Tab to jQuery only if jQuery is present - */ - - defineJQueryPlugin(Tab); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.2): toast.js - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - /** - * ------------------------------------------------------------------------ - * Constants - * ------------------------------------------------------------------------ - */ - - const NAME = 'toast'; - const DATA_KEY = 'bs.toast'; - const EVENT_KEY = `.${DATA_KEY}`; - const EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`; - const EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`; - const EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`; - const EVENT_FOCUSIN = `focusin${EVENT_KEY}`; - const EVENT_FOCUSOUT = `focusout${EVENT_KEY}`; - const EVENT_HIDE = `hide${EVENT_KEY}`; - const EVENT_HIDDEN = `hidden${EVENT_KEY}`; - const EVENT_SHOW = `show${EVENT_KEY}`; - const EVENT_SHOWN = `shown${EVENT_KEY}`; - const CLASS_NAME_FADE = 'fade'; - const CLASS_NAME_HIDE = 'hide'; - const CLASS_NAME_SHOW = 'show'; - const CLASS_NAME_SHOWING = 'showing'; - const DefaultType = { - animation: 'boolean', - autohide: 'boolean', - delay: 'number' - }; - const Default = { - animation: true, - autohide: true, - delay: 5000 - }; - const SELECTOR_DATA_DISMISS = '[data-bs-dismiss="toast"]'; - /** - * ------------------------------------------------------------------------ - * Class Definition - * ------------------------------------------------------------------------ - */ - - class Toast extends BaseComponent { - constructor(element, config) { - super(element); - this._config = this._getConfig(config); - this._timeout = null; - this._hasMouseInteraction = false; - this._hasKeyboardInteraction = false; - - this._setListeners(); - } // Getters - - - static get DefaultType() { - return DefaultType; - } - - static get Default() { - return Default; - } - - static get NAME() { - return NAME; - } // Public - - - show() { - const showEvent = EventHandler.trigger(this._element, EVENT_SHOW); - - if (showEvent.defaultPrevented) { - return; - } - - this._clearTimeout(); - - if (this._config.animation) { - this._element.classList.add(CLASS_NAME_FADE); - } - - const complete = () => { - this._element.classList.remove(CLASS_NAME_SHOWING); - - this._element.classList.add(CLASS_NAME_SHOW); - - EventHandler.trigger(this._element, EVENT_SHOWN); - - this._maybeScheduleHide(); - }; - - this._element.classList.remove(CLASS_NAME_HIDE); - - reflow(this._element); - - this._element.classList.add(CLASS_NAME_SHOWING); - - this._queueCallback(complete, this._element, this._config.animation); - } - - hide() { - if (!this._element.classList.contains(CLASS_NAME_SHOW)) { - return; - } - - const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE); - - if (hideEvent.defaultPrevented) { - return; - } - - const complete = () => { - this._element.classList.add(CLASS_NAME_HIDE); - - EventHandler.trigger(this._element, EVENT_HIDDEN); - }; - - this._element.classList.remove(CLASS_NAME_SHOW); - - this._queueCallback(complete, this._element, this._config.animation); - } - - dispose() { - this._clearTimeout(); - - if (this._element.classList.contains(CLASS_NAME_SHOW)) { - this._element.classList.remove(CLASS_NAME_SHOW); - } - - super.dispose(); - } // Private - - - _getConfig(config) { - config = { ...Default, - ...Manipulator.getDataAttributes(this._element), - ...(typeof config === 'object' && config ? config : {}) - }; - typeCheckConfig(NAME, config, this.constructor.DefaultType); - return config; - } - - _maybeScheduleHide() { - if (!this._config.autohide) { - return; - } - - if (this._hasMouseInteraction || this._hasKeyboardInteraction) { - return; - } - - this._timeout = setTimeout(() => { - this.hide(); - }, this._config.delay); - } - - _onInteraction(event, isInteracting) { - switch (event.type) { - case 'mouseover': - case 'mouseout': - this._hasMouseInteraction = isInteracting; - break; - - case 'focusin': - case 'focusout': - this._hasKeyboardInteraction = isInteracting; - break; - } - - if (isInteracting) { - this._clearTimeout(); - - return; - } - - const nextElement = event.relatedTarget; - - if (this._element === nextElement || this._element.contains(nextElement)) { - return; - } - - this._maybeScheduleHide(); - } - - _setListeners() { - EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide()); - EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true)); - EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false)); - EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true)); - EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false)); - } - - _clearTimeout() { - clearTimeout(this._timeout); - this._timeout = null; - } // Static - - - static jQueryInterface(config) { - return this.each(function () { - const data = Toast.getOrCreateInstance(this, config); - - if (typeof config === 'string') { - if (typeof data[config] === 'undefined') { - throw new TypeError(`No method named "${config}"`); - } - - data[config](this); - } - }); - } - - } - /** - * ------------------------------------------------------------------------ - * jQuery - * ------------------------------------------------------------------------ - * add .Toast to jQuery only if jQuery is present - */ - - - defineJQueryPlugin(Toast); - - /** - * -------------------------------------------------------------------------- - * Bootstrap (v5.0.1): index.umd.js - * Licensed under MIT (https:/github.com/twbs/bootstrap/blob/main/LICENSE) - * -------------------------------------------------------------------------- - */ - var index_umd = { - Alert, - Button, - Carousel, - Collapse, - Dropdown, - Modal, - Offcanvas, - Popover, - ScrollSpy, - Tab, - Toast, - Tooltip - }; - - return index_umd; - -}))); -//# sourceMappingURL=oe-bcl-default.umd.js.map diff --git a/assets/js/oe-bcl-default.umd.js.map b/assets/js/oe-bcl-default.umd.js.map deleted file mode 100644 index ed492ca1..00000000 --- a/assets/js/oe-bcl-default.umd.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"oe-bcl-default.umd.js","sources":["../../../../bootstrap/js/src/dom/selector-engine.js","../../../../bootstrap/js/src/util/index.js","../../../../bootstrap/js/src/dom/event-handler.js","../../../../bootstrap/js/src/dom/data.js","../../../../bootstrap/js/src/base-component.js","../../../../bootstrap/js/src/alert.js","../../../../bootstrap/js/src/button.js","../../../../bootstrap/js/src/dom/manipulator.js","../../../../bootstrap/js/src/carousel.js","../../../../bootstrap/js/src/collapse.js","../../../../node_modules/@popperjs/core/lib/enums.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../../../../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../../../../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../../../../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/contains.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../../../../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../../../../node_modules/@popperjs/core/lib/utils/math.js","../../../../node_modules/@popperjs/core/lib/utils/within.js","../../../../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../../../../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../../../../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../../../../node_modules/@popperjs/core/lib/modifiers/arrow.js","../../../../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../../../../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../../../../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../../../../node_modules/@popperjs/core/lib/utils/getVariation.js","../../../../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../../../../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../../../../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../../../../node_modules/@popperjs/core/lib/modifiers/flip.js","../../../../node_modules/@popperjs/core/lib/modifiers/hide.js","../../../../node_modules/@popperjs/core/lib/modifiers/offset.js","../../../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../../../../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../../../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../../../../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../../../../node_modules/@popperjs/core/lib/utils/debounce.js","../../../../node_modules/@popperjs/core/lib/utils/format.js","../../../../node_modules/@popperjs/core/lib/utils/validateModifiers.js","../../../../node_modules/@popperjs/core/lib/utils/uniqueBy.js","../../../../node_modules/@popperjs/core/lib/utils/mergeByName.js","../../../../node_modules/@popperjs/core/lib/createPopper.js","../../../../node_modules/@popperjs/core/lib/popper-lite.js","../../../../node_modules/@popperjs/core/lib/popper.js","../../../../bootstrap/js/src/dropdown.js","../../../../bootstrap/js/src/util/scrollbar.js","../../../../bootstrap/js/src/util/backdrop.js","../../../../bootstrap/js/src/modal.js","../../../../bootstrap/js/src/offcanvas.js","../../../../bootstrap/js/src/util/sanitizer.js","../../../../bootstrap/js/src/tooltip.js","../../../../bootstrap/js/src/popover.js","../../../../bootstrap/js/src/scrollspy.js","../../../../bootstrap/js/src/tab.js","../../../../bootstrap/js/src/toast.js","../index.umd.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NODE_TEXT = 3\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children)\n .filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n\n let ancestor = element.parentNode\n\n while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {\n if (ancestor.matches(selector)) {\n parents.push(ancestor)\n }\n\n ancestor = ancestor.parentNode\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n }\n}\n\nexport default SelectorEngine\n","import SelectorEngine from '../dom/selector-engine'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = obj => {\n if (obj === null || obj === undefined) {\n return `${obj}`\n }\n\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return SelectorEngine.findOne(obj)\n }\n\n return null\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n return getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\nconst reflow = element => element.offsetHeight\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n DOMContentLoadedCallbacks.forEach(callback => callback())\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element depending on the direction and if cycle is allowed\n if (index === -1) {\n return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]\n }\n\n const listLength = list.length\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n getNextActiveElement,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute,\n executeAfterTransition\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\nconst customEventsRegex = /^(mouseenter|mouseleave)/i\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * ------------------------------------------------------------------------\n * Private methods\n * ------------------------------------------------------------------------\n */\n\nfunction getUidEvent(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getEvent(element) {\n const uid = getUidEvent(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n event.delegateTarget = element\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (let i = domElements.length; i--;) {\n if (domElements[i] === target) {\n event.delegateTarget = target\n\n if (handler.oneOff) {\n // eslint-disable-next-line unicorn/consistent-destructuring\n EventHandler.off(element, event.type, selector, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n\n // To please ESLint\n return null\n }\n}\n\nfunction findHandler(events, handler, delegationSelector = null) {\n const uidEventList = Object.keys(events)\n\n for (let i = 0, len = uidEventList.length; i < len; i++) {\n const event = events[uidEventList[i]]\n\n if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {\n return event\n }\n }\n\n return null\n}\n\nfunction normalizeParams(originalTypeEvent, handler, delegationFn) {\n const delegation = typeof handler === 'string'\n const originalHandler = delegation ? delegationFn : handler\n\n let typeEvent = getTypeEvent(originalTypeEvent)\n const isNative = nativeEvents.has(typeEvent)\n\n if (!isNative) {\n typeEvent = originalTypeEvent\n }\n\n return [delegation, originalHandler, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n if (!handler) {\n handler = delegationFn\n delegationFn = null\n }\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (customEventsRegex.test(originalTypeEvent)) {\n const wrapFn = fn => {\n return function (event) {\n if (!event.relatedTarget || (event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget))) {\n return fn.call(this, event)\n }\n }\n }\n\n if (delegationFn) {\n delegationFn = wrapFn(delegationFn)\n } else {\n handler = wrapFn(handler)\n }\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const events = getEvent(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null)\n\n if (previousFn) {\n previousFn.oneOff = previousFn.oneOff && oneOff\n\n return\n }\n\n const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = delegation ?\n bootstrapDelegationHandler(element, handler, delegationFn) :\n bootstrapHandler(element, handler)\n\n fn.delegationSelector = delegation ? handler : null\n fn.originalHandler = originalHandler\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, delegation)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n Object.keys(storeElementEvent).forEach(handlerKey => {\n if (handlerKey.includes(namespace)) {\n const event = storeElementEvent[handlerKey]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n}\n\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '')\n return customEvents[event] || event\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, false)\n },\n\n one(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFn) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getEvent(element)\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof originalHandler !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!events || !events[typeEvent]) {\n return\n }\n\n removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null)\n return\n }\n\n if (isNamespace) {\n Object.keys(events).forEach(elementEvent => {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n })\n }\n\n const storeElementEvent = events[typeEvent] || {}\n Object.keys(storeElementEvent).forEach(keyHandlers => {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n const event = storeElementEvent[keyHandlers]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = getTypeEvent(event)\n const inNamespace = event !== typeEvent\n const isNative = nativeEvents.has(typeEvent)\n\n let jQueryEvent\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n let evt = null\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n if (isNative) {\n evt = document.createEvent('HTMLEvents')\n evt.initEvent(typeEvent, bubbles, true)\n } else {\n evt = new CustomEvent(event, {\n bubbles,\n cancelable: true\n })\n }\n\n // merge custom information in our event\n if (typeof args !== 'undefined') {\n Object.keys(args).forEach(key => {\n Object.defineProperty(evt, key, {\n get() {\n return args[key]\n }\n })\n })\n }\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst elementMap = new Map()\n\nexport default {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map())\n }\n\n const instanceMap = elementMap.get(element)\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`)\n return\n }\n\n instanceMap.set(key, instance)\n },\n\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null\n }\n\n return null\n },\n\n remove(element, key) {\n if (!elementMap.has(element)) {\n return\n }\n\n const instanceMap = elementMap.get(element)\n\n instanceMap.delete(key)\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element)\n }\n }\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\nimport {\n executeAfterTransition,\n getElement\n} from './util/index'\nimport EventHandler from './dom/event-handler'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst VERSION = '5.0.2'\n\nclass BaseComponent {\n constructor(element) {\n element = getElement(element)\n\n if (!element) {\n return\n }\n\n this._element = element\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n Object.getOwnPropertyNames(this).forEach(propertyName => {\n this[propertyName] = null\n })\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated)\n }\n\n /** Static */\n\n static getInstance(element) {\n return Data.get(element, this.DATA_KEY)\n }\n\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DISMISS = '[data-bs-dismiss=\"alert\"]'\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_ALERT = 'alert'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n close(element) {\n const rootElement = element ? this._getRootElement(element) : this._element\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent === null || customEvent.defaultPrevented) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n // Private\n\n _getRootElement(element) {\n return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`)\n }\n\n _triggerCloseEvent(element) {\n return EventHandler.trigger(element, EVENT_CLOSE)\n }\n\n _removeElement(element) {\n element.classList.remove(CLASS_NAME_SHOW)\n\n const isAnimated = element.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(() => this._destroyElement(element), element, isAnimated)\n }\n\n _destroyElement(element) {\n element.remove()\n\n EventHandler.trigger(element, EVENT_CLOSED)\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this)\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert.handleDismiss(new Alert()))\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Alert to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this)\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n const data = Button.getOrCreateInstance(button)\n\n data.toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Button to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(val) {\n if (val === 'true') {\n return true\n }\n\n if (val === 'false') {\n return false\n }\n\n if (val === Number(val).toString()) {\n return Number(val)\n }\n\n if (val === '' || val === 'null') {\n return null\n }\n\n return val\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n\n Object.keys(element.dataset)\n .filter(key => key.startsWith('bs'))\n .forEach(key => {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n })\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n },\n\n offset(element) {\n const rect = element.getBoundingClientRect()\n\n return {\n top: rect.top + document.body.scrollTop,\n left: rect.left + document.body.scrollLeft\n }\n },\n\n position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n }\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n getNextActiveElement,\n reflow,\n triggerTransitionEnd,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n slide: false,\n pause: 'hover',\n wrap: true,\n touch: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)',\n keyboard: 'boolean',\n slide: '(boolean|string)',\n pause: '(string|boolean)',\n wrap: 'boolean',\n touch: 'boolean'\n}\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY]: DIRECTION_LEFT\n}\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_INDICATOR = '[data-bs-target]'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n next() {\n this._slide(ORDER_NEXT)\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n this._slide(ORDER_PREV)\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) {\n triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config && this._config.interval && !this._isPaused) {\n this._updateInterval()\n\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const order = index > activeIndex ?\n ORDER_NEXT :\n ORDER_PREV\n\n this._slide(order, this._items[index])\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n this.touchDeltaX = 0\n\n if (!direction) {\n return\n }\n\n this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT)\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event))\n EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event))\n }\n\n if (this._config.touch && this._touchSupported) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n const start = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchStartX = event.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.touches[0].clientX\n }\n }\n\n const move = event => {\n // ensure swiping with one touch and not pinching\n this.touchDeltaX = event.touches && event.touches.length > 1 ?\n 0 :\n event.touches[0].clientX - this.touchStartX\n }\n\n const end = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {\n EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault())\n })\n\n if (this._pointerEvent) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n const direction = KEY_TO_DIRECTION[event.key]\n if (direction) {\n event.preventDefault()\n this._slide(direction)\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode ?\n SelectorEngine.find(SELECTOR_ITEM, element.parentNode) :\n []\n\n return this._items.indexOf(element)\n }\n\n _getItemByOrder(order, activeElement) {\n const isNext = order === ORDER_NEXT\n return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap)\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element))\n\n return EventHandler.trigger(this._element, EVENT_SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement)\n\n for (let i = 0; i < indicators.length; i++) {\n if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {\n indicators[i].classList.add(CLASS_NAME_ACTIVE)\n indicators[i].setAttribute('aria-current', 'true')\n break\n }\n }\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n if (elementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = elementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n }\n\n _slide(directionOrOrder, element) {\n const order = this._directionToOrder(directionOrOrder)\n const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || this._getItemByOrder(order, activeElement)\n\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n const isNext = order === ORDER_NEXT\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n const eventDirectionName = this._orderToDirection(order)\n\n if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {\n this._isSliding = false\n return\n }\n\n if (this._isSliding) {\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n this._activeElement = nextElement\n\n const triggerSlidEvent = () => {\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }\n\n if (this._element.classList.contains(CLASS_NAME_SLIDE)) {\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n setTimeout(triggerSlidEvent, 0)\n }\n\n this._queueCallback(completeCallBack, activeElement, true)\n } else {\n activeElement.classList.remove(CLASS_NAME_ACTIVE)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n this._isSliding = false\n triggerSlidEvent()\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _directionToOrder(direction) {\n if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) {\n return direction\n }\n\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (![ORDER_NEXT, ORDER_PREV].includes(order)) {\n return order\n }\n\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n\n static carouselInterface(element, config) {\n const data = Carousel.getOrCreateInstance(element, config)\n\n let { _config } = data\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Carousel.carouselInterface(this, config)\n })\n }\n\n static dataApiClickHandler(event) {\n const target = getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel.carouselInterface(target, config)\n\n if (slideIndex) {\n Carousel.getInstance(target).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler)\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (let i = 0, len = carousels.length; i < len; i++) {\n Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i]))\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Carousel to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElement,\n getSelectorFromElement,\n getElementFromSelector,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n toggle: true,\n parent: ''\n}\n\nconst DefaultType = {\n toggle: 'boolean',\n parent: '(string|element)'\n}\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.show, .collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._isTransitioning = false\n this._config = this._getConfig(config)\n this._triggerArray = SelectorEngine.find(\n `${SELECTOR_DATA_TOGGLE}[href=\"#${this._element.id}\"],` +\n `${SELECTOR_DATA_TOGGLE}[data-bs-target=\"#${this._element.id}\"]`\n )\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElem => foundElem === this._element)\n\n if (selector !== null && filterElement.length) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent)\n .filter(elem => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-bs-parent') === this._config.parent\n }\n\n return elem.classList.contains(CLASS_NAME_COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n const container = SelectorEngine.findOne(this._selector)\n if (actives) {\n const tempActiveData = actives.find(elem => container !== elem)\n activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null\n\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n if (actives) {\n actives.forEach(elemActive => {\n if (container !== elemActive) {\n Collapse.collapseInterface(elemActive, 'hide')\n }\n\n if (!activesData) {\n Data.set(elemActive, DATA_KEY, null)\n }\n })\n }\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n this._triggerArray.forEach(element => {\n element.classList.remove(CLASS_NAME_COLLAPSED)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n\n this._queueCallback(complete, this._element, true)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const elem = getElementFromSelector(trigger)\n\n if (elem && !elem.classList.contains(CLASS_NAME_SHOW)) {\n trigger.classList.add(CLASS_NAME_COLLAPSED)\n trigger.setAttribute('aria-expanded', false)\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n\n this._queueCallback(complete, this._element, true)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT\n }\n\n _getParent() {\n let { parent } = this._config\n\n parent = getElement(parent)\n\n const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent=\"${parent}\"]`\n\n SelectorEngine.find(selector, parent)\n .forEach(element => {\n const selected = getElementFromSelector(element)\n\n this._addAriaAndCollapsedClass(\n selected,\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (!element || !triggerArray.length) {\n return\n }\n\n const isOpen = element.classList.contains(CLASS_NAME_SHOW)\n\n triggerArray.forEach(elem => {\n if (isOpen) {\n elem.classList.remove(CLASS_NAME_COLLAPSED)\n } else {\n elem.classList.add(CLASS_NAME_COLLAPSED)\n }\n\n elem.setAttribute('aria-expanded', isOpen)\n })\n }\n\n // Static\n\n static collapseInterface(element, config) {\n let data = Collapse.getInstance(element)\n const _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Collapse.collapseInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n const triggerData = Manipulator.getDataAttributes(this)\n const selector = getSelectorFromElement(this)\n const selectorElements = SelectorEngine.find(selector)\n\n selectorElements.forEach(element => {\n const data = Collapse.getInstance(element)\n let config\n if (data) {\n // update parent attribute\n if (data._parent === null && typeof triggerData.parent === 'string') {\n data._config.parent = triggerData.parent\n data._parent = data._getParent()\n }\n\n config = 'toggle'\n } else {\n config = triggerData\n }\n\n Collapse.collapseInterface(element, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Collapse to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Collapse)\n\nexport default Collapse\n","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export default function getBoundingClientRect(element) {\n var rect = element.getBoundingClientRect();\n return {\n width: rect.width,\n height: rect.height,\n top: rect.top,\n right: rect.right,\n bottom: rect.bottom,\n left: rect.left,\n x: rect.left,\n y: rect.top\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;\n var isIE = navigator.userAgent.indexOf('Trident') !== -1;\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport default function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport within from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n if (!isHTMLElement(arrowElement)) {\n console.error(['Popper: \"arrow\" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' '));\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: \"arrow\" modifier\\'s `element` must be a child of the popper', 'element.'].join(' '));\n }\n\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","import { top, left, right, bottom } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref) {\n var x = _ref.x,\n y = _ref.y;\n var win = window;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(round(x * dpr) / dpr) || 0,\n y: round(round(y * dpr) / dpr) || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets;\n\n var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets,\n _ref3$x = _ref3.x,\n x = _ref3$x === void 0 ? 0 : _ref3$x,\n _ref3$y = _ref3.y,\n y = _ref3$y === void 0 ? 0 : _ref3$y;\n\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top) {\n sideY = bottom; // $FlowFixMe[prop-missing]\n\n y -= offsetParent[heightProp] - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left) {\n sideX = right; // $FlowFixMe[prop-missing]\n\n x -= offsetParent[widthProp] - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref4) {\n var state = _ref4.state,\n options = _ref4.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n\n if (process.env.NODE_ENV !== \"production\") {\n var transitionProperty = getComputedStyle(state.elements.popper).transitionProperty || '';\n\n if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {\n return transitionProperty.indexOf(property) >= 0;\n })) {\n console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: \"transform\", \"top\", \"right\", \"bottom\", \"left\".', '\\n\\n', 'Disable the \"computeStyles\" modifier\\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\\n\\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));\n }\n }\n\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If <html> has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on <html>\n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nexport default function getViewportRect(element) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper\n // can be obscured underneath it.\n // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even\n // if it isn't open, so if this isn't available, the popper will be detected\n // to overflow the bottom of the screen too early.\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently)\n // In Chrome, it returns a value very close to 0 (+/-) but contains rounding\n // errors due to floating point numbers, so we need to check precision.\n // Safari returns a number <= 0, usually < -1 when pinch-zoomed\n // Feature detection fails in mobile emulation mode in Chrome.\n // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) <\n // 0.001\n // Fallback here: \"Not Safari\" userAgent\n\n if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element) {\n var rect = getBoundingClientRect(element);\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var referenceElement = state.elements.reference;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);\n var referenceClientRect = getBoundingClientRect(referenceElement);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, \"auto\" cannot be used to allow \"bottom-start\".', 'Use \"auto-start\" instead.'].join(' '));\n }\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\";\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport within from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { max as mathMax, min as mathMin } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis || checkAltAxis) {\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = popperOffsets[mainAxis] + overflow[mainSide];\n var max = popperOffsets[mainAxis] - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0;\n var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue;\n\n if (checkMainAxis) {\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var _preventedOffset = within(tether ? mathMin(_min, tetherMin) : _min, _offset, tether ? mathMax(_max, tetherMax) : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\"; // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement);\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","export default function format(str) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return [].concat(args).reduce(function (p, c) {\n return p.replace(/%s/, c);\n }, str);\n}","import format from \"./format.js\";\nimport { modifierPhases } from \"../enums.js\";\nvar INVALID_MODIFIER_ERROR = 'Popper: modifier \"%s\" provided an invalid %s property, expected %s but got %s';\nvar MISSING_DEPENDENCY_ERROR = 'Popper: modifier \"%s\" requires \"%s\", but \"%s\" modifier is not available';\nvar VALID_PROPERTIES = ['name', 'enabled', 'phase', 'fn', 'effect', 'requires', 'options'];\nexport default function validateModifiers(modifiers) {\n modifiers.forEach(function (modifier) {\n Object.keys(modifier).forEach(function (key) {\n switch (key) {\n case 'name':\n if (typeof modifier.name !== 'string') {\n console.error(format(INVALID_MODIFIER_ERROR, String(modifier.name), '\"name\"', '\"string\"', \"\\\"\" + String(modifier.name) + \"\\\"\"));\n }\n\n break;\n\n case 'enabled':\n if (typeof modifier.enabled !== 'boolean') {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"enabled\"', '\"boolean\"', \"\\\"\" + String(modifier.enabled) + \"\\\"\"));\n }\n\n case 'phase':\n if (modifierPhases.indexOf(modifier.phase) < 0) {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"phase\"', \"either \" + modifierPhases.join(', '), \"\\\"\" + String(modifier.phase) + \"\\\"\"));\n }\n\n break;\n\n case 'fn':\n if (typeof modifier.fn !== 'function') {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"fn\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n }\n\n break;\n\n case 'effect':\n if (typeof modifier.effect !== 'function') {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"effect\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n }\n\n break;\n\n case 'requires':\n if (!Array.isArray(modifier.requires)) {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requires\"', '\"array\"', \"\\\"\" + String(modifier.requires) + \"\\\"\"));\n }\n\n break;\n\n case 'requiresIfExists':\n if (!Array.isArray(modifier.requiresIfExists)) {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requiresIfExists\"', '\"array\"', \"\\\"\" + String(modifier.requiresIfExists) + \"\\\"\"));\n }\n\n break;\n\n case 'options':\n case 'data':\n break;\n\n default:\n console.error(\"PopperJS: an invalid property has been provided to the \\\"\" + modifier.name + \"\\\" modifier, valid properties are \" + VALID_PROPERTIES.map(function (s) {\n return \"\\\"\" + s + \"\\\"\";\n }).join(', ') + \"; but \\\"\" + key + \"\\\" was provided.\");\n }\n\n modifier.requires && modifier.requires.forEach(function (requirement) {\n if (modifiers.find(function (mod) {\n return mod.name === requirement;\n }) == null) {\n console.error(format(MISSING_DEPENDENCY_ERROR, String(modifier.name), requirement, requirement));\n }\n });\n });\n });\n}","export default function uniqueBy(arr, fn) {\n var identifiers = new Set();\n return arr.filter(function (item) {\n var identifier = fn(item);\n\n if (!identifiers.has(identifier)) {\n identifiers.add(identifier);\n return true;\n }\n });\n}","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport getComputedStyle from \"./dom-utils/getComputedStyle.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport validateModifiers from \"./utils/validateModifiers.js\";\nimport uniqueBy from \"./utils/uniqueBy.js\";\nimport getBasePlacement from \"./utils/getBasePlacement.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nimport { auto } from \"./enums.js\";\nvar INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';\nvar INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(options) {\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n }); // Validate the provided modifiers so that the consumer will get warned\n // if one of the modifiers is invalid for any reason\n\n if (process.env.NODE_ENV !== \"production\") {\n var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {\n var name = _ref.name;\n return name;\n });\n validateModifiers(modifiers);\n\n if (getBasePlacement(state.options.placement) === auto) {\n var flipModifier = state.orderedModifiers.find(function (_ref2) {\n var name = _ref2.name;\n return name === 'flip';\n });\n\n if (!flipModifier) {\n console.error(['Popper: \"auto\" placements require the \"flip\" modifier be', 'present and enabled to work.'].join(' '));\n }\n }\n\n var _getComputedStyle = getComputedStyle(popper),\n marginTop = _getComputedStyle.marginTop,\n marginRight = _getComputedStyle.marginRight,\n marginBottom = _getComputedStyle.marginBottom,\n marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can\n // cause bugs with positioning, so we'll warn the consumer\n\n\n if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {\n return parseFloat(margin);\n })) {\n console.warn(['Popper: CSS \"margin\" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));\n }\n }\n\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n var __debug_loops__ = 0;\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (process.env.NODE_ENV !== \"production\") {\n __debug_loops__ += 1;\n\n if (__debug_loops__ > 100) {\n console.error(INFINITE_LOOP_ERROR);\n break;\n }\n }\n\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref3) {\n var name = _ref3.name,\n _ref3$options = _ref3.options,\n options = _ref3$options === void 0 ? {} : _ref3$options,\n effect = _ref3.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n getElement,\n getElementFromSelector,\n isDisabled,\n isElement,\n isVisible,\n isRTL,\n noop,\n getNextActiveElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst SPACE_KEY = 'Space'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY}`)\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_NAVBAR = 'navbar'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]'\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'\n\nconst Default = {\n offset: [0, 2],\n boundary: 'clippingParents',\n reference: 'toggle',\n display: 'dynamic',\n popperConfig: null,\n autoClose: true\n}\n\nconst DefaultType = {\n offset: '(array|string|function)',\n boundary: '(string|element)',\n reference: '(string|element|object)',\n display: 'string',\n popperConfig: '(null|object|function)',\n autoClose: '(boolean|string)'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (isDisabled(this._element)) {\n return\n }\n\n const isActive = this._element.classList.contains(CLASS_NAME_SHOW)\n\n if (isActive) {\n this.hide()\n return\n }\n\n this.show()\n }\n\n show() {\n if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this._element)\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n // Totally disable Popper for Dropdowns in Navbar\n if (this._inNavbar) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'none')\n } else {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference)\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false)\n\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n\n if (isDisplayStatic) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static')\n }\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n !parent.closest(SELECTOR_NAVBAR_NAV)) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.on(elem, 'mouseover', noop))\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.toggle(CLASS_NAME_SHOW)\n this._element.classList.toggle(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n this._completeHide(relatedTarget)\n }\n\n dispose() {\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK, event => {\n event.preventDefault()\n this.toggle()\n })\n }\n\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.off(elem, 'mouseover', noop))\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.remove(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._element.setAttribute('aria-expanded', 'false')\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _getMenuElement() {\n return SelectorEngine.next(this._element, SELECTOR_MENU)[0]\n }\n\n _getPlacement() {\n const parentDropdown = this._element.parentNode\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display\n if (this._config.display === 'static') {\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _selectMenuItem({ key, target }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible)\n\n if (!items.length) {\n return\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus()\n }\n\n // Static\n\n static dropdownInterface(element, config) {\n const data = Dropdown.getOrCreateInstance(element, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Dropdown.dropdownInterface(this, config)\n })\n }\n\n static clearMenus(event) {\n if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {\n return\n }\n\n const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const context = Dropdown.getInstance(toggles[i])\n if (!context || context._config.autoClose === false) {\n continue\n }\n\n if (!context._element.classList.contains(CLASS_NAME_SHOW)) {\n continue\n }\n\n const relatedTarget = {\n relatedTarget: context._element\n }\n\n if (event) {\n const composedPath = event.composedPath()\n const isMenuTarget = composedPath.includes(context._menu)\n if (\n composedPath.includes(context._element) ||\n (context._config.autoClose === 'inside' && !isMenuTarget) ||\n (context._config.autoClose === 'outside' && isMenuTarget)\n ) {\n continue\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue\n }\n\n if (event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n }\n\n context._completeHide(relatedTarget)\n }\n }\n\n static getParentFromElement(element) {\n return getElementFromSelector(element) || element.parentNode\n }\n\n static dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName) ?\n event.key === SPACE_KEY || (event.key !== ESCAPE_KEY &&\n ((event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY) ||\n event.target.closest(SELECTOR_MENU))) :\n !REGEXP_KEYDOWN.test(event.key)) {\n return\n }\n\n const isActive = this.classList.contains(CLASS_NAME_SHOW)\n\n if (!isActive && event.key === ESCAPE_KEY) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (isDisabled(this)) {\n return\n }\n\n const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n\n if (event.key === ESCAPE_KEY) {\n getToggleButton().focus()\n Dropdown.clearMenus()\n return\n }\n\n if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) {\n if (!isActive) {\n getToggleButton().click()\n }\n\n Dropdown.getInstance(getToggleButton())._selectMenuItem(event)\n return\n }\n\n if (!isActive || event.key === SPACE_KEY) {\n Dropdown.clearMenus()\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n Dropdown.dropdownInterface(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Dropdown to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport SelectorEngine from '../dom/selector-engine'\nimport Manipulator from '../dom/manipulator'\nimport { isElement } from './index'\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body\n }\n\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth\n return Math.abs(window.innerWidth - documentWidth)\n }\n\n hide() {\n const width = this.getWidth()\n this._disableOverFlow()\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width)\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width)\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width)\n }\n\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow')\n this._element.style.overflow = 'hidden'\n }\n\n _setElementAttributes(selector, styleProp, callback) {\n const scrollbarWidth = this.getWidth()\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return\n }\n\n this._saveInitialAttribute(element, styleProp)\n const calculatedValue = window.getComputedStyle(element)[styleProp]\n element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n reset() {\n this._resetElementAttributes(this._element, 'overflow')\n this._resetElementAttributes(this._element, 'paddingRight')\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight')\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight')\n }\n\n _saveInitialAttribute(element, styleProp) {\n const actualValue = element.style[styleProp]\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProp, actualValue)\n }\n }\n\n _resetElementAttributes(selector, styleProp) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProp)\n if (typeof value === 'undefined') {\n element.style.removeProperty(styleProp)\n } else {\n Manipulator.removeDataAttribute(element, styleProp)\n element.style[styleProp] = value\n }\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector)\n } else {\n SelectorEngine.find(selector, this._element).forEach(callBack)\n }\n }\n\n isOverflowing() {\n return this.getWidth() > 0\n }\n}\n\nexport default ScrollBarHelper\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { execute, executeAfterTransition, getElement, reflow, typeCheckConfig } from './index'\n\nconst Default = {\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n isAnimated: false,\n rootElement: 'body', // give the choice to place backdrop under different elements\n clickCallback: null\n}\n\nconst DefaultType = {\n isVisible: 'boolean',\n isAnimated: 'boolean',\n rootElement: '(element|string)',\n clickCallback: '(function|null)'\n}\nconst NAME = 'backdrop'\nconst CLASS_NAME_BACKDROP = 'modal-backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nclass Backdrop {\n constructor(config) {\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\n }\n\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n if (this._config.isAnimated) {\n reflow(this._getElement())\n }\n\n this._getElement().classList.add(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n execute(callback)\n })\n }\n\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._getElement().classList.remove(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n this.dispose()\n execute(callback)\n })\n }\n\n // Private\n\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div')\n backdrop.className = CLASS_NAME_BACKDROP\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE)\n }\n\n this._element = backdrop\n }\n\n return this._element\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' ? config : {})\n }\n\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement)\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n this._config.rootElement.appendChild(this._getElement())\n\n EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n dispose() {\n if (!this._isAppended) {\n return\n }\n\n EventHandler.off(this._element, EVENT_MOUSEDOWN)\n\n this._element.remove()\n this._isAppended = false\n }\n\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated)\n }\n}\n\nexport default Backdrop\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport ScrollBarHelper from './util/scrollbar'\nimport BaseComponent from './base-component'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean'\n}\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"modal\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element)\n this._backdrop = this._initializeBackDrop()\n this._isShown = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollBar = new ScrollBarHelper()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n\n if (this._isAnimated()) {\n this._isTransitioning = true\n }\n\n this._scrollBar.hide()\n\n document.body.classList.add(CLASS_NAME_OPEN)\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, event => this.hide(event))\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event && ['A', 'AREA'].includes(event.target.tagName)) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n const isAnimated = this._isAnimated()\n\n if (isAnimated) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.off(document, EVENT_FOCUSIN)\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS)\n\n this._queueCallback(() => this._hideModal(), this._element, isAnimated)\n }\n\n dispose() {\n [window, this._dialog]\n .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))\n\n this._backdrop.dispose()\n super.dispose()\n\n /**\n * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `EVENT_CLICK_DATA_API` event that should remain\n */\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value\n isAnimated: this._isAnimated()\n })\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const isAnimated = this._isAnimated()\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n if (isAnimated) {\n reflow(this._element)\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, isAnimated)\n }\n\n _enforceFocus() {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n this._element !== event.target &&\n !this._element.contains(event.target)) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault()\n this.hide()\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition()\n }\n })\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog())\n } else {\n EventHandler.off(window, EVENT_RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n this._scrollBar.reset()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _showBackdrop(callback) {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, event => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n\n if (event.target !== event.currentTarget) {\n return\n }\n\n if (this._config.backdrop === true) {\n this.hide()\n } else if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n }\n })\n\n this._backdrop.show(callback)\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE)\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const { classList, scrollHeight, style } = this._element\n const isModalOverflowing = scrollHeight > document.documentElement.clientHeight\n\n // return if the following background transition hasn't yet completed\n if ((!isModalOverflowing && style.overflowY === 'hidden') || classList.contains(CLASS_NAME_STATIC)) {\n return\n }\n\n if (!isModalOverflowing) {\n style.overflowY = 'hidden'\n }\n\n classList.add(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n classList.remove(CLASS_NAME_STATIC)\n if (!isModalOverflowing) {\n this._queueCallback(() => {\n style.overflowY = ''\n }, this._dialog)\n }\n }, this._dialog)\n\n this._element.focus()\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const scrollbarWidth = this._scrollBar.getWidth()\n const isBodyOverflowing = scrollbarWidth > 0\n\n if ((!isBodyOverflowing && isModalOverflowing && !isRTL()) || (isBodyOverflowing && !isModalOverflowing && isRTL())) {\n this._element.style.paddingLeft = `${scrollbarWidth}px`\n }\n\n if ((isBodyOverflowing && !isModalOverflowing && !isRTL()) || (!isBodyOverflowing && isModalOverflowing && isRTL())) {\n this._element.style.paddingRight = `${scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n const data = Modal.getOrCreateInstance(target)\n\n data.toggle(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible,\n typeCheckConfig\n} from './util/index'\nimport ScrollBarHelper from './util/scrollbar'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Manipulator from './dom/manipulator'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: 'boolean',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\nconst CLASS_NAME_SHOW = 'show'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"offcanvas\"]'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._addEventListeners()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._element.style.visibility = 'visible'\n\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n this._enforceFocusOnElement(this._element)\n }\n\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const completeCallBack = () => {\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n EventHandler.off(document, EVENT_FOCUSIN)\n this._element.blur()\n this._isShown = false\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._element.style.visibility = 'hidden'\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n super.dispose()\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: this._config.backdrop,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _enforceFocusOnElement(element) {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n element !== event.target &&\n !element.contains(event.target)) {\n element.focus()\n }\n })\n element.focus()\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n this.hide()\n }\n })\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (allReadyOpen && allReadyOpen !== target) {\n Offcanvas.getInstance(allReadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () =>\n SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())\n)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attr, allowedAttributeList) => {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attrName)) {\n if (uriAttrs.has(attrName)) {\n return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attrName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const allowlistKeys = Object.keys(allowList)\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (!allowlistKeys.includes(elName)) {\n el.remove()\n\n continue\n }\n\n const attributeList = [].concat(...el.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || [])\n\n attributeList.forEach(attr => {\n if (!allowedAttribute(attr, allowedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport {\n DefaultAllowlist,\n sanitizeHtml\n} from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.appendChild(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n this.tip = element.children[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle())\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.appendChild(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n let title = this._element.getAttribute('data-bs-original-title')\n\n if (!title) {\n title = typeof this._config.title === 'function' ?\n this._config.title.call(this._element) :\n this._config.title\n }\n\n return title\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || Data.get(event.delegateTarget, dataKey)\n\n if (!context) {\n context = new this.constructor(event.delegateTarget, this._getDelegateConfig())\n Data.set(event.delegateTarget, dataKey, context)\n }\n\n return context\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this._config) {\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport SelectorEngine from './dom/selector-engine'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement: 'right',\n offset: [0, 8],\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(string|element|function)'\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n this.tip = super.getTipElement()\n\n if (!this.getTitle()) {\n SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove()\n }\n\n if (!this._getContent()) {\n SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove()\n }\n\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n\n // we use append for html objects to maintain js events\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this._element)\n }\n\n this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n // Private\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getContent() {\n return this._element.getAttribute('data-bs-content') || this._config.content\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Popover to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getSelectorFromElement,\n getUID,\n isElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n offset: 10,\n method: 'auto',\n target: ''\n}\n\nconst DefaultType = {\n offset: 'number',\n method: 'string',\n target: '(string|element)'\n}\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._scrollElement = this._element.tagName === 'BODY' ? window : this._element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process())\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window ?\n METHOD_OFFSET :\n METHOD_POSITION\n\n const offsetMethod = this._config.method === 'auto' ?\n autoMethod :\n this._config.method\n\n const offsetBase = offsetMethod === METHOD_POSITION ?\n this._getScrollTop() :\n 0\n\n this._offsets = []\n this._targets = []\n this._scrollHeight = this._getScrollHeight()\n\n const targets = SelectorEngine.find(this._selector)\n\n targets.map(element => {\n const targetSelector = getSelectorFromElement(element)\n const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n return [\n Manipulator[offsetMethod](target).top + offsetBase,\n targetSelector\n ]\n }\n }\n\n return null\n })\n .filter(item => item)\n .sort((a, b) => a[0] - b[0])\n .forEach(item => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n EventHandler.off(this._scrollElement, EVENT_KEY)\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (typeof config.target !== 'string' && isElement(config.target)) {\n let { id } = config.target\n if (!id) {\n id = getUID(NAME)\n config.target.id = id\n }\n\n config.target = `#${id}`\n }\n\n typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window ?\n this._scrollElement.pageYOffset :\n this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window ?\n window.innerHeight :\n this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n for (let i = this._offsets.length; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = this._selector.split(',')\n .map(selector => `${selector}[data-bs-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const link = SelectorEngine.findOne(queries.join(','))\n\n if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, link.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n\n link.classList.add(CLASS_NAME_ACTIVE)\n } else {\n // Set triggered link as active\n link.classList.add(CLASS_NAME_ACTIVE)\n\n SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP)\n .forEach(listGroup => {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n\n // Handle special case when .nav-link is inside .nav-item\n SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS)\n .forEach(navItem => {\n SelectorEngine.children(navItem, SELECTOR_NAV_LINKS)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n })\n })\n }\n\n EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, {\n relatedTarget: target\n })\n }\n\n _clear() {\n SelectorEngine.find(this._selector)\n .filter(node => node.classList.contains(CLASS_NAME_ACTIVE))\n .forEach(node => node.classList.remove(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n SelectorEngine.find(SELECTOR_DATA_SPY)\n .forEach(spy => new ScrollSpy(spy))\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .ScrollSpy to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n reflow\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_UL = ':scope > li > .active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tab extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n if ((this._element.parentNode &&\n this._element.parentNode.nodeType === Node.ELEMENT_NODE &&\n this._element.classList.contains(CLASS_NAME_ACTIVE))) {\n return\n }\n\n let previous\n const target = getElementFromSelector(this._element)\n const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP)\n\n if (listElement) {\n const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE\n previous = SelectorEngine.find(itemSelector, listElement)\n previous = previous[previous.length - 1]\n }\n\n const hideEvent = previous ?\n EventHandler.trigger(previous, EVENT_HIDE, {\n relatedTarget: this._element\n }) :\n null\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget: previous\n })\n\n if (showEvent.defaultPrevented || (hideEvent !== null && hideEvent.defaultPrevented)) {\n return\n }\n\n this._activate(this._element, listElement)\n\n const complete = () => {\n EventHandler.trigger(previous, EVENT_HIDDEN, {\n relatedTarget: this._element\n })\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget: previous\n })\n }\n\n if (target) {\n this._activate(target, target.parentNode, complete)\n } else {\n complete()\n }\n }\n\n // Private\n\n _activate(element, container, callback) {\n const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ?\n SelectorEngine.find(SELECTOR_ACTIVE_UL, container) :\n SelectorEngine.children(container, SELECTOR_ACTIVE)\n\n const active = activeElements[0]\n const isTransitioning = callback && (active && active.classList.contains(CLASS_NAME_FADE))\n\n const complete = () => this._transitionComplete(element, active, callback)\n\n if (active && isTransitioning) {\n active.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, element, true)\n } else {\n complete()\n }\n }\n\n _transitionComplete(element, active, callback) {\n if (active) {\n active.classList.remove(CLASS_NAME_ACTIVE)\n\n const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode)\n\n if (dropdownChild) {\n dropdownChild.classList.remove(CLASS_NAME_ACTIVE)\n }\n\n if (active.getAttribute('role') === 'tab') {\n active.setAttribute('aria-selected', false)\n }\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n if (element.getAttribute('role') === 'tab') {\n element.setAttribute('aria-selected', true)\n }\n\n reflow(element)\n\n if (element.classList.contains(CLASS_NAME_FADE)) {\n element.classList.add(CLASS_NAME_SHOW)\n }\n\n let parent = element.parentNode\n if (parent && parent.nodeName === 'LI') {\n parent = parent.parentNode\n }\n\n if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) {\n const dropdownElement = element.closest(SELECTOR_DROPDOWN)\n\n if (dropdownElement) {\n SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement)\n .forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE))\n }\n\n element.setAttribute('aria-expanded', true)\n }\n\n if (callback) {\n callback()\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tab.getOrCreateInstance(this)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const data = Tab.getOrCreateInstance(this)\n data.show()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tab to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'bs.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`\nconst EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_FOCUSOUT = `focusout${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"toast\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._timeout = null\n this._hasMouseInteraction = false\n this._hasKeyboardInteraction = false\n this._setListeners()\n }\n\n // Getters\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n this._element.classList.add(CLASS_NAME_SHOW)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n this._maybeScheduleHide()\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE)\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n hide() {\n if (!this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n return config\n }\n\n _maybeScheduleHide() {\n if (!this._config.autohide) {\n return\n }\n\n if (this._hasMouseInteraction || this._hasKeyboardInteraction) {\n return\n }\n\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n\n _onInteraction(event, isInteracting) {\n switch (event.type) {\n case 'mouseover':\n case 'mouseout':\n this._hasMouseInteraction = isInteracting\n break\n case 'focusin':\n case 'focusout':\n this._hasKeyboardInteraction = isInteracting\n break\n default:\n break\n }\n\n if (isInteracting) {\n this._clearTimeout()\n return\n }\n\n const nextElement = event.relatedTarget\n if (this._element === nextElement || this._element.contains(nextElement)) {\n return\n }\n\n this._maybeScheduleHide()\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false))\n EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false))\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Toast.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Toast to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Toast)\n\nexport default Toast\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): index.umd.js\n * Licensed under MIT (https:/github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Alert from \"@openeuropa/bcl-bootstrap/js/src/alert\";\nimport Button from \"@openeuropa/bcl-bootstrap/js/src/button\";\nimport Carousel from \"@openeuropa/bcl-bootstrap/js/src/carousel\";\nimport Collapse from \"@openeuropa/bcl-bootstrap/js/src/collapse\";\nimport Dropdown from \"@openeuropa/bcl-bootstrap/js/src/dropdown\";\nimport Modal from \"@openeuropa/bcl-bootstrap/js/src/modal\";\nimport Offcanvas from \"@openeuropa/bcl-bootstrap/js/src/offcanvas\";\nimport Popover from \"@openeuropa/bcl-bootstrap/js/src/popover\";\nimport ScrollSpy from \"@openeuropa/bcl-bootstrap/js/src/scrollspy\";\nimport Tab from \"@openeuropa/bcl-bootstrap/js/src/tab\";\nimport Toast from \"@openeuropa/bcl-bootstrap/js/src/toast\";\nimport Tooltip from \"@openeuropa/bcl-bootstrap/js/src/tooltip\";\n\nexport default {\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n};\n"],"names":["NODE_TEXT","SelectorEngine","find","selector","element","document","documentElement","concat","Element","prototype","querySelectorAll","call","findOne","querySelector","children","filter","child","matches","parents","ancestor","parentNode","nodeType","Node","ELEMENT_NODE","push","prev","previous","previousElementSibling","next","nextElementSibling","MAX_UID","MILLISECONDS_MULTIPLIER","TRANSITION_END","toType","obj","undefined","toString","match","toLowerCase","getUID","prefix","Math","floor","random","getElementById","getSelector","getAttribute","hrefAttr","includes","startsWith","split","trim","getSelectorFromElement","getElementFromSelector","getTransitionDurationFromElement","transitionDuration","transitionDelay","window","getComputedStyle","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","triggerTransitionEnd","dispatchEvent","Event","isElement","jquery","getElement","length","typeCheckConfig","componentName","config","configTypes","Object","keys","forEach","property","expectedTypes","value","valueType","RegExp","test","TypeError","toUpperCase","isVisible","getClientRects","getPropertyValue","isDisabled","classList","contains","disabled","hasAttribute","findShadowRoot","attachShadow","getRootNode","root","ShadowRoot","noop","reflow","offsetHeight","getjQuery","jQuery","body","DOMContentLoadedCallbacks","onDOMContentLoaded","callback","readyState","addEventListener","isRTL","dir","defineJQueryPlugin","plugin","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","execute","executeAfterTransition","transitionElement","waitForTransition","durationPadding","emulatedDuration","called","handler","target","removeEventListener","setTimeout","getNextActiveElement","list","activeElement","shouldGetNext","isCycleAllowed","index","indexOf","listLength","max","min","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","customEventsRegex","nativeEvents","Set","getUidEvent","uid","getEvent","bootstrapHandler","event","delegateTarget","oneOff","EventHandler","off","type","apply","bootstrapDelegationHandler","domElements","i","findHandler","events","delegationSelector","uidEventList","len","originalHandler","normalizeParams","originalTypeEvent","delegationFn","delegation","typeEvent","getTypeEvent","isNative","has","addHandler","wrapFn","relatedTarget","handlers","previousFn","replace","removeHandler","Boolean","removeNamespacedHandlers","namespace","storeElementEvent","handlerKey","on","one","inNamespace","isNamespace","elementEvent","slice","keyHandlers","trigger","args","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","evt","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","createEvent","initEvent","CustomEvent","cancelable","key","defineProperty","get","preventDefault","elementMap","Map","set","instance","instanceMap","size","console","error","Array","from","remove","delete","VERSION","BaseComponent","constructor","_element","Data","DATA_KEY","dispose","EVENT_KEY","getOwnPropertyNames","propertyName","_queueCallback","isAnimated","getInstance","getOrCreateInstance","Error","DATA_API_KEY","SELECTOR_DISMISS","EVENT_CLOSE","EVENT_CLOSED","EVENT_CLICK_DATA_API","CLASS_NAME_ALERT","CLASS_NAME_FADE","CLASS_NAME_SHOW","Alert","close","rootElement","_getRootElement","customEvent","_triggerCloseEvent","_removeElement","closest","_destroyElement","each","data","handleDismiss","alertInstance","CLASS_NAME_ACTIVE","SELECTOR_DATA_TOGGLE","Button","toggle","setAttribute","button","normalizeData","val","normalizeDataKey","chr","Manipulator","setDataAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","dataset","pureKey","charAt","getDataAttribute","offset","rect","getBoundingClientRect","top","scrollTop","left","scrollLeft","position","offsetTop","offsetLeft","ARROW_LEFT_KEY","ARROW_RIGHT_KEY","TOUCHEVENT_COMPAT_WAIT","SWIPE_THRESHOLD","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","KEY_TO_DIRECTION","EVENT_SLIDE","EVENT_SLID","EVENT_KEYDOWN","EVENT_MOUSEENTER","EVENT_MOUSELEAVE","EVENT_TOUCHSTART","EVENT_TOUCHMOVE","EVENT_TOUCHEND","EVENT_POINTERDOWN","EVENT_POINTERUP","EVENT_DRAG_START","EVENT_LOAD_DATA_API","CLASS_NAME_CAROUSEL","CLASS_NAME_SLIDE","CLASS_NAME_END","CLASS_NAME_START","CLASS_NAME_NEXT","CLASS_NAME_PREV","CLASS_NAME_POINTER_EVENT","SELECTOR_ACTIVE","SELECTOR_ACTIVE_ITEM","SELECTOR_ITEM","SELECTOR_ITEM_IMG","SELECTOR_NEXT_PREV","SELECTOR_INDICATORS","SELECTOR_INDICATOR","SELECTOR_DATA_SLIDE","SELECTOR_DATA_RIDE","POINTER_TYPE_TOUCH","POINTER_TYPE_PEN","Carousel","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","PointerEvent","_addEventListeners","_slide","nextWhenVisible","hidden","cycle","clearInterval","_updateInterval","setInterval","visibilityState","bind","to","activeIndex","_getItemIndex","order","_handleSwipe","absDeltax","abs","direction","_keydown","_addTouchEventListeners","start","pointerType","clientX","touches","move","end","clearTimeout","itemImg","e","add","tagName","_getItemByOrder","isNext","_triggerSlideEvent","eventDirectionName","targetIndex","fromIndex","_setActiveIndicatorElement","activeIndicator","indicators","parseInt","elementInterval","defaultInterval","directionOrOrder","_directionToOrder","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","_orderToDirection","slideEvent","triggerSlidEvent","completeCallBack","carouselInterface","action","ride","dataApiClickHandler","slideIndex","carousels","parent","EVENT_SHOW","EVENT_SHOWN","EVENT_HIDE","EVENT_HIDDEN","CLASS_NAME_COLLAPSE","CLASS_NAME_COLLAPSING","CLASS_NAME_COLLAPSED","WIDTH","HEIGHT","SELECTOR_ACTIVES","Collapse","_isTransitioning","_triggerArray","id","toggleList","elem","filterElement","foundElem","_selector","_parent","_getParent","_addAriaAndCollapsedClass","hide","show","actives","activesData","container","tempActiveData","startEvent","elemActive","collapseInterface","dimension","_getDimension","style","setTransitioning","complete","capitalizedDimension","scrollSize","triggerArrayLength","isTransitioning","selected","triggerArray","isOpen","triggerData","selectorElements","bottom","right","auto","basePlacements","clippingParents","viewport","popper","reference","variationPlacements","reduce","acc","placement","placements","beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite","modifierPhases","getNodeName","nodeName","getWindow","node","ownerDocument","defaultView","OwnElement","isHTMLElement","HTMLElement","isShadowRoot","applyStyles","_ref","state","elements","styles","assign","effect","_ref2","initialStyles","options","strategy","margin","arrow","styleProperties","hasOwnProperty","attribute","enabled","phase","requires","getBasePlacement","width","height","x","y","getLayoutRect","clientRect","offsetWidth","rootNode","isSameNode","host","isTableElement","getDocumentElement","getParentNode","assignedSlot","getTrueOffsetParent","offsetParent","getContainingBlock","isFirefox","userAgent","isIE","elementCss","currentNode","css","transform","perspective","contain","willChange","getOffsetParent","getMainAxisFromPlacement","round","within","mathMax","mathMin","getFreshSideObject","mergePaddingObject","paddingObject","expandToHashMap","hashMap","toPaddingObject","padding","rects","_state$modifiersData$","arrowElement","popperOffsets","modifiersData","basePlacement","axis","isVertical","arrowRect","minProp","maxProp","endDiff","startDiff","arrowOffsetParent","clientSize","clientHeight","clientWidth","centerToReference","center","axisProp","centerOffset","_options$element","process","env","NODE_ENV","join","requiresIfExists","unsetSides","roundOffsetsByDPR","win","dpr","devicePixelRatio","mapToStyles","_Object$assign2","popperRect","offsets","gpuAcceleration","adaptive","roundOffsets","_ref3","_ref3$x","_ref3$y","hasX","hasY","sideX","sideY","heightProp","widthProp","commonStyles","_Object$assign","computeStyles","_ref4","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","transitionProperty","some","warn","passive","_options$scroll","scroll","_options$resize","resize","scrollParents","scrollParent","update","hash","getOppositePlacement","matched","getOppositeVariationPlacement","getWindowScroll","pageXOffset","pageYOffset","getWindowScrollBarX","getViewportRect","html","visualViewport","getDocumentRect","_element$ownerDocumen","winScroll","scrollWidth","scrollHeight","isScrollParent","_getComputedStyle","overflow","overflowX","overflowY","getScrollParent","listScrollParents","isBody","updatedList","rectToClientRect","getInnerBoundingClientRect","clientTop","clientLeft","getClientRectFromMixedType","clippingParent","getClippingParents","canEscapeClipping","clipperElement","getClippingRect","boundary","rootBoundary","mainClippingParents","firstClippingParent","clippingRect","accRect","getVariation","computeOffsets","variation","commonX","commonY","mainAxis","detectOverflow","_options","_options$placement","_options$boundary","_options$rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","referenceElement","clippingClientRect","contextElement","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","multiply","computeAutoPlacement","flipVariations","_options$allowedAutoP","allowedAutoPlacements","allPlacements","allowedPlacements","overflows","sort","a","b","getExpandedFallbackPlacements","oppositePlacement","flip","_skip","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","preferredPlacement","isBasePlacement","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","mainVariationSide","altVariationSide","checks","every","check","numberOfChecks","_loop","_i","fittingPlacement","_ret","reset","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","distanceAndSkiddingToXY","invertDistance","skidding","distance","_options$offset","_data$state$placement","getAltAxis","_options$tether","tether","_options$tetherOffset","tetherOffset","tetherOffsetValue","mainSide","altSide","additive","minLen","maxLen","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","clientOffset","offsetModifierValue","tetherMin","tetherMax","preventedOffset","_mainSide","_altSide","_offset","_min","_max","_preventedOffset","getHTMLElementScroll","getNodeScroll","getCompositeRect","elementOrVirtualElement","isFixed","isOffsetParentAnElement","modifiers","map","visited","result","modifier","dep","depModifier","orderModifiers","orderedModifiers","debounce","pending","Promise","resolve","then","format","str","_len","arguments","_key","p","c","INVALID_MODIFIER_ERROR","MISSING_DEPENDENCY_ERROR","VALID_PROPERTIES","validateModifiers","String","isArray","s","requirement","mod","uniqueBy","arr","identifiers","item","identifier","mergeByName","merged","current","existing","INVALID_ELEMENT_ERROR","INFINITE_LOOP_ERROR","DEFAULT_OPTIONS","areValidElements","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","createPopper","effectCleanupFns","isDestroyed","setOptions","cleanupModifierEffects","m","flipModifier","marginTop","marginRight","marginBottom","marginLeft","runModifierEffects","forceUpdate","_state$elements","__debug_loops__","_state$orderedModifie","_state$orderedModifie2","destroy","onFirstUpdate","_ref3$options","cleanupFn","noopFn","eventListeners","ESCAPE_KEY","SPACE_KEY","TAB_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","RIGHT_MOUSE_BUTTON","REGEXP_KEYDOWN","EVENT_CLICK","EVENT_KEYDOWN_DATA_API","EVENT_KEYUP_DATA_API","CLASS_NAME_DROPUP","CLASS_NAME_DROPEND","CLASS_NAME_DROPSTART","CLASS_NAME_NAVBAR","SELECTOR_MENU","SELECTOR_NAVBAR_NAV","SELECTOR_VISIBLE_ITEMS","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","display","popperConfig","autoClose","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","isActive","getParentFromElement","showEvent","Popper","_getPopperConfig","isDisplayStatic","focus","_completeHide","hideEvent","_getPlacement","parentDropdown","isEnd","_getOffset","popperData","defaultBsPopperConfig","_selectMenuItem","items","dropdownInterface","clearMenus","toggles","context","composedPath","isMenuTarget","clickEvent","dataApiKeydownHandler","stopPropagation","getToggleButton","click","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","ScrollBarHelper","getWidth","documentWidth","innerWidth","_disableOverFlow","_setElementAttributes","calculatedValue","_saveInitialAttribute","styleProp","scrollbarWidth","manipulationCallBack","_applyManipulationCallback","_resetElementAttributes","actualValue","removeProperty","callBack","isOverflowing","clickCallback","CLASS_NAME_BACKDROP","EVENT_MOUSEDOWN","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","createElement","className","appendChild","EVENT_HIDE_PREVENTED","EVENT_FOCUSIN","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_KEYDOWN_DISMISS","EVENT_MOUSEUP_DISMISS","EVENT_MOUSEDOWN_DISMISS","CLASS_NAME_OPEN","CLASS_NAME_STATIC","SELECTOR_DIALOG","SELECTOR_MODAL_BODY","SELECTOR_DATA_DISMISS","Modal","_dialog","_backdrop","_initializeBackDrop","_isShown","_ignoreBackdropClick","_scrollBar","_isAnimated","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","_hideModal","htmlElement","handleUpdate","modalBody","_enforceFocus","transitionComplete","_triggerBackdropTransition","_resetAdjustments","currentTarget","isModalOverflowing","isBodyOverflowing","paddingLeft","paddingRight","OPEN_SELECTOR","Offcanvas","visibility","_enforceFocusOnElement","blur","completeCallback","allReadyOpen","el","uriAttrs","ARIA_ATTRIBUTE_PATTERN","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeValue","regExp","attrRegex","DefaultAllowlist","area","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","pre","small","span","sub","sup","strong","u","ul","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","domParser","DOMParser","createdDocument","parseFromString","allowlistKeys","elName","attributeList","allowedAttributes","innerHTML","CLASS_PREFIX","BSCLS_PREFIX_REGEX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","customClass","sanitize","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","CLASS_NAME_MODAL","HOVER_STATE_SHOW","HOVER_STATE_OUT","SELECTOR_TOOLTIP_INNER","TRIGGER_HOVER","TRIGGER_FOCUS","TRIGGER_CLICK","TRIGGER_MANUAL","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","_initializeOnDelegatedTarget","_isWithActiveTrigger","_enter","_leave","getTipElement","_hideModalHandler","isWithContent","shadowRoot","isInTheDom","tipId","setContent","attachment","_getAttachment","_addAttachmentClass","prevHoverState","_cleanTipClass","getTitle","setElementContent","content","textContent","updateAttachment","dataKey","_getDelegateConfig","_handlePopperPlacementChange","triggers","eventIn","eventOut","_fixTitle","originalTitleType","dataAttributes","dataAttr","tabClass","token","tClass","SELECTOR_TITLE","SELECTOR_CONTENT","Popover","_getContent","method","EVENT_ACTIVATE","EVENT_SCROLL","CLASS_NAME_DROPDOWN_ITEM","SELECTOR_DATA_SPY","SELECTOR_NAV_LIST_GROUP","SELECTOR_NAV_LINKS","SELECTOR_NAV_ITEMS","SELECTOR_LIST_ITEMS","SELECTOR_DROPDOWN","SELECTOR_DROPDOWN_TOGGLE","METHOD_OFFSET","METHOD_POSITION","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targets","targetSelector","targetBCR","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","isActiveTarget","queries","link","listGroup","navItem","spy","CLASS_NAME_DROPDOWN_MENU","SELECTOR_ACTIVE_UL","SELECTOR_DROPDOWN_ACTIVE_CHILD","Tab","listElement","itemSelector","activeElements","active","_transitionComplete","dropdownChild","dropdownElement","dropdown","EVENT_MOUSEOVER","EVENT_MOUSEOUT","EVENT_FOCUSOUT","CLASS_NAME_HIDE","CLASS_NAME_SHOWING","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","_onInteraction","isInteracting"],"mappings":"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"} \ No newline at end of file diff --git a/assets/js/oe-bcl-default.umd.min.js b/assets/js/oe-bcl-default.umd.min.js deleted file mode 100644 index 96290a96..00000000 --- a/assets/js/oe-bcl-default.umd.min.js +++ /dev/null @@ -1,2 +0,0 @@ -!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).bootstrap=t()}(this,(function(){"use strict";const e={find:(e,t=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(t,e)),findOne:(e,t=document.documentElement)=>Element.prototype.querySelector.call(t,e),children:(e,t)=>[].concat(...e.children).filter((e=>e.matches(t))),parents(e,t){const i=[];let n=e.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&3!==n.nodeType;)n.matches(t)&&i.push(n),n=n.parentNode;return i},prev(e,t){let i=e.previousElementSibling;for(;i;){if(i.matches(t))return[i];i=i.previousElementSibling}return[]},next(e,t){let i=e.nextElementSibling;for(;i;){if(i.matches(t))return[i];i=i.nextElementSibling}return[]}},t="transitionend",i=e=>{do{e+=Math.floor(1e6*Math.random())}while(document.getElementById(e));return e},n=e=>{let t=e.getAttribute("data-bs-target");if(!t||"#"===t){let i=e.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i=`#${i.split("#")[1]}`),t=i&&"#"!==i?i.trim():null}return t},s=e=>{const t=n(e);return t&&document.querySelector(t)?t:null},o=e=>{const t=n(e);return t?document.querySelector(t):null},r=e=>{e.dispatchEvent(new Event(t))},a=e=>!(!e||"object"!=typeof e)&&(void 0!==e.jquery&&(e=e[0]),void 0!==e.nodeType),l=t=>a(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?e.findOne(t):null,c=(e,t,i)=>{Object.keys(i).forEach((n=>{const s=i[n],o=t[n],r=o&&a(o)?"element":null==(l=o)?`${l}`:{}.toString.call(l).match(/\s([a-z]+)/i)[1].toLowerCase();var l;if(!new RegExp(s).test(r))throw new TypeError(`${e.toUpperCase()}: Option "${n}" provided type "${r}" but expected type "${s}".`)}))},h=e=>!(!a(e)||0===e.getClientRects().length)&&"visible"===getComputedStyle(e).getPropertyValue("visibility"),d=e=>!e||e.nodeType!==Node.ELEMENT_NODE||!!e.classList.contains("disabled")||(void 0!==e.disabled?e.disabled:e.hasAttribute("disabled")&&"false"!==e.getAttribute("disabled")),u=e=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof e.getRootNode){const t=e.getRootNode();return t instanceof ShadowRoot?t:null}return e instanceof ShadowRoot?e:e.parentNode?u(e.parentNode):null},f=()=>{},p=e=>e.offsetHeight,m=()=>{const{jQuery:e}=window;return e&&!document.body.hasAttribute("data-bs-no-jquery")?e:null},g=[],_=()=>"rtl"===document.documentElement.dir,b=e=>{var t;t=()=>{const t=m();if(t){const i=e.NAME,n=t.fn[i];t.fn[i]=e.jQueryInterface,t.fn[i].Constructor=e,t.fn[i].noConflict=()=>(t.fn[i]=n,e.jQueryInterface)}},"loading"===document.readyState?(g.length||document.addEventListener("DOMContentLoaded",(()=>{g.forEach((e=>e()))})),g.push(t)):t()},v=e=>{"function"==typeof e&&e()},y=(e,i,n=!0)=>{if(!n)return void v(e);const s=(e=>{if(!e)return 0;let{transitionDuration:t,transitionDelay:i}=window.getComputedStyle(e);const n=Number.parseFloat(t),s=Number.parseFloat(i);return n||s?(t=t.split(",")[0],i=i.split(",")[0],1e3*(Number.parseFloat(t)+Number.parseFloat(i))):0})(i)+5;let o=!1;const a=({target:n})=>{n===i&&(o=!0,i.removeEventListener(t,a),v(e))};i.addEventListener(t,a),setTimeout((()=>{o||r(i)}),s)},w=(e,t,i,n)=>{let s=e.indexOf(t);if(-1===s)return e[!i&&n?e.length-1:0];const o=e.length;return s+=i?1:-1,n&&(s=(s+o)%o),e[Math.max(0,Math.min(s,o-1))]},E=/[^.]*(?=\..*)\.|.*/,A=/\..*/,T=/::\d+$/,O={};let C=1;const k={mouseenter:"mouseover",mouseleave:"mouseout"},L=/^(mouseenter|mouseleave)/i,x=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 D(e,t){return t&&`${t}::${C++}`||e.uidEvent||C++}function S(e){const t=D(e);return e.uidEvent=t,O[t]=O[t]||{},O[t]}function N(e,t,i=null){const n=Object.keys(e);for(let s=0,o=n.length;s<o;s++){const o=e[n[s]];if(o.originalHandler===t&&o.delegationSelector===i)return o}return null}function I(e,t,i){const n="string"==typeof t,s=n?i:t;let o=M(e);return x.has(o)||(o=e),[n,s,o]}function j(e,t,i,n,s){if("string"!=typeof t||!e)return;if(i||(i=n,n=null),L.test(t)){const e=e=>function(t){if(!t.relatedTarget||t.relatedTarget!==t.delegateTarget&&!t.delegateTarget.contains(t.relatedTarget))return e.call(this,t)};n?n=e(n):i=e(i)}const[o,r,a]=I(t,i,n),l=S(e),c=l[a]||(l[a]={}),h=N(c,r,o?i:null);if(h)return void(h.oneOff=h.oneOff&&s);const d=D(r,t.replace(E,"")),u=o?function(e,t,i){return function n(s){const o=e.querySelectorAll(t);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&&H.off(e,s.type,t,i),i.apply(r,[s]);return null}}(e,i,n):function(e,t){return function i(n){return n.delegateTarget=e,i.oneOff&&H.off(e,n.type,t),t.apply(e,[n])}}(e,i);u.delegationSelector=o?i:null,u.originalHandler=r,u.oneOff=s,u.uidEvent=d,c[d]=u,e.addEventListener(a,u,o)}function P(e,t,i,n,s){const o=N(t[i],n,s);o&&(e.removeEventListener(i,o,Boolean(s)),delete t[i][o.uidEvent])}function M(e){return e=e.replace(A,""),k[e]||e}const H={on(e,t,i,n){j(e,t,i,n,!1)},one(e,t,i,n){j(e,t,i,n,!0)},off(e,t,i,n){if("string"!=typeof t||!e)return;const[s,o,r]=I(t,i,n),a=r!==t,l=S(e),c=t.startsWith(".");if(void 0!==o){if(!l||!l[r])return;return void P(e,l,r,o,s?i:null)}c&&Object.keys(l).forEach((i=>{!function(e,t,i,n){const s=t[i]||{};Object.keys(s).forEach((o=>{if(o.includes(n)){const n=s[o];P(e,t,i,n.originalHandler,n.delegationSelector)}}))}(e,l,i,t.slice(1))}));const h=l[r]||{};Object.keys(h).forEach((i=>{const n=i.replace(T,"");if(!a||t.includes(n)){const t=h[i];P(e,l,r,t.originalHandler,t.delegationSelector)}}))},trigger(e,t,i){if("string"!=typeof t||!e)return null;const n=m(),s=M(t),o=t!==s,r=x.has(s);let a,l=!0,c=!0,h=!1,d=null;return o&&n&&(a=n.Event(t,i),n(e).trigger(a),l=!a.isPropagationStopped(),c=!a.isImmediatePropagationStopped(),h=a.isDefaultPrevented()),r?(d=document.createEvent("HTMLEvents"),d.initEvent(s,l,!0)):d=new CustomEvent(t,{bubbles:l,cancelable:!0}),void 0!==i&&Object.keys(i).forEach((e=>{Object.defineProperty(d,e,{get:()=>i[e]})})),h&&d.preventDefault(),c&&e.dispatchEvent(d),d.defaultPrevented&&void 0!==a&&a.preventDefault(),d}},R=new Map;var B={set(e,t,i){R.has(e)||R.set(e,new Map);const n=R.get(e);n.has(t)||0===n.size?n.set(t,i):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(n.keys())[0]}.`)},get:(e,t)=>R.has(e)&&R.get(e).get(t)||null,remove(e,t){if(!R.has(e))return;const i=R.get(e);i.delete(t),0===i.size&&R.delete(e)}};class ${constructor(e){(e=l(e))&&(this._element=e,B.set(this._element,this.constructor.DATA_KEY,this))}dispose(){B.remove(this._element,this.constructor.DATA_KEY),H.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach((e=>{this[e]=null}))}_queueCallback(e,t,i=!0){y(e,t,i)}static getInstance(e){return B.get(e,this.DATA_KEY)}static getOrCreateInstance(e,t={}){return this.getInstance(e)||new this(e,"object"==typeof t?t:null)}static get VERSION(){return"5.0.2"}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}`}}class q extends ${static get NAME(){return"alert"}close(e){const t=e?this._getRootElement(e):this._element,i=this._triggerCloseEvent(t);null===i||i.defaultPrevented||this._removeElement(t)}_getRootElement(e){return o(e)||e.closest(".alert")}_triggerCloseEvent(e){return H.trigger(e,"close.bs.alert")}_removeElement(e){e.classList.remove("show");const t=e.classList.contains("fade");this._queueCallback((()=>this._destroyElement(e)),e,t)}_destroyElement(e){e.remove(),H.trigger(e,"closed.bs.alert")}static jQueryInterface(e){return this.each((function(){const t=q.getOrCreateInstance(this);"close"===e&&t[e](this)}))}static handleDismiss(e){return function(t){t&&t.preventDefault(),e.close(this)}}}H.on(document,"click.bs.alert.data-api",'[data-bs-dismiss="alert"]',q.handleDismiss(new q)),b(q);const W='[data-bs-toggle="button"]';class V extends ${static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(e){return this.each((function(){const t=V.getOrCreateInstance(this);"toggle"===e&&t[e]()}))}}function z(e){return"true"===e||"false"!==e&&(e===Number(e).toString()?Number(e):""===e||"null"===e?null:e)}function F(e){return e.replace(/[A-Z]/g,(e=>`-${e.toLowerCase()}`))}H.on(document,"click.bs.button.data-api",W,(e=>{e.preventDefault();const t=e.target.closest(W);V.getOrCreateInstance(t).toggle()})),b(V);const U={setDataAttribute(e,t,i){e.setAttribute(`data-bs-${F(t)}`,i)},removeDataAttribute(e,t){e.removeAttribute(`data-bs-${F(t)}`)},getDataAttributes(e){if(!e)return{};const t={};return Object.keys(e.dataset).filter((e=>e.startsWith("bs"))).forEach((i=>{let n=i.replace(/^bs/,"");n=n.charAt(0).toLowerCase()+n.slice(1,n.length),t[n]=z(e.dataset[i])})),t},getDataAttribute:(e,t)=>z(e.getAttribute(`data-bs-${F(t)}`)),offset(e){const t=e.getBoundingClientRect();return{top:t.top+document.body.scrollTop,left:t.left+document.body.scrollLeft}},position:e=>({top:e.offsetTop,left:e.offsetLeft})},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",J="left",Z="right",ee={ArrowLeft:Z,ArrowRight:J},te="slid.bs.carousel",ie="active",ne=".active.carousel-item",se="touch";class oe extends ${constructor(t,i){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(i),this._indicatorsElement=e.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&&h(this._element)&&this.next()}prev(){this._slide(G)}pause(t){t||(this._isPaused=!0),e.findOne(".carousel-item-next, .carousel-item-prev",this._element)&&(r(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(e){e||(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=e.findOne(ne,this._element);const i=this._getItemIndex(this._activeElement);if(t>this._items.length-1||t<0)return;if(this._isSliding)return void H.one(this._element,te,(()=>this.to(t)));if(i===t)return this.pause(),void this.cycle();const n=t>i?Q:G;this._slide(n,this._items[t])}_getConfig(e){return e={...X,...U.getDataAttributes(this._element),..."object"==typeof e?e:{}},c(K,e,Y),e}_handleSwipe(){const e=Math.abs(this.touchDeltaX);if(e<=40)return;const t=e/this.touchDeltaX;this.touchDeltaX=0,t&&this._slide(t>0?Z:J)}_addEventListeners(){this._config.keyboard&&H.on(this._element,"keydown.bs.carousel",(e=>this._keydown(e))),"hover"===this._config.pause&&(H.on(this._element,"mouseenter.bs.carousel",(e=>this.pause(e))),H.on(this._element,"mouseleave.bs.carousel",(e=>this.cycle(e)))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){const t=e=>{!this._pointerEvent||"pen"!==e.pointerType&&e.pointerType!==se?this._pointerEvent||(this.touchStartX=e.touches[0].clientX):this.touchStartX=e.clientX},i=e=>{this.touchDeltaX=e.touches&&e.touches.length>1?0:e.touches[0].clientX-this.touchStartX},n=e=>{!this._pointerEvent||"pen"!==e.pointerType&&e.pointerType!==se||(this.touchDeltaX=e.clientX-this.touchStartX),this._handleSwipe(),"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout((e=>this.cycle(e)),500+this._config.interval))};e.find(".carousel-item img",this._element).forEach((e=>{H.on(e,"dragstart.bs.carousel",(e=>e.preventDefault()))})),this._pointerEvent?(H.on(this._element,"pointerdown.bs.carousel",(e=>t(e))),H.on(this._element,"pointerup.bs.carousel",(e=>n(e))),this._element.classList.add("pointer-event")):(H.on(this._element,"touchstart.bs.carousel",(e=>t(e))),H.on(this._element,"touchmove.bs.carousel",(e=>i(e))),H.on(this._element,"touchend.bs.carousel",(e=>n(e))))}_keydown(e){if(/input|textarea/i.test(e.target.tagName))return;const t=ee[e.key];t&&(e.preventDefault(),this._slide(t))}_getItemIndex(t){return this._items=t&&t.parentNode?e.find(".carousel-item",t.parentNode):[],this._items.indexOf(t)}_getItemByOrder(e,t){const i=e===Q;return w(this._items,t,i,this._config.wrap)}_triggerSlideEvent(t,i){const n=this._getItemIndex(t),s=this._getItemIndex(e.findOne(ne,this._element));return H.trigger(this._element,"slide.bs.carousel",{relatedTarget:t,direction:i,from:s,to:n})}_setActiveIndicatorElement(t){if(this._indicatorsElement){const i=e.findOne(".active",this._indicatorsElement);i.classList.remove(ie),i.removeAttribute("aria-current");const n=e.find("[data-bs-target]",this._indicatorsElement);for(let e=0;e<n.length;e++)if(Number.parseInt(n[e].getAttribute("data-bs-slide-to"),10)===this._getItemIndex(t)){n[e].classList.add(ie),n[e].setAttribute("aria-current","true");break}}}_updateInterval(){const t=this._activeElement||e.findOne(ne,this._element);if(!t)return;const i=Number.parseInt(t.getAttribute("data-bs-interval"),10);i?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,this._config.interval=i):this._config.interval=this._config.defaultInterval||this._config.interval}_slide(t,i){const n=this._directionToOrder(t),s=e.findOne(ne,this._element),o=this._getItemIndex(s),r=i||this._getItemByOrder(n,s),a=this._getItemIndex(r),l=Boolean(this._interval),c=n===Q,h=c?"carousel-item-start":"carousel-item-end",d=c?"carousel-item-next":"carousel-item-prev",u=this._orderToDirection(n);if(r&&r.classList.contains(ie))return void(this._isSliding=!1);if(this._isSliding)return;if(this._triggerSlideEvent(r,u).defaultPrevented)return;if(!s||!r)return;this._isSliding=!0,l&&this.pause(),this._setActiveIndicatorElement(r),this._activeElement=r;const f=()=>{H.trigger(this._element,te,{relatedTarget:r,direction:u,from:o,to:a})};if(this._element.classList.contains("slide")){r.classList.add(d),p(r),s.classList.add(h),r.classList.add(h);const e=()=>{r.classList.remove(h,d),r.classList.add(ie),s.classList.remove(ie,d,h),this._isSliding=!1,setTimeout(f,0)};this._queueCallback(e,s,!0)}else s.classList.remove(ie),r.classList.add(ie),this._isSliding=!1,f();l&&this.cycle()}_directionToOrder(e){return[Z,J].includes(e)?_()?e===J?G:Q:e===J?Q:G:e}_orderToDirection(e){return[Q,G].includes(e)?_()?e===G?J:Z:e===G?Z:J:e}static carouselInterface(e,t){const i=oe.getOrCreateInstance(e,t);let{_config:n}=i;"object"==typeof t&&(n={...n,...t});const s="string"==typeof t?t:n.slide;if("number"==typeof t)i.to(t);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(e){return this.each((function(){oe.carouselInterface(this,e)}))}static dataApiClickHandler(e){const t=o(this);if(!t||!t.classList.contains("carousel"))return;const i={...U.getDataAttributes(t),...U.getDataAttributes(this)},n=this.getAttribute("data-bs-slide-to");n&&(i.interval=!1),oe.carouselInterface(t,i),n&&oe.getInstance(t).to(n),e.preventDefault()}}H.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",oe.dataApiClickHandler),H.on(window,"load.bs.carousel.data-api",(()=>{const t=e.find('[data-bs-ride="carousel"]');for(let e=0,i=t.length;e<i;e++)oe.carouselInterface(t[e],oe.getInstance(t[e]))})),b(oe);const re="collapse",ae={toggle:!0,parent:""},le={toggle:"boolean",parent:"(string|element)"},ce="show",he="collapse",de="collapsing",ue="collapsed",fe="width",pe='[data-bs-toggle="collapse"]';class me extends ${constructor(t,i){super(t),this._isTransitioning=!1,this._config=this._getConfig(i),this._triggerArray=e.find(`${pe}[href="#${this._element.id}"],${pe}[data-bs-target="#${this._element.id}"]`);const n=e.find(pe);for(let t=0,i=n.length;t<i;t++){const i=n[t],o=s(i),r=e.find(o).filter((e=>e===this._element));null!==o&&r.length&&(this._selector=o,this._triggerArray.push(i))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}static get Default(){return ae}static get NAME(){return re}toggle(){this._element.classList.contains(ce)?this.hide():this.show()}show(){if(this._isTransitioning||this._element.classList.contains(ce))return;let t,i;this._parent&&(t=e.find(".show, .collapsing",this._parent).filter((e=>"string"==typeof this._config.parent?e.getAttribute("data-bs-parent")===this._config.parent:e.classList.contains(he))),0===t.length&&(t=null));const n=e.findOne(this._selector);if(t){const e=t.find((e=>n!==e));if(i=e?me.getInstance(e):null,i&&i._isTransitioning)return}if(H.trigger(this._element,"show.bs.collapse").defaultPrevented)return;t&&t.forEach((e=>{n!==e&&me.collapseInterface(e,"hide"),i||B.set(e,"bs.collapse",null)}));const s=this._getDimension();this._element.classList.remove(he),this._element.classList.add(de),this._element.style[s]=0,this._triggerArray.length&&this._triggerArray.forEach((e=>{e.classList.remove(ue),e.setAttribute("aria-expanded",!0)})),this.setTransitioning(!0);const o=`scroll${s[0].toUpperCase()+s.slice(1)}`;this._queueCallback((()=>{this._element.classList.remove(de),this._element.classList.add(he,ce),this._element.style[s]="",this.setTransitioning(!1),H.trigger(this._element,"shown.bs.collapse")}),this._element,!0),this._element.style[s]=`${this._element[o]}px`}hide(){if(this._isTransitioning||!this._element.classList.contains(ce))return;if(H.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const e=this._getDimension();this._element.style[e]=`${this._element.getBoundingClientRect()[e]}px`,p(this._element),this._element.classList.add(de),this._element.classList.remove(he,ce);const t=this._triggerArray.length;if(t>0)for(let e=0;e<t;e++){const t=this._triggerArray[e],i=o(t);i&&!i.classList.contains(ce)&&(t.classList.add(ue),t.setAttribute("aria-expanded",!1))}this.setTransitioning(!0),this._element.style[e]="",this._queueCallback((()=>{this.setTransitioning(!1),this._element.classList.remove(de),this._element.classList.add(he),H.trigger(this._element,"hidden.bs.collapse")}),this._element,!0)}setTransitioning(e){this._isTransitioning=e}_getConfig(e){return(e={...ae,...e}).toggle=Boolean(e.toggle),c(re,e,le),e}_getDimension(){return this._element.classList.contains(fe)?fe:"height"}_getParent(){let{parent:t}=this._config;t=l(t);const i=`${pe}[data-bs-parent="${t}"]`;return e.find(i,t).forEach((e=>{const t=o(e);this._addAriaAndCollapsedClass(t,[e])})),t}_addAriaAndCollapsedClass(e,t){if(!e||!t.length)return;const i=e.classList.contains(ce);t.forEach((e=>{i?e.classList.remove(ue):e.classList.add(ue),e.setAttribute("aria-expanded",i)}))}static collapseInterface(e,t){let i=me.getInstance(e);const n={...ae,...U.getDataAttributes(e),..."object"==typeof t&&t?t:{}};if(!i&&n.toggle&&"string"==typeof t&&/show|hide/.test(t)&&(n.toggle=!1),i||(i=new me(e,n)),"string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t]()}}static jQueryInterface(e){return this.each((function(){me.collapseInterface(this,e)}))}}H.on(document,"click.bs.collapse.data-api",pe,(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();const i=U.getDataAttributes(this),n=s(this);e.find(n).forEach((e=>{const t=me.getInstance(e);let n;t?(null===t._parent&&"string"==typeof i.parent&&(t._config.parent=i.parent,t._parent=t._getParent()),n="toggle"):n=i,me.collapseInterface(e,n)}))})),b(me);var ge="top",_e="bottom",be="right",ve="left",ye="auto",we=[ge,_e,be,ve],Ee="start",Ae="end",Te="clippingParents",Oe="viewport",Ce="popper",ke="reference",Le=we.reduce((function(e,t){return e.concat([t+"-"+Ee,t+"-"+Ae])}),[]),xe=[].concat(we,[ye]).reduce((function(e,t){return e.concat([t,t+"-"+Ee,t+"-"+Ae])}),[]),De="beforeRead",Se="read",Ne="afterRead",Ie="beforeMain",je="main",Pe="afterMain",Me="beforeWrite",He="write",Re="afterWrite",Be=[De,Se,Ne,Ie,je,Pe,Me,He,Re];function $e(e){return e?(e.nodeName||"").toLowerCase():null}function qe(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function We(e){return e instanceof qe(e).Element||e instanceof Element}function Ve(e){return e instanceof qe(e).HTMLElement||e instanceof HTMLElement}function ze(e){return"undefined"!=typeof ShadowRoot&&(e instanceof qe(e).ShadowRoot||e instanceof ShadowRoot)}var Fe={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var i=t.styles[e]||{},n=t.attributes[e]||{},s=t.elements[e];Ve(s)&&$e(s)&&(Object.assign(s.style,i),Object.keys(n).forEach((function(e){var t=n[e];!1===t?s.removeAttribute(e):s.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,i={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,i.popper),t.styles=i,t.elements.arrow&&Object.assign(t.elements.arrow.style,i.arrow),function(){Object.keys(t.elements).forEach((function(e){var n=t.elements[e],s=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:i[e]).reduce((function(e,t){return e[t]="",e}),{});Ve(n)&&$e(n)&&(Object.assign(n.style,o),Object.keys(s).forEach((function(e){n.removeAttribute(e)})))}))}},requires:["computeStyles"]};function Ue(e){return e.split("-")[0]}function Ke(e){var t=e.getBoundingClientRect();return{width:t.width,height:t.height,top:t.top,right:t.right,bottom:t.bottom,left:t.left,x:t.left,y:t.top}}function Xe(e){var t=Ke(e),i=e.offsetWidth,n=e.offsetHeight;return Math.abs(t.width-i)<=1&&(i=t.width),Math.abs(t.height-n)<=1&&(n=t.height),{x:e.offsetLeft,y:e.offsetTop,width:i,height:n}}function Ye(e,t){var i=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(i&&ze(i)){var n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function Qe(e){return qe(e).getComputedStyle(e)}function Ge(e){return["table","td","th"].indexOf($e(e))>=0}function Je(e){return((We(e)?e.ownerDocument:e.document)||window.document).documentElement}function Ze(e){return"html"===$e(e)?e:e.assignedSlot||e.parentNode||(ze(e)?e.host:null)||Je(e)}function et(e){return Ve(e)&&"fixed"!==Qe(e).position?e.offsetParent:null}function tt(e){for(var t=qe(e),i=et(e);i&&Ge(i)&&"static"===Qe(i).position;)i=et(i);return i&&("html"===$e(i)||"body"===$e(i)&&"static"===Qe(i).position)?t:i||function(e){var t=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&Ve(e)&&"fixed"===Qe(e).position)return null;for(var i=Ze(e);Ve(i)&&["html","body"].indexOf($e(i))<0;){var n=Qe(i);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||t&&"filter"===n.willChange||t&&n.filter&&"none"!==n.filter)return i;i=i.parentNode}return null}(e)||t}function it(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}var nt=Math.max,st=Math.min,ot=Math.round;function rt(e,t,i){return nt(e,st(t,i))}function at(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function lt(e,t){return t.reduce((function(t,i){return t[i]=e,t}),{})}var ct={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,i=e.state,n=e.name,s=e.options,o=i.elements.arrow,r=i.modifiersData.popperOffsets,a=Ue(i.placement),l=it(a),c=[ve,be].indexOf(a)>=0?"height":"width";if(o&&r){var h=function(e,t){return at("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:lt(e,we))}(s.padding,i),d=Xe(o),u="y"===l?ge:ve,f="y"===l?_e:be,p=i.rects.reference[c]+i.rects.reference[l]-r[l]-i.rects.popper[c],m=r[l]-i.rects.reference[l],g=tt(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=rt(v,w,y),A=l;i.modifiersData[n]=((t={})[A]=E,t.centerOffset=E-w,t)}},effect:function(e){var t=e.state,i=e.options.element,n=void 0===i?"[data-popper-arrow]":i;null!=n&&("string"!=typeof n||(n=t.elements.popper.querySelector(n)))&&("production"!==process.env.NODE_ENV&&(Ve(n)||console.error(['Popper: "arrow" element must be an HTMLElement (not an SVGElement).',"To use an SVG arrow, wrap it in an HTMLElement that will be used as","the arrow."].join(" "))),Ye(t.elements.popper,n)?t.elements.arrow=n:"production"!==process.env.NODE_ENV&&console.error(['Popper: "arrow" modifier\'s `element` must be a child of the popper',"element."].join(" ")))},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]},ht={top:"auto",right:"auto",bottom:"auto",left:"auto"};function dt(e){var t,i=e.popper,n=e.popperRect,s=e.placement,o=e.offsets,r=e.position,a=e.gpuAcceleration,l=e.adaptive,c=e.roundOffsets,h=!0===c?function(e){var t=e.x,i=e.y,n=window.devicePixelRatio||1;return{x:ot(ot(t*n)/n)||0,y:ot(ot(i*n)/n)||0}}(o):"function"==typeof c?c(o):o,d=h.x,u=void 0===d?0:d,f=h.y,p=void 0===f?0:f,m=o.hasOwnProperty("x"),g=o.hasOwnProperty("y"),_=ve,b=ge,v=window;if(l){var y=tt(i),w="clientHeight",E="clientWidth";y===qe(i)&&"static"!==Qe(y=Je(i)).position&&(w="scrollHeight",E="scrollWidth"),y=y,s===ge&&(b=_e,p-=y[w]-n.height,p*=a?1:-1),s===ve&&(_=be,u-=y[E]-n.width,u*=a?1:-1)}var A,T=Object.assign({position:r},l&&ht);return a?Object.assign({},T,((A={})[b]=g?"0":"",A[_]=m?"0":"",A.transform=(v.devicePixelRatio||1)<2?"translate("+u+"px, "+p+"px)":"translate3d("+u+"px, "+p+"px, 0)",A)):Object.assign({},T,((t={})[b]=g?p+"px":"",t[_]=m?u+"px":"",t.transform="",t))}var ut={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,i=e.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;if("production"!==process.env.NODE_ENV){var c=Qe(t.elements.popper).transitionProperty||"";r&&["transform","top","right","bottom","left"].some((function(e){return c.indexOf(e)>=0}))&&console.warn(["Popper: Detected CSS transitions on at least one of the following",'CSS properties: "transform", "top", "right", "bottom", "left".',"\n\n",'Disable the "computeStyles" modifier\'s `adaptive` option to allow',"for smooth transitions, or remove these properties from the CSS","transition declaration on the popper element if only transitioning","opacity or background-color for example.","\n\n","We recommend using the popper element as a wrapper around an inner","element that can have any CSS property transitioned for animations."].join(" "))}var h={placement:Ue(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:s};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,dt(Object.assign({},h,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:r,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,dt(Object.assign({},h,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}},ft={passive:!0},pt={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,i=e.instance,n=e.options,s=n.scroll,o=void 0===s||s,r=n.resize,a=void 0===r||r,l=qe(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&c.forEach((function(e){e.addEventListener("scroll",i.update,ft)})),a&&l.addEventListener("resize",i.update,ft),function(){o&&c.forEach((function(e){e.removeEventListener("scroll",i.update,ft)})),a&&l.removeEventListener("resize",i.update,ft)}},data:{}},mt={left:"right",right:"left",bottom:"top",top:"bottom"};function gt(e){return e.replace(/left|right|bottom|top/g,(function(e){return mt[e]}))}var _t={start:"end",end:"start"};function bt(e){return e.replace(/start|end/g,(function(e){return _t[e]}))}function vt(e){var t=qe(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function yt(e){return Ke(Je(e)).left+vt(e).scrollLeft}function wt(e){var t=Qe(e),i=t.overflow,n=t.overflowX,s=t.overflowY;return/auto|scroll|overlay|hidden/.test(i+s+n)}function Et(e){return["html","body","#document"].indexOf($e(e))>=0?e.ownerDocument.body:Ve(e)&&wt(e)?e:Et(Ze(e))}function At(e,t){var i;void 0===t&&(t=[]);var n=Et(e),s=n===(null==(i=e.ownerDocument)?void 0:i.body),o=qe(n),r=s?[o].concat(o.visualViewport||[],wt(n)?n:[]):n,a=t.concat(r);return s?a:a.concat(At(Ze(r)))}function Tt(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function Ot(e,t){return t===Oe?Tt(function(e){var t=qe(e),i=Je(e),n=t.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+yt(e),y:a}}(e)):Ve(t)?function(e){var t=Ke(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}(t):Tt(function(e){var t,i=Je(e),n=vt(e),s=null==(t=e.ownerDocument)?void 0:t.body,o=nt(i.scrollWidth,i.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),r=nt(i.scrollHeight,i.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),a=-n.scrollLeft+yt(e),l=-n.scrollTop;return"rtl"===Qe(s||i).direction&&(a+=nt(i.clientWidth,s?s.clientWidth:0)-o),{width:o,height:r,x:a,y:l}}(Je(e)))}function Ct(e){return e.split("-")[1]}function kt(e){var t,i=e.reference,n=e.element,s=e.placement,o=s?Ue(s):null,r=s?Ct(s):null,a=i.x+i.width/2-n.width/2,l=i.y+i.height/2-n.height/2;switch(o){case ge:t={x:a,y:i.y-n.height};break;case _e:t={x:a,y:i.y+i.height};break;case be:t={x:i.x+i.width,y:l};break;case ve:t={x:i.x-n.width,y:l};break;default:t={x:i.x,y:i.y}}var c=o?it(o):null;if(null!=c){var h="y"===c?"height":"width";switch(r){case Ee:t[c]=t[c]-(i[h]/2-n[h]/2);break;case Ae:t[c]=t[c]+(i[h]/2-n[h]/2)}}return t}function Lt(e,t){void 0===t&&(t={});var i=t,n=i.placement,s=void 0===n?e.placement:n,o=i.boundary,r=void 0===o?Te:o,a=i.rootBoundary,l=void 0===a?Oe:a,c=i.elementContext,h=void 0===c?Ce:c,d=i.altBoundary,u=void 0!==d&&d,f=i.padding,p=void 0===f?0:f,m=at("number"!=typeof p?p:lt(p,we)),g=h===Ce?ke:Ce,_=e.elements.reference,b=e.rects.popper,v=e.elements[u?g:h],y=function(e,t,i){var n="clippingParents"===t?function(e){var t=At(Ze(e)),i=["absolute","fixed"].indexOf(Qe(e).position)>=0&&Ve(e)?tt(e):e;return We(i)?t.filter((function(e){return We(e)&&Ye(e,i)&&"body"!==$e(e)})):[]}(e):[].concat(t),s=[].concat(n,[i]),o=s[0],r=s.reduce((function(t,i){var n=Ot(e,i);return t.top=nt(n.top,t.top),t.right=st(n.right,t.right),t.bottom=st(n.bottom,t.bottom),t.left=nt(n.left,t.left),t}),Ot(e,o));return r.width=r.right-r.left,r.height=r.bottom-r.top,r.x=r.left,r.y=r.top,r}(We(v)?v:v.contextElement||Je(e.elements.popper),r,l),w=Ke(_),E=kt({reference:w,element:b,strategy:"absolute",placement:s}),A=Tt(Object.assign({},b,E)),T=h===Ce?A:w,O={top:y.top-T.top+m.top,bottom:T.bottom-y.bottom+m.bottom,left:y.left-T.left+m.left,right:T.right-y.right+m.right},C=e.modifiersData.offset;if(h===Ce&&C){var k=C[s];Object.keys(O).forEach((function(e){var t=[be,_e].indexOf(e)>=0?1:-1,i=[ge,_e].indexOf(e)>=0?"y":"x";O[e]+=k[i]*t}))}return O}function xt(e,t){void 0===t&&(t={});var i=t,n=i.placement,s=i.boundary,o=i.rootBoundary,r=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,c=void 0===l?xe:l,h=Ct(n),d=h?a?Le:Le.filter((function(e){return Ct(e)===h})):we,u=d.filter((function(e){return c.indexOf(e)>=0}));0===u.length&&(u=d,"production"!==process.env.NODE_ENV&&console.error(["Popper: The `allowedAutoPlacements` option did not allow any","placements. Ensure the `placement` option matches the variation","of the allowed placements.",'For example, "auto" cannot be used to allow "bottom-start".','Use "auto-start" instead.'].join(" ")));var f=u.reduce((function(t,i){return t[i]=Lt(e,{placement:i,boundary:s,rootBoundary:o,padding:r})[Ue(i)],t}),{});return Object.keys(f).sort((function(e,t){return f[e]-f[t]}))}var Dt={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,i=e.options,n=e.name;if(!t.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=t.options.placement,_=Ue(g),b=l||(_!==g&&p?function(e){if(Ue(e)===ye)return[];var t=gt(e);return[bt(e),t,bt(t)]}(g):[gt(g)]),v=[g].concat(b).reduce((function(e,i){return e.concat(Ue(i)===ye?xt(t,{placement:i,boundary:h,rootBoundary:d,padding:c,flipVariations:p,allowedAutoPlacements:m}):i)}),[]),y=t.rects.reference,w=t.rects.popper,E=new Map,A=!0,T=v[0],O=0;O<v.length;O++){var C=v[O],k=Ue(C),L=Ct(C)===Ee,x=[ge,_e].indexOf(k)>=0,D=x?"width":"height",S=Lt(t,{placement:C,boundary:h,rootBoundary:d,altBoundary:u,padding:c}),N=x?L?be:ve:L?_e:ge;y[D]>w[D]&&(N=gt(N));var I=gt(N),j=[];if(o&&j.push(S[k]<=0),a&&j.push(S[N]<=0,S[I]<=0),j.every((function(e){return e}))){T=C,A=!1;break}E.set(C,j)}if(A)for(var P=function(e){var t=v.find((function(t){var i=E.get(t);if(i)return i.slice(0,e).every((function(e){return e}))}));if(t)return T=t,"break"},M=p?3:1;M>0&&"break"!==P(M);M--);t.placement!==T&&(t.modifiersData[n]._skip=!0,t.placement=T,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function St(e,t,i){return void 0===i&&(i={x:0,y:0}),{top:e.top-t.height-i.y,right:e.right-t.width+i.x,bottom:e.bottom-t.height+i.y,left:e.left-t.width-i.x}}function Nt(e){return[ge,be,_e,ve].some((function(t){return e[t]>=0}))}var It={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,i=e.name,n=t.rects.reference,s=t.rects.popper,o=t.modifiersData.preventOverflow,r=Lt(t,{elementContext:"reference"}),a=Lt(t,{altBoundary:!0}),l=St(r,n),c=St(a,s,o),h=Nt(l),d=Nt(c);t.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:h,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":h,"data-popper-escaped":d})}},jt={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,i=e.options,n=e.name,s=i.offset,o=void 0===s?[0,0]:s,r=xe.reduce((function(e,i){return e[i]=function(e,t,i){var n=Ue(e),s=[ve,ge].indexOf(n)>=0?-1:1,o="function"==typeof i?i(Object.assign({},t,{placement:e})):i,r=o[0],a=o[1];return r=r||0,a=(a||0)*s,[ve,be].indexOf(n)>=0?{x:a,y:r}:{x:r,y:a}}(i,t.rects,o),e}),{}),a=r[t.placement],l=a.x,c=a.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=c),t.modifiersData[n]=r}},Pt={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,i=e.name;t.modifiersData[i]=kt({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}},Mt={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,i=e.options,n=e.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=Lt(t,{boundary:l,rootBoundary:c,padding:d,altBoundary:h}),_=Ue(t.placement),b=Ct(t.placement),v=!b,y=it(_),w="x"===y?"y":"x",E=t.modifiersData.popperOffsets,A=t.rects.reference,T=t.rects.popper,O="function"==typeof m?m(Object.assign({},t.rects,{placement:t.placement})):m,C={x:0,y:0};if(E){if(o||a){var k="y"===y?ge:ve,L="y"===y?_e:be,x="y"===y?"height":"width",D=E[y],S=E[y]+g[k],N=E[y]-g[L],I=f?-T[x]/2:0,j=b===Ee?A[x]:T[x],P=b===Ee?-T[x]:-A[x],M=t.elements.arrow,H=f&&M?Xe(M):{width:0,height:0},R=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},B=R[k],$=R[L],q=rt(0,A[x],H[x]),W=v?A[x]/2-I-q-B-O:j-q-B-O,V=v?-A[x]/2+I+q+$+O:P+q+$+O,z=t.elements.arrow&&tt(t.elements.arrow),F=z?"y"===y?z.clientTop||0:z.clientLeft||0:0,U=t.modifiersData.offset?t.modifiersData.offset[t.placement][y]:0,K=E[y]+W-U-F,X=E[y]+V-U;if(o){var Y=rt(f?st(S,K):S,D,f?nt(N,X):N);E[y]=Y,C[y]=Y-D}if(a){var Q="x"===y?ge:ve,G="x"===y?_e:be,J=E[w],Z=J+g[Q],ee=J-g[G],te=rt(f?st(Z,K):Z,J,f?nt(ee,X):ee);E[w]=te,C[w]=te-J}}t.modifiersData[n]=C}},requiresIfExists:["offset"]};function Ht(e,t,i){void 0===i&&(i=!1);var n,s,o=Je(t),r=Ke(e),a=Ve(t),l={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(a||!a&&!i)&&(("body"!==$e(t)||wt(o))&&(l=(n=t)!==qe(n)&&Ve(n)?{scrollLeft:(s=n).scrollLeft,scrollTop:s.scrollTop}:vt(n)),Ve(t)?((c=Ke(t)).x+=t.clientLeft,c.y+=t.clientTop):o&&(c.x=yt(o))),{x:r.left+l.scrollLeft-c.x,y:r.top+l.scrollTop-c.y,width:r.width,height:r.height}}function Rt(e){var t=new Map,i=new Set,n=[];function s(e){i.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!i.has(e)){var n=t.get(e);n&&s(n)}})),n.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){i.has(e.name)||s(e)})),n}function Bt(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),n=1;n<t;n++)i[n-1]=arguments[n];return[].concat(i).reduce((function(e,t){return e.replace(/%s/,t)}),e)}var $t='Popper: modifier "%s" provided an invalid %s property, expected %s but got %s',qt=["name","enabled","phase","fn","effect","requires","options"],Wt="Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.",Vt={placement:"bottom",modifiers:[],strategy:"absolute"};function zt(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return!t.some((function(e){return!(e&&"function"==typeof e.getBoundingClientRect)}))}function Ft(e){void 0===e&&(e={});var t=e,i=t.defaultModifiers,n=void 0===i?[]:i,s=t.defaultOptions,o=void 0===s?Vt:s;return function(e,t,i){void 0===i&&(i=o);var s,r,a={placement:"bottom",orderedModifiers:[],options:Object.assign({},Vt,o),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},l=[],c=!1,h={state:a,setOptions:function(i){d(),a.options=Object.assign({},o,a.options,i),a.scrollParents={reference:We(e)?At(e):e.contextElement?At(e.contextElement):[],popper:At(t)};var s,r,c,u,f,p=function(e){var t=Rt(e);return Be.reduce((function(e,i){return e.concat(t.filter((function(e){return e.phase===i})))}),[])}((u=[].concat(n,a.options.modifiers),f=u.reduce((function(e,t){var i=e[t.name];return e[t.name]=i?Object.assign({},i,t,{options:Object.assign({},i.options,t.options),data:Object.assign({},i.data,t.data)}):t,e}),{}),Object.keys(f).map((function(e){return f[e]}))));if(a.orderedModifiers=p.filter((function(e){return e.enabled})),"production"!==process.env.NODE_ENV){(function(e){e.forEach((function(t){Object.keys(t).forEach((function(i){switch(i){case"name":"string"!=typeof t.name&&console.error(Bt($t,String(t.name),'"name"','"string"','"'+String(t.name)+'"'));break;case"enabled":"boolean"!=typeof t.enabled&&console.error(Bt($t,t.name,'"enabled"','"boolean"','"'+String(t.enabled)+'"'));case"phase":Be.indexOf(t.phase)<0&&console.error(Bt($t,t.name,'"phase"',"either "+Be.join(", "),'"'+String(t.phase)+'"'));break;case"fn":"function"!=typeof t.fn&&console.error(Bt($t,t.name,'"fn"','"function"','"'+String(t.fn)+'"'));break;case"effect":"function"!=typeof t.effect&&console.error(Bt($t,t.name,'"effect"','"function"','"'+String(t.fn)+'"'));break;case"requires":Array.isArray(t.requires)||console.error(Bt($t,t.name,'"requires"','"array"','"'+String(t.requires)+'"'));break;case"requiresIfExists":Array.isArray(t.requiresIfExists)||console.error(Bt($t,t.name,'"requiresIfExists"','"array"','"'+String(t.requiresIfExists)+'"'));break;case"options":case"data":break;default:console.error('PopperJS: an invalid property has been provided to the "'+t.name+'" modifier, valid properties are '+qt.map((function(e){return'"'+e+'"'})).join(", ")+'; but "'+i+'" was provided.')}t.requires&&t.requires.forEach((function(i){null==e.find((function(e){return e.name===i}))&&console.error(Bt('Popper: modifier "%s" requires "%s", but "%s" modifier is not available',String(t.name),i,i))}))}))}))})((s=[].concat(p,a.options.modifiers),r=function(e){return e.name},c=new Set,s.filter((function(e){var t=r(e);if(!c.has(t))return c.add(t),!0})))),Ue(a.options.placement)===ye&&(a.orderedModifiers.find((function(e){return"flip"===e.name}))||console.error(['Popper: "auto" placements require the "flip" modifier be',"present and enabled to work."].join(" ")));var m=Qe(t);[m.marginTop,m.marginRight,m.marginBottom,m.marginLeft].some((function(e){return parseFloat(e)}))&&console.warn(['Popper: CSS "margin" styles cannot be used to apply padding',"between the popper and its reference element or boundary.","To replicate margin, use the `offset` modifier, as well as","the `padding` option in the `preventOverflow` and `flip`","modifiers."].join(" "))}return a.orderedModifiers.forEach((function(e){var t=e.name,i=e.options,n=void 0===i?{}:i,s=e.effect;if("function"==typeof s){var o=s({state:a,name:t,instance:h,options:n});l.push(o||function(){})}})),h.update()},forceUpdate:function(){if(!c){var e=a.elements,t=e.reference,i=e.popper;if(zt(t,i)){a.rects={reference:Ht(t,tt(i),"fixed"===a.options.strategy),popper:Xe(i)},a.reset=!1,a.placement=a.options.placement,a.orderedModifiers.forEach((function(e){return a.modifiersData[e.name]=Object.assign({},e.data)}));for(var n=0,s=0;s<a.orderedModifiers.length;s++){if("production"!==process.env.NODE_ENV&&(n+=1)>100){console.error("Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.");break}if(!0!==a.reset){var o=a.orderedModifiers[s],r=o.fn,l=o.options,d=void 0===l?{}:l,u=o.name;"function"==typeof r&&(a=r({state:a,options:d,name:u,instance:h})||a)}else a.reset=!1,s=-1}}else"production"!==process.env.NODE_ENV&&console.error(Wt)}},update:(s=function(){return new Promise((function(e){h.forceUpdate(),e(a)}))},function(){return r||(r=new Promise((function(e){Promise.resolve().then((function(){r=void 0,e(s())}))}))),r}),destroy:function(){d(),c=!0}};if(!zt(e,t))return"production"!==process.env.NODE_ENV&&console.error(Wt),h;function d(){l.forEach((function(e){return e()})),l=[]}return h.setOptions(i).then((function(e){!c&&i.onFirstUpdate&&i.onFirstUpdate(e)})),h}}var Ut=Ft(),Kt=Ft({defaultModifiers:[pt,Pt,ut,Fe]}),Xt=Ft({defaultModifiers:[pt,Pt,ut,Fe,jt,Dt,Mt,ct,It]}),Yt=Object.freeze({__proto__:null,popperGenerator:Ft,detectOverflow:Lt,createPopperBase:Ut,createPopper:Xt,createPopperLite:Kt,top:ge,bottom:_e,right:be,left:ve,auto:ye,basePlacements:we,start:Ee,end:Ae,clippingParents:Te,viewport:Oe,popper:Ce,reference:ke,variationPlacements:Le,placements:xe,beforeRead:De,read:Se,afterRead:Ne,beforeMain:Ie,main:je,afterMain:Pe,beforeWrite:Me,write:He,afterWrite:Re,modifierPhases:Be,applyStyles:Fe,arrow:ct,computeStyles:ut,eventListeners:pt,flip:Dt,hide:It,offset:jt,popperOffsets:Pt,preventOverflow:Mt});const Qt="dropdown",Gt="Escape",Jt="Space",Zt="ArrowUp",ei="ArrowDown",ti=new RegExp("ArrowUp|ArrowDown|Escape"),ii="click.bs.dropdown.data-api",ni="keydown.bs.dropdown.data-api",si="show",oi='[data-bs-toggle="dropdown"]',ri=".dropdown-menu",ai=_()?"top-end":"top-start",li=_()?"top-start":"top-end",ci=_()?"bottom-end":"bottom-start",hi=_()?"bottom-start":"bottom-end",di=_()?"left-start":"right-start",ui=_()?"right-start":"left-start",fi={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},pi={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class mi extends ${constructor(e,t){super(e),this._popper=null,this._config=this._getConfig(t),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}static get Default(){return fi}static get DefaultType(){return pi}static get NAME(){return Qt}toggle(){d(this._element)||(this._element.classList.contains(si)?this.hide():this.show())}show(){if(d(this._element)||this._menu.classList.contains(si))return;const e=mi.getParentFromElement(this._element),t={relatedTarget:this._element};if(!H.trigger(this._element,"show.bs.dropdown",t).defaultPrevented){if(this._inNavbar)U.setDataAttribute(this._menu,"popper","none");else{if(void 0===Yt)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let t=this._element;"parent"===this._config.reference?t=e:a(this._config.reference)?t=l(this._config.reference):"object"==typeof this._config.reference&&(t=this._config.reference);const i=this._getPopperConfig(),n=i.modifiers.find((e=>"applyStyles"===e.name&&!1===e.enabled));this._popper=Xt(t,this._menu,i),n&&U.setDataAttribute(this._menu,"popper","static")}"ontouchstart"in document.documentElement&&!e.closest(".navbar-nav")&&[].concat(...document.body.children).forEach((e=>H.on(e,"mouseover",f))),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.toggle(si),this._element.classList.toggle(si),H.trigger(this._element,"shown.bs.dropdown",t)}}hide(){if(d(this._element)||!this._menu.classList.contains(si))return;const e={relatedTarget:this._element};this._completeHide(e)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_addEventListeners(){H.on(this._element,"click.bs.dropdown",(e=>{e.preventDefault(),this.toggle()}))}_completeHide(e){H.trigger(this._element,"hide.bs.dropdown",e).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((e=>H.off(e,"mouseover",f))),this._popper&&this._popper.destroy(),this._menu.classList.remove(si),this._element.classList.remove(si),this._element.setAttribute("aria-expanded","false"),U.removeDataAttribute(this._menu,"popper"),H.trigger(this._element,"hidden.bs.dropdown",e))}_getConfig(e){if(e={...this.constructor.Default,...U.getDataAttributes(this._element),...e},c(Qt,e,this.constructor.DefaultType),"object"==typeof e.reference&&!a(e.reference)&&"function"!=typeof e.reference.getBoundingClientRect)throw new TypeError(`${Qt.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return e}_getMenuElement(){return e.next(this._element,ri)[0]}_getPlacement(){const e=this._element.parentNode;if(e.classList.contains("dropend"))return di;if(e.classList.contains("dropstart"))return ui;const t="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return e.classList.contains("dropup")?t?li:ai:t?hi:ci}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:e}=this._config;return"string"==typeof e?e.split(",").map((e=>Number.parseInt(e,10))):"function"==typeof e?t=>e(t,this._element):e}_getPopperConfig(){const e={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return"static"===this._config.display&&(e.modifiers=[{name:"applyStyles",enabled:!1}]),{...e,..."function"==typeof this._config.popperConfig?this._config.popperConfig(e):this._config.popperConfig}}_selectMenuItem({key:t,target:i}){const n=e.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(h);n.length&&w(n,i,t===ei,!n.includes(i)).focus()}static dropdownInterface(e,t){const i=mi.getOrCreateInstance(e,t);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t]()}}static jQueryInterface(e){return this.each((function(){mi.dropdownInterface(this,e)}))}static clearMenus(t){if(t&&(2===t.button||"keyup"===t.type&&"Tab"!==t.key))return;const i=e.find(oi);for(let e=0,n=i.length;e<n;e++){const n=mi.getInstance(i[e]);if(!n||!1===n._config.autoClose)continue;if(!n._element.classList.contains(si))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(e){return o(e)||e.parentNode}static dataApiKeydownHandler(t){if(/input|textarea/i.test(t.target.tagName)?t.key===Jt||t.key!==Gt&&(t.key!==ei&&t.key!==Zt||t.target.closest(ri)):!ti.test(t.key))return;const i=this.classList.contains(si);if(!i&&t.key===Gt)return;if(t.preventDefault(),t.stopPropagation(),d(this))return;const n=()=>this.matches(oi)?this:e.prev(this,oi)[0];return t.key===Gt?(n().focus(),void mi.clearMenus()):t.key===Zt||t.key===ei?(i||n().click(),void mi.getInstance(n())._selectMenuItem(t)):void(i&&t.key!==Jt||mi.clearMenus())}}H.on(document,ni,oi,mi.dataApiKeydownHandler),H.on(document,ni,ri,mi.dataApiKeydownHandler),H.on(document,ii,mi.clearMenus),H.on(document,"keyup.bs.dropdown.data-api",mi.clearMenus),H.on(document,ii,oi,(function(e){e.preventDefault(),mi.dropdownInterface(this)})),b(mi);const gi=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",_i=".sticky-top";class bi{constructor(){this._element=document.body}getWidth(){const e=document.documentElement.clientWidth;return Math.abs(window.innerWidth-e)}hide(){const e=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,"paddingRight",(t=>t+e)),this._setElementAttributes(gi,"paddingRight",(t=>t+e)),this._setElementAttributes(_i,"marginRight",(t=>t-e))}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(e,t,i){const n=this.getWidth();this._applyManipulationCallback(e,(e=>{if(e!==this._element&&window.innerWidth>e.clientWidth+n)return;this._saveInitialAttribute(e,t);const s=window.getComputedStyle(e)[t];e.style[t]=`${i(Number.parseFloat(s))}px`}))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(gi,"paddingRight"),this._resetElementAttributes(_i,"marginRight")}_saveInitialAttribute(e,t){const i=e.style[t];i&&U.setDataAttribute(e,t,i)}_resetElementAttributes(e,t){this._applyManipulationCallback(e,(e=>{const i=U.getDataAttribute(e,t);void 0===i?e.style.removeProperty(t):(U.removeDataAttribute(e,t),e.style[t]=i)}))}_applyManipulationCallback(t,i){a(t)?i(t):e.find(t,this._element).forEach(i)}isOverflowing(){return this.getWidth()>0}}const vi={isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},yi={isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},wi="show",Ei="mousedown.bs.backdrop";class Ai{constructor(e){this._config=this._getConfig(e),this._isAppended=!1,this._element=null}show(e){this._config.isVisible?(this._append(),this._config.isAnimated&&p(this._getElement()),this._getElement().classList.add(wi),this._emulateAnimation((()=>{v(e)}))):v(e)}hide(e){this._config.isVisible?(this._getElement().classList.remove(wi),this._emulateAnimation((()=>{this.dispose(),v(e)}))):v(e)}_getElement(){if(!this._element){const e=document.createElement("div");e.className="modal-backdrop",this._config.isAnimated&&e.classList.add("fade"),this._element=e}return this._element}_getConfig(e){return(e={...vi,..."object"==typeof e?e:{}}).rootElement=l(e.rootElement),c("backdrop",e,yi),e}_append(){this._isAppended||(this._config.rootElement.appendChild(this._getElement()),H.on(this._getElement(),Ei,(()=>{v(this._config.clickCallback)})),this._isAppended=!0)}dispose(){this._isAppended&&(H.off(this._element,Ei),this._element.remove(),this._isAppended=!1)}_emulateAnimation(e){y(e,this._getElement(),this._config.isAnimated)}}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="focusin.bs.modal",Si="resize.bs.modal",Ni="click.dismiss.bs.modal",Ii="keydown.dismiss.bs.modal",ji="mousedown.dismiss.bs.modal",Pi="modal-open",Mi="show",Hi="modal-static";class Ri extends ${constructor(t,i){super(t),this._config=this._getConfig(i),this._dialog=e.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new bi}static get Default(){return Ci}static get NAME(){return Ti}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||this._isTransitioning||H.trigger(this._element,xi,{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(Pi),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),H.on(this._element,Ni,'[data-bs-dismiss="modal"]',(e=>this.hide(e))),H.on(this._dialog,ji,(()=>{H.one(this._element,"mouseup.dismiss.bs.modal",(e=>{e.target===this._element&&(this._ignoreBackdropClick=!0)}))})),this._showBackdrop((()=>this._showElement(e))))}hide(e){if(e&&["A","AREA"].includes(e.target.tagName)&&e.preventDefault(),!this._isShown||this._isTransitioning)return;if(H.trigger(this._element,"hide.bs.modal").defaultPrevented)return;this._isShown=!1;const t=this._isAnimated();t&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),H.off(document,Di),this._element.classList.remove(Mi),H.off(this._element,Ni),H.off(this._dialog,ji),this._queueCallback((()=>this._hideModal()),this._element,t)}dispose(){[window,this._dialog].forEach((e=>H.off(e,".bs.modal"))),this._backdrop.dispose(),super.dispose(),H.off(document,Di)}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new Ai({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_getConfig(e){return e={...Ci,...U.getDataAttributes(this._element),..."object"==typeof e?e:{}},c(Ti,e,ki),e}_showElement(t){const i=this._isAnimated(),n=e.findOne(".modal-body",this._dialog);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(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,n&&(n.scrollTop=0),i&&p(this._element),this._element.classList.add(Mi),this._config.focus&&this._enforceFocus(),this._queueCallback((()=>{this._config.focus&&this._element.focus(),this._isTransitioning=!1,H.trigger(this._element,"shown.bs.modal",{relatedTarget:t})}),this._dialog,i)}_enforceFocus(){H.off(document,Di),H.on(document,Di,(e=>{document===e.target||this._element===e.target||this._element.contains(e.target)||this._element.focus()}))}_setEscapeEvent(){this._isShown?H.on(this._element,Ii,(e=>{this._config.keyboard&&e.key===Oi?(e.preventDefault(),this.hide()):this._config.keyboard||e.key!==Oi||this._triggerBackdropTransition()})):H.off(this._element,Ii)}_setResizeEvent(){this._isShown?H.on(window,Si,(()=>this._adjustDialog())):H.off(window,Si)}_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(),H.trigger(this._element,Li)}))}_showBackdrop(e){H.on(this._element,Ni,(e=>{this._ignoreBackdropClick?this._ignoreBackdropClick=!1:e.target===e.currentTarget&&(!0===this._config.backdrop?this.hide():"static"===this._config.backdrop&&this._triggerBackdropTransition())})),this._backdrop.show(e)}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(H.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const{classList:e,scrollHeight:t,style:i}=this._element,n=t>document.documentElement.clientHeight;!n&&"hidden"===i.overflowY||e.contains(Hi)||(n||(i.overflowY="hidden"),e.add(Hi),this._queueCallback((()=>{e.remove(Hi),n||this._queueCallback((()=>{i.overflowY=""}),this._dialog)}),this._dialog),this._element.focus())}_adjustDialog(){const e=this._element.scrollHeight>document.documentElement.clientHeight,t=this._scrollBar.getWidth(),i=t>0;(!i&&e&&!_()||i&&!e&&_())&&(this._element.style.paddingLeft=`${t}px`),(i&&!e&&!_()||!i&&e&&_())&&(this._element.style.paddingRight=`${t}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(e,t){return this.each((function(){const i=Ri.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===i[e])throw new TypeError(`No method named "${e}"`);i[e](t)}}))}}H.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(e){const t=o(this);["A","AREA"].includes(this.tagName)&&e.preventDefault(),H.one(t,xi,(e=>{e.defaultPrevented||H.one(t,Li,(()=>{h(this)&&this.focus()}))})),Ri.getOrCreateInstance(t).toggle(this)})),b(Ri);const Bi="offcanvas",$i={backdrop:!0,keyboard:!0,scroll:!1},qi={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},Wi="show",Vi=".offcanvas.show",zi="hidden.bs.offcanvas",Fi="focusin.bs.offcanvas";class Ui extends ${constructor(e,t){super(e),this._config=this._getConfig(t),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._addEventListeners()}static get NAME(){return Bi}static get Default(){return $i}toggle(e){return this._isShown?this.hide():this.show(e)}show(e){this._isShown||H.trigger(this._element,"show.bs.offcanvas",{relatedTarget:e}).defaultPrevented||(this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||((new bi).hide(),this._enforceFocusOnElement(this._element)),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Wi),this._queueCallback((()=>{H.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:e})}),this._element,!0))}hide(){this._isShown&&(H.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||(H.off(document,Fi),this._element.blur(),this._isShown=!1,this._element.classList.remove(Wi),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 bi).reset(),H.trigger(this._element,zi)}),this._element,!0)))}dispose(){this._backdrop.dispose(),super.dispose(),H.off(document,Fi)}_getConfig(e){return e={...$i,...U.getDataAttributes(this._element),..."object"==typeof e?e:{}},c(Bi,e,qi),e}_initializeBackDrop(){return new Ai({isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_enforceFocusOnElement(e){H.off(document,Fi),H.on(document,Fi,(t=>{document===t.target||e===t.target||e.contains(t.target)||e.focus()})),e.focus()}_addEventListeners(){H.on(this._element,"click.dismiss.bs.offcanvas",'[data-bs-dismiss="offcanvas"]',(()=>this.hide())),H.on(this._element,"keydown.dismiss.bs.offcanvas",(e=>{this._config.keyboard&&"Escape"===e.key&&this.hide()}))}static jQueryInterface(e){return this.each((function(){const t=Ui.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e]||e.startsWith("_")||"constructor"===e)throw new TypeError(`No method named "${e}"`);t[e](this)}}))}}H.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(t){const i=o(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),d(this))return;H.one(i,zi,(()=>{h(this)&&this.focus()}));const n=e.findOne(Vi);n&&n!==i&&Ui.getInstance(n).hide(),Ui.getOrCreateInstance(i).toggle(this)})),H.on(window,"load.bs.offcanvas.data-api",(()=>e.find(Vi).forEach((e=>Ui.getOrCreateInstance(e).show())))),b(Ui);const Ki=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Xi=/^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i,Yi=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,Qi=(e,t)=>{const i=e.nodeName.toLowerCase();if(t.includes(i))return!Ki.has(i)||Boolean(Xi.test(e.nodeValue)||Yi.test(e.nodeValue));const n=t.filter((e=>e instanceof RegExp));for(let e=0,t=n.length;e<t;e++)if(n[e].test(i))return!0;return!1};function Gi(e,t,i){if(!e.length)return e;if(i&&"function"==typeof i)return i(e);const n=(new window.DOMParser).parseFromString(e,"text/html"),s=Object.keys(t),o=[].concat(...n.body.querySelectorAll("*"));for(let e=0,i=o.length;e<i;e++){const i=o[e],n=i.nodeName.toLowerCase();if(!s.includes(n)){i.remove();continue}const r=[].concat(...i.attributes),a=[].concat(t["*"]||[],t[n]||[]);r.forEach((e=>{Qi(e,a)||i.removeAttribute(e.nodeName)}))}return n.body.innerHTML}const Ji="tooltip",Zi=new RegExp("(^|\\s)bs-tooltip\\S+","g"),en=new Set(["sanitize","allowList","sanitizeFn"]),tn={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)"},nn={AUTO:"auto",TOP:"top",RIGHT:_()?"left":"right",BOTTOM:"bottom",LEFT:_()?"right":"left"},sn={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},on={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"},rn="fade",an="show",ln="show",cn="out",hn="hover",dn="focus";class un extends ${constructor(e,t){if(void 0===Yt)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(e),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(t),this.tip=null,this._setListeners()}static get Default(){return sn}static get NAME(){return Ji}static get Event(){return on}static get DefaultType(){return tn}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(e){if(this._isEnabled)if(e){const t=this._initializeOnDelegatedTarget(e);t._activeTrigger.click=!t._activeTrigger.click,t._isWithActiveTrigger()?t._enter(null,t):t._leave(null,t)}else{if(this.getTipElement().classList.contains(an))return void this._leave(null,this);this._enter(null,this)}}dispose(){clearTimeout(this._timeout),H.off(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this.tip&&this.tip.remove(),this._popper&&this._popper.destroy(),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 e=H.trigger(this._element,this.constructor.Event.SHOW),t=u(this._element),n=null===t?this._element.ownerDocument.documentElement.contains(this._element):t.contains(this._element);if(e.defaultPrevented||!n)return;const s=this.getTipElement(),o=i(this.constructor.NAME);s.setAttribute("id",o),this._element.setAttribute("aria-describedby",o),this.setContent(),this._config.animation&&s.classList.add(rn);const r="function"==typeof this._config.placement?this._config.placement.call(this,s,this._element):this._config.placement,a=this._getAttachment(r);this._addAttachmentClass(a);const{container:l}=this._config;B.set(s,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(l.appendChild(s),H.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=Xt(this._element,s,this._getPopperConfig(a)),s.classList.add(an);const c="function"==typeof this._config.customClass?this._config.customClass():this._config.customClass;c&&s.classList.add(...c.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((e=>{H.on(e,"mouseover",f)}));const h=this.tip.classList.contains(rn);this._queueCallback((()=>{const e=this._hoverState;this._hoverState=null,H.trigger(this._element,this.constructor.Event.SHOWN),e===cn&&this._leave(null,this)}),this.tip,h)}hide(){if(!this._popper)return;const e=this.getTipElement();if(H.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;e.classList.remove(an),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((e=>H.off(e,"mouseover",f))),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1;const t=this.tip.classList.contains(rn);this._queueCallback((()=>{this._isWithActiveTrigger()||(this._hoverState!==ln&&e.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),H.trigger(this._element,this.constructor.Event.HIDDEN),this._popper&&(this._popper.destroy(),this._popper=null))}),this.tip,t),this._hoverState=""}update(){null!==this._popper&&this._popper.update()}isWithContent(){return Boolean(this.getTitle())}getTipElement(){if(this.tip)return this.tip;const e=document.createElement("div");return e.innerHTML=this._config.template,this.tip=e.children[0],this.tip}setContent(){const t=this.getTipElement();this.setElementContent(e.findOne(".tooltip-inner",t),this.getTitle()),t.classList.remove(rn,an)}setElementContent(e,t){if(null!==e)return a(t)?(t=l(t),void(this._config.html?t.parentNode!==e&&(e.innerHTML="",e.appendChild(t)):e.textContent=t.textContent)):void(this._config.html?(this._config.sanitize&&(t=Gi(t,this._config.allowList,this._config.sanitizeFn)),e.innerHTML=t):e.textContent=t)}getTitle(){let e=this._element.getAttribute("data-bs-original-title");return e||(e="function"==typeof this._config.title?this._config.title.call(this._element):this._config.title),e}updateAttachment(e){return"right"===e?"end":"left"===e?"start":e}_initializeOnDelegatedTarget(e,t){const i=this.constructor.DATA_KEY;return(t=t||B.get(e.delegateTarget,i))||(t=new this.constructor(e.delegateTarget,this._getDelegateConfig()),B.set(e.delegateTarget,i,t)),t}_getOffset(){const{offset:e}=this._config;return"string"==typeof e?e.split(",").map((e=>Number.parseInt(e,10))):"function"==typeof e?t=>e(t,this._element):e}_getPopperConfig(e){const t={placement:e,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:e=>this._handlePopperPlacementChange(e)}],onFirstUpdate:e=>{e.options.placement!==e.placement&&this._handlePopperPlacementChange(e)}};return{...t,..."function"==typeof this._config.popperConfig?this._config.popperConfig(t):this._config.popperConfig}}_addAttachmentClass(e){this.getTipElement().classList.add(`bs-tooltip-${this.updateAttachment(e)}`)}_getAttachment(e){return nn[e.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach((e=>{if("click"===e)H.on(this._element,this.constructor.Event.CLICK,this._config.selector,(e=>this.toggle(e)));else if("manual"!==e){const t=e===hn?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,i=e===hn?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;H.on(this._element,t,this._config.selector,(e=>this._enter(e))),H.on(this._element,i,this._config.selector,(e=>this._leave(e)))}})),this._hideModalHandler=()=>{this._element&&this.hide()},H.on(this._element.closest(".modal"),"hide.bs.modal",this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){const e=this._element.getAttribute("title"),t=typeof this._element.getAttribute("data-bs-original-title");(e||"string"!==t)&&(this._element.setAttribute("data-bs-original-title",e||""),!e||this._element.getAttribute("aria-label")||this._element.textContent||this._element.setAttribute("aria-label",e),this._element.setAttribute("title",""))}_enter(e,t){t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger["focusin"===e.type?dn:hn]=!0),t.getTipElement().classList.contains(an)||t._hoverState===ln?t._hoverState=ln:(clearTimeout(t._timeout),t._hoverState=ln,t._config.delay&&t._config.delay.show?t._timeout=setTimeout((()=>{t._hoverState===ln&&t.show()}),t._config.delay.show):t.show())}_leave(e,t){t=this._initializeOnDelegatedTarget(e,t),e&&(t._activeTrigger["focusout"===e.type?dn:hn]=t._element.contains(e.relatedTarget)),t._isWithActiveTrigger()||(clearTimeout(t._timeout),t._hoverState=cn,t._config.delay&&t._config.delay.hide?t._timeout=setTimeout((()=>{t._hoverState===cn&&t.hide()}),t._config.delay.hide):t.hide())}_isWithActiveTrigger(){for(const e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1}_getConfig(e){const t=U.getDataAttributes(this._element);return Object.keys(t).forEach((e=>{en.has(e)&&delete t[e]})),(e={...this.constructor.Default,...t,..."object"==typeof e&&e?e:{}}).container=!1===e.container?document.body:l(e.container),"number"==typeof e.delay&&(e.delay={show:e.delay,hide:e.delay}),"number"==typeof e.title&&(e.title=e.title.toString()),"number"==typeof e.content&&(e.content=e.content.toString()),c(Ji,e,this.constructor.DefaultType),e.sanitize&&(e.template=Gi(e.template,e.allowList,e.sanitizeFn)),e}_getDelegateConfig(){const e={};if(this._config)for(const t in this._config)this.constructor.Default[t]!==this._config[t]&&(e[t]=this._config[t]);return e}_cleanTipClass(){const e=this.getTipElement(),t=e.getAttribute("class").match(Zi);null!==t&&t.length>0&&t.map((e=>e.trim())).forEach((t=>e.classList.remove(t)))}_handlePopperPlacementChange(e){const{state:t}=e;t&&(this.tip=t.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(t.placement)))}static jQueryInterface(e){return this.each((function(){const t=un.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}}))}}b(un);const fn=new RegExp("(^|\\s)bs-popover\\S+","g"),pn={...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>'},mn={...un.DefaultType,content:"(string|element|function)"},gn={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"},_n=".popover-header",bn=".popover-body";class vn extends un{static get Default(){return pn}static get NAME(){return"popover"}static get Event(){return gn}static get DefaultType(){return mn}isWithContent(){return this.getTitle()||this._getContent()}getTipElement(){return this.tip||(this.tip=super.getTipElement(),this.getTitle()||e.findOne(_n,this.tip).remove(),this._getContent()||e.findOne(bn,this.tip).remove()),this.tip}setContent(){const t=this.getTipElement();this.setElementContent(e.findOne(_n,t),this.getTitle());let i=this._getContent();"function"==typeof i&&(i=i.call(this._element)),this.setElementContent(e.findOne(bn,t),i),t.classList.remove("fade","show")}_addAttachmentClass(e){this.getTipElement().classList.add(`bs-popover-${this.updateAttachment(e)}`)}_getContent(){return this._element.getAttribute("data-bs-content")||this._config.content}_cleanTipClass(){const e=this.getTipElement(),t=e.getAttribute("class").match(fn);null!==t&&t.length>0&&t.map((e=>e.trim())).forEach((t=>e.classList.remove(t)))}static jQueryInterface(e){return this.each((function(){const t=vn.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}}))}}b(vn);const yn="scrollspy",wn={offset:10,method:"auto",target:""},En={offset:"number",method:"string",target:"(string|element)"},An="active",Tn="position";class On extends ${constructor(e,t){super(e),this._scrollElement="BODY"===this._element.tagName?window:this._element,this._config=this._getConfig(t),this._selector=`${this._config.target} .nav-link, ${this._config.target} .list-group-item, ${this._config.target} .dropdown-item`,this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,H.on(this._scrollElement,"scroll.bs.scrollspy",(()=>this._process())),this.refresh(),this._process()}static get Default(){return wn}static get NAME(){return yn}refresh(){const t=this._scrollElement===this._scrollElement.window?"offset":Tn,i="auto"===this._config.method?t:this._config.method,n=i===Tn?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),e.find(this._selector).map((t=>{const o=s(t),r=o?e.findOne(o):null;if(r){const e=r.getBoundingClientRect();if(e.width||e.height)return[U[i](r).top+n,o]}return null})).filter((e=>e)).sort(((e,t)=>e[0]-t[0])).forEach((e=>{this._offsets.push(e[0]),this._targets.push(e[1])}))}dispose(){H.off(this._scrollElement,".bs.scrollspy"),super.dispose()}_getConfig(e){if("string"!=typeof(e={...wn,...U.getDataAttributes(this._element),..."object"==typeof e&&e?e:{}}).target&&a(e.target)){let{id:t}=e.target;t||(t=i(yn),e.target.id=t),e.target=`#${t}`}return c(yn,e,En),e}_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 e=this._getScrollTop()+this._config.offset,t=this._getScrollHeight(),i=this._config.offset+t-this._getOffsetHeight();if(this._scrollHeight!==t&&this.refresh(),e>=i){const e=this._targets[this._targets.length-1];this._activeTarget!==e&&this._activate(e)}else{if(this._activeTarget&&e<this._offsets[0]&&this._offsets[0]>0)return this._activeTarget=null,void this._clear();for(let t=this._offsets.length;t--;)this._activeTarget!==this._targets[t]&&e>=this._offsets[t]&&(void 0===this._offsets[t+1]||e<this._offsets[t+1])&&this._activate(this._targets[t])}}_activate(t){this._activeTarget=t,this._clear();const i=this._selector.split(",").map((e=>`${e}[data-bs-target="${t}"],${e}[href="${t}"]`)),n=e.findOne(i.join(","));n.classList.contains("dropdown-item")?(e.findOne(".dropdown-toggle",n.closest(".dropdown")).classList.add(An),n.classList.add(An)):(n.classList.add(An),e.parents(n,".nav, .list-group").forEach((t=>{e.prev(t,".nav-link, .list-group-item").forEach((e=>e.classList.add(An))),e.prev(t,".nav-item").forEach((t=>{e.children(t,".nav-link").forEach((e=>e.classList.add(An)))}))}))),H.trigger(this._scrollElement,"activate.bs.scrollspy",{relatedTarget:t})}_clear(){e.find(this._selector).filter((e=>e.classList.contains(An))).forEach((e=>e.classList.remove(An)))}static jQueryInterface(e){return this.each((function(){const t=On.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}}))}}H.on(window,"load.bs.scrollspy.data-api",(()=>{e.find('[data-bs-spy="scroll"]').forEach((e=>new On(e)))})),b(On);const Cn="active",kn="fade",Ln="show",xn=".active",Dn=":scope > li > .active";class Sn extends ${static get NAME(){return"tab"}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(Cn))return;let t;const i=o(this._element),n=this._element.closest(".nav, .list-group");if(n){const i="UL"===n.nodeName||"OL"===n.nodeName?Dn:xn;t=e.find(i,n),t=t[t.length-1]}const s=t?H.trigger(t,"hide.bs.tab",{relatedTarget:this._element}):null;if(H.trigger(this._element,"show.bs.tab",{relatedTarget:t}).defaultPrevented||null!==s&&s.defaultPrevented)return;this._activate(this._element,n);const r=()=>{H.trigger(t,"hidden.bs.tab",{relatedTarget:this._element}),H.trigger(this._element,"shown.bs.tab",{relatedTarget:t})};i?this._activate(i,i.parentNode,r):r()}_activate(t,i,n){const s=(!i||"UL"!==i.nodeName&&"OL"!==i.nodeName?e.children(i,xn):e.find(Dn,i))[0],o=n&&s&&s.classList.contains(kn),r=()=>this._transitionComplete(t,s,n);s&&o?(s.classList.remove(Ln),this._queueCallback(r,t,!0)):r()}_transitionComplete(t,i,n){if(i){i.classList.remove(Cn);const t=e.findOne(":scope > .dropdown-menu .active",i.parentNode);t&&t.classList.remove(Cn),"tab"===i.getAttribute("role")&&i.setAttribute("aria-selected",!1)}t.classList.add(Cn),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),p(t),t.classList.contains(kn)&&t.classList.add(Ln);let s=t.parentNode;if(s&&"LI"===s.nodeName&&(s=s.parentNode),s&&s.classList.contains("dropdown-menu")){const i=t.closest(".dropdown");i&&e.find(".dropdown-toggle",i).forEach((e=>e.classList.add(Cn))),t.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(e){return this.each((function(){const t=Sn.getOrCreateInstance(this);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e]()}}))}}H.on(document,"click.bs.tab.data-api",'[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',(function(e){["A","AREA"].includes(this.tagName)&&e.preventDefault(),d(this)||Sn.getOrCreateInstance(this).show()})),b(Sn);const Nn="toast",In="hide",jn="show",Pn="showing",Mn={animation:"boolean",autohide:"boolean",delay:"number"},Hn={animation:!0,autohide:!0,delay:5e3};class Rn extends ${constructor(e,t){super(e),this._config=this._getConfig(t),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return Mn}static get Default(){return Hn}static get NAME(){return Nn}show(){H.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove(In),p(this._element),this._element.classList.add(Pn),this._queueCallback((()=>{this._element.classList.remove(Pn),this._element.classList.add(jn),H.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()}),this._element,this._config.animation))}hide(){this._element.classList.contains(jn)&&(H.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.remove(jn),this._queueCallback((()=>{this._element.classList.add(In),H.trigger(this._element,"hidden.bs.toast")}),this._element,this._config.animation)))}dispose(){this._clearTimeout(),this._element.classList.contains(jn)&&this._element.classList.remove(jn),super.dispose()}_getConfig(e){return e={...Hn,...U.getDataAttributes(this._element),..."object"==typeof e&&e?e:{}},c(Nn,e,this.constructor.DefaultType),e}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout((()=>{this.hide()}),this._config.delay)))}_onInteraction(e,t){switch(e.type){case"mouseover":case"mouseout":this._hasMouseInteraction=t;break;case"focusin":case"focusout":this._hasKeyboardInteraction=t}if(t)return void this._clearTimeout();const i=e.relatedTarget;this._element===i||this._element.contains(i)||this._maybeScheduleHide()}_setListeners(){H.on(this._element,"click.dismiss.bs.toast",'[data-bs-dismiss="toast"]',(()=>this.hide())),H.on(this._element,"mouseover.bs.toast",(e=>this._onInteraction(e,!0))),H.on(this._element,"mouseout.bs.toast",(e=>this._onInteraction(e,!1))),H.on(this._element,"focusin.bs.toast",(e=>this._onInteraction(e,!0))),H.on(this._element,"focusout.bs.toast",(e=>this._onInteraction(e,!1)))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(e){return this.each((function(){const t=Rn.getOrCreateInstance(this,e);if("string"==typeof e){if(void 0===t[e])throw new TypeError(`No method named "${e}"`);t[e](this)}}))}}return b(Rn),{Alert:q,Button:V,Carousel:oe,Collapse:me,Dropdown:mi,Modal:Ri,Offcanvas:Ui,Popover:vn,ScrollSpy:On,Tab:Sn,Toast:Rn,Tooltip:un}})); -//# sourceMappingURL=oe-bcl-default.umd.min.js.map diff --git a/assets/js/oe-bcl-default.umd.min.js.map b/assets/js/oe-bcl-default.umd.min.js.map deleted file mode 100644 index 8b194d57..00000000 --- a/assets/js/oe-bcl-default.umd.min.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"oe-bcl-default.umd.min.js","sources":["../../../../bootstrap/js/src/dom/selector-engine.js","../../../../bootstrap/js/src/util/index.js","../../../../bootstrap/js/src/dom/event-handler.js","../../../../bootstrap/js/src/dom/data.js","../../../../bootstrap/js/src/base-component.js","../../../../bootstrap/js/src/alert.js","../../../../bootstrap/js/src/button.js","../../../../bootstrap/js/src/dom/manipulator.js","../../../../bootstrap/js/src/carousel.js","../../../../bootstrap/js/src/collapse.js","../../../../node_modules/@popperjs/core/lib/enums.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../../../../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../../../../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../../../../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/contains.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../../../../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../../../../node_modules/@popperjs/core/lib/utils/math.js","../../../../node_modules/@popperjs/core/lib/utils/within.js","../../../../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../../../../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../../../../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../../../../node_modules/@popperjs/core/lib/modifiers/arrow.js","../../../../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../../../../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../../../../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../../../../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../../../../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../../../../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../../../../node_modules/@popperjs/core/lib/utils/getVariation.js","../../../../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../../../../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../../../../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../../../../node_modules/@popperjs/core/lib/modifiers/flip.js","../../../../node_modules/@popperjs/core/lib/modifiers/hide.js","../../../../node_modules/@popperjs/core/lib/modifiers/offset.js","../../../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../../../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../../../../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../../../../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../../../../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../../../../node_modules/@popperjs/core/lib/utils/format.js","../../../../node_modules/@popperjs/core/lib/utils/validateModifiers.js","../../../../node_modules/@popperjs/core/lib/createPopper.js","../../../../node_modules/@popperjs/core/lib/utils/debounce.js","../../../../node_modules/@popperjs/core/lib/utils/uniqueBy.js","../../../../node_modules/@popperjs/core/lib/utils/mergeByName.js","../../../../node_modules/@popperjs/core/lib/popper-lite.js","../../../../node_modules/@popperjs/core/lib/popper.js","../../../../bootstrap/js/src/dropdown.js","../../../../bootstrap/js/src/util/scrollbar.js","../../../../bootstrap/js/src/util/backdrop.js","../../../../bootstrap/js/src/modal.js","../../../../bootstrap/js/src/offcanvas.js","../../../../bootstrap/js/src/util/sanitizer.js","../../../../bootstrap/js/src/tooltip.js","../../../../bootstrap/js/src/popover.js","../../../../bootstrap/js/src/scrollspy.js","../../../../bootstrap/js/src/tab.js","../../../../bootstrap/js/src/toast.js","../index.umd.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NODE_TEXT = 3\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children)\n .filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n\n let ancestor = element.parentNode\n\n while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {\n if (ancestor.matches(selector)) {\n parents.push(ancestor)\n }\n\n ancestor = ancestor.parentNode\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n }\n}\n\nexport default SelectorEngine\n","import SelectorEngine from '../dom/selector-engine'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = obj => {\n if (obj === null || obj === undefined) {\n return `${obj}`\n }\n\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return SelectorEngine.findOne(obj)\n }\n\n return null\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!isElement(element) || element.getClientRects().length === 0) {\n return false\n }\n\n return getComputedStyle(element).getPropertyValue('visibility') === 'visible'\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\nconst reflow = element => element.offsetHeight\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst DOMContentLoadedCallbacks = []\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n // add listener on the first call when the document is in loading state\n if (!DOMContentLoadedCallbacks.length) {\n document.addEventListener('DOMContentLoaded', () => {\n DOMContentLoadedCallbacks.forEach(callback => callback())\n })\n }\n\n DOMContentLoadedCallbacks.push(callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nconst executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {\n if (!waitForTransition) {\n execute(callback)\n return\n }\n\n const durationPadding = 5\n const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding\n\n let called = false\n\n const handler = ({ target }) => {\n if (target !== transitionElement) {\n return\n }\n\n called = true\n transitionElement.removeEventListener(TRANSITION_END, handler)\n execute(callback)\n }\n\n transitionElement.addEventListener(TRANSITION_END, handler)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(transitionElement)\n }\n }, emulatedDuration)\n}\n\n/**\n * Return the previous/next element of a list.\n *\n * @param {array} list The list of elements\n * @param activeElement The active element\n * @param shouldGetNext Choose to get next or previous element\n * @param isCycleAllowed\n * @return {Element|elem} The proper element\n */\nconst getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {\n let index = list.indexOf(activeElement)\n\n // if the element does not exist in the list return an element depending on the direction and if cycle is allowed\n if (index === -1) {\n return list[!shouldGetNext && isCycleAllowed ? list.length - 1 : 0]\n }\n\n const listLength = list.length\n\n index += shouldGetNext ? 1 : -1\n\n if (isCycleAllowed) {\n index = (index + listLength) % listLength\n }\n\n return list[Math.max(0, Math.min(index, listLength - 1))]\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n getNextActiveElement,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute,\n executeAfterTransition\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\nconst customEventsRegex = /^(mouseenter|mouseleave)/i\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * ------------------------------------------------------------------------\n * Private methods\n * ------------------------------------------------------------------------\n */\n\nfunction getUidEvent(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getEvent(element) {\n const uid = getUidEvent(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n event.delegateTarget = element\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (let i = domElements.length; i--;) {\n if (domElements[i] === target) {\n event.delegateTarget = target\n\n if (handler.oneOff) {\n // eslint-disable-next-line unicorn/consistent-destructuring\n EventHandler.off(element, event.type, selector, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n\n // To please ESLint\n return null\n }\n}\n\nfunction findHandler(events, handler, delegationSelector = null) {\n const uidEventList = Object.keys(events)\n\n for (let i = 0, len = uidEventList.length; i < len; i++) {\n const event = events[uidEventList[i]]\n\n if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {\n return event\n }\n }\n\n return null\n}\n\nfunction normalizeParams(originalTypeEvent, handler, delegationFn) {\n const delegation = typeof handler === 'string'\n const originalHandler = delegation ? delegationFn : handler\n\n let typeEvent = getTypeEvent(originalTypeEvent)\n const isNative = nativeEvents.has(typeEvent)\n\n if (!isNative) {\n typeEvent = originalTypeEvent\n }\n\n return [delegation, originalHandler, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n if (!handler) {\n handler = delegationFn\n delegationFn = null\n }\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (customEventsRegex.test(originalTypeEvent)) {\n const wrapFn = fn => {\n return function (event) {\n if (!event.relatedTarget || (event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget))) {\n return fn.call(this, event)\n }\n }\n }\n\n if (delegationFn) {\n delegationFn = wrapFn(delegationFn)\n } else {\n handler = wrapFn(handler)\n }\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const events = getEvent(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null)\n\n if (previousFn) {\n previousFn.oneOff = previousFn.oneOff && oneOff\n\n return\n }\n\n const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = delegation ?\n bootstrapDelegationHandler(element, handler, delegationFn) :\n bootstrapHandler(element, handler)\n\n fn.delegationSelector = delegation ? handler : null\n fn.originalHandler = originalHandler\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, delegation)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n Object.keys(storeElementEvent).forEach(handlerKey => {\n if (handlerKey.includes(namespace)) {\n const event = storeElementEvent[handlerKey]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n}\n\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '')\n return customEvents[event] || event\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, false)\n },\n\n one(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFn) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getEvent(element)\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof originalHandler !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!events || !events[typeEvent]) {\n return\n }\n\n removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null)\n return\n }\n\n if (isNamespace) {\n Object.keys(events).forEach(elementEvent => {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n })\n }\n\n const storeElementEvent = events[typeEvent] || {}\n Object.keys(storeElementEvent).forEach(keyHandlers => {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n const event = storeElementEvent[keyHandlers]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = getTypeEvent(event)\n const inNamespace = event !== typeEvent\n const isNative = nativeEvents.has(typeEvent)\n\n let jQueryEvent\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n let evt = null\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n if (isNative) {\n evt = document.createEvent('HTMLEvents')\n evt.initEvent(typeEvent, bubbles, true)\n } else {\n evt = new CustomEvent(event, {\n bubbles,\n cancelable: true\n })\n }\n\n // merge custom information in our event\n if (typeof args !== 'undefined') {\n Object.keys(args).forEach(key => {\n Object.defineProperty(evt, key, {\n get() {\n return args[key]\n }\n })\n })\n }\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst elementMap = new Map()\n\nexport default {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map())\n }\n\n const instanceMap = elementMap.get(element)\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`)\n return\n }\n\n instanceMap.set(key, instance)\n },\n\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null\n }\n\n return null\n },\n\n remove(element, key) {\n if (!elementMap.has(element)) {\n return\n }\n\n const instanceMap = elementMap.get(element)\n\n instanceMap.delete(key)\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element)\n }\n }\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\nimport {\n executeAfterTransition,\n getElement\n} from './util/index'\nimport EventHandler from './dom/event-handler'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst VERSION = '5.0.2'\n\nclass BaseComponent {\n constructor(element) {\n element = getElement(element)\n\n if (!element) {\n return\n }\n\n this._element = element\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n Object.getOwnPropertyNames(this).forEach(propertyName => {\n this[propertyName] = null\n })\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated)\n }\n\n /** Static */\n\n static getInstance(element) {\n return Data.get(element, this.DATA_KEY)\n }\n\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DISMISS = '[data-bs-dismiss=\"alert\"]'\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_ALERT = 'alert'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n close(element) {\n const rootElement = element ? this._getRootElement(element) : this._element\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent === null || customEvent.defaultPrevented) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n // Private\n\n _getRootElement(element) {\n return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`)\n }\n\n _triggerCloseEvent(element) {\n return EventHandler.trigger(element, EVENT_CLOSE)\n }\n\n _removeElement(element) {\n element.classList.remove(CLASS_NAME_SHOW)\n\n const isAnimated = element.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(() => this._destroyElement(element), element, isAnimated)\n }\n\n _destroyElement(element) {\n element.remove()\n\n EventHandler.trigger(element, EVENT_CLOSED)\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Alert.getOrCreateInstance(this)\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert.handleDismiss(new Alert()))\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Alert to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this)\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n const data = Button.getOrCreateInstance(button)\n\n data.toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Button to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(val) {\n if (val === 'true') {\n return true\n }\n\n if (val === 'false') {\n return false\n }\n\n if (val === Number(val).toString()) {\n return Number(val)\n }\n\n if (val === '' || val === 'null') {\n return null\n }\n\n return val\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n\n Object.keys(element.dataset)\n .filter(key => key.startsWith('bs'))\n .forEach(key => {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n })\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n },\n\n offset(element) {\n const rect = element.getBoundingClientRect()\n\n return {\n top: rect.top + document.body.scrollTop,\n left: rect.left + document.body.scrollLeft\n }\n },\n\n position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n }\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n getNextActiveElement,\n reflow,\n triggerTransitionEnd,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n slide: false,\n pause: 'hover',\n wrap: true,\n touch: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)',\n keyboard: 'boolean',\n slide: '(boolean|string)',\n pause: '(string|boolean)',\n wrap: 'boolean',\n touch: 'boolean'\n}\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst KEY_TO_DIRECTION = {\n [ARROW_LEFT_KEY]: DIRECTION_RIGHT,\n [ARROW_RIGHT_KEY]: DIRECTION_LEFT\n}\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_INDICATOR = '[data-bs-target]'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n next() {\n this._slide(ORDER_NEXT)\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n this._slide(ORDER_PREV)\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) {\n triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config && this._config.interval && !this._isPaused) {\n this._updateInterval()\n\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const order = index > activeIndex ?\n ORDER_NEXT :\n ORDER_PREV\n\n this._slide(order, this._items[index])\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n this.touchDeltaX = 0\n\n if (!direction) {\n return\n }\n\n this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT)\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event))\n EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event))\n }\n\n if (this._config.touch && this._touchSupported) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n const start = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchStartX = event.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.touches[0].clientX\n }\n }\n\n const move = event => {\n // ensure swiping with one touch and not pinching\n this.touchDeltaX = event.touches && event.touches.length > 1 ?\n 0 :\n event.touches[0].clientX - this.touchStartX\n }\n\n const end = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {\n EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault())\n })\n\n if (this._pointerEvent) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n const direction = KEY_TO_DIRECTION[event.key]\n if (direction) {\n event.preventDefault()\n this._slide(direction)\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode ?\n SelectorEngine.find(SELECTOR_ITEM, element.parentNode) :\n []\n\n return this._items.indexOf(element)\n }\n\n _getItemByOrder(order, activeElement) {\n const isNext = order === ORDER_NEXT\n return getNextActiveElement(this._items, activeElement, isNext, this._config.wrap)\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element))\n\n return EventHandler.trigger(this._element, EVENT_SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement)\n\n for (let i = 0; i < indicators.length; i++) {\n if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {\n indicators[i].classList.add(CLASS_NAME_ACTIVE)\n indicators[i].setAttribute('aria-current', 'true')\n break\n }\n }\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n if (elementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = elementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n }\n\n _slide(directionOrOrder, element) {\n const order = this._directionToOrder(directionOrOrder)\n const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || this._getItemByOrder(order, activeElement)\n\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n const isNext = order === ORDER_NEXT\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n const eventDirectionName = this._orderToDirection(order)\n\n if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {\n this._isSliding = false\n return\n }\n\n if (this._isSliding) {\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n this._activeElement = nextElement\n\n const triggerSlidEvent = () => {\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }\n\n if (this._element.classList.contains(CLASS_NAME_SLIDE)) {\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n setTimeout(triggerSlidEvent, 0)\n }\n\n this._queueCallback(completeCallBack, activeElement, true)\n } else {\n activeElement.classList.remove(CLASS_NAME_ACTIVE)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n this._isSliding = false\n triggerSlidEvent()\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _directionToOrder(direction) {\n if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) {\n return direction\n }\n\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (![ORDER_NEXT, ORDER_PREV].includes(order)) {\n return order\n }\n\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n\n static carouselInterface(element, config) {\n const data = Carousel.getOrCreateInstance(element, config)\n\n let { _config } = data\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Carousel.carouselInterface(this, config)\n })\n }\n\n static dataApiClickHandler(event) {\n const target = getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel.carouselInterface(target, config)\n\n if (slideIndex) {\n Carousel.getInstance(target).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler)\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (let i = 0, len = carousels.length; i < len; i++) {\n Carousel.carouselInterface(carousels[i], Carousel.getInstance(carousels[i]))\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Carousel to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElement,\n getSelectorFromElement,\n getElementFromSelector,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n toggle: true,\n parent: ''\n}\n\nconst DefaultType = {\n toggle: 'boolean',\n parent: '(string|element)'\n}\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.show, .collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._isTransitioning = false\n this._config = this._getConfig(config)\n this._triggerArray = SelectorEngine.find(\n `${SELECTOR_DATA_TOGGLE}[href=\"#${this._element.id}\"],` +\n `${SELECTOR_DATA_TOGGLE}[data-bs-target=\"#${this._element.id}\"]`\n )\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElem => foundElem === this._element)\n\n if (selector !== null && filterElement.length) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent)\n .filter(elem => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-bs-parent') === this._config.parent\n }\n\n return elem.classList.contains(CLASS_NAME_COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n const container = SelectorEngine.findOne(this._selector)\n if (actives) {\n const tempActiveData = actives.find(elem => container !== elem)\n activesData = tempActiveData ? Collapse.getInstance(tempActiveData) : null\n\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n if (actives) {\n actives.forEach(elemActive => {\n if (container !== elemActive) {\n Collapse.collapseInterface(elemActive, 'hide')\n }\n\n if (!activesData) {\n Data.set(elemActive, DATA_KEY, null)\n }\n })\n }\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n this._triggerArray.forEach(element => {\n element.classList.remove(CLASS_NAME_COLLAPSED)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n\n this._queueCallback(complete, this._element, true)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const elem = getElementFromSelector(trigger)\n\n if (elem && !elem.classList.contains(CLASS_NAME_SHOW)) {\n trigger.classList.add(CLASS_NAME_COLLAPSED)\n trigger.setAttribute('aria-expanded', false)\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n\n this._queueCallback(complete, this._element, true)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT\n }\n\n _getParent() {\n let { parent } = this._config\n\n parent = getElement(parent)\n\n const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent=\"${parent}\"]`\n\n SelectorEngine.find(selector, parent)\n .forEach(element => {\n const selected = getElementFromSelector(element)\n\n this._addAriaAndCollapsedClass(\n selected,\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (!element || !triggerArray.length) {\n return\n }\n\n const isOpen = element.classList.contains(CLASS_NAME_SHOW)\n\n triggerArray.forEach(elem => {\n if (isOpen) {\n elem.classList.remove(CLASS_NAME_COLLAPSED)\n } else {\n elem.classList.add(CLASS_NAME_COLLAPSED)\n }\n\n elem.setAttribute('aria-expanded', isOpen)\n })\n }\n\n // Static\n\n static collapseInterface(element, config) {\n let data = Collapse.getInstance(element)\n const _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Collapse.collapseInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n const triggerData = Manipulator.getDataAttributes(this)\n const selector = getSelectorFromElement(this)\n const selectorElements = SelectorEngine.find(selector)\n\n selectorElements.forEach(element => {\n const data = Collapse.getInstance(element)\n let config\n if (data) {\n // update parent attribute\n if (data._parent === null && typeof triggerData.parent === 'string') {\n data._config.parent = triggerData.parent\n data._parent = data._getParent()\n }\n\n config = 'toggle'\n } else {\n config = triggerData\n }\n\n Collapse.collapseInterface(element, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Collapse to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Collapse)\n\nexport default Collapse\n","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export default function getBoundingClientRect(element) {\n var rect = element.getBoundingClientRect();\n return {\n width: rect.width,\n height: rect.height,\n top: rect.top,\n right: rect.right,\n bottom: rect.bottom,\n left: rect.left,\n x: rect.left,\n y: rect.top\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;\n var isIE = navigator.userAgent.indexOf('Trident') !== -1;\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport default function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport within from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n if (!isHTMLElement(arrowElement)) {\n console.error(['Popper: \"arrow\" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' '));\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: \"arrow\" modifier\\'s `element` must be a child of the popper', 'element.'].join(' '));\n }\n\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","import { top, left, right, bottom } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref) {\n var x = _ref.x,\n y = _ref.y;\n var win = window;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(round(x * dpr) / dpr) || 0,\n y: round(round(y * dpr) / dpr) || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets;\n\n var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets,\n _ref3$x = _ref3.x,\n x = _ref3$x === void 0 ? 0 : _ref3$x,\n _ref3$y = _ref3.y,\n y = _ref3$y === void 0 ? 0 : _ref3$y;\n\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top) {\n sideY = bottom; // $FlowFixMe[prop-missing]\n\n y -= offsetParent[heightProp] - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left) {\n sideX = right; // $FlowFixMe[prop-missing]\n\n x -= offsetParent[widthProp] - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref4) {\n var state = _ref4.state,\n options = _ref4.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n\n if (process.env.NODE_ENV !== \"production\") {\n var transitionProperty = getComputedStyle(state.elements.popper).transitionProperty || '';\n\n if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {\n return transitionProperty.indexOf(property) >= 0;\n })) {\n console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: \"transform\", \"top\", \"right\", \"bottom\", \"left\".', '\\n\\n', 'Disable the \"computeStyles\" modifier\\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\\n\\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));\n }\n }\n\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If <html> has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on <html>\n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element) {\n var rect = getBoundingClientRect(element);\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nexport default function getViewportRect(element) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper\n // can be obscured underneath it.\n // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even\n // if it isn't open, so if this isn't available, the popper will be detected\n // to overflow the bottom of the screen too early.\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently)\n // In Chrome, it returns a value very close to 0 (+/-) but contains rounding\n // errors due to floating point numbers, so we need to check precision.\n // Safari returns a number <= 0, usually < -1 when pinch-zoomed\n // Feature detection fails in mobile emulation mode in Chrome.\n // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) <\n // 0.001\n // Fallback here: \"Not Safari\" userAgent\n\n if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var referenceElement = state.elements.reference;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);\n var referenceClientRect = getBoundingClientRect(referenceElement);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, \"auto\" cannot be used to allow \"bottom-start\".', 'Use \"auto-start\" instead.'].join(' '));\n }\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\";\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport within from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { max as mathMax, min as mathMin } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis || checkAltAxis) {\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = popperOffsets[mainAxis] + overflow[mainSide];\n var max = popperOffsets[mainAxis] - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0;\n var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue;\n\n if (checkMainAxis) {\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var _preventedOffset = within(tether ? mathMin(_min, tetherMin) : _min, _offset, tether ? mathMax(_max, tetherMax) : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\"; // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement);\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","export default function format(str) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return [].concat(args).reduce(function (p, c) {\n return p.replace(/%s/, c);\n }, str);\n}","import format from \"./format.js\";\nimport { modifierPhases } from \"../enums.js\";\nvar INVALID_MODIFIER_ERROR = 'Popper: modifier \"%s\" provided an invalid %s property, expected %s but got %s';\nvar MISSING_DEPENDENCY_ERROR = 'Popper: modifier \"%s\" requires \"%s\", but \"%s\" modifier is not available';\nvar VALID_PROPERTIES = ['name', 'enabled', 'phase', 'fn', 'effect', 'requires', 'options'];\nexport default function validateModifiers(modifiers) {\n modifiers.forEach(function (modifier) {\n Object.keys(modifier).forEach(function (key) {\n switch (key) {\n case 'name':\n if (typeof modifier.name !== 'string') {\n console.error(format(INVALID_MODIFIER_ERROR, String(modifier.name), '\"name\"', '\"string\"', \"\\\"\" + String(modifier.name) + \"\\\"\"));\n }\n\n break;\n\n case 'enabled':\n if (typeof modifier.enabled !== 'boolean') {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"enabled\"', '\"boolean\"', \"\\\"\" + String(modifier.enabled) + \"\\\"\"));\n }\n\n case 'phase':\n if (modifierPhases.indexOf(modifier.phase) < 0) {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"phase\"', \"either \" + modifierPhases.join(', '), \"\\\"\" + String(modifier.phase) + \"\\\"\"));\n }\n\n break;\n\n case 'fn':\n if (typeof modifier.fn !== 'function') {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"fn\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n }\n\n break;\n\n case 'effect':\n if (typeof modifier.effect !== 'function') {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"effect\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n }\n\n break;\n\n case 'requires':\n if (!Array.isArray(modifier.requires)) {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requires\"', '\"array\"', \"\\\"\" + String(modifier.requires) + \"\\\"\"));\n }\n\n break;\n\n case 'requiresIfExists':\n if (!Array.isArray(modifier.requiresIfExists)) {\n console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requiresIfExists\"', '\"array\"', \"\\\"\" + String(modifier.requiresIfExists) + \"\\\"\"));\n }\n\n break;\n\n case 'options':\n case 'data':\n break;\n\n default:\n console.error(\"PopperJS: an invalid property has been provided to the \\\"\" + modifier.name + \"\\\" modifier, valid properties are \" + VALID_PROPERTIES.map(function (s) {\n return \"\\\"\" + s + \"\\\"\";\n }).join(', ') + \"; but \\\"\" + key + \"\\\" was provided.\");\n }\n\n modifier.requires && modifier.requires.forEach(function (requirement) {\n if (modifiers.find(function (mod) {\n return mod.name === requirement;\n }) == null) {\n console.error(format(MISSING_DEPENDENCY_ERROR, String(modifier.name), requirement, requirement));\n }\n });\n });\n });\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport getComputedStyle from \"./dom-utils/getComputedStyle.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport validateModifiers from \"./utils/validateModifiers.js\";\nimport uniqueBy from \"./utils/uniqueBy.js\";\nimport getBasePlacement from \"./utils/getBasePlacement.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nimport { auto } from \"./enums.js\";\nvar INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';\nvar INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(options) {\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n }); // Validate the provided modifiers so that the consumer will get warned\n // if one of the modifiers is invalid for any reason\n\n if (process.env.NODE_ENV !== \"production\") {\n var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {\n var name = _ref.name;\n return name;\n });\n validateModifiers(modifiers);\n\n if (getBasePlacement(state.options.placement) === auto) {\n var flipModifier = state.orderedModifiers.find(function (_ref2) {\n var name = _ref2.name;\n return name === 'flip';\n });\n\n if (!flipModifier) {\n console.error(['Popper: \"auto\" placements require the \"flip\" modifier be', 'present and enabled to work.'].join(' '));\n }\n }\n\n var _getComputedStyle = getComputedStyle(popper),\n marginTop = _getComputedStyle.marginTop,\n marginRight = _getComputedStyle.marginRight,\n marginBottom = _getComputedStyle.marginBottom,\n marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can\n // cause bugs with positioning, so we'll warn the consumer\n\n\n if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {\n return parseFloat(margin);\n })) {\n console.warn(['Popper: CSS \"margin\" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));\n }\n }\n\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n var __debug_loops__ = 0;\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (process.env.NODE_ENV !== \"production\") {\n __debug_loops__ += 1;\n\n if (__debug_loops__ > 100) {\n console.error(INFINITE_LOOP_ERROR);\n break;\n }\n }\n\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref3) {\n var name = _ref3.name,\n _ref3$options = _ref3.options,\n options = _ref3$options === void 0 ? {} : _ref3$options,\n effect = _ref3.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","export default function uniqueBy(arr, fn) {\n var identifiers = new Set();\n return arr.filter(function (item) {\n var identifier = fn(item);\n\n if (!identifiers.has(identifier)) {\n identifiers.add(identifier);\n return true;\n }\n });\n}","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n getElement,\n getElementFromSelector,\n isDisabled,\n isElement,\n isVisible,\n isRTL,\n noop,\n getNextActiveElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst SPACE_KEY = 'Space'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY}`)\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_NAVBAR = 'navbar'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]'\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'\n\nconst Default = {\n offset: [0, 2],\n boundary: 'clippingParents',\n reference: 'toggle',\n display: 'dynamic',\n popperConfig: null,\n autoClose: true\n}\n\nconst DefaultType = {\n offset: '(array|string|function)',\n boundary: '(string|element)',\n reference: '(string|element|object)',\n display: 'string',\n popperConfig: '(null|object|function)',\n autoClose: '(boolean|string)'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (isDisabled(this._element)) {\n return\n }\n\n const isActive = this._element.classList.contains(CLASS_NAME_SHOW)\n\n if (isActive) {\n this.hide()\n return\n }\n\n this.show()\n }\n\n show() {\n if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this._element)\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n // Totally disable Popper for Dropdowns in Navbar\n if (this._inNavbar) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'none')\n } else {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference)\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false)\n\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n\n if (isDisplayStatic) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static')\n }\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n !parent.closest(SELECTOR_NAVBAR_NAV)) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.on(elem, 'mouseover', noop))\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.toggle(CLASS_NAME_SHOW)\n this._element.classList.toggle(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n this._completeHide(relatedTarget)\n }\n\n dispose() {\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK, event => {\n event.preventDefault()\n this.toggle()\n })\n }\n\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.off(elem, 'mouseover', noop))\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.remove(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._element.setAttribute('aria-expanded', 'false')\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _getMenuElement() {\n return SelectorEngine.next(this._element, SELECTOR_MENU)[0]\n }\n\n _getPlacement() {\n const parentDropdown = this._element.parentNode\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display\n if (this._config.display === 'static') {\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _selectMenuItem({ key, target }) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible)\n\n if (!items.length) {\n return\n }\n\n // if target isn't included in items (e.g. when expanding the dropdown)\n // allow cycling to get the last item in case key equals ARROW_UP_KEY\n getNextActiveElement(items, target, key === ARROW_DOWN_KEY, !items.includes(target)).focus()\n }\n\n // Static\n\n static dropdownInterface(element, config) {\n const data = Dropdown.getOrCreateInstance(element, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Dropdown.dropdownInterface(this, config)\n })\n }\n\n static clearMenus(event) {\n if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {\n return\n }\n\n const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const context = Dropdown.getInstance(toggles[i])\n if (!context || context._config.autoClose === false) {\n continue\n }\n\n if (!context._element.classList.contains(CLASS_NAME_SHOW)) {\n continue\n }\n\n const relatedTarget = {\n relatedTarget: context._element\n }\n\n if (event) {\n const composedPath = event.composedPath()\n const isMenuTarget = composedPath.includes(context._menu)\n if (\n composedPath.includes(context._element) ||\n (context._config.autoClose === 'inside' && !isMenuTarget) ||\n (context._config.autoClose === 'outside' && isMenuTarget)\n ) {\n continue\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue\n }\n\n if (event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n }\n\n context._completeHide(relatedTarget)\n }\n }\n\n static getParentFromElement(element) {\n return getElementFromSelector(element) || element.parentNode\n }\n\n static dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName) ?\n event.key === SPACE_KEY || (event.key !== ESCAPE_KEY &&\n ((event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY) ||\n event.target.closest(SELECTOR_MENU))) :\n !REGEXP_KEYDOWN.test(event.key)) {\n return\n }\n\n const isActive = this.classList.contains(CLASS_NAME_SHOW)\n\n if (!isActive && event.key === ESCAPE_KEY) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (isDisabled(this)) {\n return\n }\n\n const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n\n if (event.key === ESCAPE_KEY) {\n getToggleButton().focus()\n Dropdown.clearMenus()\n return\n }\n\n if (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY) {\n if (!isActive) {\n getToggleButton().click()\n }\n\n Dropdown.getInstance(getToggleButton())._selectMenuItem(event)\n return\n }\n\n if (!isActive || event.key === SPACE_KEY) {\n Dropdown.clearMenus()\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n Dropdown.dropdownInterface(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Dropdown to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport SelectorEngine from '../dom/selector-engine'\nimport Manipulator from '../dom/manipulator'\nimport { isElement } from './index'\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\n\nclass ScrollBarHelper {\n constructor() {\n this._element = document.body\n }\n\n getWidth() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth\n return Math.abs(window.innerWidth - documentWidth)\n }\n\n hide() {\n const width = this.getWidth()\n this._disableOverFlow()\n // give padding to element to balance the hidden scrollbar width\n this._setElementAttributes(this._element, 'paddingRight', calculatedValue => calculatedValue + width)\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth\n this._setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width)\n this._setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width)\n }\n\n _disableOverFlow() {\n this._saveInitialAttribute(this._element, 'overflow')\n this._element.style.overflow = 'hidden'\n }\n\n _setElementAttributes(selector, styleProp, callback) {\n const scrollbarWidth = this.getWidth()\n const manipulationCallBack = element => {\n if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return\n }\n\n this._saveInitialAttribute(element, styleProp)\n const calculatedValue = window.getComputedStyle(element)[styleProp]\n element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n reset() {\n this._resetElementAttributes(this._element, 'overflow')\n this._resetElementAttributes(this._element, 'paddingRight')\n this._resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight')\n this._resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight')\n }\n\n _saveInitialAttribute(element, styleProp) {\n const actualValue = element.style[styleProp]\n if (actualValue) {\n Manipulator.setDataAttribute(element, styleProp, actualValue)\n }\n }\n\n _resetElementAttributes(selector, styleProp) {\n const manipulationCallBack = element => {\n const value = Manipulator.getDataAttribute(element, styleProp)\n if (typeof value === 'undefined') {\n element.style.removeProperty(styleProp)\n } else {\n Manipulator.removeDataAttribute(element, styleProp)\n element.style[styleProp] = value\n }\n }\n\n this._applyManipulationCallback(selector, manipulationCallBack)\n }\n\n _applyManipulationCallback(selector, callBack) {\n if (isElement(selector)) {\n callBack(selector)\n } else {\n SelectorEngine.find(selector, this._element).forEach(callBack)\n }\n }\n\n isOverflowing() {\n return this.getWidth() > 0\n }\n}\n\nexport default ScrollBarHelper\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { execute, executeAfterTransition, getElement, reflow, typeCheckConfig } from './index'\n\nconst Default = {\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n isAnimated: false,\n rootElement: 'body', // give the choice to place backdrop under different elements\n clickCallback: null\n}\n\nconst DefaultType = {\n isVisible: 'boolean',\n isAnimated: 'boolean',\n rootElement: '(element|string)',\n clickCallback: '(function|null)'\n}\nconst NAME = 'backdrop'\nconst CLASS_NAME_BACKDROP = 'modal-backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nclass Backdrop {\n constructor(config) {\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\n }\n\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n if (this._config.isAnimated) {\n reflow(this._getElement())\n }\n\n this._getElement().classList.add(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n execute(callback)\n })\n }\n\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._getElement().classList.remove(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n this.dispose()\n execute(callback)\n })\n }\n\n // Private\n\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div')\n backdrop.className = CLASS_NAME_BACKDROP\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE)\n }\n\n this._element = backdrop\n }\n\n return this._element\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' ? config : {})\n }\n\n // use getElement() with the default \"body\" to get a fresh Element on each instantiation\n config.rootElement = getElement(config.rootElement)\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n this._config.rootElement.appendChild(this._getElement())\n\n EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n dispose() {\n if (!this._isAppended) {\n return\n }\n\n EventHandler.off(this._element, EVENT_MOUSEDOWN)\n\n this._element.remove()\n this._isAppended = false\n }\n\n _emulateAnimation(callback) {\n executeAfterTransition(callback, this._getElement(), this._config.isAnimated)\n }\n}\n\nexport default Backdrop\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport ScrollBarHelper from './util/scrollbar'\nimport BaseComponent from './base-component'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean'\n}\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"modal\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element)\n this._backdrop = this._initializeBackDrop()\n this._isShown = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollBar = new ScrollBarHelper()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n\n if (this._isAnimated()) {\n this._isTransitioning = true\n }\n\n this._scrollBar.hide()\n\n document.body.classList.add(CLASS_NAME_OPEN)\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, event => this.hide(event))\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event && ['A', 'AREA'].includes(event.target.tagName)) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n const isAnimated = this._isAnimated()\n\n if (isAnimated) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.off(document, EVENT_FOCUSIN)\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS)\n\n this._queueCallback(() => this._hideModal(), this._element, isAnimated)\n }\n\n dispose() {\n [window, this._dialog]\n .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))\n\n this._backdrop.dispose()\n super.dispose()\n\n /**\n * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `EVENT_CLICK_DATA_API` event that should remain\n */\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value\n isAnimated: this._isAnimated()\n })\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const isAnimated = this._isAnimated()\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n if (isAnimated) {\n reflow(this._element)\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, isAnimated)\n }\n\n _enforceFocus() {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n this._element !== event.target &&\n !this._element.contains(event.target)) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault()\n this.hide()\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition()\n }\n })\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog())\n } else {\n EventHandler.off(window, EVENT_RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n this._scrollBar.reset()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _showBackdrop(callback) {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, event => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n\n if (event.target !== event.currentTarget) {\n return\n }\n\n if (this._config.backdrop === true) {\n this.hide()\n } else if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n }\n })\n\n this._backdrop.show(callback)\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE)\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const { classList, scrollHeight, style } = this._element\n const isModalOverflowing = scrollHeight > document.documentElement.clientHeight\n\n // return if the following background transition hasn't yet completed\n if ((!isModalOverflowing && style.overflowY === 'hidden') || classList.contains(CLASS_NAME_STATIC)) {\n return\n }\n\n if (!isModalOverflowing) {\n style.overflowY = 'hidden'\n }\n\n classList.add(CLASS_NAME_STATIC)\n this._queueCallback(() => {\n classList.remove(CLASS_NAME_STATIC)\n if (!isModalOverflowing) {\n this._queueCallback(() => {\n style.overflowY = ''\n }, this._dialog)\n }\n }, this._dialog)\n\n this._element.focus()\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const scrollbarWidth = this._scrollBar.getWidth()\n const isBodyOverflowing = scrollbarWidth > 0\n\n if ((!isBodyOverflowing && isModalOverflowing && !isRTL()) || (isBodyOverflowing && !isModalOverflowing && isRTL())) {\n this._element.style.paddingLeft = `${scrollbarWidth}px`\n }\n\n if ((isBodyOverflowing && !isModalOverflowing && !isRTL()) || (!isBodyOverflowing && isModalOverflowing && isRTL())) {\n this._element.style.paddingRight = `${scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n const data = Modal.getOrCreateInstance(target)\n\n data.toggle(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible,\n typeCheckConfig\n} from './util/index'\nimport ScrollBarHelper from './util/scrollbar'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Manipulator from './dom/manipulator'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: 'boolean',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\nconst CLASS_NAME_SHOW = 'show'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"offcanvas\"]'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._addEventListeners()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._element.style.visibility = 'visible'\n\n this._backdrop.show()\n\n if (!this._config.scroll) {\n new ScrollBarHelper().hide()\n this._enforceFocusOnElement(this._element)\n }\n\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const completeCallBack = () => {\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n EventHandler.off(document, EVENT_FOCUSIN)\n this._element.blur()\n this._isShown = false\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._element.style.visibility = 'hidden'\n\n if (!this._config.scroll) {\n new ScrollBarHelper().reset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n super.dispose()\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: this._config.backdrop,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _enforceFocusOnElement(element) {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n element !== event.target &&\n !element.contains(event.target)) {\n element.focus()\n }\n })\n element.focus()\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n this.hide()\n }\n })\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Offcanvas.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (allReadyOpen && allReadyOpen !== target) {\n Offcanvas.getInstance(allReadyOpen).hide()\n }\n\n const data = Offcanvas.getOrCreateInstance(target)\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () =>\n SelectorEngine.find(OPEN_SELECTOR).forEach(el => Offcanvas.getOrCreateInstance(el).show())\n)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attr, allowedAttributeList) => {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attrName)) {\n if (uriAttrs.has(attrName)) {\n return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attrName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const allowlistKeys = Object.keys(allowList)\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (!allowlistKeys.includes(elName)) {\n el.remove()\n\n continue\n }\n\n const attributeList = [].concat(...el.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || [])\n\n attributeList.forEach(attr => {\n if (!allowedAttribute(attr, allowedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport {\n DefaultAllowlist,\n sanitizeHtml\n} from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this.tip) {\n this.tip.remove()\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.appendChild(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW) {\n tip.remove()\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n this.tip = element.children[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle())\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.appendChild(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n let title = this._element.getAttribute('data-bs-original-title')\n\n if (!title) {\n title = typeof this._config.title === 'function' ?\n this._config.title.call(this._element) :\n this._config.title\n }\n\n return title\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || Data.get(event.delegateTarget, dataKey)\n\n if (!context) {\n context = new this.constructor(event.delegateTarget, this._getDelegateConfig())\n Data.set(event.delegateTarget, dataKey, context)\n }\n\n return context\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this._config) {\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tooltip.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport SelectorEngine from './dom/selector-engine'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement: 'right',\n offset: [0, 8],\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(string|element|function)'\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n this.tip = super.getTipElement()\n\n if (!this.getTitle()) {\n SelectorEngine.findOne(SELECTOR_TITLE, this.tip).remove()\n }\n\n if (!this._getContent()) {\n SelectorEngine.findOne(SELECTOR_CONTENT, this.tip).remove()\n }\n\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n\n // we use append for html objects to maintain js events\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this._element)\n }\n\n this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n // Private\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getContent() {\n return this._element.getAttribute('data-bs-content') || this._config.content\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Popover.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Popover to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getSelectorFromElement,\n getUID,\n isElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n offset: 10,\n method: 'auto',\n target: ''\n}\n\nconst DefaultType = {\n offset: 'number',\n method: 'string',\n target: '(string|element)'\n}\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._scrollElement = this._element.tagName === 'BODY' ? window : this._element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${SELECTOR_NAV_LINKS}, ${this._config.target} ${SELECTOR_LIST_ITEMS}, ${this._config.target} .${CLASS_NAME_DROPDOWN_ITEM}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n EventHandler.on(this._scrollElement, EVENT_SCROLL, () => this._process())\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window ?\n METHOD_OFFSET :\n METHOD_POSITION\n\n const offsetMethod = this._config.method === 'auto' ?\n autoMethod :\n this._config.method\n\n const offsetBase = offsetMethod === METHOD_POSITION ?\n this._getScrollTop() :\n 0\n\n this._offsets = []\n this._targets = []\n this._scrollHeight = this._getScrollHeight()\n\n const targets = SelectorEngine.find(this._selector)\n\n targets.map(element => {\n const targetSelector = getSelectorFromElement(element)\n const target = targetSelector ? SelectorEngine.findOne(targetSelector) : null\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n return [\n Manipulator[offsetMethod](target).top + offsetBase,\n targetSelector\n ]\n }\n }\n\n return null\n })\n .filter(item => item)\n .sort((a, b) => a[0] - b[0])\n .forEach(item => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n EventHandler.off(this._scrollElement, EVENT_KEY)\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (typeof config.target !== 'string' && isElement(config.target)) {\n let { id } = config.target\n if (!id) {\n id = getUID(NAME)\n config.target.id = id\n }\n\n config.target = `#${id}`\n }\n\n typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window ?\n this._scrollElement.pageYOffset :\n this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window ?\n window.innerHeight :\n this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n for (let i = this._offsets.length; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = this._selector.split(',')\n .map(selector => `${selector}[data-bs-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const link = SelectorEngine.findOne(queries.join(','))\n\n if (link.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {\n SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE, link.closest(SELECTOR_DROPDOWN))\n .classList.add(CLASS_NAME_ACTIVE)\n\n link.classList.add(CLASS_NAME_ACTIVE)\n } else {\n // Set triggered link as active\n link.classList.add(CLASS_NAME_ACTIVE)\n\n SelectorEngine.parents(link, SELECTOR_NAV_LIST_GROUP)\n .forEach(listGroup => {\n // Set triggered links parents as active\n // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor\n SelectorEngine.prev(listGroup, `${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n\n // Handle special case when .nav-link is inside .nav-item\n SelectorEngine.prev(listGroup, SELECTOR_NAV_ITEMS)\n .forEach(navItem => {\n SelectorEngine.children(navItem, SELECTOR_NAV_LINKS)\n .forEach(item => item.classList.add(CLASS_NAME_ACTIVE))\n })\n })\n }\n\n EventHandler.trigger(this._scrollElement, EVENT_ACTIVATE, {\n relatedTarget: target\n })\n }\n\n _clear() {\n SelectorEngine.find(this._selector)\n .filter(node => node.classList.contains(CLASS_NAME_ACTIVE))\n .forEach(node => node.classList.remove(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = ScrollSpy.getOrCreateInstance(this, config)\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n SelectorEngine.find(SELECTOR_DATA_SPY)\n .forEach(spy => new ScrollSpy(spy))\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .ScrollSpy to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(ScrollSpy)\n\nexport default ScrollSpy\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): tab.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n reflow\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tab'\nconst DATA_KEY = 'bs.tab'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_MENU = 'dropdown-menu'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_UL = ':scope > li > .active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"tab\"], [data-bs-toggle=\"pill\"], [data-bs-toggle=\"list\"]'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\nconst SELECTOR_DROPDOWN_ACTIVE_CHILD = ':scope > .dropdown-menu .active'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tab extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n if ((this._element.parentNode &&\n this._element.parentNode.nodeType === Node.ELEMENT_NODE &&\n this._element.classList.contains(CLASS_NAME_ACTIVE))) {\n return\n }\n\n let previous\n const target = getElementFromSelector(this._element)\n const listElement = this._element.closest(SELECTOR_NAV_LIST_GROUP)\n\n if (listElement) {\n const itemSelector = listElement.nodeName === 'UL' || listElement.nodeName === 'OL' ? SELECTOR_ACTIVE_UL : SELECTOR_ACTIVE\n previous = SelectorEngine.find(itemSelector, listElement)\n previous = previous[previous.length - 1]\n }\n\n const hideEvent = previous ?\n EventHandler.trigger(previous, EVENT_HIDE, {\n relatedTarget: this._element\n }) :\n null\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget: previous\n })\n\n if (showEvent.defaultPrevented || (hideEvent !== null && hideEvent.defaultPrevented)) {\n return\n }\n\n this._activate(this._element, listElement)\n\n const complete = () => {\n EventHandler.trigger(previous, EVENT_HIDDEN, {\n relatedTarget: this._element\n })\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget: previous\n })\n }\n\n if (target) {\n this._activate(target, target.parentNode, complete)\n } else {\n complete()\n }\n }\n\n // Private\n\n _activate(element, container, callback) {\n const activeElements = container && (container.nodeName === 'UL' || container.nodeName === 'OL') ?\n SelectorEngine.find(SELECTOR_ACTIVE_UL, container) :\n SelectorEngine.children(container, SELECTOR_ACTIVE)\n\n const active = activeElements[0]\n const isTransitioning = callback && (active && active.classList.contains(CLASS_NAME_FADE))\n\n const complete = () => this._transitionComplete(element, active, callback)\n\n if (active && isTransitioning) {\n active.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, element, true)\n } else {\n complete()\n }\n }\n\n _transitionComplete(element, active, callback) {\n if (active) {\n active.classList.remove(CLASS_NAME_ACTIVE)\n\n const dropdownChild = SelectorEngine.findOne(SELECTOR_DROPDOWN_ACTIVE_CHILD, active.parentNode)\n\n if (dropdownChild) {\n dropdownChild.classList.remove(CLASS_NAME_ACTIVE)\n }\n\n if (active.getAttribute('role') === 'tab') {\n active.setAttribute('aria-selected', false)\n }\n }\n\n element.classList.add(CLASS_NAME_ACTIVE)\n if (element.getAttribute('role') === 'tab') {\n element.setAttribute('aria-selected', true)\n }\n\n reflow(element)\n\n if (element.classList.contains(CLASS_NAME_FADE)) {\n element.classList.add(CLASS_NAME_SHOW)\n }\n\n let parent = element.parentNode\n if (parent && parent.nodeName === 'LI') {\n parent = parent.parentNode\n }\n\n if (parent && parent.classList.contains(CLASS_NAME_DROPDOWN_MENU)) {\n const dropdownElement = element.closest(SELECTOR_DROPDOWN)\n\n if (dropdownElement) {\n SelectorEngine.find(SELECTOR_DROPDOWN_TOGGLE, dropdownElement)\n .forEach(dropdown => dropdown.classList.add(CLASS_NAME_ACTIVE))\n }\n\n element.setAttribute('aria-expanded', true)\n }\n\n if (callback) {\n callback()\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Tab.getOrCreateInstance(this)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n const data = Tab.getOrCreateInstance(this)\n data.show()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tab to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tab)\n\nexport default Tab\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.2): toast.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'toast'\nconst DATA_KEY = 'bs.toast'\nconst EVENT_KEY = `.${DATA_KEY}`\n\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`\nconst EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_FOCUSOUT = `focusout${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_HIDE = 'hide'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_SHOWING = 'showing'\n\nconst DefaultType = {\n animation: 'boolean',\n autohide: 'boolean',\n delay: 'number'\n}\n\nconst Default = {\n animation: true,\n autohide: true,\n delay: 5000\n}\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"toast\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Toast extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._timeout = null\n this._hasMouseInteraction = false\n this._hasKeyboardInteraction = false\n this._setListeners()\n }\n\n // Getters\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n show() {\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._clearTimeout()\n\n if (this._config.animation) {\n this._element.classList.add(CLASS_NAME_FADE)\n }\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_SHOWING)\n this._element.classList.add(CLASS_NAME_SHOW)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n\n this._maybeScheduleHide()\n }\n\n this._element.classList.remove(CLASS_NAME_HIDE)\n reflow(this._element)\n this._element.classList.add(CLASS_NAME_SHOWING)\n\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n hide() {\n if (!this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const complete = () => {\n this._element.classList.add(CLASS_NAME_HIDE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._queueCallback(complete, this._element, this._config.animation)\n }\n\n dispose() {\n this._clearTimeout()\n\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this._element.classList.remove(CLASS_NAME_SHOW)\n }\n\n super.dispose()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n return config\n }\n\n _maybeScheduleHide() {\n if (!this._config.autohide) {\n return\n }\n\n if (this._hasMouseInteraction || this._hasKeyboardInteraction) {\n return\n }\n\n this._timeout = setTimeout(() => {\n this.hide()\n }, this._config.delay)\n }\n\n _onInteraction(event, isInteracting) {\n switch (event.type) {\n case 'mouseover':\n case 'mouseout':\n this._hasMouseInteraction = isInteracting\n break\n case 'focusin':\n case 'focusout':\n this._hasKeyboardInteraction = isInteracting\n break\n default:\n break\n }\n\n if (isInteracting) {\n this._clearTimeout()\n return\n }\n\n const nextElement = event.relatedTarget\n if (this._element === nextElement || this._element.contains(nextElement)) {\n return\n }\n\n this._maybeScheduleHide()\n }\n\n _setListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false))\n EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true))\n EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false))\n }\n\n _clearTimeout() {\n clearTimeout(this._timeout)\n this._timeout = null\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Toast.getOrCreateInstance(this, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Toast to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Toast)\n\nexport default Toast\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): index.umd.js\n * Licensed under MIT (https:/github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Alert from \"@openeuropa/bcl-bootstrap/js/src/alert\";\nimport Button from \"@openeuropa/bcl-bootstrap/js/src/button\";\nimport Carousel from \"@openeuropa/bcl-bootstrap/js/src/carousel\";\nimport Collapse from \"@openeuropa/bcl-bootstrap/js/src/collapse\";\nimport Dropdown from \"@openeuropa/bcl-bootstrap/js/src/dropdown\";\nimport Modal from \"@openeuropa/bcl-bootstrap/js/src/modal\";\nimport Offcanvas from \"@openeuropa/bcl-bootstrap/js/src/offcanvas\";\nimport Popover from \"@openeuropa/bcl-bootstrap/js/src/popover\";\nimport ScrollSpy from \"@openeuropa/bcl-bootstrap/js/src/scrollspy\";\nimport Tab from \"@openeuropa/bcl-bootstrap/js/src/tab\";\nimport Toast from \"@openeuropa/bcl-bootstrap/js/src/toast\";\nimport Tooltip from \"@openeuropa/bcl-bootstrap/js/src/tooltip\";\n\nexport default {\n Alert,\n Button,\n Carousel,\n Collapse,\n Dropdown,\n Modal,\n Offcanvas,\n Popover,\n ScrollSpy,\n Tab,\n Toast,\n Tooltip,\n};\n"],"names":["SelectorEngine","find","selector","element","document","documentElement","concat","Element","prototype","querySelectorAll","call","findOne","querySelector","children","filter","child","matches","parents","ancestor","parentNode","nodeType","Node","ELEMENT_NODE","push","prev","previous","previousElementSibling","next","nextElementSibling","TRANSITION_END","getUID","prefix","Math","floor","random","getElementById","getSelector","getAttribute","hrefAttr","includes","startsWith","split","trim","getSelectorFromElement","getElementFromSelector","triggerTransitionEnd","dispatchEvent","Event","isElement","obj","jquery","getElement","length","typeCheckConfig","componentName","config","configTypes","Object","keys","forEach","property","expectedTypes","value","valueType","toString","match","toLowerCase","RegExp","test","TypeError","toUpperCase","isVisible","getClientRects","getComputedStyle","getPropertyValue","isDisabled","classList","contains","disabled","hasAttribute","findShadowRoot","attachShadow","getRootNode","root","ShadowRoot","noop","reflow","offsetHeight","getjQuery","jQuery","window","body","DOMContentLoadedCallbacks","isRTL","dir","defineJQueryPlugin","plugin","callback","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","readyState","addEventListener","execute","executeAfterTransition","transitionElement","waitForTransition","emulatedDuration","transitionDuration","transitionDelay","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","getTransitionDurationFromElement","called","handler","target","removeEventListener","setTimeout","getNextActiveElement","list","activeElement","shouldGetNext","isCycleAllowed","index","indexOf","listLength","max","min","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","customEventsRegex","nativeEvents","Set","getUidEvent","uid","getEvent","findHandler","events","delegationSelector","uidEventList","i","len","event","originalHandler","normalizeParams","originalTypeEvent","delegationFn","delegation","typeEvent","getTypeEvent","has","addHandler","oneOff","wrapFn","relatedTarget","delegateTarget","this","handlers","previousFn","replace","domElements","EventHandler","off","type","apply","bootstrapDelegationHandler","bootstrapHandler","removeHandler","Boolean","on","one","inNamespace","isNamespace","elementEvent","namespace","storeElementEvent","handlerKey","removeNamespacedHandlers","slice","keyHandlers","trigger","args","isNative","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","evt","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","createEvent","initEvent","CustomEvent","cancelable","key","defineProperty","get","preventDefault","elementMap","Map","set","instance","instanceMap","size","console","error","Array","from","remove","delete","BaseComponent","constructor","_element","Data","DATA_KEY","dispose","EVENT_KEY","getOwnPropertyNames","propertyName","_queueCallback","isAnimated","getInstance","Error","Alert","close","rootElement","_getRootElement","customEvent","_triggerCloseEvent","_removeElement","closest","_destroyElement","each","data","getOrCreateInstance","alertInstance","handleDismiss","SELECTOR_DATA_TOGGLE","Button","toggle","setAttribute","normalizeData","val","normalizeDataKey","chr","button","Manipulator","setDataAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","dataset","pureKey","charAt","getDataAttribute","offset","rect","getBoundingClientRect","top","scrollTop","left","scrollLeft","position","offsetTop","offsetLeft","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","KEY_TO_DIRECTION","EVENT_SLID","CLASS_NAME_ACTIVE","SELECTOR_ACTIVE_ITEM","POINTER_TYPE_TOUCH","Carousel","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","PointerEvent","_addEventListeners","_slide","nextWhenVisible","hidden","cycle","clearInterval","_updateInterval","setInterval","visibilityState","bind","to","activeIndex","_getItemIndex","order","_handleSwipe","absDeltax","abs","direction","_keydown","_addTouchEventListeners","start","pointerType","touches","clientX","move","end","clearTimeout","itemImg","e","add","tagName","_getItemByOrder","isNext","_triggerSlideEvent","eventDirectionName","targetIndex","fromIndex","_setActiveIndicatorElement","activeIndicator","indicators","parseInt","elementInterval","defaultInterval","directionOrOrder","_directionToOrder","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","_orderToDirection","triggerSlidEvent","completeCallBack","action","ride","carouselInterface","slideIndex","dataApiClickHandler","carousels","parent","CLASS_NAME_SHOW","CLASS_NAME_COLLAPSE","CLASS_NAME_COLLAPSING","CLASS_NAME_COLLAPSED","WIDTH","Collapse","_isTransitioning","_triggerArray","id","toggleList","elem","filterElement","foundElem","_selector","_parent","_getParent","_addAriaAndCollapsedClass","hide","show","actives","activesData","container","tempActiveData","elemActive","collapseInterface","dimension","_getDimension","style","setTransitioning","scrollSize","triggerArrayLength","isTransitioning","selected","triggerArray","isOpen","triggerData","bottom","right","auto","basePlacements","clippingParents","viewport","popper","reference","variationPlacements","reduce","acc","placement","placements","beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite","modifierPhases","getNodeName","nodeName","getWindow","node","ownerDocument","defaultView","isHTMLElement","HTMLElement","isShadowRoot","enabled","phase","_ref","state","elements","styles","assign","effect","_ref2","initialStyles","options","strategy","margin","arrow","hasOwnProperty","attribute","requires","getBasePlacement","width","height","x","y","getLayoutRect","clientRect","offsetWidth","rootNode","isSameNode","host","isTableElement","getDocumentElement","getParentNode","assignedSlot","getTrueOffsetParent","offsetParent","getOffsetParent","isFirefox","userAgent","currentNode","css","transform","perspective","contain","willChange","getContainingBlock","getMainAxisFromPlacement","round","within","mathMax","mathMin","mergePaddingObject","paddingObject","expandToHashMap","hashMap","_state$modifiersData$","arrowElement","popperOffsets","modifiersData","basePlacement","axis","padding","rects","toPaddingObject","arrowRect","minProp","maxProp","endDiff","startDiff","arrowOffsetParent","clientSize","clientHeight","clientWidth","centerToReference","center","axisProp","centerOffset","_options$element","process","env","NODE_ENV","join","requiresIfExists","unsetSides","mapToStyles","_Object$assign2","popperRect","offsets","gpuAcceleration","adaptive","roundOffsets","_ref3","dpr","devicePixelRatio","roundOffsetsByDPR","_ref3$x","_ref3$y","hasX","hasY","sideX","sideY","win","heightProp","widthProp","_Object$assign","commonStyles","_ref4","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","transitionProperty","some","warn","passive","_options$scroll","scroll","_options$resize","resize","scrollParents","scrollParent","update","hash","getOppositePlacement","matched","getOppositeVariationPlacement","getWindowScroll","pageXOffset","pageYOffset","getWindowScrollBarX","isScrollParent","_getComputedStyle","overflow","overflowX","overflowY","getScrollParent","listScrollParents","_element$ownerDocumen","isBody","visualViewport","updatedList","rectToClientRect","getClientRectFromMixedType","clippingParent","html","getViewportRect","clientTop","clientLeft","getInnerBoundingClientRect","winScroll","scrollWidth","scrollHeight","getDocumentRect","getVariation","computeOffsets","variation","commonX","commonY","mainAxis","detectOverflow","_options","_options$placement","_options$boundary","boundary","_options$rootBoundary","rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","referenceElement","clippingClientRect","mainClippingParents","clipperElement","getClippingParents","firstClippingParent","clippingRect","accRect","getClippingRect","contextElement","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","multiply","computeAutoPlacement","flipVariations","_options$allowedAutoP","allowedAutoPlacements","allPlacements","allowedPlacements","overflows","sort","a","b","_skip","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","preferredPlacement","oppositePlacement","getExpandedFallbackPlacements","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","isVertical","mainVariationSide","altVariationSide","checks","every","check","_loop","_i","fittingPlacement","reset","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","_options$offset","invertDistance","skidding","distance","distanceAndSkiddingToXY","_data$state$placement","_options$tether","tether","_options$tetherOffset","tetherOffset","isBasePlacement","tetherOffsetValue","mainSide","altSide","additive","minLen","maxLen","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","clientOffset","offsetModifierValue","tetherMin","tetherMax","preventedOffset","_mainSide","_altSide","_offset","_min","_max","_preventedOffset","getCompositeRect","elementOrVirtualElement","isFixed","isOffsetParentAnElement","modifiers","map","visited","result","modifier","dep","depModifier","format","str","_len","arguments","_key","p","c","INVALID_MODIFIER_ERROR","VALID_PROPERTIES","INVALID_ELEMENT_ERROR","DEFAULT_OPTIONS","areValidElements","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","pending","orderedModifiers","effectCleanupFns","isDestroyed","setOptions","cleanupModifierEffects","arr","identifiers","merged","orderModifiers","current","existing","m","String","isArray","s","requirement","mod","validateModifiers","item","identifier","marginTop","marginRight","marginBottom","marginLeft","_ref3$options","cleanupFn","forceUpdate","_state$elements","__debug_loops__","_state$orderedModifie","_state$orderedModifie2","Promise","resolve","then","undefined","destroy","onFirstUpdate","createPopper","eventListeners","computeStyles","applyStyles","flip","ESCAPE_KEY","SPACE_KEY","ARROW_UP_KEY","ARROW_DOWN_KEY","REGEXP_KEYDOWN","EVENT_CLICK_DATA_API","EVENT_KEYDOWN_DATA_API","SELECTOR_MENU","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","display","popperConfig","autoClose","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","getParentFromElement","Popper","_getPopperConfig","isDisplayStatic","focus","_completeHide","_getPlacement","parentDropdown","isEnd","_getOffset","popperData","defaultBsPopperConfig","_selectMenuItem","items","dropdownInterface","toggles","context","composedPath","isMenuTarget","clickEvent","isActive","stopPropagation","getToggleButton","clearMenus","click","dataApiKeydownHandler","SELECTOR_FIXED_CONTENT","SELECTOR_STICKY_CONTENT","ScrollBarHelper","getWidth","documentWidth","innerWidth","_disableOverFlow","_setElementAttributes","calculatedValue","_saveInitialAttribute","styleProp","scrollbarWidth","_applyManipulationCallback","_resetElementAttributes","actualValue","removeProperty","callBack","isOverflowing","clickCallback","EVENT_MOUSEDOWN","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","createElement","className","appendChild","EVENT_HIDDEN","EVENT_SHOW","EVENT_FOCUSIN","EVENT_RESIZE","EVENT_CLICK_DISMISS","EVENT_KEYDOWN_DISMISS","EVENT_MOUSEDOWN_DISMISS","CLASS_NAME_OPEN","CLASS_NAME_STATIC","Modal","_dialog","_backdrop","_initializeBackDrop","_isShown","_ignoreBackdropClick","_scrollBar","_isAnimated","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","_hideModal","htmlElement","handleUpdate","modalBody","_enforceFocus","_triggerBackdropTransition","_resetAdjustments","currentTarget","isModalOverflowing","isBodyOverflowing","paddingLeft","paddingRight","showEvent","OPEN_SELECTOR","Offcanvas","visibility","_enforceFocusOnElement","blur","allReadyOpen","el","uriAttrs","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeValue","regExp","attrRegex","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","createdDocument","DOMParser","parseFromString","allowlistKeys","elName","attributeList","allowedAttributes","innerHTML","BSCLS_PREFIX_REGEX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","customClass","sanitize","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","area","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","pre","small","span","sub","sup","strong","u","ul","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","CLASS_NAME_FADE","HOVER_STATE_SHOW","HOVER_STATE_OUT","TRIGGER_HOVER","TRIGGER_FOCUS","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","_initializeOnDelegatedTarget","_isWithActiveTrigger","_enter","_leave","getTipElement","_hideModalHandler","isWithContent","shadowRoot","isInTheDom","tipId","setContent","attachment","_getAttachment","_addAttachmentClass","prevHoverState","_cleanTipClass","getTitle","setElementContent","content","textContent","updateAttachment","dataKey","_getDelegateConfig","_handlePopperPlacementChange","eventIn","eventOut","_fixTitle","originalTitleType","dataAttributes","dataAttr","tabClass","token","tClass","SELECTOR_TITLE","SELECTOR_CONTENT","Popover","_getContent","super","method","METHOD_POSITION","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targetSelector","targetBCR","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","queries","link","listGroup","navItem","spy","SELECTOR_ACTIVE","SELECTOR_ACTIVE_UL","Tab","listElement","itemSelector","hideEvent","complete","active","_transitionComplete","dropdownChild","dropdownElement","dropdown","CLASS_NAME_HIDE","CLASS_NAME_SHOWING","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","_onInteraction","isInteracting"],"mappings":"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"} \ No newline at end of file diff --git a/assets/js/progress.js b/assets/js/progress.js deleted file mode 100644 index c85374a1..00000000 --- a/assets/js/progress.js +++ /dev/null @@ -1,74 +0,0 @@ -/** - * @file - * Extends the methods of progress bar in core/misc/progress.js. - */ - -(function($, Drupal) { - /** - * Theme function for the progress bar. - * - * @param {string} id - * The id for the progress bar. - * - * @return {string} - * The HTML for the progress bar. - */ - Drupal.theme.progressBar = function(id) { - return ( - `<div id="${id}" aria-live="polite">` + - '<label class="progress-bar-label"></label>' + - '<div class="progress"><div class="progress-bar progress-bar-striped progress-bar-animated" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100"></div></div>' + - '<small class="form-text text-muted progress-bar-message"></small>' + - '</div>' - ); - }; - - $.extend( - Drupal.ProgressBar.prototype, - /** @lends Drupal.ProgressBar# */ { - /** - * Set the percentage and status message for the progressbar. - * - * @param {number} percentage - * The progress percentage. - * @param {string} message - * The message to show the user. - * @param {string} label - * The text for the progressbar label. - */ - setProgress(percentage, message, label) { - if (percentage >= 0 && percentage <= 100) { - $(this.element) - .find('div.progress-bar') - .css('width', `${percentage}%`) - .attr('aria-valuenow', percentage) - .html(`${percentage}%`); - } - $('label.progress-bar-label', this.element).html(label); - $('small.progress-bar-message', this.element).html(message); - if (this.updateCallback) { - this.updateCallback(percentage, message, this); - } - }, - - /** - * Display errors on the page. - * - * @param {string} string - * The error message to show the user. - */ - displayError(string) { - const error = $('<div class="alert alert-danger"></div>').html( - string, - ); - $(this.element) - .before(error) - .hide(); - - if (this.errorCallback) { - this.errorCallback(this); - } - }, - }, - ); -})(jQuery, Drupal); -- GitLab From acd94f4afd946f8aa41b112fc7b2eb3d76f4d526 Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Fri, 30 Jul 2021 15:38:23 +0300 Subject: [PATCH 07/25] OEL-309: Add assets folder to git ignored list. --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 9014e00b..b723591a 100644 --- a/.gitignore +++ b/.gitignore @@ -13,6 +13,7 @@ phpunit.xml runner.yml vendor yarn.lock +/assets/ /.gitattributes config.codekit -/.editorconfig \ No newline at end of file +/.editorconfig -- GitLab From c43a0188c5fccf2a1886a617c17ec6392ad29d07 Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Fri, 30 Jul 2021 15:39:24 +0300 Subject: [PATCH 08/25] OEL-309: Filter out unneeded assets. --- bcl-builder.config.js | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/bcl-builder.config.js b/bcl-builder.config.js index d7756012..b26233a7 100644 --- a/bcl-builder.config.js +++ b/bcl-builder.config.js @@ -10,7 +10,7 @@ module.exports = { styles: [ { entry: path.resolve(outputFolder, "resources/sass/default.style.scss"), - dest: path.resolve(outputFolder, "assets/css/oe_bootstrap_theme.style.min.css"), + dest: path.resolve(outputFolder, "assets/css/oe_whitelabel.style.min.css"), options: { includePaths, minify: true, @@ -20,19 +20,19 @@ module.exports = { ], copy: [ { - from: ["node_modules/@openeuropa/bcl-theme-default/css/**"], + from: ["node_modules/@openeuropa/bcl-theme-default/css/oe-bcl-default.min.css"], to: path.resolve(outputFolder, "assets/css"), options: { up: true }, }, { - from: ["node_modules/@openeuropa/bcl-theme-default/js/**"], - to: path.resolve(outputFolder, "assets/js"), + from: ["node_modules/@openeuropa/bcl-theme-default/css/oe-bcl-default.min.css.map"], + to: path.resolve(outputFolder, "assets/css"), options: { up: true }, }, { - from: ["node_modules/@openeuropa/bcl-theme-default/icons/bootstrap-icons.svg"], - to: path.resolve(outputFolder, "assets/icons"), + from: ["node_modules/@openeuropa/bcl-theme-default/js/oe-bcl-default.bundle.js"], + to: path.resolve(outputFolder, "assets/js"), options: { up: true }, - }, + } ], }; diff --git a/package.json b/package.json index 1e319894..63535835 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "build": "npm-run-all build:*", "build:styles": "cross-env bcl-builder styles", "build:copy": "cross-env bcl-builder copy", - "watch:styles": "chokidar \"./resources/sass/**/*.scss\" -i \"/node_modules/\" -c \"stylelint {path} & npm run build:styles\"", + "watch:styles": "chokidar \"./resources/sass/**/*.scss\" -i \"/node_modules/\" -c \"npm run build:styles\"", "watch": "npm-run-all --parallel watch:* -ln", "postinstall": "npm-run-all build:*", "production": "npm-run-all build:*" -- GitLab From bf62b5e35cc42eb33d045e2809df1d99979b75c6 Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Tue, 3 Aug 2021 11:18:44 +0300 Subject: [PATCH 09/25] OEL-309: Remove deprectade stylesheets-remove. --- oe_whitelabel.info.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/oe_whitelabel.info.yml b/oe_whitelabel.info.yml index fb5851b3..23a5660a 100644 --- a/oe_whitelabel.info.yml +++ b/oe_whitelabel.info.yml @@ -5,15 +5,14 @@ type: theme base theme: oe_bootstrap_theme core_version_requirement: ^8.9 || ^9.1 -stylesheets-remove: - - system.theme.css - - system.menus.css - - system.admin.css - libraries: - oe_whitelabel/bcl libraries-override: + system/admin: + css: + theme: + css/system.admin.css: false oe_bootstrap_theme/bcl: false ckeditor_stylesheets: -- GitLab From b4b7cd7d89698dd8c9b9ce7d87e857a4fd9beb42 Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Tue, 3 Aug 2021 11:29:00 +0300 Subject: [PATCH 10/25] OEL-309: Fix references to oe_whitelabel_theme. --- .drone.yml | 49 +++++++++++++++++++--- composer.json | 2 +- oe_whitelabel.theme | 2 +- runner.yml.dist | 2 +- tests/features/bootstrap/DrupalContext.php | 2 +- 5 files changed, 48 insertions(+), 9 deletions(-) diff --git a/.drone.yml b/.drone.yml index 92a0b755..18938a1f 100644 --- a/.drone.yml +++ b/.drone.yml @@ -10,27 +10,38 @@ clone: workspace: base: /test - path: oe_whitelabel_theme + path: oe_whitelabel services: web: image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci environment: - - DOCUMENT_ROOT=/test/oe_whitelabel_theme + - DOCUMENT_ROOT=/test/oe_whitelabel mysql: image: registry.fpfis.eu/fpfis/sql:percona-5.7 command: --innodb-log-file-size=1G --max_allowed_packet=1G --innodb-buffer-pool-size=512M --wait_timeout=3000 --net_write_timeout=3000 --log_error_verbosity=3 environment: - MYSQL_ALLOW_EMPTY_PASSWORD=yes + - MYSQL_DATABASE=drupal + selenium: + # Newer Selenium Chrome images are not supported at the moment by behat/mink-selenium2-driver. + image: registry.fpfis.eu/fpfis/selenium:standalone-chrome-3.141.59-oxygen + environment: + - DISPLAY=:99 + - SE_OPTS=-debug + - SCREEN_WIDTH=1280 + - SCREEN_HEIGHT=800 + - NODE_MAX_INSTANCES=5 + - NODE_MAX_SESSION=5 pipeline: npm-build: group: prepare - image: registry.fpfis.eu/fpfis/node:12.21.0 + image: registry.fpfis.eu/fpfis/node:14.17.3 commands: - npm install --unsafe-perm - - NODE_ENV=production npm run build - - + - NODE_ENV=production npm run production + composer-install: group: prepare image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci @@ -56,24 +67,36 @@ pipeline: image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci commands: - ./vendor/bin/run drupal:site-install + when: + event: + exclude: tag grumphp: group: test image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci commands: - ./vendor/bin/grumphp run + when: + event: + exclude: tag phpunit: group: test image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci commands: - ./vendor/bin/phpunit + when: + event: + exclude: tag behat: group: test image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci commands: - ./vendor/bin/behat --strict + when: + event: + exclude: tag debug: image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci @@ -82,6 +105,22 @@ pipeline: when: status: failure + before-release: + image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci + commands: + - ./vendor/bin/run release:create-archive --tag=${DRONE_TAG} + when: + event: tag + + github-release: + image: registry.fpfis.eu/drone-plugins/github-release + secrets: [ github_token ] + files: oe_whitelabel-${DRONE_TAG}.tar.gz + when: + event: tag + matrix: + COMPOSER_BOUNDARY: highest + matrix: COMPOSER_BOUNDARY: - lowest diff --git a/composer.json b/composer.json index 6b262f0d..c7773c63 100644 --- a/composer.json +++ b/composer.json @@ -1,5 +1,5 @@ { - "name": "openeuropa/oe_whitelabel_theme", + "name": "openeuropa/oe_whitelabel", "description": "OpenEuropa Whitelabel theme.", "type": "drupal-theme", "license": "EUPL-1.2", diff --git a/oe_whitelabel.theme b/oe_whitelabel.theme index 718cc06e..5e67fa29 100644 --- a/oe_whitelabel.theme +++ b/oe_whitelabel.theme @@ -2,7 +2,7 @@ /** * @file - * The oe_whitelabel_theme hooks. + * The oe_whitelabel hooks. */ // Include all files from the includes directory. diff --git a/runner.yml.dist b/runner.yml.dist index 7b6b2a7e..136f1281 100644 --- a/runner.yml.dist +++ b/runner.yml.dist @@ -7,7 +7,7 @@ drupal: database: host: "mysql" port: "3306" - name: "oe_whitelabel_theme" + name: "oe_whitelabel" user: "root" password: "" post_install: diff --git a/tests/features/bootstrap/DrupalContext.php b/tests/features/bootstrap/DrupalContext.php index 091a9752..58a164df 100644 --- a/tests/features/bootstrap/DrupalContext.php +++ b/tests/features/bootstrap/DrupalContext.php @@ -2,7 +2,7 @@ declare(strict_types = 1); -namespace Drupal\Tests\oe_whitelabel_theme\Behat; +namespace Drupal\Tests\oe_whitelabel\Behat; use Drupal\DrupalExtension\Context\RawDrupalContext; -- GitLab From 96d15fc19f8058c21d9ab74ebb21f719800c815f Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Thu, 5 Aug 2021 16:36:08 +0300 Subject: [PATCH 11/25] OEL-309: Remove selenium and use hub node image. --- .drone.yml | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/.drone.yml b/.drone.yml index 18938a1f..bef9d57d 100644 --- a/.drone.yml +++ b/.drone.yml @@ -23,21 +23,11 @@ services: environment: - MYSQL_ALLOW_EMPTY_PASSWORD=yes - MYSQL_DATABASE=drupal - selenium: - # Newer Selenium Chrome images are not supported at the moment by behat/mink-selenium2-driver. - image: registry.fpfis.eu/fpfis/selenium:standalone-chrome-3.141.59-oxygen - environment: - - DISPLAY=:99 - - SE_OPTS=-debug - - SCREEN_WIDTH=1280 - - SCREEN_HEIGHT=800 - - NODE_MAX_INSTANCES=5 - - NODE_MAX_SESSION=5 pipeline: npm-build: group: prepare - image: registry.fpfis.eu/fpfis/node:14.17.3 + image: node:14.17.3 commands: - npm install --unsafe-perm - NODE_ENV=production npm run production -- GitLab From b8aee63aee7f1b329273f47aba80829cfe097271 Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Thu, 5 Aug 2021 17:55:33 +0300 Subject: [PATCH 12/25] OEL-309: Move mysql image under pipeline. --- .drone.yml | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/.drone.yml b/.drone.yml index bef9d57d..d4d4132d 100644 --- a/.drone.yml +++ b/.drone.yml @@ -17,12 +17,6 @@ services: image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci environment: - DOCUMENT_ROOT=/test/oe_whitelabel - mysql: - image: registry.fpfis.eu/fpfis/sql:percona-5.7 - command: --innodb-log-file-size=1G --max_allowed_packet=1G --innodb-buffer-pool-size=512M --wait_timeout=3000 --net_write_timeout=3000 --log_error_verbosity=3 - environment: - - MYSQL_ALLOW_EMPTY_PASSWORD=yes - - MYSQL_DATABASE=drupal pipeline: npm-build: @@ -53,6 +47,15 @@ pipeline: matrix: COMPOSER_BOUNDARY: lowest + mysql: + group: post-prepare + detach: true + image: registry.fpfis.eu/fpfis/sql:percona-5.7 + command: --innodb-log-file-size=1G --max_allowed_packet=1G --innodb-buffer-pool-size=512M --wait_timeout=3000 --net_write_timeout=3000 --log_error_verbosity=3 + environment: + - MYSQL_ALLOW_EMPTY_PASSWORD=yes + - MYSQL_DATABASE=drupal + site-install: image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci commands: -- GitLab From 4bf4030c9042ea5906b3ec0a30ee9da198608252 Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Thu, 5 Aug 2021 18:07:36 +0300 Subject: [PATCH 13/25] OEL-309: Use tag for bootstrap theme instead of dev branch. --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index c7773c63..a2ac9b46 100644 --- a/composer.json +++ b/composer.json @@ -7,7 +7,7 @@ "prefer-stable": true, "require": { "drupal/core": "^8.9 || ^9.1", - "openeuropa/oe_bootstrap_theme": "dev-FRONT-2362", + "openeuropa/oe_bootstrap_theme": "1.0.0-alpha1", "php": ">=7.3" }, "require-dev": { -- GitLab From 7f52c2d55ba01c6352bf6ed674955ae52ba1372f Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Mon, 16 Aug 2021 10:51:33 +0000 Subject: [PATCH 14/25] OEL-309: Update scaffold. --- bcl-builder.config.js | 18 +----------- composer.json | 2 +- config/install/oe_whitelabel.settings.yml | 17 ----------- oe_whitelabel.breakpoints.yml | 36 ----------------------- oe_whitelabel.info.yml | 3 +- oe_whitelabel.libraries.yml | 7 ++--- package.json | 6 ++-- runner.yml.dist | 2 +- 8 files changed, 9 insertions(+), 82 deletions(-) delete mode 100644 config/install/oe_whitelabel.settings.yml delete mode 100644 oe_whitelabel.breakpoints.yml diff --git a/bcl-builder.config.js b/bcl-builder.config.js index b26233a7..34746966 100644 --- a/bcl-builder.config.js +++ b/bcl-builder.config.js @@ -18,21 +18,5 @@ module.exports = { }, }, ], - copy: [ - { - from: ["node_modules/@openeuropa/bcl-theme-default/css/oe-bcl-default.min.css"], - to: path.resolve(outputFolder, "assets/css"), - options: { up: true }, - }, - { - from: ["node_modules/@openeuropa/bcl-theme-default/css/oe-bcl-default.min.css.map"], - to: path.resolve(outputFolder, "assets/css"), - options: { up: true }, - }, - { - from: ["node_modules/@openeuropa/bcl-theme-default/js/oe-bcl-default.bundle.js"], - to: path.resolve(outputFolder, "assets/js"), - options: { up: true }, - } - ], + copy: [] }; diff --git a/composer.json b/composer.json index a2ac9b46..94661705 100644 --- a/composer.json +++ b/composer.json @@ -7,7 +7,7 @@ "prefer-stable": true, "require": { "drupal/core": "^8.9 || ^9.1", - "openeuropa/oe_bootstrap_theme": "1.0.0-alpha1", + "openeuropa/oe_bootstrap_theme": "1.x-dev", "php": ">=7.3" }, "require-dev": { diff --git a/config/install/oe_whitelabel.settings.yml b/config/install/oe_whitelabel.settings.yml deleted file mode 100644 index c2375f02..00000000 --- a/config/install/oe_whitelabel.settings.yml +++ /dev/null @@ -1,17 +0,0 @@ -# Default settings should not be located here. This file is only used to -# initially install a theme's "settings". -# -# Instead, the Drupal Bootstrap base theme uses the @BootstrapSetting -# annotated plugin discovery process. This ensures that sub-theme settings are -# inherited from base themes themes properly and to determine when a setting -# should be saved to config as "overridden". -# -# @see \Drupal\bootstrap\Plugin\SettingBase -# @see \Drupal\bootstrap\Plugin\SettingInterface -# @see \Drupal\bootstrap\Plugin\SettingManager -# @see \Drupal\bootstrap\Plugin\Form\SystemThemeSettings -# @see \Drupal\bootstrap\ThemeSettings - -# This file cannot be empty, so install an initial empty array for "schemas". -# @see https://www.drupal.org/node/2813829 -schemas: [] diff --git a/oe_whitelabel.breakpoints.yml b/oe_whitelabel.breakpoints.yml deleted file mode 100644 index 4afd2d6a..00000000 --- a/oe_whitelabel.breakpoints.yml +++ /dev/null @@ -1,36 +0,0 @@ -default.xs: - label: XS - mediaQuery: '(max-width: 575px)' - weight: 0 - multipliers: - - 1x -default.sm: - label: SM - mediaQuery: '(min-width: 576px) and (max-width: 767px)' - weight: 1 - multipliers: - - 1x -default.md: - label: MD - mediaQuery: '(min-width: 768px) and (max-width: 991px)' - weight: 1 - multipliers: - - 1x -default.lg: - label: LG - mediaQuery: '(min-width: 992px) and (max-width: 1199px)' - weight: 1 - multipliers: - - 1x -default.xl: - label: XL - mediaQuery: '(min-width: 1200px) and (max-width: 1399px)' - weight: 1 - multipliers: - - 1x -default.xxl: - label: XXL - mediaQuery: '(min-width: 1400px)' - weight: 1 - multipliers: - - 1x diff --git a/oe_whitelabel.info.yml b/oe_whitelabel.info.yml index 23a5660a..b18d2a02 100644 --- a/oe_whitelabel.info.yml +++ b/oe_whitelabel.info.yml @@ -6,14 +6,13 @@ base theme: oe_bootstrap_theme core_version_requirement: ^8.9 || ^9.1 libraries: - - oe_whitelabel/bcl + - oe_whitelabel/style libraries-override: system/admin: css: theme: css/system.admin.css: false - oe_bootstrap_theme/bcl: false ckeditor_stylesheets: - assets/css/oe-bcl-default.min.css diff --git a/oe_whitelabel.libraries.yml b/oe_whitelabel.libraries.yml index cedadb7f..3243b9da 100644 --- a/oe_whitelabel.libraries.yml +++ b/oe_whitelabel.libraries.yml @@ -1,6 +1,5 @@ -bcl: - js: - assets/js/oe-bcl-default.bundle.min.js: {} +style: + version: VERSION css: theme: - assets/css/oe-bcl-default.min.css: {} + assets/css/oe_whitelabel.style.min.css: {} diff --git a/package.json b/package.json index 63535835..cfab7b57 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "oe_whitelabel", "version": "1.0.0", - "description": "OE_BOOTSTRAP_THEME_SUBTHEME_DESCRIPTION", + "description": "The OpenEuropa Whitelabel theme.", "private": true, "scripts": { "build": "npm-run-all build:*", @@ -14,9 +14,7 @@ }, "devDependencies": { "@openeuropa/bcl-builder": "0.4.0", - "@openeuropa/bcl-theme-default": "0.4.0", - "bootstrap-ie11": "5.0.2", - "chokidar-cli": "1.2.0", + "chokidar-cli": "^3.0.0", "copyfiles": "2.4.1", "cross-env": "7.0.3", "glob": "7.1.7", diff --git a/runner.yml.dist b/runner.yml.dist index 136f1281..b4d202e6 100644 --- a/runner.yml.dist +++ b/runner.yml.dist @@ -7,7 +7,7 @@ drupal: database: host: "mysql" port: "3306" - name: "oe_whitelabel" + name: "drupal" user: "root" password: "" post_install: -- GitLab From 32c0da365a3737409b26c52540a42c2690acb373 Mon Sep 17 00:00:00 2001 From: Gilmar Lima <gilmar.lima@novacomm-europa.eu> Date: Thu, 26 Aug 2021 10:55:21 +0000 Subject: [PATCH 15/25] OEL-309: Update openeuropa/oe_bootstrap_theme to 1.0.0-alpha1. --- composer.json | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/composer.json b/composer.json index 94661705..4be22f7b 100644 --- a/composer.json +++ b/composer.json @@ -7,7 +7,7 @@ "prefer-stable": true, "require": { "drupal/core": "^8.9 || ^9.1", - "openeuropa/oe_bootstrap_theme": "1.x-dev", + "openeuropa/oe_bootstrap_theme": "1.0.0-alpha1", "php": ">=7.3" }, "require-dev": { @@ -29,10 +29,6 @@ "0": { "type": "composer", "url": "https://packages.drupal.org/8" - }, - "oe_bootstrap_theme": { - "type": "vcs", - "url": "https://github.com/openeuropa/oe_bootstrap_theme" } }, "extra": { -- GitLab From f462643612bfc782a112615e7cf8bed6d0ca6f84 Mon Sep 17 00:00:00 2001 From: Gilmar Lima <gilmar.lima@novacomm-europa.eu> Date: Thu, 26 Aug 2021 11:21:26 +0000 Subject: [PATCH 16/25] OEL-309: require ui_patterns and ui_patterns_settings. --- composer.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/composer.json b/composer.json index 4be22f7b..70fe0caa 100644 --- a/composer.json +++ b/composer.json @@ -6,7 +6,10 @@ "minimum-stability": "dev", "prefer-stable": true, "require": { + "drupal/components": "^2.4", "drupal/core": "^8.9 || ^9.1", + "drupal/ui_patterns": "^1.0", + "drupal/ui_patterns_settings": "^1.0", "openeuropa/oe_bootstrap_theme": "1.0.0-alpha1", "php": ">=7.3" }, -- GitLab From 7b57a8b27a3df0b06507e23d46bc5b1a537fcdfd Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Thu, 26 Aug 2021 11:42:51 +0000 Subject: [PATCH 17/25] OEL-309: Mirror drone yml from parent theme. --- .drone.yml | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/.drone.yml b/.drone.yml index d4d4132d..bef9d57d 100644 --- a/.drone.yml +++ b/.drone.yml @@ -17,6 +17,12 @@ services: image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci environment: - DOCUMENT_ROOT=/test/oe_whitelabel + mysql: + image: registry.fpfis.eu/fpfis/sql:percona-5.7 + command: --innodb-log-file-size=1G --max_allowed_packet=1G --innodb-buffer-pool-size=512M --wait_timeout=3000 --net_write_timeout=3000 --log_error_verbosity=3 + environment: + - MYSQL_ALLOW_EMPTY_PASSWORD=yes + - MYSQL_DATABASE=drupal pipeline: npm-build: @@ -47,15 +53,6 @@ pipeline: matrix: COMPOSER_BOUNDARY: lowest - mysql: - group: post-prepare - detach: true - image: registry.fpfis.eu/fpfis/sql:percona-5.7 - command: --innodb-log-file-size=1G --max_allowed_packet=1G --innodb-buffer-pool-size=512M --wait_timeout=3000 --net_write_timeout=3000 --log_error_verbosity=3 - environment: - - MYSQL_ALLOW_EMPTY_PASSWORD=yes - - MYSQL_DATABASE=drupal - site-install: image: registry.fpfis.eu/fpfis/httpd-php:${PHP_VERSION}-ci commands: -- GitLab From 05a0c1686ae2082a49f8b2f9c274905e4b52536a Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Tue, 7 Sep 2021 13:07:25 +0300 Subject: [PATCH 18/25] OEL-309: Remove not needed config. --- config/schema/oe_whitelabel.schema.yml | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 config/schema/oe_whitelabel.schema.yml diff --git a/config/schema/oe_whitelabel.schema.yml b/config/schema/oe_whitelabel.schema.yml deleted file mode 100644 index a92883f8..00000000 --- a/config/schema/oe_whitelabel.schema.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Schema for the configuration files of the OpenEuropa Whitelabel theme. - -oe_whitelabel.settings: - type: theme_settings - label: 'OpenEuropa Whitelabel settings' -- GitLab From c04039e3401fb5f50e32b03f36754e396d96de5d Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Tue, 7 Sep 2021 13:11:32 +0300 Subject: [PATCH 19/25] OEL-309: Remove not needed docker image. --- docker-compose.yml | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index b230d87c..5f4a4fa9 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -22,25 +22,6 @@ services: MYSQL_ALLOW_EMPTY_PASSWORD: "yes" # ports: # - 3306:3306 - - # If you would like to see what is going on you can run the following on your host: - # docker run --rm -p 4444:4444 -p 5900:5900 --network="host" selenium/standalone-chrome-debug:latest - # Newer version of this image might run into this issue: - # @link https://github.com/elgalu/docker-selenium/issues/20 - selenium: - image: selenium/standalone-chrome-debug:3.141.59-oxygen - expose: - - '4444' - environment: - - DISPLAY=:99 - - SE_OPTS=-debug - - SCREEN_WIDTH=1280 - - SCREEN_HEIGHT=800 - - VNC_NO_PASSWORD=1 - ports: - - '4444:4444' - - '5900:5900' - shm_size: 2g node: image: node:14.17.3 user: "node" -- GitLab From 8123d9a9155635bf75b56106fb72a0b2083e2eea Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Tue, 7 Sep 2021 13:13:08 +0300 Subject: [PATCH 20/25] OEL-309: Remove not needed includes. --- includes/block.inc | 6 ------ includes/comment.inc | 6 ------ includes/content.inc | 6 ------ includes/field.inc | 6 ------ includes/form.inc | 6 ------ includes/menu.inc | 6 ------ includes/theme.inc | 6 ------ includes/user.inc | 6 ------ includes/view.inc | 6 ------ oe_whitelabel.theme | 14 -------------- 10 files changed, 68 deletions(-) delete mode 100644 includes/block.inc delete mode 100644 includes/comment.inc delete mode 100644 includes/content.inc delete mode 100644 includes/field.inc delete mode 100644 includes/form.inc delete mode 100644 includes/menu.inc delete mode 100644 includes/theme.inc delete mode 100644 includes/user.inc delete mode 100644 includes/view.inc delete mode 100644 oe_whitelabel.theme diff --git a/includes/block.inc b/includes/block.inc deleted file mode 100644 index bb4b2fa8..00000000 --- a/includes/block.inc +++ /dev/null @@ -1,6 +0,0 @@ -<?php - -/** - * @file - * Theme and preprocess functions for blocks. - */ diff --git a/includes/comment.inc b/includes/comment.inc deleted file mode 100644 index 4b41c9fe..00000000 --- a/includes/comment.inc +++ /dev/null @@ -1,6 +0,0 @@ -<?php - -/** - * @file - * Theme and preprocess functions for comments. - */ diff --git a/includes/content.inc b/includes/content.inc deleted file mode 100644 index e4202538..00000000 --- a/includes/content.inc +++ /dev/null @@ -1,6 +0,0 @@ -<?php - -/** - * @file - * Theme and preprocess functions for nodes. - */ diff --git a/includes/field.inc b/includes/field.inc deleted file mode 100644 index baf589a2..00000000 --- a/includes/field.inc +++ /dev/null @@ -1,6 +0,0 @@ -<?php - -/** - * @file - * Theme and preprocess functions for fields. - */ diff --git a/includes/form.inc b/includes/form.inc deleted file mode 100644 index 88e959dc..00000000 --- a/includes/form.inc +++ /dev/null @@ -1,6 +0,0 @@ -<?php - -/** - * @file - * Theme and preprocess functions for forms. - */ diff --git a/includes/menu.inc b/includes/menu.inc deleted file mode 100644 index 5fca8a7a..00000000 --- a/includes/menu.inc +++ /dev/null @@ -1,6 +0,0 @@ -<?php - -/** - * @file - * Theme and preprocess functions for menus. - */ diff --git a/includes/theme.inc b/includes/theme.inc deleted file mode 100644 index 33399cfb..00000000 --- a/includes/theme.inc +++ /dev/null @@ -1,6 +0,0 @@ -<?php - -/** - * @file - * Custom theme hooks. - */ diff --git a/includes/user.inc b/includes/user.inc deleted file mode 100644 index 7589628f..00000000 --- a/includes/user.inc +++ /dev/null @@ -1,6 +0,0 @@ -<?php - -/** - * @file - * Theme and preprocess functions for users. - */ diff --git a/includes/view.inc b/includes/view.inc deleted file mode 100644 index 312b8ea6..00000000 --- a/includes/view.inc +++ /dev/null @@ -1,6 +0,0 @@ -<?php - -/** - * @file - * Theme and preprocess functions for views. - */ diff --git a/oe_whitelabel.theme b/oe_whitelabel.theme deleted file mode 100644 index 5e67fa29..00000000 --- a/oe_whitelabel.theme +++ /dev/null @@ -1,14 +0,0 @@ -<?php - -/** - * @file - * The oe_whitelabel hooks. - */ - -// Include all files from the includes directory. -$includes_path = __DIR__ . '/includes/*.inc'; -foreach (glob($includes_path) as $filename) { - // The inspection disallowing basename() is not relevant for known paths. - // phpcs:ignore QualityAssurance.Functions.DrupalWrappers.FoundWithAlternative - require_once __DIR__ . '/includes/' . basename($filename); -} -- GitLab From 7f1a56678ae24a9e8e0befd3b8532b6e2d0baaab Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Tue, 7 Sep 2021 13:27:22 +0300 Subject: [PATCH 21/25] OEL-309: Remove phpunit cache. --- phpunit.xml.dist | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/phpunit.xml.dist b/phpunit.xml.dist index 9e556d89..750b0e3f 100644 --- a/phpunit.xml.dist +++ b/phpunit.xml.dist @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<phpunit bootstrap="${drupal.root}/core/tests/bootstrap.php" backupGlobals="true" colors="true" > +<phpunit bootstrap="${drupal.root}/core/tests/bootstrap.php" backupGlobals="true" colors="true" cacheResult="false"> <php> <ini name="error_reporting" value="32767"/> <ini name="memory_limit" value="-1"/> -- GitLab From 2ed0e3666aa56bdd196524ba33ce94f2cbe69ee7 Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Tue, 7 Sep 2021 13:29:00 +0300 Subject: [PATCH 22/25] OEL-309: Remove selenium config from runner. --- runner.yml.dist | 5 ----- 1 file changed, 5 deletions(-) diff --git a/runner.yml.dist b/runner.yml.dist index b4d202e6..bcd124d0 100644 --- a/runner.yml.dist +++ b/runner.yml.dist @@ -29,11 +29,6 @@ drupal: - "vendor" - "${drupal.root}" -selenium: - host: "http://selenium" - port: "4444" - browser: "chrome" - commands: drupal:site-setup: - { task: "run", command: "drupal:symlink-project" } -- GitLab From 36ff8408903ceca401cf8d5cd87c4990ba79055d Mon Sep 17 00:00:00 2001 From: drishu <aszilagyi@live.com> Date: Tue, 7 Sep 2021 13:40:00 +0300 Subject: [PATCH 23/25] OEL-309: Update bcl builder. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index cfab7b57..62149ac7 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "production": "npm-run-all build:*" }, "devDependencies": { - "@openeuropa/bcl-builder": "0.4.0", + "@openeuropa/bcl-builder": "0.6.0", "chokidar-cli": "^3.0.0", "copyfiles": "2.4.1", "cross-env": "7.0.3", -- GitLab From c2144770d6504b48a0a2144216a9b234cbcf40be Mon Sep 17 00:00:00 2001 From: Abel Santos <abel.santos.corral@gmail.com> Date: Tue, 7 Sep 2021 13:39:02 +0200 Subject: [PATCH 24/25] OEL-309: Eliminate file .phpunit.result.cache. --- .phpunit.result.cache | 1 - 1 file changed, 1 deletion(-) delete mode 100644 .phpunit.result.cache diff --git a/.phpunit.result.cache b/.phpunit.result.cache deleted file mode 100644 index 2de2a6da..00000000 --- a/.phpunit.result.cache +++ /dev/null @@ -1 +0,0 @@ -{"version":1,"defects":[],"times":[]} \ No newline at end of file -- GitLab From 4378adbd2a71d69b8b751c6d165c239c072f6b54 Mon Sep 17 00:00:00 2001 From: Abel Santos <abel.santos.corral@gmail.com> Date: Tue, 7 Sep 2021 13:50:32 +0200 Subject: [PATCH 25/25] OEL-309: Ignore file .phpunit.result.cache. --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index b723591a..7d84ed76 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,4 @@ yarn.lock /.gitattributes config.codekit /.editorconfig +.phpunit.result.cache -- GitLab